Bug 136958 - [MSE][Mac] work around AVSampleBufferRenderSynchronizer early callbacks
Summary: [MSE][Mac] work around AVSampleBufferRenderSynchronizer early callbacks
Status: ASSIGNED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Media (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Eric Carlson
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2014-09-19 13:13 PDT by Eric Carlson
Modified: 2014-09-19 16:00 PDT (History)
3 users (show)

See Also:


Attachments
Proposed patch. (2.74 KB, patch)
2014-09-19 13:19 PDT, Eric Carlson
no flags Details | Formatted Diff | Diff
Rebased patch (2.58 KB, patch)
2014-09-19 13:29 PDT, Eric Carlson
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Eric Carlson 2014-09-19 13:13:03 PDT
AVSampleBufferRenderSynchronizer can sometimes call a boundary time observer early. When this happens for the duration time observer, seek the synchronizer to to the duration so HTMLMediaElement sees that playback has stopped because currentTime is equal to duration.
Comment 1 Eric Carlson 2014-09-19 13:13:26 PDT
<rdar://problem/17998261>
Comment 2 Eric Carlson 2014-09-19 13:19:39 PDT
Created attachment 238386 [details]
Proposed patch.
Comment 3 Eric Carlson 2014-09-19 13:29:07 PDT
Created attachment 238387 [details]
Rebased patch
Comment 4 Eric Carlson 2014-09-19 13:55:17 PDT
Committed r173771 - http://trac.webkit.org/changeset/173771
Comment 5 Chris Dumez 2014-09-19 15:24:53 PDT
I seem to be getting the following build error after this change:
Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:646:19: error: variable 'duration' cannot be implicitly captured in a lambda with no capture-default specified
        if (now < duration) {
Comment 6 Jer Noble 2014-09-19 16:00:09 PDT
Landed a follow-up build fix in r173777 <http://trac.webkit.org/r173777>.