Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(168)

Issue 2784243003: iOS/MacOS:Refactor metal rendering by extracting common implementation (Closed)

Created:
3 years, 8 months ago by daniela-webrtc
Modified:
3 years, 7 months ago
Reviewers:
magjed_webrtc
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com
Target Ref:
refs/heads/master
Project:
webrtc
Visibility:
Public.

Description

iOS/MacOS:Refactor metal rendering by extracting common implementation in separate super class. Included changes: - Fix rendering on iOS to support NV12 and i420 frames - Improve code style - Update build targets - Update tests BUG=webrtc:7079 Review-Url: https://codereview.webrtc.org/2784243003 Cr-Commit-Position: refs/heads/master@{#17923} Committed: https://chromium.googlesource.com/external/webrtc/+/d2088156853edb3bef0834f5631fd1ebd56ff66f

Patch Set 1 #

Total comments: 8

Patch Set 2 : Address comments #

Patch Set 3 : Repalce webrtc::VideoRotation with RTCVideoRotation #

Patch Set 4 : Lazy load renderers and modify tests #

Total comments: 3

Patch Set 5 : Revert removal of dedicated nv12 and i420 renderer #

Total comments: 10

Patch Set 6 : Change tests to only test the public api and static methods #

Patch Set 7 : Add assertion when metal unavailable #

Patch Set 8 : Fix spacing #

Patch Set 9 : Fix dependency in build file #

Patch Set 10 : Fix build linkage #

Unified diffs Side-by-side diffs Delta from patch set Stats (+254 lines, -685 lines) Patch
M webrtc/examples/objc/AppRTCMobile/mac/APPRTCViewController.m View 1 2 3 4 5 6 7 1 chunk +0 lines, -1 line 0 comments Download
M webrtc/sdk/BUILD.gn View 1 2 3 4 5 6 7 8 9 3 chunks +26 lines, -13 lines 0 comments Download
M webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLI420Renderer.h View 1 chunk +3 lines, -28 lines 0 comments Download
M webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLI420Renderer.mm View 6 chunks +17 lines, -204 lines 0 comments Download
M webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLNSVideoView.m View 2 chunks +4 lines, -1 line 0 comments Download
M webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLNV12Renderer.h View 2 chunks +4 lines, -29 lines 0 comments Download
M webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLNV12Renderer.mm View 5 chunks +15 lines, -202 lines 0 comments Download
A + webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.h View 2 chunks +16 lines, -4 lines 0 comments Download
A + webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.mm View 1 2 10 chunks +32 lines, -109 lines 0 comments Download
A + webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer+Private.h View 1 chunk +9 lines, -5 lines 0 comments Download
M webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m View 1 2 3 4 5 6 3 chunks +40 lines, -22 lines 0 comments Download
M webrtc/sdk/objc/Framework/Headers/WebRTC/RTCMTLNSVideoView.h View 1 chunk +1 line, -1 line 0 comments Download
M webrtc/sdk/objc/Framework/Headers/WebRTC/RTCMTLVideoView.h View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
M webrtc/sdk/objc/Framework/UnitTests/RTCMTLVideoViewTests.mm View 1 2 3 4 5 6 1 chunk +85 lines, -66 lines 0 comments Download

Messages

Total messages: 39 (19 generated)
daniela-webrtc
3 years, 8 months ago (2017-03-30 12:07:43 UTC) #3
magjed_webrtc
https://codereview.webrtc.org/2784243003/diff/1/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.mm File webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.mm (right): https://codereview.webrtc.org/2784243003/diff/1/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.mm#newcode115 webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.mm:115: RTC_CHECK(0) << "Virtual method not implemented in subclass."; nit: ...
3 years, 8 months ago (2017-04-04 08:07:36 UTC) #4
daniela-webrtc
https://codereview.webrtc.org/2784243003/diff/1/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.mm File webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.mm (right): https://codereview.webrtc.org/2784243003/diff/1/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.mm#newcode115 webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.mm:115: RTC_CHECK(0) << "Virtual method not implemented in subclass."; On ...
3 years, 8 months ago (2017-04-05 11:49:31 UTC) #5
magjed_webrtc
https://codereview.webrtc.org/2784243003/diff/1/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m File webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m (right): https://codereview.webrtc.org/2784243003/diff/1/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m#newcode90 webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m:90: _rendererI420 = [RTCMTLVideoView createI420Renderer]; On 2017/04/05 11:49:31, daniela-webrtc wrote: ...
3 years, 8 months ago (2017-04-05 12:10:38 UTC) #6
daniela-webrtc
On 2017/04/05 12:10:38, magjed_webrtc wrote: > https://codereview.webrtc.org/2784243003/diff/1/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m > File webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m (right): > > https://codereview.webrtc.org/2784243003/diff/1/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m#newcode90 > ...
3 years, 8 months ago (2017-04-10 07:14:19 UTC) #7
magjed_webrtc
https://codereview.webrtc.org/2784243003/diff/60001/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m File webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m (right): https://codereview.webrtc.org/2784243003/diff/60001/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m#newcode136 webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m:136: if (![RTCMTLVideoView isMetalAvailable] || self.errorSetupingRenderer) { Is errorSetupingRenderer necessary? ...
3 years, 8 months ago (2017-04-10 09:48:59 UTC) #8
daniela-webrtc
Magnus can you take another look at this?
3 years, 8 months ago (2017-04-21 11:31:14 UTC) #9
magjed_webrtc
On 2017/04/21 11:31:14, daniela-webrtc wrote: > Magnus can you take another look at this? Sorry, ...
3 years, 8 months ago (2017-04-21 15:03:33 UTC) #10
magjed_webrtc
https://codereview.webrtc.org/2784243003/diff/80001/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m File webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m (right): https://codereview.webrtc.org/2784243003/diff/80001/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m#newcode83 webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m:83: RTCLog("Metal unavailable"); Can we make the init functions return ...
3 years, 8 months ago (2017-04-21 15:04:59 UTC) #11
daniela-webrtc
https://codereview.webrtc.org/2784243003/diff/80001/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m File webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m (right): https://codereview.webrtc.org/2784243003/diff/80001/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m#newcode83 webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLVideoView.m:83: RTCLog("Metal unavailable"); On 2017/04/21 15:04:58, magjed_webrtc wrote: > Can ...
3 years, 8 months ago (2017-04-26 13:17:06 UTC) #12
magjed_webrtc
lgtm Thanks for trying my testing approach! Let's evaluate in a quarter or six months. ...
3 years, 8 months ago (2017-04-26 13:27:32 UTC) #13
daniela-webrtc
On 2017/04/26 13:27:32, magjed_webrtc wrote: > lgtm > > Thanks for trying my testing approach! ...
3 years, 8 months ago (2017-04-26 14:02:06 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2784243003/120001
3 years, 7 months ago (2017-04-27 09:22:36 UTC) #17
commit-bot: I haz the power
Try jobs failed on following builders: ios32_sim_ios9_dbg on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/ios32_sim_ios9_dbg/builds/3867) ios_arm64_dbg on master.tryserver.webrtc (JOB_FAILED, ...
3 years, 7 months ago (2017-04-27 09:24:07 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2784243003/140001
3 years, 7 months ago (2017-04-28 08:05:44 UTC) #22
commit-bot: I haz the power
Try jobs failed on following builders: mac_asan on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/mac_asan/builds/24224) mac_baremetal on master.tryserver.webrtc (JOB_FAILED, ...
3 years, 7 months ago (2017-04-28 08:07:55 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2784243003/160001
3 years, 7 months ago (2017-04-28 08:12:45 UTC) #27
commit-bot: I haz the power
Try jobs failed on following builders: mac_baremetal on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/mac_baremetal/builds/21082)
3 years, 7 months ago (2017-04-28 08:17:55 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2784243003/180001
3 years, 7 months ago (2017-04-28 09:12:19 UTC) #36
commit-bot: I haz the power
3 years, 7 months ago (2017-04-28 09:14:59 UTC) #39
Message was sent while issue was closed.
Committed patchset #10 (id:180001) as
https://chromium.googlesource.com/external/webrtc/+/d2088156853edb3bef0834f56...

Powered by Google App Engine
This is Rietveld 408576698