After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 168399 - Alsasink has trouble when "plug" is used and hardware is accessed directly
Alsasink has trouble when "plug" is used and hardware is accessed directly
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins
0.8.9
Other Linux
: Normal normal
: 0.8.8
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2005-02-24 15:34 UTC by Loïc Minier
Modified: 2005-03-17 08:01 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Loïc Minier 2005-02-24 15:34:29 UTC
Distribution/Version: Debian

Hi,

Georg Wittenburg reported in Debian bug <http://bugs.debian.org/296751> that he
experiences trouble with alsasink in amarok.

It seems to be related to his Alsa configuration.

Quoting his report:
"GStreamer crashes when used by Amarok 1.2.0. The console says:

amarok: [controller] Loading URL:
file:/media/data/Music/Shakira%20-%20Grandes%20Exitos/Shakira%20-%2010%20-%20Ojos%20Asi.mp3
amarok: BEGIN: virtual bool GstEngine::load(const KURL&, bool)
amarok:   [Gst-Engine] Loading url:
file:/media/data/Music/Shakira%20-%20Grandes%20Exitos/Shakira%20-%2010%20-%20Ojos%20Asi.mp3
amarok:   BEGIN: InputPipeline::InputPipeline()
amarok:   END__: InputPipeline::InputPipeline() - Took 0.03s
amarok: END__: virtual bool GstEngine::load(const KURL&, bool) - Took 0.14s
amarok: BEGIN: virtual bool GstEngine::play(unsigned int)
amarok: BEGIN: void EngineSubject::stateChangedNotify(Engine::State)
amarok:   [virtual void amaroK::StatusBar::engineStateChanged(Engine::State)]
Line: 121
amarok: END__: void EngineSubject::stateChangedNotify(Engine::State) - Took 0.02s
amarok: END__: virtual bool GstEngine::play(unsigned int) - Took 0.29s
amarok: BEGIN: void EngineSubject::newMetaDataNotify(const MetaBundle&, bool)
amarok:   [296x67]
amarok:   6
amarok:   26
amarok: END__: void EngineSubject::newMetaDataNotify(const MetaBundle&, bool)
-Took 0.19s
amarok: [Gst-Engine] Fade-in finished.
amarok: [GstPadLinkReturn gst_equalizer_link(GstPad*, const GstCaps*)]
amarok: [GstPadLinkReturn gst_equalizer_link(GstPad*, const GstCaps*)]
amarok: [static void GstEngine::inputError_cb(GstElement*, GstElement*, GError*,
gchar*, void*)]
amarok: BEGIN: void GstEngine::handleInputError()
amarok:   [Gst-Engine] [ERROR!] [GStreamer Error] Internal GStreamer error:
padproblem.  File a bug. ** gstpad.c(2563): gst_pad_set_explicit_caps:
/root_bin/thread0/bin0/spider0/mad0:
failed to negotiate (try_set_caps with "audio/x-raw-int, endianness=(int)1234,
signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)44100,
channels=(int)2" returned REFUSED)
amarok: [StatusBar] Creating timer for: 1resetMainText()
amarok:   [Gst-Engine] [ERROR!] Input-Pipeline has signaled an error. Destroying
pipeline.
amarok:   BEGIN: void GstEngine::destroyPipeline()
amarok:     BEGIN: InputPipeline::~InputPipeline()
amarok:     END__: InputPipeline::~InputPipeline() - Took 0s
amarok: amaroK is crashing...

This may be related to http://bugzilla.gnome.org/show_bug.cgi?id=133006."


He completed this information with the following:
"georg@vaio:~$ gst-launch-0.8 filesrc location="/media/data/Music/Erikah Badu -  
Tyrone.mp3" ! mad ! alsasink                                                    
RUNNING pipeline ...                                                            
Execution ended after 101 iterations (sum 2069227000 ns, average 20487396 ns,   
min 34000 ns, max 175411000 ns).                                                
Caught interrupt.                                                               
                                                                                
georg@vaio:~$ gst-launch-0.8 filesrc                                            
location="/usr/share/sounds/KDE_Startup_1.ogg" ! oggdemux ! vorbisdec !         
audioconvert ! alsasink                                                         
RUNNING pipeline ...                                                            
Execution ended after 145 iterations (sum 1920410000 ns, average 13244206 ns,   
min 25000 ns, max 317577000 ns).                                                
Caught interrupt.                                                               
                                                                                
Note that my ALSA pipeline is setup as default -> plug -> asym -> dmix ->       
card0 -> hw:0. The "plug" seems to be the relevant part. When I access the      
hardware directly, I get crashes:                                               
georg@vaio:~$ gst-launch-0.8 filesrc location="/media/data/Music/Erikah Badu -  
Tyrone.mp3" ! mad ! alsasink device=hw:0                                        
RUNNING pipeline ...                                                            
ERROR: from element /pipeline0/mad0: Internal GStreamer error: pad problem.     
File a bug.                                                                     
Additional debug info:                                                          
gstpad.c(2563): gst_pad_set_explicit_caps: /pipeline0/mad0:                     
failed to negotiate (try_set_caps with "audio/x-raw-int, endianness=(int)1234,  
signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)44100,            
channels=(int)2" returned REFUSED)                                              
Floating point exception                                                        
                                                                                
georg@vaio:~$ gst-launch-0.8 filesrc                                            
location="/usr/share/sounds/KDE_Startup_1.ogg" ! oggdemux ! vorbisdec !         
audioconvert ! alsasink device=hw:0                                             
RUNNING pipeline ...                                                            
ERROR: from element /pipeline0/vorbisdec0: Internal GStreamer error: pad        
problem.  File a bug.                                                           
Additional debug info:                                                          
gstpad.c(2563): gst_pad_set_explicit_caps: /pipeline0/vorbisdec0:               
failed to negotiate (try_set_caps with "audio/x-raw-float, rate=(int)44100,     
channels=(int)2, endianness=(int)1234, width=(int)32, buffer-frames=(int)0"     
returned REFUSED)                                                               
Execution ended after 16 iterations (sum 78853000 ns, average 4928312 ns, min   
25000 ns, max 77533000 ns).                                                     
"

This is with GStreamer 0.8.9, and might be with gst-plugins 0.8.6, I'm waiting
for a confirmation of the gst-plugins version (it might be with 0.8.7).

Regards,
Comment 1 Georg Wittenburg 2005-02-24 17:31:53 UTC
Hi! 
 
The versions of all related packages are as follows: 
 
georg@vaio:~$ COLUMNS=120 dpkg -l | grep alsa 
ii  alsa-base                1.0.8-5                  ALSA driver configuration 
files 
ii  alsa-oss                 1.0.8-1                  ALSA wrapper for OSS 
applications 
ii  alsa-utils               1.0.8-2                  ALSA utilities 
ii  gstreamer0.8-alsa        0.8.7-3                  ALSA plugin for GStreamer 
ii  libsdl1.2debian-alsa     1.2.7+1.2.8cvs20041007-4 Simple DirectMedia Layer 
(with X11 and ALSA options) 
georg@vaio:~$ COLUMNS=120 dpkg -l | grep gstreamer 
ii  amarok-gstreamer         1.2.0-1                  GStreamer engine for the 
amaroK audio player 
ii  gstreamer0.8-a52dec      0.8.7-3                  ATSC A/52 audio decoder 
plugin for GStreamer 
ii  gstreamer0.8-aa          0.8.7-3                  AA-lib plugin for 
GStreamer 
ii  gstreamer0.8-alsa        0.8.7-3                  ALSA plugin for GStreamer 
ii  gstreamer0.8-artsd       0.8.7-3                  aRtsd plugin for 
GStreamer 
ii  gstreamer0.8-audiofile   0.8.7-3                  AudioFile plugin for 
GStreamer 
ii  gstreamer0.8-caca        0.8.7-3                  Colour AsCii Art library 
plugin for GStreamer 
ii  gstreamer0.8-cdparanoia  0.8.7-3                  cdparanoia plugin for 
GStreamer 
ii  gstreamer0.8-dv          0.8.7-3                  DV plugin for GStreamer 
ii  gstreamer0.8-dvd         0.8.7-3                  DVD plugin for GStreamer 
ii  gstreamer0.8-esd         0.8.7-3                  Enlightened Sound Daemon 
plugin for GStreamer 
ii  gstreamer0.8-festival    0.8.7-3                  Festival speech synthesis 
plugin for GStreamer 
ii  gstreamer0.8-flac        0.8.7-3                  FLAC plugin for GStreamer 
ii  gstreamer0.8-gnomevfs    0.8.7-3                  Gnome VFS plugin for 
GStreamer 
ii  gstreamer0.8-gsm         0.8.7-3                  GSM plugin for GStreamer 
ii  gstreamer0.8-hermes      0.8.7-3                  colorspace conversion 
plugin for GStreamer based on hermes 
ii  gstreamer0.8-jack        0.8.7-3                  JACK plugin for GStreamer 
ii  gstreamer0.8-jpeg        0.8.7-3                  JPEG plugin for GStreamer 
ii  gstreamer0.8-mad         0.8.7-3                  MAD MPEG audio decoder 
plugin for GStreamer 
ii  gstreamer0.8-mikmod      0.8.7-3                  MikMod decoder plugin for 
GStreamer 
ii  gstreamer0.8-misc        0.8.7-3                  Collection of various 
GStreamer plugins 
ii  gstreamer0.8-mpeg2dec    0.8.7-3                  MPEG1 and MPEG2 video 
decoder plugin for GStreamer 
ii  gstreamer0.8-oss         0.8.7-3                  OSS plugin for GStreamer 
ii  gstreamer0.8-plugin-apps 0.8.7-3                  Simple GStreamer 
applications 
ii  gstreamer0.8-plugins     0.8.7-3                  All GStreamer plugins 
ii  gstreamer0.8-sdl         0.8.7-3                  SDL videosink plugin for 
GStreamer 
ii  gstreamer0.8-sid         0.8.7-3                  C64 SID decoder plugin 
for GStreamer 
ii  gstreamer0.8-speex       0.8.7-3                  Speex plugin for 
GStreamer 
ii  gstreamer0.8-swfdec      0.8.7-3                  SWF (Macromedia Flash) 
decoder plugin for GStreamer 
ii  gstreamer0.8-theora      0.8.7-3                  Theora plugin for 
GStreamer 
ii  gstreamer0.8-tools       0.8.9-1                  Tools for use with 
GStreamer 
ii  gstreamer0.8-vorbis      0.8.7-3                  Vorbis plugin for 
GStreamer 
ii  gstreamer0.8-x           0.8.7-3                  X videosink plugin for 
GStreamer 
ii  libgstreamer-gconf0.8-0  0.8.7-3                  GConf support for 
GStreamer 
ii  libgstreamer-plugins0.8- 0.8.7-3                  Various GStreamer 
libraries and library plugins 
ii  libgstreamer-plugins0.8- 0.8.7-3                  Development files for 
various GStreamer library and library plug 
ii  libgstreamer0.8-0        0.8.9-1                  Core GStreamer libraries, 
plugins, and utilities 
ii  libgstreamer0.8-dev      0.8.9-1                  GStreamer development 
libraries and headers 
 
Comment 2 Georg Wittenburg 2005-02-24 17:33:59 UTC
And there's a backtrace generated by Amarok over here: 
http://sourceforge.net/mailarchive/forum.php?thread_id=6677060&forum_id=43757 
 
Thanks for looking into this. Regards, 
   Georg 
Comment 3 Ronald Bultje 2005-02-25 09:07:55 UTC
I think this is fixed in CVS, please re-check with 0.8.8 (when it comes out) or CVS.
Comment 4 Ronald Bultje 2005-02-25 09:08:22 UTC
(for my own sanity: the crash is in mad, it's the division by zero if we push
data before a header was read somehow...)
Comment 5 Georg Wittenburg 2005-03-01 00:46:02 UTC
I'll check as soon as 0.8.8 hits Debian unstable. Thanks! 
Comment 6 Georg Wittenburg 2005-03-17 00:04:31 UTC
It's working fine with 0.8.8. Thanks a lot! 
Comment 7 Ronald Bultje 2005-03-17 08:01:05 UTC
I can't find the duplicate anymore, so I'll just close this then...