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 643141 - Totem RHEL 6 cannot play MTS video file
Totem RHEL 6 cannot play MTS video file
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
unspecified
Other Linux
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-02-23 22:55 UTC by Chris
Modified: 2011-02-24 18:34 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
GST_DEBUG output (949.53 KB, application/x-bzip2)
2011-02-23 23:28 UTC, Chris
Details
first 999k bytes of MTS file (999.00 KB, model/vnd.mts)
2011-02-23 23:29 UTC, Chris
Details

Description Chris 2011-02-23 22:55:13 UTC
### SYSTEM: #############################

Scientific Linux 6 x86_64 (RHEL 6 clone)
Totem 2.28.6
fluendo-codecs-complete-bundle-12-4.x86_64.rpm
MTS video file from 1080 Sony Handicam

### PROBLEM: ############################

Totem cannot play a MTS file, but gst-launch plays OK (without audio).

###TOTEM OUTPUT: ########################

$ totem video_file.MTS

** Message: Error: Internal data flow error.
gstbasesrc.c(2543): gst_base_src_loop (): /GstPlayBin2:play/GstURIDecodeBin:uridecodebin0/GstFileSrc:source:
streaming task paused, reason not-negotiated (-4)

### GST-LAUNCH OUTPUT: ###################

$ gst-launch playbin uri=file:///video_file.MTS

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
WARNING: from element /GstFluAC3Dec:fluac3dec0: Internal GStreamer error: negotiation problem.  Please file a bug at http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer.
Additional debug info:
fluac3dec.c(618): gst_fluac3dec_sink_linked (): /GstPlayBin:playbin0/GstDecodeBin:decodebin0/GstFluAC3Dec:fluac3dec0:
The Dolby license does not allow to use the Fluendo AC3 codec outside the totem media player
** Message: don't know how to handle subpicture/x-pgs
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "playbin0".
Execution ended after 26558592683 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

### OBSERVATION ###########################

The file plays smoothly via gst-launch except audio which is probably explained by the Dolby license comment.  Totem will show the first frame of the video for a split second and then error out.
Comment 1 Tim-Philipp Müller 2011-02-23 23:11:49 UTC
Could you do this:

1)

 $ GST_DEBUG=*:5 totem /path/to/video.mts 2>dbg.log
 ... wait for error ...
 ... quit totem or press control-C ...
 $ bzip2 dbg.log

and attach dbg.log.bz2 to this bug?

2)

 $ head --bytes=999k  /path/to/foo.mts > head.mts

and attach head.mts to this bug?
Comment 2 Chris 2011-02-23 23:28:10 UTC
Created attachment 181771 [details]
GST_DEBUG output
Comment 3 Chris 2011-02-23 23:29:27 UTC
Created attachment 181772 [details]
first 999k bytes of MTS file
Comment 4 Tim-Philipp Müller 2011-02-23 23:56:37 UTC
Thanks.

This looks like a bug in the fluendo codec pack plugins, you should report that to their customer support.

The file plays fine for me with the demuxers + codecs shipped by GStreamer (gst-plugins-ugly, -bad and gst-ffmpeg).
Comment 5 Chris 2011-02-24 00:54:56 UTC
I had some luck with the small 999k file I uploaded as well:

When I try to open the small head.MTS file I uploaded, totem opens a dialog box:

head.MTS requires an additional plugin to decode this file
The following plugin is required:
subpicture/x-pgs decoder
Do you want to search for this now?

I can choose Help, Close, or Search

Choosing Search gives:  Failed to search for plugin.  Could not find plugin in any configured software source.

But, the file plays for a split second with sound with no more errors.
Comment 6 Tim-Philipp Müller 2011-02-24 09:26:12 UTC
To be sure, the subpicture/x-pgs thing is unrelated. Even if the short snippet plays fine for you too, it still looks to me like a bug in their plugins, judging by the log. But feel free to make a larger chunk of the file available somewhere if you'd like me to test it further with the GStreamer-provided plugins.
Comment 7 Julien MOUTTE 2011-02-24 11:04:18 UTC
It looks like the caps pushed by the audio decoder is rejected by the sink. I tried the file here with Fluendo codecs and it plays fine.

That can be an issue with your sound layer, Alsa ? Pulse ? Or some unsupported audio conversion, maybe audioconvert with the channel positions ?
Comment 8 Tim-Philipp Müller 2011-02-24 12:24:29 UTC
Where do you see that in the log?

To me it looks like the problem is either with fluvadec, and/or with the subpicture/x-pgs stream and playbin2's suboverlay, either because of the missing subtitle decoder/overlay (dvdspu) or the non-raw video sink.
Comment 9 Julien MOUTTE 2011-02-24 12:51:27 UTC
I was saying that because of the not-negotiated errors around caps changes from the AC3 decoder but could be something else. If the video is playing fine with playbin using gst-launch when fluac3dec is not used that would confirm that hipothesis.

I will try with a machine where VDPAU is enabled.
Comment 10 Chris 2011-02-24 18:34:29 UTC
My setup is:

Scientific Linux 6 x96_64 (RHEL 6 clone)

Soundcard:  Realtek ALC888S using ALSA Intel HDA module and Pulse Audio

Sound Output:  S/PDIF IEC958

Video: nVidia GeForce 9600 GT w/ nVidia Driver 260.19.36

gstreamer-properties:
   Audio:  Default Output Plugin:  Autodetect
   Video:  Default Output Plugin:  Autodetect

Software:
   gstreamer-0.10.29-1
   gstreamer-plugins-bad-free-0.10.19-2
   gstreamer-plugins-base-0.10.29-1
   gstreamer-plugins-good-0.10.23-1
   gstreamer-python-0.10.16-1
   gstreamer-tools-0.10.29-1
   PackageKit-gstreamer-plugin-0.5.8-13
   phonon-backend-gstreamer-1:4.6.2-16
   Totem 2.28.6
   fluendo-codecs-complete-bundle-12-4

I originally had a default RHEL6 install (what ever that is) and the vid didn't play.  Added the fluendo codec pack and the vid still didn't play.  Finally I added whatever gstreamer plugins I could find via Add/Remove Software (I don't remember which) and the vid didn't play.  On a separate machine, I enabled the RPMForfge repo, installed every gstreamer plugin I could find, and the video plays.

So to sum it up:  RHEL + fluendo = wont play.
                  RHEL + fluendo + RPMForge = will play.
                  RHEL + RPMForge = will play.

So my problem is "resolved" by not using fluendo.  I am in contact with fluendo and will post back if anything get resolved.