GNOME Bugzilla – Bug 383471
cannot link 1 ch raw 24-bit PCM audio
Last modified: 2006-12-08 17:07:42 UTC
# totem strogg_tutorial.mov hangs after 3 s, with error ** (totem:19128): WARNING **: could not link audio/x-raw-int, width=(int)24, depth=(int)32, endianness=(int)4321, signed=(boolean)true, rate=(int)32000, channels=(int)1: -4 File is obtained from # wget http://www.enemyterritory.com/video/strogg_tutorial_avi.zip competitors: mplayer ok, xine audio screaming, vlc no audio
Interesting: width 24, depth 32. Should probably be the other way around.
Works fine for me with CVS as well as Ubuntu Edgy. You selected HEAD CVS as version, is this correct?
Oops, should have written # wget http://www.enemyterritory.com/video/strogg_tutorial_mov.zip This is a 296M download. That avi works for me as well, but not the quicktime.
Created attachment 77965 [details] [review] Fix caps for 24 bit raw PCM audio (apply with caution, see description) Problem is caused by qtdemux. Bug component can change to gst-plugins-bad and summary to something like "[qtdemux] 24 bit raw PCM audio not working". The attached patch fixes the caps, which shows up another problem: Apparently the code path for 24 bit raw audio is totally untested (there is a FIXME comment where the 24 bit caps are set up). WARNING: After patch is applied, the stream will play but its audio is played back as static/noise! Turn the speaker volume down before attempting playback! Every second or so, this warning is generated: WARNING: Element "audiosink-actual-sink-alsa" warns: gstbaseaudiosink.c(696): gst_base_audio_sink_render (): /playbin0/abin/audiosink/audiosink-actual-sink-alsa: Unexpected discontinuity in audio timestamps of more than half a second (0:00:00.500000000), resyncing
Created attachment 77966 [details] [review] Fix caps for 24 bit raw PCM audio (2) This changes the caps to depth = 24, width = 24 instead. All issues go away and it plays fine.
Patch by: Ren�� Stadler <mail at renestadler de> * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration), (gst_qtdemux_handle_src_query), (qtdemux_parse_trak), (qtdemux_audio_caps): Fix caps for 24 bit raw PCM audio (2). Fixes #383471.