In some cases, we get a zero-size "naturalSize" result when querying the media for its size. When this happens, we should not refuse to play the media. Instead, we should use the player item's "presentationSize".
<rdar://problem/15952377>
Created attachment 225121 [details] Patch
Comment on attachment 225121 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=225121&action=review > Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:758 > + // Don't treat a failure to retrieve these parameters as fatal. We will use @"presentationSize" instead. > + // <rdar://problem/15966685> This comment (and the change log) imply that MediaCharacteristicsWithMediaSelectionOptions is equivalent to NaturalSize. This is seems unlikely. Having separate comparisons for each, with a comment about why it is OK to fail to retrieve MediaCharacteristicsWithMediaSelectionOptions, would be better. > Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:904 > if (AVCFPlayerItemTrackIsEnabled(track)) { > RetainPtr<AVCFAssetTrackRef> assetTrack = adoptCF(AVCFPlayerItemTrackCopyAssetTrack(track)); > + if (!assetTrack) > + continue; This seems odd, please add a comment about why we don't care that a track is enabled but not available.
Committed r164660: <http://trac.webkit.org/changeset/164660>