275 Commits

Author SHA1 Message Date
kjellander@webrtc.org
3f9288f987 Add APK and isolate target for video_engine_tests
Add .isolate file and _run target for video_engine_tests.

Move tools/swarm_client to be untracked in all .isolate file,
so refactorings in swarm_client doesn't require us updating
all our .isolate files (similar to the changes for the
Chromium tests done in:
https://src.chromium.org/viewvc/chrome?view=rev&revision=218844)

Update modules_unittests.isolate with new NetEq4 reference files
needed.

TEST=trybots passing
I also setup a Chromium workspace where I patched third_party/webrtc
with the changes in this CL, followed by compiling with the settings
described in
https://code.google.com/p/webrtc/issues/detail?id=1882#c11
I then verified that the video_engine_tests_apk dir was created
in the output folder.
BUG=1916,2462
R=andrew@webrtc.org, henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4925 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 18:20:38 +00:00
fischman@webrtc.org
4e65e07e41 VideoCaptureAndroid: rewrote the (standalone) implementation of video capture on Android.
Besides being ~40% the size of the previous implementation, this makes it so
that VideoCaptureAndroid can stop and restart capture, which is necessary to
support onPause/onResume reasonably on Android.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4915 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 18:23:13 +00:00
kjellander@webrtc.org
2a97317953 Fix include of isolate.gypi
Recent changes in GYP seem to have broken our previous
"hack" for getting the GYP rule for .isolate files
imported from the Chromium build/isolate.gypi.

The best solution for now is to remove the hack
and check in a copy of Chromium's src/build/isolate.gypi
in WebRTC's build/ dir instead. A similar approach is
used for our build/protoc.gypi file.

TEST=On Linux, I successfully ran:
gclient runhooks
ninja -C out/Release
and verified a bunch of .isolated files were created in
out/Release (which didn't happen before this patch).

I also renamed the build/isolate.gypi from Chromium to
ensure that our own is used and not that one (in case any
paths would be incorrect).

I also ran build/gyp_chromium in a Chromium checkout
with WebRTC in third_party/webrtc having this patch applied
to ensure GYP processing was still working.

Finally, I verified that the same project generation and
compilation from a Chromium checkout worked the way we build
our Android native tests, using:
. build/android/envsetup.sh
GYP_DEFINES="$GYP_DEFINES include_tests=1 enable_tracing=1" gclient runhooks
ninja -C out/Release android_builder_webrtc

BUG=1916
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4907 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 19:31:16 +00:00
pbos@webrtc.org
1c974ef5e3 Remove include_dirs from video_capture.
BUG=1662
TEST=compile on trybots
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4880 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 15:32:10 +00:00
fischman@webrtc.org
69fc315fd9 Convert DeviceInfoImpl::_captureCapabilities from a map to a vector.
The map was just mapping an index to a pointer of a POD, so the code is easily
simplified by using a vector (with implicit index key) and the POD as a value.
(also fixes a leak in the windows code, which lacked a virtual dtor for
VideoCaptureCapabilityWindows but was deleting through a base pointer).

R=perkj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4840 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-25 17:01:42 +00:00
fischman@webrtc.org
334865e2a1 Re-enable VideoCaptureTest.CreateDelete
Previously the test insisted on non-zero delay, but 0 is not a crazy delay value
(esp. on a fake camera device!).  Instead we now test for delay>=0 being set at
all.

BUG=2405
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4813 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-23 17:58:45 +00:00
stefan@webrtc.org
9c74be7bd1 Disable flaky video capture test.
BUG=2405
TBR=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4801 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-20 08:52:31 +00:00
sjlee@webrtc.org
e6ac163145 This is related to https://code.google.com/p/webrtc/issues/detail?id=846
BUG=846
R=mallinath@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4760 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-17 05:15:19 +00:00
mallinath@webrtc.org
82a846f0cb Adding Ami to the video renderer and capturer modules.
TBR=fischman@webrtc.org,wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4735 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-12 17:43:17 +00:00
andresp@webrtc.org
77bf5c28c8 Clean capture timestamp code.
BUG=
R=mflodman@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4675 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-04 11:35:43 +00:00
kjellander@webrtc.org
e141373b8a Add isolate configuration for Android for all tests.
In https://code.google.com/p/webrtc/source/detail?r=4407
henrike@ added the path to the WebRTC resources and
data directories for Android that are required in order to
use isolate for test execution on Android.

This CL adds similar entries to the rest of the .isolate
files added in
https://code.google.com/p/webrtc/source/detail?r=4590.

It also removes three accidentally added .isolate files that originated
from old test names:
* audio_device_test_api
* video_capture_module_test
* video_render_module_test

BUG=1882,1916
TEST=trybots passing.
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4627 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-27 12:10:09 +00:00
fischman@webrtc.org
e3de6b1e90 Enable ObjC build by default and reenable 64-bit mac libjingle build
BUG=2124
TESTED=trybots & building for mac, mac64, ios-sim, and ios-device on my MBP all build everything in out/Debug.
R=niklas.enbom@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4620 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-26 19:31:21 +00:00
kjellander@webrtc.org
3365422c41 Isolate GYP target and .isolate files for tests
This is a re-land attempt of http://review.webrtc.org/1673004/
It now includes a build/isolate.gypi in WebRTC that includes the same
file as the one that would be included when WebRTC is used in a Chromium
checkout. It is needed since it is not possible to use variables in GYP's
includes sections.

Implemented according to the instructions at
http://www.chromium.org/developers/testing/isolated-testing

Workflow has been like this:
1. create _run GYP target
2. create a stripped down .isolate file
3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
4. runhooks
5. compile
6. test if the test would run (i.e. find it's dependencies) without
   actually executing it:
   tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
7. If failing, run the fix_test_cases.py script like this:
   tools/swarm_client/googletest/fix_test_cases.py --isolated out/Release/testname.isolated

All tests that run on the bots for WebRTC has got _run target
and .isolate file created.

"Normal tests" that run fine on any machine:
* audio_decoder_unittests
* common_audio_unittests
* common_video_unittests
* metrics_unittests
* modules_tests
* modules_unittests
* neteq_unittests
* system_wrappers_unittests
* test_support_unittests
* tools_unittests
* video_engine_core_unittests
* voice_engine_unittests

Tests that requires bare-metal and audio/video devices:
* audio_device_tests
* video_capture_tests

I also added the isolate boilerplate code for the following
tests that are not yet pure gtest binaries (which means they
cannot run isolated yet):
* video_render_tests
* vie_auto_test
* voe_auto_test

TEST=running isolate.py as described above. WebRTC trybots passing. Created a Chromium checkout with third_party/webrtc ToT and this patch applied, passing the runhooks step.
BUG=1916
R=henrike@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4590 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-22 07:57:00 +00:00
fischman@webrtc.org
d0f4c2185b iOS: unbreak the build following r4546
BUG=2255
R=niklas.enbom@webrtc.org, sjlee@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4577 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-20 22:16:55 +00:00
phoglund@webrtc.org
32fe90b3f9 Made all integration tests use consistent naming.
After decision by pbos@, mflodman@ et. al.

BUG=
R=kjellander@webrtc.org, mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4565 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-19 11:40:19 +00:00
kjellander@webrtc.org
4298f73031 Revert 4547 "Isolate GYP target and .isolate files for tests"
As this breaks the FYI bots in 
http://build.chromium.org/p/chromium.webrtc.fyi/waterfall
due to different path to isolate.gypi (which cannot easily
be resolved due to limitations in GYP)

> Isolate GYP target and .isolate files for tests
> 
> Implemented according to the instructions at
> http://www.chromium.org/developers/testing/isolated-testing
> 
> Workflow has been like this:
> 1. create _run GYP target
> 2. create a stripped down .isolate file
> 3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
> 4. runhooks
> 5. compile
> 6. test if the test would run (i.e. find it's dependencies) without
>    actually executing it:
>    tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
> 7. If failing, run the fix_test_cases.py script like this:
>    tools/swarm_client/fix_test_cases.py --isolated out/Release/testname.isolated
> 
> All tests that run on the bots for WebRTC has got _run target
> and .isolate file created.
> 
> "Normal tests" that run fine on any machine:
> * audio_decoder_unittests
> * common_audio_unittests
> * common_video_unittests
> * metrics_unittests
> * modules_integrationtests
> * modules_unittests
> * neteq_unittests
> * system_wrappers_unittests
> * test_support_unittests
> * tools_unittests
> * video_engine_core_unittests
> * voice_engine_unittests
> 
> Tests that requires bare-metal and audio/video devices:
> * audio_device_integrationtests
> * video_capture_integrationtests
> 
> I also added the isolate boilerplate code for the following
> tests that are not yet pure gtest binaries (which means they
> cannot run isolated yet):
> * video_render_integrationtests
> * vie_auto_test
> * voe_auto_test
> 
> TEST=running isolate.py as described above.
> BUG=1916
> R=tommi@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/1673004

TBR=kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4548 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 11:29:58 +00:00
kjellander@webrtc.org
d7a4d235d2 Isolate GYP target and .isolate files for tests
Implemented according to the instructions at
http://www.chromium.org/developers/testing/isolated-testing

Workflow has been like this:
1. create _run GYP target
2. create a stripped down .isolate file
3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
4. runhooks
5. compile
6. test if the test would run (i.e. find it's dependencies) without
   actually executing it:
   tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
7. If failing, run the fix_test_cases.py script like this:
   tools/swarm_client/fix_test_cases.py --isolated out/Release/testname.isolated

All tests that run on the bots for WebRTC has got _run target
and .isolate file created.

"Normal tests" that run fine on any machine:
* audio_decoder_unittests
* common_audio_unittests
* common_video_unittests
* metrics_unittests
* modules_integrationtests
* modules_unittests
* neteq_unittests
* system_wrappers_unittests
* test_support_unittests
* tools_unittests
* video_engine_core_unittests
* voice_engine_unittests

Tests that requires bare-metal and audio/video devices:
* audio_device_integrationtests
* video_capture_integrationtests

I also added the isolate boilerplate code for the following
tests that are not yet pure gtest binaries (which means they
cannot run isolated yet):
* video_render_integrationtests
* vie_auto_test
* voe_auto_test

TEST=running isolate.py as described above.
BUG=1916
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4547 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 10:02:06 +00:00
sjlee@webrtc.org
d690eab54f The video capture module for iOS.
This CL is from https://webrtc-codereview.appspot.com/1339004.

Patch this CL, then run the trunk/webrtc/build/vie-webrtc.sh.

BUG=2105
R=fischman@webrtc.org, mallinath@webrtc.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4546 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-14 22:07:04 +00:00
pbos@webrtc.org
4ca7d3f9fe Replace MapWrapper with std::map<>.
MapWrapper was needed on some platforms where STL wasn't supported, we
now use std::map<> directly.

BUG=2164
TEST=trybots
R=henrike@webrtc.org, phoglund@webrtc.org, stefan@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4530 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-12 19:51:57 +00:00
pbos@webrtc.org
a3b7406219 Remove unused unreferenced code in webrtc/
The code removed here are .c, .cc and .h files that are not referenced
from anywhere else. E.g. if git-grep showed no occurrence of the file
it's removed. This process was repeated until no more unreferenced
files were present.

BUG=
R=andrew@webrtc.org, henrike@webrtc.org, phoglund@webrtc.org, stefan@webrtc.org, turaj@webrtc.org, wu@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4511 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-09 08:47:51 +00:00
fischman@webrtc.org
d6134c7cfd PeerConnectionTest.java: make the test work for the bots' v4l2loopback.
- Make the test agnostic to the actual resolution used, since v4l2_file_player
  is playing a non-640x480 file (go/httfw)
- Teach DeviceInfoLinux::FillCapabilityMap() about I420 since that's what
  v4l2_file_player is feeding.

Requires https://gist.github.com/fischman/2e9a9b2efd2ad363ef82 be applied to the
v4l2loopback driver code.

BUG=1796
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4422 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-29 20:43:15 +00:00
sergeyu@chromium.org
099b8c9e8e Update include paths in device_info_external.cc
TBR=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4401 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-25 18:41:43 +00:00
niklas.enbom@webrtc.org
8e3bbedacd Fix include path in video_capture_external.cc
Fix build error introduced in r4337

TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4397 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-25 16:55:58 +00:00
fischman@webrtc.org
c6d5b50b41 AppRTCDemo: build fixes for iOS build in webrtc
BUG=1421,1450,1451
TESTED=git try, also the same patch (along with a bunch of other, non-webrtc changes) in a libjingle checkout allows building iOS AppRTCDemo
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4371 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-18 02:02:07 +00:00
pbos@webrtc.org
df119c9a45 Remove dead video_capture for QuickTime.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4339 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-12 18:08:13 +00:00
pbos@webrtc.org
a9b74ad716 Include files from webrtc/.. paths in video_capture/.
BUG=1662
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4337 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-12 10:03:52 +00:00
hclam@chromium.org
1a7b9b94be Cleanup WebRTC tracing
The goal of this change is to:
1. Remove unused tracing events.
2. Organize tracing events to facilitate measurement of end to end latency.

The major change in this CL is to use ASYNC_STEP such that operation
flow can be traced for the same frame.

R=marpan@webrtc.org, pwestin@webrtc.org, turaj@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4308 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-08 21:31:18 +00:00
pbos@webrtc.org
d900e8bea8 Proper spacing for end-of-namespace comments.
BUG=
R=mflodman@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4293 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-03 15:12:26 +00:00
pbos@webrtc.org
504af45a6f Diff NTP and internal once in VideoCaptureImpl.
BUG=
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4285 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-02 10:15:43 +00:00
fischman@webrtc.org
546c91dc2e Build all java files into jar for each module on Android
BUG=None
TEST=All java files in each module are built into jar and used by WebRTCDemo app
R=fischman@webrtc.org, niklas.enbom@webrtc.org

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

Patch from Jeremy Mao <yujie.mao@intel.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4284 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-01 17:52:39 +00:00
kjellander@webrtc.org
63e988856e Merge more tests into modules_{unit,integration}tests.
A new test target named 'modules_integrationtests' is created
and the following test targets were merged into it:
* audio_coding_module_test
* test_fec
* video_coding_integrationtests
* vp8_integrationtests

A couple of other targets were merged into modules_unittests:
* audio_coding_unittests
* audioproc_unittest
* common_unittests
* video_coding_unittests
* video_processing_unittests
* vp8_unittests

I wasn't able to merge audio_decoder_unittests and neteq_unittests due to
conflicts with different defines in these tests.

Some tests that have special requirements aren't merged into
modules_integrationtests yet. I took the opportunity to rename them
since the bot configs will need to be update anyway:
* audio_device_test_api -> audio_device_integrationtests
* video_capture_module_test -> video_capture_integrationtests
* video_render_module_test -> video_render_integrationtests

Exclude files were added for modules_integrationtests to make sure
the memcheck and tsan bots doesn't tests that are too slow
(audio_coding_module_test and vp8_integrationtests were previously
disabled on those bots).

Suppressions for AudioCodingModuleTest needed to be added to get
modules_integrationtests to pass memcheck (even if the test is
excluded from execution).

BUG=1843
TEST=local execution on Linux and trybots (passing except the merged tests of course)
R=andrew@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4228 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-14 20:09:44 +00:00
fischman@webrtc.org
dd97ef4e28 Revert 4211 "Build all java files into jar for each module on An..."
Reason for revert: behold the meltdown of the "trunk" bots on http://build.chromium.org/p/chromium.webrtc.fyi/waterfall

Turns out that include in gyp is fraught with peril: https://code.google.com/p/gyp/wiki/InputFormatReference#Including_Other_Files

> Build all java files into jar for each module on Android
>
> BUG=
> R=fischman@webrtc.org, niklas.enbom@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/1636004
>
> Patch from Jeremy Mao <yujie.mao@intel.com>.

TBR=fischman@webrtc.org
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4222 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-12 17:39:29 +00:00
fischman@webrtc.org
1374965680 Build all java files into jar for each module on Android
BUG=
R=fischman@webrtc.org, niklas.enbom@webrtc.org

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

Patch from Jeremy Mao <yujie.mao@intel.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4211 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-10 23:34:27 +00:00
mflodman@webrtc.org
3ba883f0fc Removing functionality for inserting pre-encoded frames instead of raw
video frames. The functionality hasn't been used for a long time and
should be done properly if used in the future.

This is a pre-step for implementing CPU overload control.

R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4194 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-07 13:57:57 +00:00
fischman@webrtc.org
8d6eb56085 Avoid NPE crash on Android platforms that don't support getting preview framerate.
- catch Camera.setParameters() signaling errors through RuntimeException (!)
- make video_demo_apk rebuild when .java sources change

BUG=1778
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4059 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-17 17:33:31 +00:00
mflodman@webrtc.org
bb984f516e Removed Mac capture crash and memory leak.
BUG=1697,1761
R=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4023 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-14 10:47:19 +00:00
stefan@webrtc.org
cb60fb2e6c Make sure timestamps are monotonically increasing.
BUG=1563

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3898 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-24 23:54:31 +00:00
mflodman@webrtc.org
efdf778d3f BUG=1351
Propose of this CL: Close the camera properly on MacOS in order to allow other apps to use it.

Changes in this CL:
1. video_capture_qtkit_info_objc.mm _captureDevicesInfo is never released. I have found this memory leak using Instruments from XCode. The patch is releasing it in dealloc.

2. In video_capture_qtkit_objc.h:
a) _captureDeviceName is not needed. Is allocated in the class but never used.
b) I don't see the role of the  NSAutoreleasePool. also if you use it you have to release it when the class is destroyed. Otherwise you will leak memory. Libjingle has for each thread a pool on mac os.

3. In video_capture_qtkit_objc.mm
a) the camera is not stopped properly . See the changes from dealloc. NOTE : If you don't call [[_captureVideoDeviceInput device] close] other apps will not be able to use the camera since you are not closing your app

b) Removed QTCaptureDevice* videoDevice = (QTCaptureDevice*)[_captureDevices objectAtIndex:0]; I don't know why this because the desired camera is opened in setCaptureDeviceById and can be different than position 0 in the camera array. At this moment if you have two cameras and user want to pick the one on index 1 the app also locks the one on 0 .

Other changes I have done to improve (and are not in this CL):
a) I have set the FPS properly to the desired. I have succeeded to reduce the CPU with 3 % doing this. The current code for setting FPS is commented in webrtc
b) I have removed _rLock from the equation. I don't know if it's good or not but I hadn't understood what exactly we are trying to protect with this. Anyway in the current implementation is never released.

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

Patch from Silviu Caragea <silviu.cpp@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3886 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-23 11:57:56 +00:00
stefan@webrtc.org
b8e7f4cc97 Change capture interface to use NTP capture time.
Move NTP functionality to Clock.

BUG=1563
TEST=trybots and vie_auto_test --automated

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3842 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-12 11:56:23 +00:00
wu@webrtc.org
eac36b8561 Fix -Wstring-conversion warnings.
Review URL: https://webrtc-codereview.appspot.com/1299007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3830 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-11 15:37:46 +00:00
fischman@webrtc.org
77d59fe408 WebRTCDemo: no-op out instead of NPEing on destroyed camera.
BUG=1617

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3812 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-10 17:11:51 +00:00
pbos@webrtc.org
dfc5bb9c97 WebRtc_Word32 -> int32_t in video_capture/
BUG=314

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3811 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-10 08:23:13 +00:00
hclam@chromium.org
806dc3b0e6 More trace events
The goal of this change is to unify tracing events styles
and add trace events for all RTP traffic.

BUG=1555
Review URL: https://webrtc-codereview.appspot.com/1290007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3806 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 19:54:10 +00:00
stefan@webrtc.org
7da3459b2a Revert "With these changes we will assume that the capture time of a frame is based on NTP time. This makes the interface of video engine more well defined and makes it easier and cleaner to handle user provided capture timestamps."
This reverts commit 4954b3650192d78037714138a5c519ef08f2670e.
Reverts r3799

TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3802 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 14:56:29 +00:00
stefan@webrtc.org
afcc6101d0 With these changes we will assume that the capture time of a frame is based on NTP time. This makes the interface of video engine more well defined and makes it easier and cleaner to handle user provided capture timestamps.
We should consider making the same change to the render timestamps generated at the receiver.

BUG=1563

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3799 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 13:37:40 +00:00
fischman@webrtc.org
add50b94a5 WebRTCDemo: remove unnecessary stop & start during orientation change which isn't necessary since API v14.
(required bumping minSdkVersion to 14)

This fixes a RuntimeException thrown on GalaxyNexus (but not N7, N4, or NS)
during startPreview() after the sequence of Start(), Stop(), Start(); seemingly
GN's OMX stack can't deal with parallel startPreview() & setPreviewDisplay() in
this situation.

Also:
- Only set the surface in the camera when valid
- Remove duplicate assignment
- Fix error check on voiceChannel allocation to account for multiple channel creation due to orientation change causing onDestroy()/onCreate() on the app, and rampant use of process-static holders for VoE data.

BUG=1537

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3731 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-27 16:48:34 +00:00
fischman@webrtc.org
0e3077ab1f Restart Android capture after orientation change.
Also prevent an NPE on exit.

BUG=1537

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3723 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-25 22:08:51 +00:00
wu@webrtc.org
af33b62a72 Fix -Wstring-conversion warnings.
Review URL: https://webrtc-codereview.appspot.com/1215006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3696 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-20 21:22:48 +00:00
fischman@webrtc.org
73ec386d8a VideoCaptureAndroid can now capture just buffers without also rendering to a SurfaceView.
This saves ~15% CPU on a Nexus 7 running AppRTCDemo.

BUG=1169

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3596 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-03 17:28:03 +00:00
braveyao@webrtc.org
6b6eb44cca Add supporting to V4L2_PIX_FMT_JPEG since it works same as MJPEG.
ISSUE=529
TEST=unittest
Review URL: https://webrtc-codereview.appspot.com/1120006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3580 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-28 10:08:02 +00:00