tree 59c3e72f9106639c135372db6460cd8407921892
parent 40bb49153e6f0c95e81b9f07c0a9a02fd7df87bd
author sprang <sprang@webrtc.org> 1499954979 -0700
committer Commit Bot <commit-bot@chromium.org> 1499954979 +0000

Revert of Injectable Obj-C video codecs (patchset #3 id:400001 of https://codereview.webrtc.org/2981583002/ )

Reason for revert:
Breaks bots. Build file incorrect.

Original issue's description:
> Reland of Injectable Obj-C video codecs (patchset #1 id:1 of https://codereview.webrtc.org/2975963002/ )
>
> Reason for revert:
> New CL for fixing the issues
>
> Original issue's description:
> > Revert of Injectable Obj-C video codecs (patchset #8 id:140001 of https://codereview.webrtc.org/2966023002/ )
> >
> > Reason for revert:
> > Causes no video in certain scenarios. Please come up with a test plan or unit test to prevent such problems in the future.
> >
> > Original issue's description:
> > > Injectable Obj-C video codecs
> > >
> > > Initial CL for this effort, with a working RTCVideoEncoder/Decoder for H264
> > > (wrapping the VideoToolbox codec).
> > >
> > > Some notes / things left to do:
> > >   - There are some hard-coded references to codec types that are supported by
> > >     webrtc::VideoCodec, cricket::VideoCodec, webrtc::CodecSpecificInfo etc
> > >     since we need to convert to/from these types in ObjCVideoEncoder/Decoder.
> > >     These types would need to be more codec agnostic to avoid this.
> > >   - Most interfaces are borrowed from the design document for injectable
> > >     codecs in Android. Some data in the corresponding C++ classes is discarded
> > >     when converting to the Obj-C version, since it has fewer fields. I have not
> > >     verified whether all data that we do keep is needed, or whether we might be
> > >     losing anything useful in these conversions.
> > >   - Implement the VideoToolbox codec code directly in the RTCVideoEncoderH264
> > >     classes, instead of wrapping webrtc::H264VideoToolboxEncoder / decoder.
> > >     Eliminates converting between ObjC/C++ types outside the ObjCVideoEncoder/
> > >     Decoder wrapper classes.
> > >   - List the injected codec factory's supported codecs in the list of codecs in
> > >     AppRTCMobile.
> > >
> > > BUG=webrtc:7924
> > > R=magjed@webrtc.org
> > >
> > > Review-Url: https://codereview.webrtc.org/2966023002 .
> > > Cr-Commit-Position: refs/heads/master@{#18928}
> > > Committed: https://chromium.googlesource.com/external/webrtc/+/a0349c138db62c52435be84b6c837f5f4758e264
> >
> > TBR=magjed@webrtc.org,andersc@webrtc.org
> > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > BUG=webrtc:7924
> > NOTRY=true
> >
> > Review-Url: https://codereview.webrtc.org/2975963002
> > Cr-Commit-Position: refs/heads/master@{#18979}
> > Committed: https://chromium.googlesource.com/external/webrtc/+/1095ada7ad56fe29b7b2bbc560a8f6475a7978ce
>
> R=magjed@webrtc.org
> TBR=tkchin@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7924
>
> Review-Url: https://codereview.webrtc.org/2981583002 .
> Cr-Commit-Position: refs/heads/master@{#19002}
> Committed: https://chromium.googlesource.com/external/webrtc/+/a5f1de1e6541de03f944bcbf49be87c01f57a18b

TBR=magjed@webrtc.org,tkchin@webrtc.org,jtteh@webrtc.org,andersc@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7924

Review-Url: https://codereview.webrtc.org/2979973002
Cr-Original-Commit-Position: refs/heads/master@{#19004}
Cr-Mirrored-From: https://chromium.googlesource.com/external/webrtc
Cr-Mirrored-Commit: 81d40ee1491d5229c2677cc04b1f40d67c2babef
