GNOME Bugzilla – Bug 623663
[typefinding] mpeg-ts file detected as audio/mpeg
Last modified: 2010-07-18 10:45:28 UTC
I have a file generated by a video recorder that I play with VLC but not with gstreamer. This is a mts file, and I try: gst-launch filesrc=myfile.mts ! decodebin ! ffmpegcolorspace ! directdrawsink -v I get the following error: Setting pipeline to PAUSED ... /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src: caps = audio/mpeg, mpegversion=(int)1, layer=(int)1 Pipeline is PREROLLING ... /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMPEGAudioParse:mpegaudioparse0.GstPad:sink: caps = audio/mpeg, mpegversion=(int)1, layer=(int)1 ERROR: from element /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMPEGAudioParse:mpegaudioparse0: Failed to parse stream Additional debug info: ..\..\..\..\..\Source\gst-plugins-ugly\gst\mpegaudioparse\gstmpegaudioparse.c(1541): gst_mp3parse_handle_data (): /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMPEGAudioParse:mpegaudioparse0 ERROR: pipeline doesn't want to preroll. Setting pipeline to NULL ... /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMPEGAudioParse:mpegaudioparse0.GstPad:sink: caps = NULL /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src: caps = NULL Freeing pipeline ... Ouput of VLC gives for audio: Codec A52Audio (aka AC3)(a52), stereo, 48000Hz, 256kb/s Using the following pipeline works for displaying video: gst-launch filesrc=myfile.mts ! mpegtsdemux ! decodebin ! ffmpegcolorspace ! directdrawsink -v See mts file attached
There doesn't seem to be an attachement? (Maybe it was too large? I think max. size allowed is 1MB, use head --bytes=999k file.mts > start.mts in that case)
Created attachment 165725 [details] MTS file part 1
Created attachment 165726 [details] MTS file part 2
Created attachment 165727 [details] MTS file part 3
Created attachment 165728 [details] MTS file part 4
Created attachment 165729 [details] MTS file part 5 Had to split the file into 5 pieces to allow attachments.
Thanks!
commit 01ace4a124a8f28d4892b5f3194e00c43b8c12e0 Author: Tim-Philipp Müller <tim.muller@collabora.co.uk> Date: Sun Jul 18 11:38:19 2010 +0100 tests: add unit test for mpeg-ts typefinding bug See #623663. commit bd0adb11fd11ff1b026ab27f16658ecf117cca42 Author: Tim-Philipp Müller <tim.muller@collabora.co.uk> Date: Sun Jul 18 11:24:46 2010 +0100 typefinding: make mpeg-ts typefinder scan more data We only look for packets with payload, but it appears there may be packets without, which makes it harder to find the N packets with payload in a row that we need in order to typefind this successfully, so scan some more data than necessary in the optimistic scenario. Alternatively we could change IS_MPEGTS_HEADER(). Fixes #623663.