Opened 12 years ago

Closed 11 years ago

Last modified 10 years ago

#4688 closed defect (fixed)

Cannot skip backward through commercials

Reported by: Ron Frazier <ron@…> Owned by: Isaac Richards
Priority: minor Milestone: unknown
Component: mythtv Version: unknown
Severity: medium Keywords:
Cc: Ticket locked: no

Description

Myth does not seem to allow you skip backward through commercials when a custlist is loaded.

Example: Say I have a cutlist loaded where a commercial starts at 10:05 and end at 12:35. While playing back, myth will jump through that commercial. If I then press the number 5 and then the skip back button, I would expect myth to jump back 5 minutes. If I did this at 12:40, I would expect it to jump to 7:40. However, it only jumps back to 10:05, and then immediate sees there is a commercial, and jumps right to 12:35 again.

There are only 2 ways to get it to skip back before the commercial. 1) Unload the cutlist, skip back, and then reload the cutlist. 2) If you jump back far enough so that it jumps past the current commercial AND the commercial prior to it, it will then exhibit the same type of bug but this time with respect to that prior commercial (ie: it will jump to the beginning of the prior commercial, see that it has reached a commercial, and immediately skip to the end of that commercial).

Change History (3)

comment:1 Changed 12 years ago by Ron Frazier <ron@…>

I forgot to mention....this happpens in version 16063.

comment:2 Changed 11 years ago by shane

Resolution: fixed
Status: newclosed

(In [20667]) Fixes #4688. Update the pause frame after backwards seek.

The pause frame is updated before the seek and after the seek has completed the NVP playback loop sees the pause frame number that is in the future. That frame number is greater than the current deleteIter.key() and triggers an unwanted skip forward.

comment:3 Changed 10 years ago by shane

(In [20722]) Fixes #4688. Update the pause frame after backwards seek.

(2nd attempt, first attempt [20667] was reverted in [20716])

The pause frame is updated before the seek and after the seek has completed the NVP playback loop sees the pause frame number that is in the future. That frame number is greater than the current deleteIter.key() and triggers an unwanted skip forward.

Instead of adding a 5th instance of the refresh the pause frame idiom, create NuppelVideoPlayer::RefreshPauseFrame?(void) and use that.

Note: See TracTickets for help on using tickets.