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 755680 - DVD navigation not working?
DVD navigation not working?
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal normal
: 1.6.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks: 755662
 
 
Reported: 2015-09-26 21:28 UTC by Lionel Landwerlin
Modified: 2015-09-27 15:34 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
DVD test image (47.40 KB, application/gzip)
2015-09-26 21:28 UTC, Lionel Landwerlin
  Details
gst-launch-1.0 -v output (31.12 KB, text/plain)
2015-09-26 23:17 UTC, Tim-Philipp Müller
  Details
resindvd: Send gap updates to the segment stop during stills (3.59 KB, patch)
2015-09-27 03:08 UTC, Jan Schmidt
none Details | Review

Description Lionel Landwerlin 2015-09-26 21:28:37 UTC
Created attachment 312218 [details]
DVD test image

I'm trying to test DVD menus in Totem.
I couldn't get them to work with gst-launch either, so opening a bug here.

gst-launch-1.0 playbin uri=dvd:///tmp/dvd-test.iso video-sink=ximagesink
Comment 1 Lionel Landwerlin 2015-09-26 21:30:29 UTC
gunzip the test image to get a dvd iso.
Comment 2 Jan Schmidt 2015-09-26 23:02:17 UTC
What does gst-launch-1.0 output say with -v ?

Do you have the rsndvdbin and dvdspu elements from gst-plugins-bad?
Comment 3 Tim-Philipp Müller 2015-09-26 23:17:59 UTC
Created attachment 312222 [details]
gst-launch-1.0 -v output

This particular one doesn't work for me either in master.
Comment 4 Jan Schmidt 2015-09-27 02:17:57 UTC
The problem here is around the pipeline not prerolling. The presentation starts with a still frame plus audio track, and we don't handle it right - the audio chain is never prerolled. There's no data, but also not enough empty space before the still frame to trigger a GAP and cause preroll.

I could make the mpeg demuxer generate gap events to bring all pads up to the start of the still event, which would probably do get it to preroll.

The reason the buttons aren't clickable is that we don't schedule and activate PCI packets until the clock starts running - so we need to preroll. That could also be worked around - when activating a still frame in PAUSED, advance the PCI data to running time of the still frame.
Comment 5 Jan Schmidt 2015-09-27 03:08:33 UTC
Created attachment 312233 [details] [review]
resindvd: Send gap updates to the segment stop during stills

Ignore the normal gap threshold for laggy streams and
immediately catch all streams up to the end of the segment
when processing gap updates for a segment during a
still frame sequence.
Comment 6 Jan Schmidt 2015-09-27 03:16:14 UTC
This patch fixes it for me, with no regressions I can find on my usual suspect test discs. Pushed:

commit 664e0fb331ce18751ebe96b129fd125d4ae0a69c
Author: Jan Schmidt <jan@centricular.com>
Date:   Sun Sep 27 13:07:19 2015 +1000

    resindvd: Send gap updates to the segment stop during stills
    
    Ignore the normal gap threshold for laggy streams and
    immediately catch all streams up to the end of the segment
    when processing gap updates for a segment during a
    still frame sequence.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=755680
Comment 7 Jan Schmidt 2015-09-27 03:16:35 UTC
As an aside, which software generated that DVD menu?
Comment 8 Lionel Landwerlin 2015-09-27 15:12:33 UTC
I used bombono-dvd.
Thanks for the fix!