Please sign in to comment.
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 <email@example.com>
- Loading branch information...
Showing with 38 additions and 59 deletions.