Title: [237226] trunk/Source/ThirdParty/libwebrtc
- Revision
- 237226
- Author
- you...@apple.com
- Date
- 2018-10-17 10:54:00 -0700 (Wed, 17 Oct 2018)
Log Message
REGRESSION (r237075): webrtc/video-replace-muted-track.html is Crashing
https://bugs.webkit.org/show_bug.cgi?id=190646
Reviewed by Eric Carlson.
Do not use VCP pixel buffer pool at all.
RealtimeOutgoingVideoSource makes sure to send the frame in the right format.
Tested by ensuring test no longer crashes.
* Source/webrtc/sdk/objc/components/video_codec/RTCVideoEncoderH264.mm:
(-[RTCSingleVideoEncoderH264 resetCompressionSessionIfNeededWithFrame:]):
(-[RTCSingleVideoEncoderH264 resetCompressionSessionWithPixelFormat:]):
Modified Paths
Diff
Modified: trunk/Source/ThirdParty/libwebrtc/ChangeLog (237225 => 237226)
--- trunk/Source/ThirdParty/libwebrtc/ChangeLog 2018-10-17 17:52:15 UTC (rev 237225)
+++ trunk/Source/ThirdParty/libwebrtc/ChangeLog 2018-10-17 17:54:00 UTC (rev 237226)
@@ -1,3 +1,18 @@
+2018-10-17 Youenn Fablet <you...@apple.com>
+
+ REGRESSION (r237075): webrtc/video-replace-muted-track.html is Crashing
+ https://bugs.webkit.org/show_bug.cgi?id=190646
+
+ Reviewed by Eric Carlson.
+
+ Do not use VCP pixel buffer pool at all.
+ RealtimeOutgoingVideoSource makes sure to send the frame in the right format.
+ Tested by ensuring test no longer crashes.
+
+ * Source/webrtc/sdk/objc/components/video_codec/RTCVideoEncoderH264.mm:
+ (-[RTCSingleVideoEncoderH264 resetCompressionSessionIfNeededWithFrame:]):
+ (-[RTCSingleVideoEncoderH264 resetCompressionSessionWithPixelFormat:]):
+
2018-10-16 Youenn Fablet <you...@apple.com>
Support RTCConfiguration.certificates
Modified: trunk/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/RTCVideoEncoderH264.mm (237225 => 237226)
--- trunk/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/RTCVideoEncoderH264.mm 2018-10-17 17:52:15 UTC (rev 237225)
+++ trunk/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/RTCVideoEncoderH264.mm 2018-10-17 17:54:00 UTC (rev 237226)
@@ -541,6 +541,11 @@
OSType framePixelFormat = [self pixelFormatOfFrame:frame];
if (_compressionSession) {
+#if defined(WEBRTC_WEBKIT_BUILD)
+ if (!_pixelBufferPool) {
+ return NO;
+ }
+#endif
// The pool attribute `kCVPixelBufferPixelFormatTypeKey` can contain either an array of pixel
// formats or a single pixel format.
NSDictionary *poolAttributes =
@@ -734,10 +739,11 @@
#endif
[self configureCompressionSession];
+#if !defined(WEBRTC_WEBKIT_BUILD)
// The pixel buffer pool is dependent on the compression session so if the session is reset, the
// pool should be reset as well.
_pixelBufferPool = CompressionSessionGetPixelBufferPool(_compressionSession);
-
+#endif
return WEBRTC_VIDEO_CODEC_OK;
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes