Bug 137754 - [Mac] The first software paint of a <video> element takes up to 2.5s.
Summary: [Mac] The first software paint of a <video> element takes up to 2.5s.
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Jer Noble
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-10-15 14:32 PDT by Jer Noble
Modified: 2015-01-26 08:40 PST (History)
7 users (show)

See Also:


Attachments
Patch (2.89 KB, patch)
2014-10-15 14:41 PDT, Jer Noble
no flags Details | Formatted Diff | Diff
Patch (3.85 KB, patch)
2014-10-15 15:01 PDT, Jer Noble
buildbot: commit-queue-
Details | Formatted Diff | Diff
Archive of layout-test-results from webkit-ews-11 for mac-mountainlion-wk2 (500.56 KB, application/zip)
2014-10-15 16:09 PDT, Build Bot
no flags Details
Patch for landing (3.85 KB, patch)
2014-10-20 15:47 PDT, Jer Noble
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from webkit-ews-15 for mac-mountainlion-wk2 (487.80 KB, application/zip)
2014-10-23 19:58 PDT, Build Bot
no flags Details
Patch for landing (rebaselined) (3.82 KB, patch)
2014-10-27 12:14 PDT, Jer Noble
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from webkit-ews-13 for mac-mountainlion-wk2 (648.28 KB, application/zip)
2014-10-27 13:42 PDT, Build Bot
no flags Details
Patch for landing (>=Mavericks only) (3.93 KB, patch)
2014-10-27 14:27 PDT, Jer Noble
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jer Noble 2014-10-15 14:32:51 PDT
[Mac] Create the AVPlayerItemVideoOutput up front, rather than on demand.
Comment 1 Jer Noble 2014-10-15 14:41:51 PDT
Created attachment 239896 [details]
Patch
Comment 2 Jer Noble 2014-10-15 15:01:16 PDT
Created attachment 239897 [details]
Patch
Comment 3 Brent Fulgham 2014-10-15 15:23:50 PDT
Comment on attachment 239897 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=239897&action=review

Looks good to me! I think you misspelled "wait" as "whait"

> Source/WebCore/ChangeLog:6
> +        Reviewed by NOBODY (OOPS!).

I'm assuming there are no tests needed because this should have no visible change in behavior?

> Source/WebCore/ChangeLog:21
> +        whait when asked to paint with the video output.

whait?

> Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:-1997
> -    NSDictionary* attributes = @{ (NSString*)kCVPixelBufferPixelFormatTypeKey: @(kCVPixelFormatType_422YpCbCr8) };

I assume the equivalent of this dictionary is created elsewhere when a new pixel format is actually needed?
Comment 4 Jer Noble 2014-10-15 16:03:09 PDT
View in context: https://bugs.webkit.org/attachment.cgi?id=239897&action=review

>> Source/WebCore/ChangeLog:6
>> +        Reviewed by NOBODY (OOPS!).
> 
> I'm assuming there are no tests needed because this should have no visible change in behavior?

Yep. This is an optimization only.  I'll add something to the ChangeLog to that effect.

>> Source/WebCore/ChangeLog:21
>> +        whait when asked to paint with the video output.
> 
> whait?

wait.

>> Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:-1997
>> -    NSDictionary* attributes = @{ (NSString*)kCVPixelBufferPixelFormatTypeKey: @(kCVPixelFormatType_422YpCbCr8) };
> 
> I assume the equivalent of this dictionary is created elsewhere when a new pixel format is actually needed?

Nope. 'nil' means "Don't try to convert the CVPixelBuffer into a specific pixel format."  So we want this to always be nil.
Comment 5 Build Bot 2014-10-15 16:09:18 PDT
Comment on attachment 239897 [details]
Patch

Attachment 239897 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/5503095584849920

New failing tests:
media/video-seek-past-end-paused.html
Comment 6 Build Bot 2014-10-15 16:09:21 PDT
Created attachment 239904 [details]
Archive of layout-test-results from webkit-ews-11 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-11  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 7 Jer Noble 2014-10-20 15:47:08 PDT
Created attachment 240153 [details]
Patch for landing
Comment 8 Jer Noble 2014-10-23 16:49:29 PDT
media/video-seek-past-end-paused.html is failing on WK2 Mavericks even without this patch.
Comment 9 Build Bot 2014-10-23 19:58:30 PDT
Created attachment 240385 [details]
Archive of layout-test-results from webkit-ews-15 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-15  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 10 Jer Noble 2014-10-27 12:14:46 PDT
Created attachment 240489 [details]
Patch for landing (rebaselined)
Comment 11 Build Bot 2014-10-27 13:42:14 PDT
Created attachment 240504 [details]
Archive of layout-test-results from webkit-ews-13 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-13  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 12 Jer Noble 2014-10-27 14:27:59 PDT
Created attachment 240507 [details]
Patch for landing (>=Mavericks only)
Comment 13 WebKit Commit Bot 2014-10-28 09:04:28 PDT
Comment on attachment 240507 [details]
Patch for landing (>=Mavericks only)

Clearing flags on attachment: 240507

Committed r175251: <http://trac.webkit.org/changeset/175251>