Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#11288 closed Patch - Bug Fix (fixed)

Cleanup of DVD startup to improve playback reliability

Reported by: peper03@… Owned by: Richard <peper03@…>
Priority: minor Milestone: 0.27
Component: MythTV - DVD Playback Version: Unspecified
Severity: medium Keywords:
Cc: Ticket locked: no

Description

The startup code for DVD playback jumps around somewhat trying to find a playable title, which is then used to create audio/video decoders before playback is restarted at firstplay.

This doesn't always work as it can leave the DVDs VM in an inconsistent state and, depending on the DVD, looks ugly as playback starts and then restarts or appears to jump somewhere else after a couple of seconds. Because the VM can be left in an inconsistent state, menu navigation/selection issues can arise, which can make it difficult to start playback.

The attached patch attempts to clean up the startup code. The DVDRingBuffer no longer tries to find a playable title in OpenFile?, but rather just lets the VM get on with playback. AVFormatDecoder no longer processes the initial frames more than is required to create decoders. Once this has been achieved, any cached data is flushed before jumping back to 'firstplay' (and cleanly resetting the VM). By not displaying the initial frames used to determine the decoders and flushing the cached data, the ugly jump at the start of some DVDs is no longer visible.

Attachments (2)

DVDPlaybackCleanup.diff (6.7 KB) - added by peper03@… 11 years ago.
DVDPlaybackCleanup-0.26.diff (6.8 KB) - added by peper03@… 11 years ago.
Same patch just adapted to apply cleanly to the current 0.26-fixes

Download all attachments as: .zip

Change History (6)

Changed 11 years ago by peper03@…

Attachment: DVDPlaybackCleanup.diff added

comment:1 Changed 11 years ago by Richard <peper03@…>

Owner: set to Richard <peper03@…>
Resolution: fixed
Status: newclosed

In 414de880b9d65263849e2339df9e083df0301033/mythtv:

Simplify DVD startup to improve playback reliability

The startup code for DVD playback jumps around somewhat trying to find
a playable title, which is then used to create audio/video decoders
before playback is restarted at firstplay.

This doesn't always work as it can leave the DVDs VM in an
inconsistent state and, depending on the DVD, looks ugly as playback
starts and then restarts or appears to jump somewhere else after a
couple of seconds. Because the VM can be left in an inconsistent
state, menu navigation/selection issues can arise, which can make it
difficult to start playback.

The attached patch attempts to clean up the startup code. The
DVDRingBuffer no longer tries to find a playable title in OpenFile??,
but rather just lets the VM get on with playback. AVFormatDecoder no
longer processes the initial frames more than is required to create
decoders. Once this has been achieved, any cached data is flushed
before jumping back to 'firstplay' (and cleanly resetting the VM). By
not displaying the initial frames used to determine the decoders and
flushing the cached data, the ugly jump at the start of some DVDs is
no longer visible.

Fixes #11288

Signed-off-by: Stuart Morgan <smorgan@…>

comment:2 Changed 11 years ago by Raymond Wagner

Milestone: unknown0.27

Changed 11 years ago by peper03@…

Same patch just adapted to apply cleanly to the current 0.26-fixes

comment:3 Changed 11 years ago by Richard <peper03@…>

In c1929686fd424b51c9725100e2e326525c879b0d/mythtv:

Simplify DVD startup to improve playback reliability

The startup code for DVD playback jumps around somewhat trying to find
a playable title, which is then used to create audio/video decoders
before playback is restarted at firstplay.

This doesn't always work as it can leave the DVDs VM in an
inconsistent state and, depending on the DVD, looks ugly as playback
starts and then restarts or appears to jump somewhere else after a
couple of seconds. Because the VM can be left in an inconsistent
state, menu navigation/selection issues can arise, which can make it
difficult to start playback.

The attached patch attempts to clean up the startup code. The
DVDRingBuffer no longer tries to find a playable title in OpenFile???,
but rather just lets the VM get on with playback. AVFormatDecoder no
longer processes the initial frames more than is required to create
decoders. Once this has been achieved, any cached data is flushed
before jumping back to 'firstplay' (and cleanly resetting the VM). By
not displaying the initial frames used to determine the decoders and
flushing the cached data, the ugly jump at the start of some DVDs is
no longer visible.

Fixes #11288

Backport from master [414de880b]

Signed-off-by: Stuart Morgan <smorgan@…>

comment:4 Changed 11 years ago by Richard <peper03@…>

In 58035465336d74892630ca6e5d213a2510ed82b2/mythtv:

Update angle information and chapter times that was indirectly
completely disabled by the fix for #11288

Fixes #11372, Refs #11288

Signed-off-by: Stuart Morgan <smorgan@…>

Note: See TracTickets for help on using tickets.