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

Issue 1187573004: iOS HW H264 support. (Closed)

Created:
5 years, 6 months ago by tkchin_webrtc
Modified:
5 years, 5 months ago
CC:
kjellander_webrtc, mflodman, tterriberry_mozilla.com, webrtc-reviews_webrtc.org
Base URL:
https://chromium.googlesource.com/external/webrtc@master
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

iOS HW H264 support. First step towards supporting H264 on iOS. More tuning/experimentation required in future CLs. Tested using AppRTCDemo on iPhone6 + iPad Mini. Future work to get it working on OS/X, simulator (renders black screen currently) and with the Android AppRTCDemo. Currently protected with a compile time guard. BUG=webrtc:4081 R=andrew@webrtc.org, haysc@webrtc.org, holmer@google.com, jiayl@webrtc.org, kjellander@webrtc.org, pbos@webrtc.org, phoglund@webrtc.org, stefan@webrtc.org Committed: https://chromium.googlesource.com/external/webrtc/+/71f6f4405c1c5f60097f8d10841378088e78e8b9

Patch Set 1 #

Patch Set 2 : Fix partial availability errors #

Total comments: 1

Patch Set 3 : Unit tests #

Total comments: 8

Patch Set 4 : Remove factories + OSX support #

Patch Set 5 : Fix build errors #

Total comments: 4

Patch Set 6 : Tweak build files #

Total comments: 19

Patch Set 7 : CR comments #

Patch Set 8 : Remove obsolete comment #

Total comments: 5

Patch Set 9 : PL type #

Patch Set 10 : Move unittest file. #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+1925 lines, -22 lines) Patch
M talk/app/webrtc/objc/RTCPeerConnectionFactory.mm View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M talk/examples/objc/AppRTCDemo/ARDAppClient.m View 3 chunks +13 lines, -3 lines 0 comments Download
A + talk/examples/objc/AppRTCDemo/ARDSDPUtils.h View 3 4 5 2 chunks +9 lines, -11 lines 0 comments Download
A talk/examples/objc/AppRTCDemo/ARDSDPUtils.m View 1 chunk +108 lines, -0 lines 1 comment Download
M talk/examples/objc/AppRTCDemo/tests/ARDAppClientTest.mm View 1 2 3 chunks +32 lines, -0 lines 0 comments Download
M talk/libjingle_examples.gyp View 1 chunk +2 lines, -0 lines 0 comments Download
M talk/media/base/constants.h View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M talk/media/base/constants.cc View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M talk/media/webrtc/webrtcvideoengine2.cc View 1 2 3 4 5 6 6 chunks +17 lines, -2 lines 0 comments Download
M webrtc/BUILD.gn View 1 2 3 4 5 1 chunk +3 lines, -0 lines 0 comments Download
M webrtc/build/common.gypi View 1 2 3 4 5 2 chunks +9 lines, -0 lines 0 comments Download
M webrtc/build/webrtc.gni View 1 2 3 4 5 1 chunk +4 lines, -0 lines 0 comments Download
M webrtc/modules/modules.gyp View 1 2 3 4 5 6 7 8 9 2 chunks +4 lines, -0 lines 0 comments Download
M webrtc/modules/video_coding/BUILD.gn View 1 2 3 4 2 chunks +24 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264.cc View 1 2 3 4 5 6 1 chunk +66 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264.gypi View 1 2 3 4 5 1 chunk +63 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264_objc.mm View 1 2 3 4 5 6 1 chunk +33 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_decoder.h View 1 chunk +62 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_decoder.cc View 1 2 3 4 1 chunk +271 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.h View 1 chunk +66 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.cc View 1 2 3 4 1 chunk +438 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_nalu.h View 1 2 1 chunk +100 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_nalu.cc View 1 2 3 4 1 chunk +356 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_nalu_unittest.cc View 1 2 3 4 5 6 7 8 9 1 chunk +151 lines, -0 lines 0 comments Download
A webrtc/modules/video_coding/codecs/h264/include/h264.h View 1 2 3 4 5 6 1 chunk +48 lines, -0 lines 0 comments Download
M webrtc/modules/video_coding/main/source/codec_database.cc View 1 2 3 4 5 6 3 chunks +25 lines, -4 lines 0 comments Download
M webrtc/modules/video_coding/video_coding.gypi View 1 chunk +1 line, -0 lines 0 comments Download
M webrtc/video/video_decoder.cc View 1 2 3 4 5 6 3 chunks +6 lines, -0 lines 0 comments Download
M webrtc/video/video_encoder.cc View 1 2 3 4 5 6 3 chunks +6 lines, -0 lines 0 comments Download
M webrtc/video_decoder.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M webrtc/video_encoder.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 46 (17 generated)
tkchin_webrtc
Migrating https://review.webrtc.org/57499004/ since old CR tool is about to become read-only.
5 years, 6 months ago (2015-06-19 00:10:26 UTC) #2
phoglund
I can't remember receiving the original version of this review? Anyway, what I have to ...
5 years, 6 months ago (2015-06-22 08:17:39 UTC) #3
tkchin_webrtc
On 2015/06/22 at 08:17:39, phoglund wrote: > I can't remember receiving the original version of ...
5 years, 6 months ago (2015-06-22 22:38:37 UTC) #4
Chuck
My only comments were agreeing about a unit test, but looks like you did that ...
5 years, 6 months ago (2015-06-22 22:42:59 UTC) #5
phoglund
On 2015/06/22 22:38:37, tkchin_webrtc wrote: > On 2015/06/22 at 08:17:39, phoglund wrote: > > I ...
5 years, 6 months ago (2015-06-23 07:23:56 UTC) #6
pbos-webrtc
Seems like you can get rid of the encoder/decoder factories. I'd like you to do ...
5 years, 6 months ago (2015-06-23 19:13:56 UTC) #7
pbos-webrtc
(I've also not checked the ObjC code very well.) https://codereview.webrtc.org/1187573004/diff/40001/talk/build/common.gypi File talk/build/common.gypi (right): https://codereview.webrtc.org/1187573004/diff/40001/talk/build/common.gypi#newcode55 talk/build/common.gypi:55: ...
5 years, 6 months ago (2015-06-23 19:15:17 UTC) #8
tkchin_webrtc
PTAL I removed OSX support because of problems mixing libstdc++ and libc++ bits on 10.9. ...
5 years, 6 months ago (2015-06-24 23:21:14 UTC) #13
kjellander_webrtc
https://codereview.webrtc.org/1187573004/diff/160001/webrtc/build/common.gypi File webrtc/build/common.gypi (right): https://codereview.webrtc.org/1187573004/diff/160001/webrtc/build/common.gypi#newcode126 webrtc/build/common.gypi:126: 'rtc_use_objc_h264%': 0, Traditionally we've only used the 'rtc_' prefix ...
5 years, 6 months ago (2015-06-25 07:16:04 UTC) #15
tkchin_webrtc
PTAL https://codereview.webrtc.org/1187573004/diff/160001/webrtc/build/common.gypi File webrtc/build/common.gypi (right): https://codereview.webrtc.org/1187573004/diff/160001/webrtc/build/common.gypi#newcode126 webrtc/build/common.gypi:126: 'rtc_use_objc_h264%': 0, On 2015/06/25 07:16:03, kjellander (OOO til ...
5 years, 6 months ago (2015-06-25 18:13:54 UTC) #18
pbos-webrtc
Not much left for mah rubber, I'd like to have another eye (+R stefan@) on ...
5 years, 6 months ago (2015-06-25 20:20:15 UTC) #20
tkchin_webrtc
Stefan was the one who deferred this CL and added you instead pbos. Therefore, I ...
5 years, 6 months ago (2015-06-25 21:37:50 UTC) #21
pbos-webrtc
lgtm with payload type changed, I've no idea how they interact if they overlap holmer@: ...
5 years, 6 months ago (2015-06-26 05:28:31 UTC) #22
stefan-webrtc
https://codereview.webrtc.org/1187573004/diff/260001/webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.cc File webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.cc (right): https://codereview.webrtc.org/1187573004/diff/260001/webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.cc#newcode425 webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.cc:425: // kVTCompressionPropertyKey_MaxKeyFrameIntervalDuration, 240); Do you have any idea what ...
5 years, 6 months ago (2015-06-26 07:19:41 UTC) #23
stefan-webrtc
The description says that it's future work to get this working with the Android AppRTCDemo. ...
5 years, 6 months ago (2015-06-26 07:21:58 UTC) #24
kjellander_webrtc
*.gn* and .gyp*: lgtm
5 years, 6 months ago (2015-06-26 16:16:06 UTC) #25
tkchin_webrtc
https://codereview.webrtc.org/1187573004/diff/260001/webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.cc File webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.cc (right): https://codereview.webrtc.org/1187573004/diff/260001/webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.cc#newcode425 webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_encoder.cc:425: // kVTCompressionPropertyKey_MaxKeyFrameIntervalDuration, 240); On 2015/06/26 07:19:41, stefan-webrtc (holmer) wrote: ...
5 years, 6 months ago (2015-06-26 20:28:09 UTC) #26
holmer
lgtm https://codereview.webrtc.org/1187573004/diff/260001/webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_nalu.h File webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_nalu.h (right): https://codereview.webrtc.org/1187573004/diff/260001/webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_nalu.h#newcode49 webrtc/modules/video_coding/codecs/h264/h264_video_toolbox_nalu.h:49: class AnnexBBufferReader final { On 2015/06/26 20:28:09, tkchin_webrtc ...
5 years, 6 months ago (2015-06-26 22:36:04 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1187573004/300001
5 years, 5 months ago (2015-06-29 18:44:13 UTC) #31
commit-bot: I haz the power
Try jobs failed on following builders: presubmit on tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/presubmit/builds/49)
5 years, 5 months ago (2015-06-29 18:45:51 UTC) #33
stefan-webrtc
My mistake. LGTM.
5 years, 5 months ago (2015-06-29 18:50:22 UTC) #34
tkchin_webrtc
+andrew for OWNERS of: webrtc/video_decoder.h webrtc/video_encoder.h +jiayl for OWNERS of: talk/media/base/constants.cc talk/media/base/constants.h
5 years, 5 months ago (2015-06-29 20:18:36 UTC) #36
jiayl2
lgtm for talk/media/base/constants.*
5 years, 5 months ago (2015-06-29 20:31:26 UTC) #37
Andrew MacDonald
lgtm for webrtc/video_{en,de}coder.h
5 years, 5 months ago (2015-06-29 21:20:34 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1187573004/300001
5 years, 5 months ago (2015-06-29 21:22:12 UTC) #40
commit-bot: I haz the power
Try jobs failed on following builders: presubmit on tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/presubmit/builds/51)
5 years, 5 months ago (2015-06-29 21:23:55 UTC) #42
tkchin_webrtc
Committed patchset #10 (id:300001) manually as 71f6f4405c1c5f60097f8d10841378088e78e8b9 (presubmit successful).
5 years, 5 months ago (2015-06-29 21:35:14 UTC) #43
tkchin_webrtc
Committed manually because cpplint is failing on ObjC files. Thanks everyone for reviewing! Much appreciated.
5 years, 5 months ago (2015-06-29 21:36:16 UTC) #44
mpotapov
5 years, 5 months ago (2015-06-30 08:06:35 UTC) #46
Message was sent while issue was closed.
lgtm

https://codereview.webrtc.org/1187573004/diff/300001/talk/examples/objc/AppRT...
File talk/examples/objc/AppRTCDemo/ARDSDPUtils.m (right):

https://codereview.webrtc.org/1187573004/diff/300001/talk/examples/objc/AppRT...
talk/examples/objc/AppRTCDemo/ARDSDPUtils.m:45: int mLineIndex = -1;
better to NSInteger here to avoid compiler warnings/errors

Powered by Google App Engine
This is Rietveld 408576698