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 565734 - WAV files wth LIST metadata are read as 0 seconds in length and do not play
WAV files wth LIST metadata are read as 0 seconds in length and do not play
Status: RESOLVED DUPLICATE of bug 561580
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
0.10.10
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-12-26 22:42 UTC by java410
Modified: 2008-12-27 07:45 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
WAV file that demonstrates the bug (345.13 KB, audio/x-wav)
2008-12-26 22:44 UTC, java410
Details
same as failing WAV file without the LIST sub chunk (345.07 KB, audio/x-wav)
2008-12-26 22:46 UTC, java410
Details

Description java410 2008-12-26 22:42:46 UTC
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.
Comment 1 java410 2008-12-26 22:44:41 UTC
Created attachment 125364 [details]
WAV file that demonstrates the bug
Comment 2 java410 2008-12-26 22:46:28 UTC
Created attachment 125365 [details]
same as failing WAV file without the LIST sub chunk
Comment 3 Sebastian Dröge (slomo) 2008-12-27 07:45:44 UTC
Thanks for taking the time to report this bug.
This particular bug has already been reported into our bug tracking system, but we are happy to tell you that the problem has already been fixed. It should be solved in the next software version. You may want to check for a software upgrade.


*** This bug has been marked as a duplicate of 561580 ***