WebKit Bugzilla
Attachment 349040 Details for
Bug 189355
: [MediaStream] Initialize AVVideoCapture video presets
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-189355-20180906101948.patch (text/plain), 3.55 KB, created by
Eric Carlson
on 2018-09-06 10:19:48 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Eric Carlson
Created:
2018-09-06 10:19:48 PDT
Size:
3.55 KB
patch
obsolete
>Subversion Revision: 235741 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 8ebfd969209773286cee0f85efbe970b23e299d8..f157a9494e5dade5c73766366a8960c6c99cb1b7 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,16 @@ >+2018-09-06 Eric Carlson <eric.carlson@apple.com> >+ >+ [MediaStream] Initialize AVVideoCapture video presets >+ https://bugs.webkit.org/show_bug.cgi?id=189355 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ No new tests, no functionality changed. >+ >+ * platform/mediastream/mac/AVVideoCaptureSource.mm: >+ (WebCore::AVVideoCaptureSource::AVVideoCaptureSource): Don't try to load symbols if they >+ aren't available. >+ > 2018-09-06 Ali Juma <ajuma@chromium.org> > > IntersectionObserver leaks documents >diff --git a/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm b/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm >index 6d900a8fd9a6e29d4d9bd1a39dba9bff4adb3452..fb19dfc67d4a763b304eb73d06cf50c2e493d62f 100644 >--- a/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm >+++ b/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm >@@ -164,27 +164,36 @@ AVVideoCaptureSource::AVVideoCaptureSource(AVCaptureDeviceTypedef* device, const > , m_device(device) > { > struct VideoPreset { >- bool symbolAvailable; > NSString* name; > int width; > int height; > }; > >- static const VideoPreset presets[] = { >+ static NeverDestroyed<Vector<VideoPreset>> presets = [] { >+ Vector<VideoPreset> sets; > #if PLATFORM(IOS) >- { canLoadAVCaptureSessionPreset3840x2160(), AVCaptureSessionPreset3840x2160, 3840, 2160 }, >- { canLoadAVCaptureSessionPreset1920x1080(), AVCaptureSessionPreset1920x1080, 1920, 1080 }, >+ if (canLoadAVCaptureSessionPreset3840x2160()) >+ sets.append({ AVCaptureSessionPreset3840x2160, 3840, 2160 }); >+ if (canLoadAVCaptureSessionPreset1920x1080()) >+ sets.append({ AVCaptureSessionPreset1920x1080, 1920, 1080 }); > #endif >- { canLoadAVCaptureSessionPreset1280x720(), AVCaptureSessionPreset1280x720, 1280, 720 }, >- { canLoadAVCaptureSessionPreset960x540(), AVCaptureSessionPreset960x540, 960, 540 }, >- { canLoadAVCaptureSessionPreset640x480(), AVCaptureSessionPreset640x480, 640, 480 }, >- { canLoadAVCaptureSessionPreset352x288(), AVCaptureSessionPreset352x288, 352, 288 }, >- { canLoadAVCaptureSessionPreset320x240(), AVCaptureSessionPreset320x240, 320, 240 }, >- }; >+ if (canLoadAVCaptureSessionPreset1280x720()) >+ sets.append({ AVCaptureSessionPreset1280x720, 1280, 720 }); >+ if (canLoadAVCaptureSessionPreset960x540()) >+ sets.append({ AVCaptureSessionPreset960x540, 960, 540 }); >+ if (canLoadAVCaptureSessionPreset640x480()) >+ sets.append({ AVCaptureSessionPreset640x480, 640, 480 }); >+ if (canLoadAVCaptureSessionPreset352x288()) >+ sets.append({ AVCaptureSessionPreset352x288, 352, 288 }); >+ if (canLoadAVCaptureSessionPreset320x240()) >+ sets.append({ AVCaptureSessionPreset320x240, 320, 240 }); >+ >+ return sets; >+ }(); > > auto* presetsMap = &videoPresets(); >- for (auto& preset : presets) { >- if (!preset.symbolAvailable || !preset.name || ![device supportsAVCaptureSessionPreset:preset.name]) >+ for (auto& preset : presets.get()) { >+ if (![device supportsAVCaptureSessionPreset:preset.name]) > continue; > > presetsMap->add(String(preset.name), IntSize(preset.width, preset.height));
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 189355
: 349040