[gstreamer-bugs] [Bug 565734] New: WAV files wth LIST metadata are read as 0 seconds in length and do not play

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Fri Dec 26 14:42:47 PST 2008


If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
  http://bugzilla.gnome.org/show_bug.cgi?id=565734

  GStreamer | gst-plugins-good | Ver: 0.10.10
           Summary: WAV  files wth LIST metadata are read as 0 seconds in
                    length and do not play
           Product: GStreamer
           Version: 0.10.10
          Platform: Other
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-good
        AssignedTo: gstreamer-bugs at lists.sourceforge.net
        ReportedBy: java410 at gmail.com
         QAContact: gstreamer-bugs at lists.sourceforge.net
     GNOME version: Unspecified
   GNOME milestone: Unspecified


WAV files with a LIST sub chunk between the fmt sub chunk and the data sub
chunk are read by gstreamer as having length 0 seconds, and no audio is played.
WAV files will play normally after removing the LIST sub chunk from the file. 
I suspect a problem in gstwavparse, but this is only a guess.  

This bug is happening with GStreamer 0.10.21 and gst-plugins-good 0.10.10
(latest updates on Ubuntu Intrepid).  The bug is not present when I revert
gst-plugins-good to 0.10.7

I originally discovered this in Totem on Ubuntu and was able to recreate it
with gst-launch-0.10 .

Example: 
$ gst-launch-0.10 playbin uri=file:///file/test_fails.wav
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "playbin0".
Execution ended after 687480 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
FREEING pipeline ...

$ gst-launch-0.10 playbin uri=file:///file/test_works.wav
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstAudioSinkClock
Got EOS from element "playbin0".
Execution ended after 2094942920 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
FREEING pipeline ...

test files used:
http://java410.googlepages.com/test_fails.wav
http://java410.googlepages.com/test_works.wav

These should both be two second WAV files, and both play fine in every other
player I tried.  However, for test_fails.wav, gst-launch-0.10 exits immediately
without playing any audio.  Opening the file with Totem shows that GStreamer
believes the length is 0 seconds, and this is probably why it does not play
anything.  test_works.wav plays perfectly in both gst-launch-0.10 and Totem.
The second file is exactly the same as the first, except with the LIST sub
chunk removed.

Please let me know about any other information that is needed.  I have not
looked at a fix yet, as I know little about the WAV file format and would
probably break more than i fix.


-- 
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.

You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=565734.




More information about the gstreamer-bugs mailing list