RESOLVED FIXED 205802
Implement MediaRecorder backend in GPUProcess
https://bugs.webkit.org/show_bug.cgi?id=205802
Summary Implement MediaRecorder backend in GPUProcess
youenn fablet
Reported 2020-01-06 08:13:03 PST
Implement MediaRecorder backend in GPUProcess
Attachments
Patch (89.22 KB, patch)
2020-01-06 08:16 PST, youenn fablet
no flags
Patch (89.27 KB, patch)
2020-01-06 08:33 PST, youenn fablet
no flags
Patch (89.37 KB, patch)
2020-01-06 08:55 PST, youenn fablet
no flags
Patch (89.37 KB, patch)
2020-01-06 09:16 PST, youenn fablet
no flags
Patch (89.69 KB, patch)
2020-01-06 23:16 PST, youenn fablet
no flags
Patch (90.30 KB, patch)
2020-01-06 23:55 PST, youenn fablet
no flags
Patch (90.34 KB, patch)
2020-01-07 00:22 PST, youenn fablet
no flags
Patch (92.20 KB, patch)
2020-01-07 03:13 PST, youenn fablet
no flags
Patch (101.81 KB, patch)
2020-01-07 05:00 PST, youenn fablet
no flags
Patch for landing (101.91 KB, patch)
2020-01-07 06:37 PST, youenn fablet
no flags
Patch for landing (104.39 KB, patch)
2020-01-07 07:11 PST, youenn fablet
no flags
Patch for landing (103.80 KB, patch)
2020-01-07 07:30 PST, youenn fablet
no flags
Build fixes (99.08 KB, patch)
2020-01-08 03:06 PST, youenn fablet
no flags
youenn fablet
Comment 1 2020-01-06 08:16:29 PST
youenn fablet
Comment 2 2020-01-06 08:33:59 PST
youenn fablet
Comment 3 2020-01-06 08:55:06 PST
youenn fablet
Comment 4 2020-01-06 09:16:17 PST
youenn fablet
Comment 5 2020-01-06 23:16:32 PST
youenn fablet
Comment 6 2020-01-06 23:55:47 PST
youenn fablet
Comment 7 2020-01-07 00:22:23 PST
youenn fablet
Comment 8 2020-01-07 03:13:21 PST
youenn fablet
Comment 9 2020-01-07 05:00:28 PST
Eric Carlson
Comment 10 2020-01-07 06:04:00 PST
Comment on attachment 386961 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=386961&action=review > Source/WebCore/testing/Internals.cpp:555 > + page.mediaRecorderProvider().setUseGPUProcess(true); Is this the correct default? > Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:153 > +#if PLATFORM(COCOA) && USE(LIBWEBRTC) Should this be "#if PLATFORM(COCOA) && ENABLE(MEDIA_STREAM"? > Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:181 > + if (decoder.messageReceiverName() == Messages::RemoteMediaRecorders::messageReceiverName()) { > + mediaRecorders().didReceiveMessageFromWebProcess(connection, decoder); > + return; > + } > + if (decoder.messageReceiverName() == Messages::RemoteMediaRecorder::messageReceiverName()) { "RemoteMediaRecorders" is a bit subtle and easy to confuse with "RemoteMediaRecorder". Maybe something like "RemoteMediaRecorderManager" instead? > Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:52 > + // FIXME: We would better to throw an exception to JavaScript if writer creation fails. s/We would better to throw an exception/We should throw an exception/
youenn fablet
Comment 11 2020-01-07 06:10:15 PST
(In reply to Eric Carlson from comment #10) > Comment on attachment 386961 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=386961&action=review > > > Source/WebCore/testing/Internals.cpp:555 > > + page.mediaRecorderProvider().setUseGPUProcess(true); > > Is this the correct default? I think so, I am not sure we will enable MediaRecorder by default without GPUProcess. > > > Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:153 > > +#if PLATFORM(COCOA) && USE(LIBWEBRTC) > > Should this be "#if PLATFORM(COCOA) && ENABLE(MEDIA_STREAM"? Right. > > Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:181 > > + if (decoder.messageReceiverName() == Messages::RemoteMediaRecorders::messageReceiverName()) { > > + mediaRecorders().didReceiveMessageFromWebProcess(connection, decoder); > > + return; > > + } > > + if (decoder.messageReceiverName() == Messages::RemoteMediaRecorder::messageReceiverName()) { > > "RemoteMediaRecorders" is a bit subtle and easy to confuse with > "RemoteMediaRecorder". Maybe something like "RemoteMediaRecorderManager" > instead? OK, will go with manager. > > Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:52 > > + // FIXME: We would better to throw an exception to JavaScript if writer creation fails. > > s/We would better to throw an exception/We should throw an exception/ OK
youenn fablet
Comment 12 2020-01-07 06:15:53 PST
Comment on attachment 386961 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=386961&action=review >>> Source/WebKit/WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:52 >>> + // FIXME: We would better to throw an exception to JavaScript if writer creation fails. >> >> s/We would better to throw an exception/We should throw an exception/ > > OK Actually, I implemented it now using m_errorCallback, will remove this FIXME.
youenn fablet
Comment 13 2020-01-07 06:37:07 PST
Created attachment 386965 [details] Patch for landing
youenn fablet
Comment 14 2020-01-07 07:11:50 PST
Created attachment 386966 [details] Patch for landing
youenn fablet
Comment 15 2020-01-07 07:30:42 PST
Created attachment 386968 [details] Patch for landing
WebKit Commit Bot
Comment 16 2020-01-07 09:08:11 PST
Comment on attachment 386968 [details] Patch for landing Clearing flags on attachment: 386968 Committed r254132: <https://trac.webkit.org/changeset/254132>
WebKit Commit Bot
Comment 17 2020-01-07 09:08:13 PST
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 18 2020-01-07 09:09:19 PST
Ross Kirsling
Comment 19 2020-01-07 10:12:11 PST
This broke WinCairo, as indicated by EWS.
youenn fablet
Comment 20 2020-01-07 10:13:38 PST
(In reply to Ross Kirsling from comment #19) > This broke WinCairo, as indicated by EWS. I did not see it :( Will fix it.
Ross Kirsling
Comment 21 2020-01-07 10:15:11 PST
(In reply to youenn fablet from comment #20) > (In reply to Ross Kirsling from comment #19) > > This broke WinCairo, as indicated by EWS. > > I did not see it :( > Will fix it. No worries -- thanks Youenn!
WebKit Commit Bot
Comment 22 2020-01-07 10:29:36 PST
Re-opened since this is blocked by bug 205868
youenn fablet
Comment 23 2020-01-08 03:06:59 PST
Created attachment 387091 [details] Build fixes
WebKit Commit Bot
Comment 24 2020-01-08 04:45:12 PST
Comment on attachment 387091 [details] Build fixes Clearing flags on attachment: 387091 Committed r254194: <https://trac.webkit.org/changeset/254194>
WebKit Commit Bot
Comment 25 2020-01-08 04:45:14 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.