Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#7374 closed defect (fixed)

Seeking broken at greater than 3x

Reported by: anonymous Owned by: gigem
Priority: critical Milestone: 0.22
Component: MythTV - Video Playback Version: 0.22rc1
Severity: high Keywords: seeking opposite
Cc: Ticket locked: no

Description

Seeking at speeds greater than 3x with SVN 22540 results in the video seeking in the wrong direction.

After pressing seek FORWARD twice (5x), -v playback reveals:

2009-10-20 01:59:25.319 NVP(0): DoPlay() -- setting unpaused
2009-10-20 01:59:25.319 AFD: DoRewind(780, don't discard frames)
2009-10-20 01:59:25.319 Dec: DoRewind(780 (840), don't discard frames)
2009-10-20 01:59:25.319 Dec: FindPosition(780, search not adjusted) --> [52:780(45480772)]
2009-10-20 01:59:25.320 AFD: SeekReset(780, 0, do flush, don't discard)
2009-10-20 01:59:25.320 AFD: SeekReset() flushing
2009-10-20 01:59:25.473 AFD: DoRewind(738, don't discard frames)
2009-10-20 01:59:25.473 Dec: DoRewind(738 (781), don't discard frames)
2009-10-20 01:59:25.473 Dec: FindPosition(738, search not adjusted) --> 
			[49:735(42347752),50:750(43283616)]
2009-10-20 01:59:25.486 AFD: SeekReset(735, 0, do flush, don't discard)
2009-10-20 01:59:25.486 AFD: SeekReset() flushing
2009-10-20 01:59:25.634 AFD: DoRewind(693, don't discard frames)
2009-10-20 01:59:25.634 Dec: DoRewind(693 (736), don't discard frames)
2009-10-20 01:59:25.634 Dec: FindPosition(693, search not adjusted) --> 
			[46:690(39398220),47:705(40258696)]
.
.
.

Attachments (1)

mythtv-7374-fix_ffwd_rew_direction.patch (531 bytes) - added by sphery 10 years ago.
Fixes copy-paste/logic-reorder typo from [22539] and [22540]

Download all attachments as: .zip

Change History (6)

comment:1 Changed 10 years ago by joe@…

Forgot to add email to ticket.

comment:2 Changed 10 years ago by anonymous

Looking at changeset 22540 it appears that they inadvertently reversed the logic using -ffrew_skip if playspeed is greater than 0.

Before:

  ffrew_skip = (play_speed > 0.0) ? ffrew_skip : -ffrew_skip; 

After:

  if (play_speed > 0.0) 
      ffrew_skip = -ffrew_skip; 

Suggested change, just reverse the condition on line 4466:

  if (play_speed < 0.0)

I am no programmer, in fact, this is the first C++ I have looked at since I learned Borland in the early 90s in highschool... I'll leave it to someone who knows what they are doing to create the patch.

Changed 10 years ago by sphery

Fixes copy-paste/logic-reorder typo from [22539] and [22540]

comment:3 Changed 10 years ago by sphery

Owner: changed from Janne Grunau to gigem
Status: newassigned

The attached patch fixes the typo, as mentioned at http://www.gossamer-threads.com/lists/mythtv/dev/403137#403137 and repeated above; however, I'm not applying the patch as it significantly changes the smoothness and speed of the FFwd/Rew, so I'm leaving it for you to look at, David, since you know what you were expecting of your original changes.

comment:4 Changed 10 years ago by gigem

Resolution: fixed
Status: assignedclosed

(In [22547]) Fixed reversed fast-forward/rewind check introduced in [22539] and [22540]. Ugh, I know better than to make a "trivial change" at the last minute and not retest before committing! Fixes #7374 Refs #6982.

comment:5 Changed 10 years ago by gigem

(In [22548]) Fixed reversed fast-forward/rewind check introduced in [22539] and [22540]. Ugh, I know better than to make a "trivial change" at the last minute and not retest before committing! Fixes #7374 Refs #6982.

Note: See TracTickets for help on using tickets.