GNOME Bugzilla – Bug 628790
qtdemux: OSD displays persistent chapters subtitles
Last modified: 2013-03-31 23:21:44 UTC
Used Handbrake to rip DVD titles to H.264 / AVC m4v files with the 'Chapter Markers' option set. When playing these movies using Totem on Ubuntu 10.04LTS with GStreamer back-end you get an OSD displaying the chapter title. The OSD is persistent and does not time-out. Similar issue is seen playing movies with Moovida 1.00x which I understand is also backended by GStreamer.
Does it work with other players? Can you attach a screenshot or even make a short version of the file?
The problem does not occur when m4v file is played with other players such as XBMC or VLC Media Player. I have noticed that PlexApp has started doing this with the latest release (do they use gstreamer?) Thought you might ask for a sample file :) I'll see if I can create one, might take a few days.
Make a screenshot for a start if that is easier.
Created attachment 171124 [details] Screenshot showing the OSD chapter title Attached a screenshot showing the chapter title as displayed on the screen. Please note that this issue is with respect to persistent nature of this title, i.e. it is displayed continuously and does not disappear after a few seconds. The screenshot shows totem, but I have also seen this issue with other players that appear to be GStreamer based, and not in players that are not, for example VLC and XBMC.
GStreamer seems to treat that chapter-title as a subtitle that is spanning the duration of the clip. Either gstreamer reads the subtitle the wrong way or Handbrake write it the wrong way. I guess we really need a small video to verify. Which version of handbrake did you used and under which os (linux ?) which linux distro do you run and what are the gstreamer versions. many distros have extra repositories with latest stable gstreamer releases (like the gstreamer ppa for ubuntu). It wound be nice to see if it works with those.
Package: handbrake-gtk Status: install ok installed Priority: optional Section: graphics Installed-Size: 12548 Maintainer: John Stebbins <jstebbins.hb@gmail.com> Architecture: i386 Source: handbrake Version: 0.9.4.3284-0ubuntu2~filthypants Depends: libatk1.0-0 (>= 1.29.3), libbz2-1.0, libc6 (>= 2.7), libcairo2 (>= 1.2.4), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2 (>= 0.78), libfontconfig1 (>= 2.8.0), libfreetype6 (>= 2.2.1), libgcc1 (>= 1:4.1.1), libglib2.0-0 (>= 2.16.0), libgstreamer-plugins-base0.10-0 (>= 0.10.12), libgstreamer0.10-0 (>= 0.10.0), libgtk2.0-0 (>= 2.18.0), libgudev-1.0-0 (>= 147), libnotify1 (>= 0.4.5), libnotify1-gtk2.10, libpango1.0-0 (>= 1.18.0), libsoup2.4-1 (>= 2.4.0), libstdc++6 (>= 4.4.0), libwebkit-1.0-2 (>= 1.1.1), libxml2 (>= 2.6.27), zlib1g (>= 1:1.1.4) Conflicts: handbrake Description: versatile DVD ripper and video transcoder - GTK GUI HandBrake is a versatile, easy-to-use tool for converting DVDs and other videos into H.264, MPEG-4, or OGG formatted media. It's particularly useful for making videos that are compatible with portable video devices such as the Apple iPod/iPhone. This package contains the graphical variant, ghb. Homepage: http://www.handbrake.fr/
Ubuntu 10.04LTS DISTRIB_ID=Ubuntu DISTRIB_RELEASE=10.04 DISTRIB_CODENAME=lucid DISTRIB_DESCRIPTION="Ubuntu 10.04.1 LTS" Linux kernel: 2.6.32-25-generic
I used the totem package to replicate the issue: Package: totem Status: install ok installed Priority: optional Section: video Installed-Size: 1528 Maintainer: Ubuntu Desktop Team <ubuntu-desktop@lists.ubuntu.com> Architecture: i386 Version: 2.30.2-0ubuntu1 Replaces: totem-common (<< 2.28.1-1), totem-gstreamer (<< 2.27.1), totem-xine (<< 2.27.1) Provides: totem-gstreamer, totem-xine Depends: libatk1.0-0 (>= 1.29.3), libc6 (>= 2.7), libcairo2 (>= 1.2.4), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2 (>= 0.82), libfontconfig1 (>= 2.8.0), libfreetype6 (>= 2.2.1), libgconf2-4 (>= 2.27.0), libglib2.0-0 (>= 2.23.5), libgstreamer-plugins-base0.10-0 (>= 0.10.26), libgstreamer0.10-0 (>= 0.10.26), libgtk2.0-0 (>= 2.20.0), libice6 (>= 1:1.0.0), liblaunchpad-integration1 (>= 0.1.17), libnautilus-extension1 (>= 1:2.29.1), libpango1.0-0 (>= 1.14.0), libpython2.6 (>= 2.6), libsm6, libtotem-plparser17 (>= 2.29.1), libunique-1.0-0 (>= 1.0.0), libx11-6 (>= 0), libxml2 (>= 2.6.27), libxrandr2 (>= 0), libxtst6, libxxf86vm1, zlib1g (>= 1:1.1.4), gstreamer0.10-plugins-base (>= 0.10.26), gstreamer0.10-alsa | gstreamer0.10-audiosink, gstreamer0.10-plugins-good (>= 0.10.7), gstreamer0.10-x, gnome-icon-theme (>= 2.15.90), totem-common (>= 2.30), totem-common (<< 2.31) Recommends: totem-mozilla (>= 2.30.2-0ubuntu1), totem-plugins (>= 2.30.2-0ubuntu1) Suggests: gnome-codec-install, gstreamer0.10-pulseaudio (>= 0.10.16-5), gstreamer0.10-plugins-ugly, gstreamer0.10-plugins-bad, gstreamer0.10-ffmpeg Conflicts: gnome-control-center (<< 2.15.90), totem (<< 0.99.12-2), totem-gstreamer (<< 2.27.1), totem-mozilla (<< 2.20.0-3), totem-xine (<< 2.27.1) Description: A simple media player for the GNOME desktop based on GStreamer Totem is a simple yet featureful media player for GNOME which can read a large number of file formats. It features : . * Shoutcast, m3u, asx, SMIL and ra playlists support * DVD (with menus), VCD and Digital CD (with CDDB) playback * TV-Out configuration with optional resolution switching * 4.0, 5.0, 5.1 and stereo audio output * Full-screen mode (move your mouse and you get nice controls) with Xinerama, dual-head and RandR support * Aspect ratio toggling, scaling based on the video's original size * Full keyboard control * Simple playlist with repeat mode and saving feature * GNOME, Nautilus and GIO integration * Screenshot of the current movie * Brightness and Contrast control * Visualisation plugin when playing audio-only files * Video thumbnailer for nautilus * Nautilus properties page * Works on remote displays * DVD, VCD and OGG/OGM subtitles with automatic language selection * Extensible with plugins Homepage: http://www.gnome.org/projects/totem/ Original-Maintainer: Sebastien Bacher <seb128@debian.org>
Created attachment 171220 [details] Handbrake profile used I've attached the handbrake profile I used to rip the dvds
Package: libgstreamer0.10-0 Status: install ok installed Priority: optional Section: libs Installed-Size: 2732 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> Architecture: i386 Source: gstreamer0.10 Version: 0.10.28-1 Replaces: gobject-introspection-repository (<< 0.6.5-2) Depends: libc6 (>= 2.10), libglib2.0-0 (>= 2.22.0), libxml2 (>= 2.7.4) Suggests: gstreamer0.10-tools, gstreamer0.10-plugins Conflicts: gstreamer0.10-plugins-base (<< 0.10.25.2), libgstreamer-plugins-base0.10-0 (<< 0.10.11cvs20070110-0ubuntu5) Description: Core GStreamer libraries and elements GStreamer is a streaming media framework, based on graphs of filters which operate on media data. Applications using this library can do anything from real-time sound processing to playing videos, and just about anything else media-related. Its plugin-based architecture means that new data types or processing capabilities can be added simply by installing new plug-ins. . This package contains the core library and elements. Original-Maintainer: Maintainers of GStreamer packages <pkg-gstreamer-maintainers@lists.alioth.debian.org> Homepage: http://gstreamer.freedesktop.org
Could you make such a rip available somewhere? Or the first 10MB-20MB or so? (enough so that the OSD disappears in other players; create with head --bytes=20m foo.m4v > part.m4v) Have you tried upgrading to ubuntu maverick? Or added the GStreamer PPA (which has more recent versions of the various GStreamer packages)? Moving to -good (qtdemux) for now..
It does appear that Handbrake inserts a subtitles, so it is possible to workaround the issue by turning subtitles off. I don't know if there is a problem with the subtitles created by Handbrake or with the way GStreamer displays them. Normally subtitles should disappear after a short period of time. I've uploaded an example video 15MB as requested. http://dl.dropbox.com/u/12976171/Test%20Project.m4v
Nice sample file, thanks for that. Can't even get the subtitles to show in VLC or mplayer, but can reproduce this with totem/gstreamer. (Btw, do we know for sure that the chapter OSD isn't supposed to be persistent?)
It's there to let you skip to the next chapter, not for display. VLC does that. FFWD goes to next chapter. It doesn't display chapters as subtitles. Totem doesn't let you skip chapters. PS. I have no idea if this is an abuse of the spec.
*** Bug 621853 has been marked as a duplicate of this bug. ***
commit 1cff6427f16791175a2ebd91bc59da62d6b4a254 Author: Arnaud Vrac <avrac@freebox.fr> Date: Fri Feb 22 19:06:52 2013 +0100 qtdemux: skip disabled tracks ISO/IEC 14496-12 specifies disabled tracks should be completely ignored, so just do it. Avoids deadlock during prerolling for some files. Also prevents 'chapter' subtitle tracks from showing up. https://bugzilla.gnome.org/show_bug.cgi?id=693993 https://bugzilla.gnome.org/show_bug.cgi?id=628790
The specification may say that the track without the enabled flag should be treated as if it were not present, but no player really does it. Both QuickTime and VLC display audio and subtitle track where "Track Enabled" is false. This patch unnecessarily hides playable tracks. There must be a better way to filter out chapter data.
Looking at they way mp4v2 adds chapter data, the proper way to detect chapter track would be to find tref.chap reference atom in video track (although it could be in other track as well) and match it against the track id for the chapter track.
Matej: is your goal to extract/expose the chapter information, or do you have files with other tracks which are now disabled? The chapter information should be exposed in a different way, using GstToc + event.
I'm not looking to expose the chapter information, although I might do that later. I have some files that are perfectly playable in other players (QuickTime, VLC) but gstreamer now ignores audio and subtitle tracks. I'll post a patch later today.
Created attachment 239882 [details] [review] Revert patch that hides disable track
Created attachment 239883 [details] [review] Patch to detect chapter track and ignore it
Can you point me to a file with "disabled" non-chapter tracks that are exposed in quicktime?
Sure, you can find it here: https://s3.amazonaws.com/MatejK/disabled-tracks.m4v Both Audio and Subtitle track have the "Track Enabled" flag set to 0 QuickTime will not play the audio, but does allow to select and enable subtitle track All other players that I tested (VLC, MPlayer, Movist) allow to select both audio and subtitle track.
Created attachment 240270 [details] [review] Patch to detect chapter track and ignore it Updated patch, sets GST_STREAM_FLAG_UNSELECT on disabled streams and also GST_STREAM_FLAG_SPARSE on subtitle streams.