GNOME Bugzilla – Bug 546497
qtdemux cannot handle .mov file with multiple gif based streams
Last modified: 2018-11-03 14:38:36 UTC
Please describe the problem: I am trying to play a movie ( http://www.shsu.edu/~chm_tgc/sounds/ruther.mov ) which is apparently a .mov encoded as a GIF with audio. I downloaded the video and tried to play it in Totem, but I instead got a "Could not decode stream" error. I have all of the codecs installed and the problem was confirmed by #gstreamer on FreeNode. I tried playing the file on Windows using Quicktime, and it played perfectly, so it couldn't be a problem with the file. Steps to reproduce: 1. Download http://www.shsu.edu/~chm_tgc/sounds/ruther.mov 2. Open using Totem Actual results: A very brief frame of the video displays then Totem gives a "Could not decode stream" error. Expected results: Ideally, the whole video should play correctly. However, #gstreamer informed me that there's no decoder for the audio. However, the movie should at least display. Does this happen every time? yes Other information: I've tried playing it with Totem, Mplayer, and VLC. Totem doesn't work. Mplayer only plays about 20 seconds of the movie. And VLC gets the length of the movie, but doesn't actually play anything.
There are indee a bunch of complaints from qtdemux: unknown QuickTime node type QDMC unknown QuickTime node type gif unknown QuickTime node type WLOC unknown QuickTime node type \xa9cpy codein don't know about this either: gst_pb_utils_get_codec_description: No description available for media type: audio/x-gst-fourcc-QDMC but that can be fixed : http://wiki.multimedia.cx/index.php?title=QDesign_Music_Codec qtdemux then says: Track shorter than 20% (144/600 vs. 39203/600) of the stream found, assuming preview image or something; skipping track and the pixbuf image loader warns: Unrecognized image file format ERROR: from element /playbin0/decodebin0/gdkpixbuf0: Could not decode stream. Its certainly an intersting file: $ mp4info ruther.mov mp4info version 1.5.0.1 ruther.mov: Segmentation fault $gst-discover ruther.mov error: 'ruther.mov' does not appear to be a media file $gstfile.py ruther.mov Running on ruther.mov Mime Type : video/quicktime Length : 0m 0s 0 Audio: 0m 0s 0 Video: 0m 0s 0 Video : 0 x 0 @ 0/1 fps Other unsuported Multimedia stream : audio/x-gst-fourcc-QDMC, rate=(int)44100, channels=(int)1
What have you used to make the file? I added some logging to dump the content of the stream: 00000000 (0x8336578): 21 f9 04 04 c8 00 ff 00 2c 00 00 00 00 c1 01 63 !.......,......c 00000010 (0x8336588): 01 00 06 fd 40 82 70 48 2c 1a 8f c8 a4 72 c9 6c ....@.pH,....r.l 00000020 (0x8336598): 3a 9f d0 a8 74 4a ad 5a af d8 ac 76 cb ed 7a bf :...tJ.Z...v..z. thats not a gif image or at least it misses the header: The header would start with e.g. "GIF89a" and doing grep "GIF89a" ruther.mov says its there. $ strings ruther.mov | grep "GIF89a" | wc -l 3 how many frames are supposed to be there?
I actually did not make the file, I only downloaded it. However, the movie itself is made of discrete frames, like a slide show that's narrated. When viewing it in Windows on quicktime, I counted 65 separate frames in the movie which is about 1 minute 30 seconds long. I hope that helps, and I can confirm 3 occurrences of "GIF89a" in the file on my linux box.
QDMC is QDesign Music 1, we only have a QDesign Music 2 decoder :/
It has 3 streames, where each one is a gif. vlc says they are 450x356 and 8.333 fps and qdmc audio is mono, 44100 Hz, 705 kbit/s. mplayer says 449x355 8bpp 0.500 fps and qdmc audio is 44100 Hz, 1 ch, s16le, 15.9 kbit. gstreamer detects the 0.5 fps too, but has issues decoding the gifs.
Reopening, as I can't see any open question. (In reply to comment #4) > QDMC is QDesign Music 1, we only have a QDesign Music 2 decoder :/ > Is the bug about implementing the QDM1 decoder then? If so, please adopt the title and set to NEW. If this is going to be WONTFIX, please mark the bug as such.
The clip is interesting fro various reasons (multiple channels, unusual codecs). Atleast we should be able to get the picture part working.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/6.