WebKit Bugzilla
Attachment 368988 Details for
Bug 197577
: AVFoundation framework isn't always installed
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-197577-20190503142054.patch (text/plain), 8.02 KB, created by
Eric Carlson
on 2019-05-03 14:20:54 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Eric Carlson
Created:
2019-05-03 14:20:54 PDT
Size:
8.02 KB
patch
obsolete
>Subversion Revision: 244907 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 586dc3eb7fdb555a46f3c3c4692e0d92409d9c90..d8ee84f0df7da36c8f316370d600ed40b4ab3773 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,30 @@ >+2019-05-03 Eric Carlson <eric.carlson@apple.com> >+ >+ AVFoundation framework isn't always installed >+ https://bugs.webkit.org/show_bug.cgi?id=197577 >+ <rdar://problem/50447841> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Use PAL::isAVFoundationFrameworkAvailable() to check to see if AVFoundation is >+ installed, not PAL::AVFoundationLibrary(). >+ >+ * platform/graphics/avfoundation/objc/AVFoundationMIMETypeCache.mm: >+ (WebCore::AVFoundationMIMETypeCache::isAvailable const): >+ (WebCore::AVFoundationMIMETypeCache::loadMIMETypes): >+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: >+ (WebCore::MediaPlayerPrivateAVFoundationObjC::isAvailable): >+ (WebCore::MediaPlayerPrivateAVFoundationObjC::wirelessPlaybackTargetType const): >+ (WebCore::exernalDeviceDisplayNameForPlayer): >+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: >+ (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::isAvailable): >+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm: >+ (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::isAvailable): >+ * platform/graphics/cocoa/HEVCUtilitiesCocoa.mm: >+ (WebCore::validateHEVCParameters): >+ * platform/mediastream/mac/AVCaptureDeviceManager.mm: >+ (WebCore::AVCaptureDeviceManager::isAvailable): >+ > 2019-05-03 Commit Queue <commit-queue@webkit.org> > > Unreviewed, rolling out r244881. >diff --git a/Source/WebCore/platform/graphics/avfoundation/objc/AVFoundationMIMETypeCache.mm b/Source/WebCore/platform/graphics/avfoundation/objc/AVFoundationMIMETypeCache.mm >index 5a7bf691dda95d7e912492548df93f61bae49643..fa2f0777b3b29c243ac6295863b8baed4d5f6443 100644 >--- a/Source/WebCore/platform/graphics/avfoundation/objc/AVFoundationMIMETypeCache.mm >+++ b/Source/WebCore/platform/graphics/avfoundation/objc/AVFoundationMIMETypeCache.mm >@@ -93,7 +93,7 @@ bool AVFoundationMIMETypeCache::isAvailable() const > #if PLATFORM(IOSMAC) > // FIXME: This should be using AVFoundationLibraryIsAvailable() instead, but doing so causes soft-linking > // to subsequently fail on certain symbols. See <rdar://problem/42224780> for more details. >- return PAL::AVFoundationLibrary(); >+ return PAL::isAVFoundationFrameworkAvailable(); > #else > return AVFoundationLibraryIsAvailable(); > #endif >@@ -109,7 +109,7 @@ void AVFoundationMIMETypeCache::loadMIMETypes() > #if ENABLE(VIDEO) && USE(AVFOUNDATION) > static std::once_flag onceFlag; > std::call_once(onceFlag, [this] { >- if (!PAL::AVFoundationLibrary()) >+ if (!PAL::isAVFoundationFrameworkAvailable()) > return; > > for (NSString* type in [PAL::getAVURLAssetClass() audiovisualMIMETypes]) >diff --git a/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm b/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm >index 4e5b82372e9b758c26d4a3e5d5801cfa7a1840bc..a9d7ebe7a0c55bc8fd31527db1f86389ebc58654 100644 >--- a/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm >+++ b/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm >@@ -1696,7 +1696,7 @@ void MediaPlayerPrivateAVFoundationObjC::didStopLoadingRequest(AVAssetResourceLo > > bool MediaPlayerPrivateAVFoundationObjC::isAvailable() > { >- return PAL::AVFoundationLibrary() && isCoreMediaFrameworkAvailable(); >+ return PAL::isAVFoundationFrameworkAvailable() && isCoreMediaFrameworkAvailable(); > } > > MediaTime MediaPlayerPrivateAVFoundationObjC::mediaTimeForTimeValue(const MediaTime& timeValue) const >@@ -2576,7 +2576,7 @@ MediaPlayer::WirelessPlaybackTargetType MediaPlayerPrivateAVFoundationObjC::wire > return MediaPlayer::TargetTypeNone; > > #if PLATFORM(IOS_FAMILY) >- if (!PAL::AVFoundationLibrary()) >+ if (!PAL::isAVFoundationFrameworkAvailable()) > return MediaPlayer::TargetTypeNone; > > switch ([m_avPlayer externalPlaybackType]) { >@@ -2600,7 +2600,7 @@ MediaPlayer::WirelessPlaybackTargetType MediaPlayerPrivateAVFoundationObjC::wire > static NSString *exernalDeviceDisplayNameForPlayer(AVPlayer *player) > { > #if HAVE(CELESTIAL) >- if (!PAL::AVFoundationLibrary()) >+ if (!PAL::isAVFoundationFrameworkAvailable()) > return nil; > > if ([PAL::getAVOutputContextClass() respondsToSelector:@selector(sharedAudioPresentationOutputContext)]) { >diff --git a/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm b/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm >index 7fb1a5ec305a854f66ee207579814c6618d1bec9..331659d3c4ac083375ac881688093320858ced45 100644 >--- a/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm >+++ b/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm >@@ -179,7 +179,7 @@ void MediaPlayerPrivateMediaSourceAVFObjC::registerMediaEngine(MediaEngineRegist > > bool MediaPlayerPrivateMediaSourceAVFObjC::isAvailable() > { >- return PAL::AVFoundationLibrary() >+ return PAL::isAVFoundationFrameworkAvailable() > && isCoreMediaFrameworkAvailable() > && getAVStreamDataParserClass() > && getAVSampleBufferAudioRendererClass() >diff --git a/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm b/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm >index cda97c91fda083def6acf5fac3ded2f448171d4c..3c74b5e9ad934d0ccd0647ef10d443a0e26bd66c 100644 >--- a/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm >+++ b/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm >@@ -226,7 +226,7 @@ void MediaPlayerPrivateMediaStreamAVFObjC::registerMediaEngine(MediaEngineRegist > > bool MediaPlayerPrivateMediaStreamAVFObjC::isAvailable() > { >- return PAL::AVFoundationLibrary() && isCoreMediaFrameworkAvailable() && getAVSampleBufferDisplayLayerClass(); >+ return isAVFoundationFrameworkAvailable() && isCoreMediaFrameworkAvailable() && getAVSampleBufferDisplayLayerClass(); > } > > void MediaPlayerPrivateMediaStreamAVFObjC::getSupportedTypes(HashSet<String, ASCIICaseInsensitiveHash>& types) >diff --git a/Source/WebCore/platform/graphics/cocoa/HEVCUtilitiesCocoa.mm b/Source/WebCore/platform/graphics/cocoa/HEVCUtilitiesCocoa.mm >index 50506676054828891c6c37c0771b60f158f71187..ae8854cacf319d580363d092f08a0d844f2f721c 100644 >--- a/Source/WebCore/platform/graphics/cocoa/HEVCUtilitiesCocoa.mm >+++ b/Source/WebCore/platform/graphics/cocoa/HEVCUtilitiesCocoa.mm >@@ -41,7 +41,7 @@ bool validateHEVCParameters(HEVCParameterSet& parameters, MediaCapabilitiesInfo& > { > CMVideoCodecType codec = kCMVideoCodecType_HEVC; > if (hasAlphaChannel) { >- if (!PAL::AVFoundationLibrary() || !PAL::canLoad_AVFoundation_AVVideoCodecTypeHEVCWithAlpha()) >+ if (!PAL::isAVFoundationFrameworkAvailable() || !PAL::canLoad_AVFoundation_AVVideoCodecTypeHEVCWithAlpha()) > return false; > > auto codecCode = FourCC::fromString(AVVideoCodecTypeHEVCWithAlpha); >diff --git a/Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.mm b/Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.mm >index a9ea3e1b3ecaa3f93916e6d157462d2313e7cd52..1c42e20d93b357d24ade6b711c89b4f527b37415 100644 >--- a/Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.mm >+++ b/Source/WebCore/platform/mediastream/mac/AVCaptureDeviceManager.mm >@@ -160,7 +160,7 @@ void AVCaptureDeviceManager::refreshCaptureDevices() > > bool AVCaptureDeviceManager::isAvailable() > { >- return PAL::AVFoundationLibrary(); >+ return PAL::isAVFoundationFrameworkAvailable(); > } > > AVCaptureDeviceManager& AVCaptureDeviceManager::singleton()
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 197577
: 368988