91 Commits

Author SHA1 Message Date
magjed@webrtc.org
c8895aa2f3 Unify underlying frame buffer in I420VideoFrame and WebRtcVideoFrame
Currently, I420VideoFrame uses three webrtc::Plane to store pixel data, and WebRtcVideoFrame uses WebRtcVideoFrame::FrameBuffer/webrtc::VideoFrame. The two subclasses WebRtcTextureVideoFrame and TextureVideoFrame use a NativeHandle to store pixel data, and there is also a class WebRtcVideoRenderFrame that wraps an I420VideoFrame.

This CL replaces these classes with a new interface VideoFrameBuffer that provides the common functionality. This makes it possible to remove deep frame copies between cricket::VideoFrame and I420VideoFrame.

Some additional minor changes are:
* Disallow creation of 0x0 texture frames.
* Remove the half-implemented ref count functions in I420VideoFrame.
* Remove the Alias functionality in WebRtcVideoFrame

The final goal is to eliminate all frame copies, but to limit the scope of this CL, some planned changes are postponed to follow-up CL:s (see planned changes in https://webrtc-codereview.appspot.com/38879004, or https://docs.google.com/document/d/1bxoJZNmlo-Z9GnQwIaWpEG6hDlL_W-bzka8Zb_K2NbA/preview). Specifically, this CL:
* Keeps empty subclasses WebRtcTextureVideoFrame and TextureVideoFrame, and just delegates the construction to the superclass.
* Keeps the deep copies from cricket::VideoFrame to I420VideoFrame.

BUG=1128
R=mflodman@webrtc.org, pbos@webrtc.org, perkj@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/42469004

Cr-Commit-Position: refs/heads/master@{#8580}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8580 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 21:22:26 +00:00
magjed@webrtc.org
97ed2a4b70 I420VideoFrame: Remove function ResetSize
This is a partial reland of https://webrtc-codereview.appspot.com/39939004/.

The original CL was reverted because ViECapturer use ResetSize/IsZeroSize on |captured_frame_| as a check to make sure each captured frame is only delivered once. Removing ResetSize introduced a race condition where a captured frame could be delivered multiple times.

I have fixed this problem in this CL by replacing ResetSize with scoped_ptr::release.

BUG=4352
R=perkj@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39359004

Cr-Commit-Position: refs/heads/master@{#8561}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8561 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 17:33:41 +00:00
magjed@webrtc.org
fd33293d58 I420VideoFrame: Remove functions set_width and set_height
This is a partial reland of https://webrtc-codereview.appspot.com/39939004/.

The functions set_width and set_height in I420VideoFrame are not needed and just add complexity.

R=perkj@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/41009004

Cr-Commit-Position: refs/heads/master@{#8556}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8556 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 13:57:44 +00:00
magjed@webrtc.org
7400e0b876 Revert "I420VideoFrame: Remove functions set_width, set_height, and ResetSize"
This reverts commit r8434.

Reason for revert: Introduced a race condition. If ViECaptureProcess() -> SwapCapturedAndDeliverFrameIfAvailable() is called twice without a call to OnIncomingCapturedFrame() in between (with both captured_frame_ and deliver_frame_ populated), an old frame will be delivered again, since captured_frame_->IsZeroSize() will never be true.

BUG=4352
TBR=perkj@webrtc.org, stefan@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/40129004

Cr-Commit-Position: refs/heads/master@{#8530}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8530 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 15:19:18 +00:00
kwiberg@webrtc.org
00b8f6b364 Use base/scoped_ptr.h; system_wrappers/interface/scoped_ptr.h is going away
BUG=
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/36229004

Cr-Commit-Position: refs/heads/master@{#8517}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8517 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-26 14:43:50 +00:00
kwiberg@webrtc.org
ac2d27d9ae Fix style violations in common_types.h and config.h
Mostly, it's about moving constructors and descructors to the .cc
files, so that they won't be inlined everywhere.

The reason this CL is so big is that a lot of code was using
common_types.h without declaring a dependency on webrtc_common, which
broke the build once common_types.h started to depend on
common_types.cc.

BUG=163
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/26089004

Cr-Commit-Position: refs/heads/master@{#8516}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8516 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-26 14:01:28 +00:00
magjed@webrtc.org
6c66163567 Fix TestScaler PSNR tests
TestScaler::ComputeAvgSequencePSNR is currently a complex NOP, that always returns kPerfectPSNR. Two frames are read from files into arrays, and then converted into I420VideoFrames. However, the incorrect function ConvertFromI420 is used instead of ConvertToI420, resulting in two empty I420VideoFrames. I420PSNR on empty frames returns kPerfectPSNR.

This CL replaces ConvertFromI420 with ConvertToI420 and actually measures the PSNR. Unfortunately, some tests do not pass when we use the real psnr. The tests that fail are the ones that scale back and forth to a different aspect ratio. webrtc::Scaler has been changed to preserve aspect ratio, and this means that we will end up with a cropped frame if scale and rescale to a different target aspect ratio. I simply removed those tests to make it pass. Having some working tests instead of a lot of dummy tests seems like a win.

R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/35339004

Cr-Commit-Position: refs/heads/master@{#8506}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8506 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-25 14:10:47 +00:00
magjed@webrtc.org
be29b3b4c6 I420VideoFrame: Remove functions set_width, set_height, and ResetSize
The functions set_width, set_height, and ResetSize in I420VideoFrame are not needed and just add complexity.

R=perkj@webrtc.org, stefan@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39939004

Cr-Commit-Position: refs/heads/master@{#8434}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8434 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-19 15:35:50 +00:00
magjed@webrtc.org
88828e77d9 Fix I420VideoFrame unittests
* Only compare actual pixel data, not the padding between width and stride.
* When creating a frame from raw buffers with excessive size, do not assume that the frame’s allocated size will be as excessive as the input buffers.
* The arrays in TestI420VideoFrame.CopyFrame and TestI420VideoFrame.CloneFrame are too small, and we currently memcpy out of bounds.

I think this CL should land regardless, but the main purpose is to pave the way for for planned changes to I420VideoFrame. See https://review.webrtc.org/38879004.

R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34199004

Cr-Commit-Position: refs/heads/master@{#8416}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8416 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 15:54:10 +00:00
magjed@webrtc.org
f68e186de3 Remove EnableMirroring and MirrorRenderStream
R=mflodman@webrtc.org, pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/35239004

Cr-Commit-Position: refs/heads/master@{#8409}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8409 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 12:55:17 +00:00
kjellander@webrtc.org
ce22f13f0e GN: Changes for vp9, opus and direct trace
Corresponding GN changes for
https://webrtc-codereview.appspot.com/34099004/

BUG=4185
R=brettw@chromium.org

Review URL: https://webrtc-codereview.appspot.com/40669004

Cr-Commit-Position: refs/heads/master@{#8377}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8377 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-16 12:47:45 +00:00
guoweis@webrtc.org
1226e926e6 CVO capturer feature: allow unrotated frame flows through the capture pipeline.
split from https://webrtc-codereview.appspot.com/37029004/

This is based on clean up code change at https://webrtc-codereview.appspot.com/37129004

BUG=4145
R=perkj@webrtc.org, pthatcher@webrtc.org, stefan@webrtc.org, tommi@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8337

Committed: https://code.google.com/p/webrtc/source/detail?r=8338

Review URL: https://webrtc-codereview.appspot.com/39799004

Cr-Commit-Position: refs/heads/master@{#8339}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8339 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-11 18:38:53 +00:00
guoweis@webrtc.org
dc7b02277c CVO capturer feature: allow unrotated frame flows through the capture pipeline.
split from https://webrtc-codereview.appspot.com/37029004/

This is based on clean up code change at https://webrtc-codereview.appspot.com/37129004

BUG=4145
R=perkj@webrtc.org, pthatcher@webrtc.org, stefan@webrtc.org, tommi@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8337

Review URL: https://webrtc-codereview.appspot.com/39799004

Cr-Commit-Position: refs/heads/master@{#8338}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8338 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-11 18:06:10 +00:00
guoweis@webrtc.org
20e8f22766 CVO capturer feature: allow unrotated frame flows through the capture pipeline.
split from https://webrtc-codereview.appspot.com/37029004/

This is based on clean up code change at https://webrtc-codereview.appspot.com/37129004

BUG=4145
R=perkj@webrtc.org, pthatcher@webrtc.org, stefan@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39799004

Cr-Commit-Position: refs/heads/master@{#8337}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8337 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-11 17:51:46 +00:00
guoweis@webrtc.org
6c930c7183 Cleanup: unify rotation to be enum based instead of int for degree.
Split from https://webrtc-codereview.appspot.com/37029004/

BUG=4145
R=pthatcher@webrtc.org, stefan@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8257

Committed: https://code.google.com/p/webrtc/source/detail?r=8276

Committed: https://code.google.com/p/webrtc/source/detail?r=8277

Review URL: https://webrtc-codereview.appspot.com/37129004

Cr-Commit-Position: refs/heads/master@{#8288}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8288 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-09 01:29:45 +00:00
guoweis@webrtc.org
0c7ec770ff Cleanup: unify rotation to be enum based instead of int for degree.
Split from https://webrtc-codereview.appspot.com/37029004/

BUG=4145
R=pthatcher@webrtc.org, stefan@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8257

Committed: https://code.google.com/p/webrtc/source/detail?r=8276

Review URL: https://webrtc-codereview.appspot.com/37129004

Cr-Commit-Position: refs/heads/master@{#8277}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8277 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 21:01:47 +00:00
guoweis@webrtc.org
110443aaac Cleanup: unify rotation to be enum based instead of int for degree.
Split from https://webrtc-codereview.appspot.com/37029004/

BUG=4145
R=pthatcher@webrtc.org, stefan@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=8257

Review URL: https://webrtc-codereview.appspot.com/37129004

Cr-Commit-Position: refs/heads/master@{#8276}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8276 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 20:00:46 +00:00
magjed@webrtc.org
4b320cf214 Revert "Cleanup: unify rotation to be enum based instead of int for degree."
Reason for revert:
Compile error on bots - A subclass of cricket::VideoFrame still uses old GetRotation return type.

BUG=4145
TBR=guoweis,stefan,pthatcher

This reverts commit 3e733a43f5a1a2c170e1064d0ee0af38d710a64a.

Review URL: https://webrtc-codereview.appspot.com/34159004

Cr-Commit-Position: refs/heads/master@{#8265}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8265 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-06 12:58:46 +00:00
guoweis@webrtc.org
3e733a43f5 Cleanup: unify rotation to be enum based instead of int for degree.
Split from https://webrtc-codereview.appspot.com/37029004/

BUG=4145
R=pthatcher@webrtc.org, stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37129004

Cr-Commit-Position: refs/heads/master@{#8257}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8257 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-05 23:40:43 +00:00
kjellander@webrtc.org
d7e34e1086 Make it easier to use external libyuv + cleanup GYP files.
It is now easier to use an external libyuv library.
Fix some GYP errors.
Remove the temporary webrtc_base target (depends on
https://codereview.chromium.org/865603002/ being landed
first).

BUG=4185
R=andresp@webrtc.org, andrew@webrtc.org, perkj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39579004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8154 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-26 19:17:26 +00:00
andresp@webrtc.org
86e1e487e7 Move system_wrappers.gyp files to the proper directory.
Build targets should not refer to non-subpaths as was happening before when
 source/system_wrappers.gyp refers to ../interface/ files.

R=kjellander@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37609004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8057 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-14 09:30:52 +00:00
pkasting@chromium.org
4591fbd09f Use size_t more consistently for packet/payload lengths.
See design doc at https://docs.google.com/a/chromium.org/document/d/1I6nmE9D_BmCY-IoV6MDPY2V6WYpEI-dg2apWXTfZyUI/edit?usp=sharing for more information.

This CL was reviewed and approved in pieces in the following CLs:
https://webrtc-codereview.appspot.com/24209004/
https://webrtc-codereview.appspot.com/24229004/
https://webrtc-codereview.appspot.com/24259004/
https://webrtc-codereview.appspot.com/25109004/
https://webrtc-codereview.appspot.com/26099004/
https://webrtc-codereview.appspot.com/27069004/
https://webrtc-codereview.appspot.com/27969004/
https://webrtc-codereview.appspot.com/27989004/
https://webrtc-codereview.appspot.com/29009004/
https://webrtc-codereview.appspot.com/30929004/
https://webrtc-codereview.appspot.com/30939004/
https://webrtc-codereview.appspot.com/31999004/
Committing as TBR to the original reviewers.

BUG=chromium:81439
TEST=none
TBR=pthatcher,henrik.lundin,tina.legrand,stefan,tkchin,glaznev,kjellander,perkj,mflodman,henrika,asapersson,niklas.enbom

Review URL: https://webrtc-codereview.appspot.com/23129004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7726 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-20 22:28:14 +00:00
kjellander@webrtc.org
52bb521b47 Update isolate files for Android APK tests.
This should speed up test execution on Android since only
the files needed by the test will be processed (instead
of the whole data + resources directories).

A few files for modules_unittests had to be explicitly added
for Android, since they were previously a part of the
add-whole-directories entries for the resources and data
directories.

BUG=webrtc:3741
TEST=Passing android+android_rel trybots.
R=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/22559004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7694 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-13 08:35:05 +00:00
magjed@webrtc.org
ea73ff7267 webrtc::Scaler: Preserve aspect ratio
BUG=3936
R=glaznev@webrtc.org, stefan@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=7679

Review URL: https://webrtc-codereview.appspot.com/28969004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7689 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-12 09:52:03 +00:00
magjed@webrtc.org
f7c5d4fac7 Revert 7679 "webrtc::Scaler: Preserve aspect ratio"
> webrtc::Scaler: Preserve aspect ratio
> 
> BUG=3936
> R=glaznev@webrtc.org, stefan@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/28969004

TBR=magjed@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/30989004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7682 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-11 13:12:09 +00:00
magjed@webrtc.org
809986b95f webrtc::Scaler: Preserve aspect ratio
BUG=3936
R=glaznev@webrtc.org, stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/28969004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7679 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-11 09:51:30 +00:00
kjellander@webrtc.org
78c222bfae Update all .isolate files for the new format.
R=kjellander@webrtc.org
BUG=

Review URL: https://webrtc-codereview.appspot.com/27809004

Patch from Marc-Antoine Ruel <maruel@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7583 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 18:08:09 +00:00
kjellander@webrtc.org
f21ea918ad GN: Add common configs to all targets.
This is needed to ensure we have the same build with GN
as with GYP, since GYP includes the common.gypi on a global level.
Several fixes has been needed in the past because some code have
been built without the right defines.

BUG=3441
R=brettw@chromium.org

Review URL: https://webrtc-codereview.appspot.com/28589004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7317 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-28 17:37:22 +00:00
pbos@webrtc.org
ab990ae43a Revert 7151 "Revert 7114 "Expose VideoEncoders with webrtc/video_encoder.h.""
Re-lands r7114 after landing r7204 to adress the compile error causing
the rollback in r7151.

BUG=3070
TBR=henrikg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/28489004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7207 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 09:02:25 +00:00
henrikg@webrtc.org
307d3dbdee Revert 7114 "Expose VideoEncoders with webrtc/video_encoder.h."
Speculative revert, seems to be reason for flaky Win FYI bot compile break.

> Expose VideoEncoders with webrtc/video_encoder.h.
> 
> Exposes VideoEncoders as part of the public API and provides a factory
> method for creating them.
> 
> BUG=3070
> R=mflodman@webrtc.org, stefan@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/21929004

TBR=pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/19329004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7151 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-11 09:48:30 +00:00
pbos@webrtc.org
b420191743 Expose VideoEncoders with webrtc/video_encoder.h.
Exposes VideoEncoders as part of the public API and provides a factory
method for creating them.

BUG=3070
R=mflodman@webrtc.org, stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/21929004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7114 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-09 10:40:56 +00:00
kjellander@webrtc.org
6d08ca6379 GN: Prefix WebRTC specific variables with "rtc_"
BUG=3441
TESTED=Trybots + Running GN in a Chromium checkout with
src/third_party/webrtc symlinked to the WebRTC checkout
with this CL applied, both with the default GN settings
and using: --args="os=\"android\" cpu_arch=\"arm\""

R=brettw@chromium.org

Review URL: https://webrtc-codereview.appspot.com/27379004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7095 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-07 17:36:10 +00:00
kjellander@webrtc.org
0372b93118 Partial revert of r7014 (Android APK refactor)
This reverts selected parts of r7014 to enable
rolling WebRTC in Chromium DEPS.

This works around the problem with GYP includes
being processed in the first pass (i.e. variables
cannot be used for paths). Using a dependency with
a path using a variable that is conditioned for
build_with_chromium being 0 or 1 solves the Chromium
build.

These changes will be restored once I've finished
a major GYP refactoring that will break out all
test related code (at least the parts that includes
the Android APK targets) into a separate chain
of GYP targets that are not processed when generating
projects for Chromium (which is why r7014 is breaking
the Chromium build).

BUG=3741
TESTED=Passing compilation of standalone using:
GYP_DEFINES="OS=android component=static_library fastbuild=1 target_arch=arm" webrtc/build/gyp_webrtc
ninja -C out/Debug
Then verified the *_apk  targets are generated and compiled.

Passing compilation from a Chromium checkout with third_party/webrtc
directory removed and a new empty third_party/webrtc mapped to the
standalone checkout using:
sudo mount --bind /path/to/trunk/webrtc third_party/webrtc
Then running build/gyp_chromium
I also verified WebRTC GYP targets exist and are able to compile.

R=henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/20299004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7040 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-03 14:34:46 +00:00
kjellander@webrtc.org
3bd4156d75 Android APK tests built from a normal WebRTC checkout.
Restructure how the Android APK tests are compiled now
that we have a Chromium checkout available (since r6938).

This removes the need of several hacks that were needed when
building these targets from inside a Chromium checkout.
By creating a symlink to Chromium's base we can compile the required
targets. This also removes the need of the previously precompiled
binaries we keep in /deps/tools/android at Google code.

All the user needs to do is to add the target_os = ["android"]
entry to his .gclient as described at
https://code.google.com/p/chromium/wiki/AndroidBuildInstructions

Before committing this CL, the Android APK buildbots will need
to be updated.
This also solves http://crbug.com/402594 since the apply_svn_patch.py
usage will be similar to the other standalone bots.
It also solves http://crbug.com/399297

BUG=chromium:399297, chromium:402594
TESTED=Locally compiled all APK targets by running:
GYP_DEFINES="OS=android include_tests=1 enable_tracing=1" gclient runhooks
ninja -C out/Release

checkdeps

R=henrike@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/22149004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7014 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-01 11:06:37 +00:00
pbos@webrtc.org
047a46f8b4 Remove Android.mk build files.
These files are generally not maintained and break, some contain files
that don't exist anymore and do not build anymore. If we need to add
some of these back we should really set up a bot for them.

R=andrew@webrtc.org, glaznev@webrtc.org, henrike@webrtc.org
BUG=

Review URL: https://webrtc-codereview.appspot.com/15249004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6974 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-26 08:48:51 +00:00
kjellander@webrtc.org
b96ea2aab5 Remove former team members from OWNERS and WATCHLISTS
Remove the following (CCed) former team members from all
OWNERS files and the WATCHLISTS file:
* fischman@
* leozwang@
* mikhal@
* pwestin@
* wu@

BUG=
R=henrike@webrtc.org, niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/22509004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6973 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-26 06:12:08 +00:00
kjellander@webrtc.org
42ee5b54b5 GN: Disable Chromium clang plugins for standalone build.
Now that WebRTC has rolled the chromium_revision past
http://crrev.com/284372 in r6784, clang has become the
default compiler. Since WebRTC standalone code doesn't
yet compile the Chromium Clang plugins enabled, this CL
disables them for the parts of the code that doesn't yet pass
compilation with them enabled.

The buildbots are using Goma which is not yet switched
over to Clang by default. That's why they're not red yet.

BUG=163
TEST=Passing compile locally on Linux using:
gn gen out/Debug --args="build_with_chromium=false is_debug=true" && ninja
-C out/Debug
gn gen out/Release --args="build_with_chromium=false is_debug=false" && ninja
-C out/Release
gn gen out/Default --args="build_with_chromium=false os=\"android\" cpu_arch=\"arm\" arm_version=7" && ninja -C out/Default

R=brettw@chromium.org

Review URL: https://webrtc-codereview.appspot.com/16279004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6966 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-25 14:15:35 +00:00
kjellander@webrtc.org
11bea8977e GN: Implement BUILD.gn for common_video.
This adds copying of Chromium's third_party/BUILD.gn
to acommondate libyuv's BUILD.gn that imports the 'jpeg'
config from that file.

BUG=3441
TEST=trybots + local compile passing with:
gn gen out/Default --args="build_with_chromium=false" && ninja -C out/Default
gn gen out/Default --args="build_with_chromium=false build_libyuv=false" && ninja -C out/Default

R=niklas.enbom@webrtc.org, pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/14839004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6595 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-03 17:04:12 +00:00
kjellander@webrtc.org
1227ab89a7 GN: Add BUILD.gn files + kjellander to OWNERS
This should work as a foundation for all the work that is
left to do to make the parts of WebRTC that Chromium uses
to build with GN.

I implemented some the smaller modules myself in this CL.
The remaining work (TODO's in the .gn files) will be distributed
to various team members.

I'm adding myself to OWNERS files for BUILD.gn files in all the
directories where I'm adding a BUILD.gn file.

BUG=3441
TEST=
Successful compilation of WebRTC as standalone:
gn gen out/Default --args="build_with_chromium=false" && ninja -C out/Default
gn gen out/Default --args="build_with_chromium=false is_clang=true clang_use_chrome_plugins=false" && ninja -C out/Default

I built successfully from a Chromium checkout (with
https://codereview.chromium.org/321313006/ applied) using:
gn gen out/Default && ninja -C out/Default webrtc

R=brettw@chromium.org, niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/13749004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6523 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-23 19:21:07 +00:00
kjellander@webrtc.org
a1bfc50a72 Pass GYP DEPTH variable to isolate.
Similar change to https://codereview.chromium.org/322403003/
This will make it possible to handle different
directory levels for special builds of WebRTC, without
breaking GYP when the .isolate files are processed and
their contents is verified.

Also update all our .isolate files to use the <(DEPTH)
variable.

BUG=343106
TEST=Successful compile+test on Linux using:
ninja -C out/Release
tools/swarming_client/isolate.py run -s out/Release/tools_unittests.isolated
Also trybots passing all tests.

R=pbos@webrtc.org
TBR=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/13679004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6427 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-13 09:02:15 +00:00
kjellander@webrtc.org
7b82c18979 Add kjellander@webrtc.org as OWNER for *.isolate
This should make project-wide changes for isolate files
easier and make it more obvious who's a suitable reviewer
for them.

BUG=
R=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/19689004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6379 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10 05:42:53 +00:00
henrike@webrtc.org
e6e139159f Android: cleanup gtest_target_type conditions.
Ever since crrev.com/133053 OS==android implies:
gtest_target_type=shared_library

Similar to Chromium's crrev.com/271222 where base.gyp's conditions are changed
(which the affected conditions in this cl comes from).

R=henrike@webrtc.org, wu@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/13539004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6332 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-04 20:46:50 +00:00
wuchengli@chromium.org
637c55f45b Add support of texture frames for video capturer.
This is a reland of r6252. The video_capture_tests failure on
builder Android Chromium-APK Tests should be flaky.

- Add ViECapturer unittest.
- Add CloneFrame function in I420VideoFrame.
- Encoders do not support texture yet and texture frames
are dropped in ViEEncoder for now.

Corresponding CLs:
https://codereview.chromium.org/277943002
http://cl/66620352

BUG=chromium:362437
TEST=WebRTC video stream forwarding, video_engine_core_unittests,
     common_video_unittests and video_capture_tests_apk.
TBR=fischman@webrtc.org, perkj@webrtc.org, stefan@webrtc.org, wu@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12609004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6258 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-28 07:00:51 +00:00
wuchengli@chromium.org
89e8ffb395 Revert "Add support of texture frames for video capturer."
This reverts commit 83c89cd003be75d7d06ef9a2b139588f08d280ca.

Reason: The Buildbot has detected a new failure on builder
Android Chromium-APK Tests.

BUG=chromium:362437
TBR=fischman@webrtc.org, perkj@webrtc.org, stefan@webrtc.org, wu@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12599004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6253 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-27 14:12:58 +00:00
wuchengli@chromium.org
efe15355ee Add support of texture frames for video capturer.
- Add ViECapturer unittest.
- Add CloneFrame function in I420VideoFrame.
- Encoders do not support texture yet and texture frames
  are dropped in ViEEncoder for now.

Corresponding CLs:
https://codereview.chromium.org/277943002
http://cl/66620352

BUG=chromium:362437
TEST=WebRTC video stream forwarding. Run video_engine_core_unittests and common_video_unittests.
R=fischman@webrtc.org, perkj@webrtc.org, stefan@webrtc.org, wu@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12499004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6252 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-27 12:40:27 +00:00
henrike@webrtc.org
f2aafe4355 Added include of assert.h for files calling assert but missing the include.
BUG=N/A
R=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/19409005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6022 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-29 17:54:17 +00:00
andrew@webrtc.org
8f69330310 Replace scoped_array<T> with scoped_ptr<T[]>.
scoped_array is deprecated. This was done using a Chromium clang tool:
http://src.chromium.org/viewvc/chrome/trunk/src/tools/clang/rewrite_scoped_ar...

except for the few not-built-on-Linux files which were updated manually.

TESTED=trybots
BUG=2515
R=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12429004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5985 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-25 23:10:28 +00:00
wu@webrtc.org
6c75c98964 Propagate capture ntp timestamp from rtp to renderer.
Mostly the interface changes, the real implementation of ntp timestamp will come in a follow up cl.

TEST=new tests and try bots
BUG=3111
R=niklas.enbom@webrtc.org, stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/11469004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5911 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-15 17:46:33 +00:00
fischman@webrtc.org
2c89b5cb27 Make everyone an OWNER for .gyp/.gypi add/delete purposes, non-talk/ edition.
This CL brought to you by:
$ for d in $(for f in $(git ls-files '*gyp' '*gypi'); do dirname $f; done|sort|uniq|grep -v '^\.$'); do echo -e "\n# These are for the common case of adding or renaming files. If you're doing\n# structural changes, please get a review from a reviewer in this file.\nper-file *.gyp=*\nper-file *.gypi=*" >> $d/OWNERS; done
$ for d in $(for f in $(git ls-files '*gyp' '*gypi'); do dirname $f; done|sort|uniq|grep -v '^\.$'); do git add $d/OWNERS; done

(and then removed the talk/ impact)

R=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/11969004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5903 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-14 20:08:03 +00:00
pbos@webrtc.org
0fefb1041c Remove WEBRTC_TRACE use in common_video/
Replaces a NOTREACHED() macro with inline assert(false).

BUG=3153
R=mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/11079004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5849 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-07 07:29:18 +00:00