Ticket #435 (closed enhancement: fixed)
Force mid-roll to play if the user skips ahead on the timeline
| Reported by: | paul | Owned by: | paul |
|---|---|---|---|
| Priority: | critical | Milestone: | OVA for Flowplayer (v1.0.1) |
| Component: | OVA for Flowplayer | Version: | OVA for Flowplayer (trunk) |
| Keywords: | Cc: | ||
| Forum thread: |
Description
Force any skipped mid-rolls to play if the user skips through on the timeline.
Change History
comment:2 Changed 11 months ago by paul
- Status changed from new to closed
- Resolution set to fixed
Attempted (but probably unreliable) work around implemented in 1.1 RC1 Build 13.
onBeforeSeek records the position of the timeline on the first event, then when onSeek is received that value is used as the starting position + the current time to determine the mid-rolls skipped. The variable holding the first time position is reset onSeek.
Note: See
TracTickets for help on using
tickets.

Implemented in 1.1 RC1 Build 10, but there is a problem with seeking in Flowplayer 3.2.11:
Here's the issue:
Test 1 - 60 second clip, user seeks to 33 seconds from 9 seconds on the timeline:
Notice in that debug trace that the "onBeforeSeek" is called twice when seeking. The first time it is called the event.info value is a strange number (56.209677... - nothing to do with the point in the timeline that I seeked to which is 33.72 seconds), but the second event is right - the event.info value is correct 33.72 and the current time is 9.4.
One instance of the onSeek event is right in this case, but now look at another test run - seeking to 34 seconds from 4 seconds on the timeline:
12:16:02 GMT+0100 Debuggable: >>> ON BEFORE SEEK event.info = 58.225806451612904, current time in clip = 4.282
12:16:02 GMT+0100 Debuggable: >>> ON BEFORE SEEK event.info = 34.935483870967744, current time in clip = 4.282
Once again the onBeforeSeek fired twice with the first firing being completely incorrect and the second correct, but what is worse in this case is that the onSeek didn't fire at all.
I'm having real difficulty with this - I can't rely on the seek events and the data in them..