RESOLVED FIXED 190167
Enable H264 simulcast
https://bugs.webkit.org/show_bug.cgi?id=190167
Summary Enable H264 simulcast
youenn fablet
Reported 2018-10-01 14:47:09 PDT
Enable H264 simulcast
Attachments
Patch (48.54 KB, patch)
2018-10-01 14:54 PDT, youenn fablet
no flags
Patch (48.91 KB, patch)
2018-10-02 04:30 PDT, youenn fablet
no flags
Patch (48.92 KB, patch)
2018-10-02 05:32 PDT, youenn fablet
no flags
Patch (48.51 KB, patch)
2018-10-02 08:36 PDT, youenn fablet
no flags
Patch (46.72 KB, patch)
2018-10-02 08:48 PDT, youenn fablet
no flags
Patch (47.29 KB, patch)
2018-10-02 09:17 PDT, youenn fablet
no flags
Archive of layout-test-results from ews104 for mac-sierra-wk2 (3.39 MB, application/zip)
2018-10-02 11:02 PDT, EWS Watchlist
no flags
Patch (47.77 KB, patch)
2018-10-03 02:07 PDT, youenn fablet
no flags
Patch for landing (47.83 KB, patch)
2018-10-03 04:31 PDT, youenn fablet
no flags
youenn fablet
Comment 1 2018-10-01 14:54:48 PDT
youenn fablet
Comment 2 2018-10-02 04:30:17 PDT
youenn fablet
Comment 3 2018-10-02 05:32:58 PDT
youenn fablet
Comment 4 2018-10-02 08:36:16 PDT
youenn fablet
Comment 5 2018-10-02 08:48:12 PDT
youenn fablet
Comment 6 2018-10-02 09:17:15 PDT
EWS Watchlist
Comment 7 2018-10-02 11:02:00 PDT
Comment on attachment 351396 [details] Patch Attachment 351396 [details] did not pass mac-wk2-ews (mac-wk2): Output: https://webkit-queues.webkit.org/results/9428847 New failing tests: webrtc/simulcast-h264.html media/range-extract-contents-crash.html
EWS Watchlist
Comment 8 2018-10-02 11:02:02 PDT
Created attachment 351419 [details] Archive of layout-test-results from ews104 for mac-sierra-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: ews104 Port: mac-sierra-wk2 Platform: Mac OS X 10.12.6
youenn fablet
Comment 9 2018-10-03 02:07:27 PDT
Eric Carlson
Comment 10 2018-10-03 04:16:38 PDT
Comment on attachment 351495 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=351495&action=review > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/PeerConnection/RTCDefaultVideoDecoderFactory.mm:40 > + [[RTCVideoCodecInfo alloc] initWithName:kRTCVideoCodecVp8Name], #if !defined(RTC_DISABLE_VP8) ? > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/PeerConnection/RTCDefaultVideoEncoderFactory.mm:43 > + RTCVideoCodecInfo *vp8Info = [[RTCVideoCodecInfo alloc] initWithName:kRTCVideoCodecVp8Name]; Ditto. > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/PeerConnection/RTCDefaultVideoEncoderFactory.mm:52 > + vp8Info, Ditto. > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm:897 > + Nit: unneeded > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm:922 > + auto codec = [[RTCSingleVideoEncoderH264 alloc] initWithCodecInfo: _codecInfo simulcastIndex:index]; > + [_codecs addObject: codec]; Nit: space after ":" not needed. > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm:934 > + [codec startEncodeWithSettings: settings numberOfCores: numberOfCores]; Ditto. > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm:949 > + result |= [codec encode: frame codecSpecificInfo: info frameTypes: frameTypes]; Ditto > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm:957 > + result |= [codec setBitrate: bitRateAllocation->GetSpatialLayerSum(counter++) framerate: framerate]; Ditto > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoCodec.h:165 > +- (int)setRateAllocation: (const webrtc::VideoBitrateAllocation *)allocation framerate:(uint32_t)framerate; Ditto > Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Native/src/objc_video_encoder_factory.mm:94 > + return [encoder_ setRateAllocation: &allocation framerate:framerate]; Ditto
youenn fablet
Comment 11 2018-10-03 04:31:16 PDT
Created attachment 351508 [details] Patch for landing
youenn fablet
Comment 12 2018-10-03 05:10:11 PDT
(In reply to Eric Carlson from comment #10) > Comment on attachment 351495 [details] > Patch Thanks, I took it all!
WebKit Commit Bot
Comment 13 2018-10-03 05:11:32 PDT
Comment on attachment 351508 [details] Patch for landing Clearing flags on attachment: 351508 Committed r236792: <https://trac.webkit.org/changeset/236792>
WebKit Commit Bot
Comment 14 2018-10-03 05:11:34 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 15 2018-10-03 05:12:24 PDT
youenn fablet
Comment 16 2018-10-03 17:09:12 PDT
The newly added test is failing in WebKitGTK, it should probably be fixed until support is added similarly to VTB in this patch.
Note You need to log in before you can comment on or make changes to this bug.