7 Commits

Author SHA1 Message Date
kthelgason
37144b214e Revert of Split iOS sdk in to separate targets (patchset #1 id:1 of https://codereview.webrtc.org/2890733003/ )
Reason for revert:
Still problems with downstream projects

Original issue's description:
> Reland of Split iOS sdk in to separate targets (patchset #1 id:1 of https://codereview.webrtc.org/2890513002/ )
>
> Reason for revert:
> Fixing downstream breakages
>
> Original issue's description:
> > Revert of Split iOS sdk in to separate targets (patchset #13 id:280001 of https://codereview.webrtc.org/2862543002/ )
> >
> > Reason for revert:
> > Breaking downstream projects.
> >
> > Original issue's description:
> > > Split iOS sdk in to separate targets
> > >
> > > This CL splits the iOS sdk into separate static libraries for video,
> > > audio, ui, common, and peerconnection-related code. This will in the
> > > future make it easier to compile WebRTC without unneeded components.
> > >
> > > BUG=webrtc:4867
> > >
> > > Review-Url: https://codereview.webrtc.org/2862543002
> > > Cr-Commit-Position: refs/heads/master@{#18166}
> > > Committed: 52c83fe710
> >
> > TBR=magjed@webrtc.org,denicija@webrtc.org,tkchin@webrtc.org,henrika@webrtc.org,kthelgason@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:4867
> >
> > Review-Url: https://codereview.webrtc.org/2890513002
> > Cr-Commit-Position: refs/heads/master@{#18170}
> > Committed: 9756238084
>
> TBR=magjed@webrtc.org,denicija@webrtc.org,tkchin@webrtc.org,henrika@webrtc.org,charujain@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:4867
>
> Review-Url: https://codereview.webrtc.org/2890733003
> Cr-Commit-Position: refs/heads/master@{#18174}
> Committed: d51e042492

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

Review-Url: https://codereview.webrtc.org/2893593002
Cr-Commit-Position: refs/heads/master@{#18182}
2017-05-17 13:52:58 +00:00
kthelgason
d51e042492 Reland of Split iOS sdk in to separate targets (patchset #1 id:1 of https://codereview.webrtc.org/2890513002/ )
Reason for revert:
Fixing downstream breakages

Original issue's description:
> Revert of Split iOS sdk in to separate targets (patchset #13 id:280001 of https://codereview.webrtc.org/2862543002/ )
>
> Reason for revert:
> Breaking downstream projects.
>
> Original issue's description:
> > Split iOS sdk in to separate targets
> >
> > This CL splits the iOS sdk into separate static libraries for video,
> > audio, ui, common, and peerconnection-related code. This will in the
> > future make it easier to compile WebRTC without unneeded components.
> >
> > BUG=webrtc:4867
> >
> > Review-Url: https://codereview.webrtc.org/2862543002
> > Cr-Commit-Position: refs/heads/master@{#18166}
> > Committed: 52c83fe710
>
> TBR=magjed@webrtc.org,denicija@webrtc.org,tkchin@webrtc.org,henrika@webrtc.org,kthelgason@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:4867
>
> Review-Url: https://codereview.webrtc.org/2890513002
> Cr-Commit-Position: refs/heads/master@{#18170}
> Committed: 9756238084

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

Review-Url: https://codereview.webrtc.org/2890733003
Cr-Commit-Position: refs/heads/master@{#18174}
2017-05-17 10:33:49 +00:00
charujain
9756238084 Revert of Split iOS sdk in to separate targets (patchset #13 id:280001 of https://codereview.webrtc.org/2862543002/ )
Reason for revert:
Breaking downstream projects.

Original issue's description:
> Split iOS sdk in to separate targets
>
> This CL splits the iOS sdk into separate static libraries for video,
> audio, ui, common, and peerconnection-related code. This will in the
> future make it easier to compile WebRTC without unneeded components.
>
> BUG=webrtc:4867
>
> Review-Url: https://codereview.webrtc.org/2862543002
> Cr-Commit-Position: refs/heads/master@{#18166}
> Committed: 52c83fe710

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

Review-Url: https://codereview.webrtc.org/2890513002
Cr-Commit-Position: refs/heads/master@{#18170}
2017-05-16 15:08:28 +00:00
kthelgason
52c83fe710 Split iOS sdk in to separate targets
This CL splits the iOS sdk into separate static libraries for video,
audio, ui, common, and peerconnection-related code. This will in the
future make it easier to compile WebRTC without unneeded components.

BUG=webrtc:4867

Review-Url: https://codereview.webrtc.org/2862543002
Cr-Commit-Position: refs/heads/master@{#18166}
2017-05-16 14:06:59 +00:00
magjed
7ee512581c Clean up RTCVideoFrame
RTCVideoFrame is an ObjectiveC version of webrtc::VideoFrame, but it
currently contains some extra logic beyond that. We want RTCVideoFrame
to be as simple as possible, i.e. just a container with no extra state,
so we can use it as input to RTCVideoSource without complicating the
interface for consumers.

BUG=webrtc:7177
NOTRY=True

Review-Url: https://codereview.webrtc.org/2695203004
Cr-Commit-Position: refs/heads/master@{#16740}
2017-02-21 12:19:46 +00:00
magjed
fb372f0074 iOS render: Handle frame rotation in OpenGL
This CL handles frame rotation by updating the OpenGL vertex data in
RTCOpenGLVideoRenderer, instead of calling the expensive
libyuv::I420Rotate that will rotate the actual memory. Also, we can
handle rotated native frames instead of falling back to
NativeToI420Buffer.

Review-Url: https://codereview.webrtc.org/2176623002
Cr-Commit-Position: refs/heads/master@{#13715}
2016-08-10 14:58:35 +00:00
tkchin
04dbb34d51 iOS: Add support for rendering native CVPixelBuffers directly
This CL adds support in RTCEAGLVideoView for rendering CVPixelBuffers as
OpenGL ES textures directly, compared to the current code that first
converts the CVPixelBuffers to I420, and then reuploads them as
textures. This is only supported on iOS with the use of a
CVOpenGLESTextureCache.

The I420 rendering and native rendering are separated in two different
implementations of a simple shader interface:
@protocol Shader
- (BOOL)drawFrame:(RTCVideoFrame*)frame;
@end
GL resources are allocated when the shader is instantiated and released
when the shader is destroyed. RTCEAGLVideoView will lazily instantiate
the necessary shader when it receives the first frame of that kind. This
is primarily done to avoid allocating GL resources for both I420 and
native rendering.

Some other changes are:
 - Print GL shader compilation errors.
 - Remove updateTextureSizesForFrame() function. The textures will
   resize automatically anyway when the texture data is uploaded with
   glTexImage2D().

patch from issue 2154243002 at patchset 140001 (http://crrev.com/2154243002#ps140001)
Continuing magjed@'s work since he is OOO this week.

BUG=

Review-Url: https://codereview.webrtc.org/2202823004
Cr-Commit-Position: refs/heads/master@{#13668}
2016-08-08 10:10:12 +00:00