Commit Graph

5373 Commits

Author SHA1 Message Date
henrike@webrtc.org
4d8c81878e The implementation before this change list keeps the ownership of memory that is used by peer connection instances in the peer connection manager. This means that if the peer connection manager is deleted before all peer connections it has created, these peer connections will be pointing to invalid memory.
The solution in this CL is to create a bundle of the memory that needs to be alive as long as there are any peer connections or peer connection manager instances. This bundle is scoped reference counted so that it is deleted only when there are no references to it. This enables the peer connection and manager to be deleted in any order.
Review URL: http://webrtc-codereview.appspot.com/246003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@843 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-31 18:00:10 +00:00
kjellander@webrtc.org
177bb523bd Fixing system_wrappers unittests.
Not complete, but enough to include them in the build again.

Review URL: http://webrtc-codereview.appspot.com/241008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@842 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-31 17:10:01 +00:00
henrike@webrtc.org
066f9e5a2f Ray, please verify that this cl fixes the issue. Once the verification has been made, please review:
Henrik A: VoE
Andrew: audio_conference_mixer

Thanks!
Review URL: http://webrtc-codereview.appspot.com/241010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@841 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 23:15:47 +00:00
henrike@webrtc.org
731ecba47d Review URL: http://webrtc-codereview.appspot.com/251002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@840 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 22:49:24 +00:00
braveyao@webrtc.org
1f6d740571 This CL is about to manually reset the ShutdownRenderEvent at StopPlayout().
It could happen that if you want to restart playout, the new sponsored Render thread would catch this event
if the previous Render thread quits before this event is set.
With this modification, the device plugging out/in during talking would be supported well.
Review URL: http://webrtc-codereview.appspot.com/248002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@839 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 21:30:30 +00:00
wu@webrtc.org
88e0a34815 Remove duplicated code.
Review URL: http://webrtc-codereview.appspot.com/251001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@838 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 17:29:44 +00:00
stefan@webrtc.org
f960211f8b Fixes two jitter buffer bugs related to NACK.
Avoid decoding delta frames after a Flush() and after requesting
a key frame due to full NACK list.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/247011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@837 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 16:00:49 +00:00
perkj@webrtc.org
35a12cdf60 Fix comment.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@836 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 15:09:03 +00:00
perkj@webrtc.org
8129752c3b Add refcount and scoped_refptr.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@835 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 15:08:54 +00:00
perkj@webrtc.org
94cfde7c66 Removed scoped_refptr from libjingle.gyp
git-svn-id: http://webrtc.googlecode.com/svn/trunk@834 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 14:26:41 +00:00
perkj@webrtc.org
7e08613bda Move refcount and scoped_refptr to merge with libjingle. Deleted scoped_refptr_msg.h.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@833 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 14:26:25 +00:00
bjornv@webrtc.org
250cd6f41b Added a VAD unit test to common_audio. At this stage it runs through the API calls, but should later be complemented with tests on a file.
Review URL: http://webrtc-codereview.appspot.com/243002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@832 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 12:45:58 +00:00
stefan@webrtc.org
eb65860720 Reverts the workaround in r823 and solves a macro bug.
The macro bug caused frames to be dropped after being grabbed
for decoding.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/248004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@831 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 12:25:34 +00:00
tina.legrand@webrtc.org
8b1f621e3a Updated gypi for tests to work on osx.
Review URL: http://webrtc-codereview.appspot.com/250002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@830 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-28 08:57:34 +00:00
andrew@webrtc.org
dfbebb916c Add a documented_interfaces watchlist.
BUG=
TEST=watchlists.py

Review URL: http://webrtc-codereview.appspot.com/244013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@829 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 22:33:27 +00:00
amyfong@webrtc.org
ca4666b75c vie wintest added hybrid protection mode
also fixed Max Framerate to reflect its actually the min framerate
Review URL: http://webrtc-codereview.appspot.com/244010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@828 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 21:16:40 +00:00
amyfong@webrtc.org
1e7e60b739 Fixed issue build failling due to vie_autotest_custom_call calling GetBandwidthUsage, which was
changed in r822.
Review URL: http://webrtc-codereview.appspot.com/240014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@827 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 20:53:30 +00:00
amyfong@webrtc.org
51e1bb4e1a vie_autotest_customcall added encoder/decoder observer, maxBitrate set, print call statistics, enable kTraceAll
When creating a new custom call, now able to set start bit rate (default is 1000)

The following modify call options were added
  9. Toggle Encoder Observer
 10. Toggle Decoder Observer
 12. Print Call Statistics

Also set the trace filter to kTraceAll

File defaults new call VGA (640x480)
Review URL: http://webrtc-codereview.appspot.com/239012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@826 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 18:16:35 +00:00
mikhal@webrtc.org
5200a05500 video_coding/jitter_buffer Updating condition on which we return a frame.
Review URL: http://webrtc-codereview.appspot.com/240011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@825 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 16:54:54 +00:00
mikhal@webrtc.org
30f6376802 VP8: Updating codec version: VP8 version will now return the libvpx version used.
Review URL: http://webrtc-codereview.appspot.com/247009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@824 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 16:45:00 +00:00
stefan@webrtc.org
2d28aff785 Workaround for an issue where frames are grabbed for decoding prematurely.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/240013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@823 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 16:13:18 +00:00
stefan@webrtc.org
fbea4e555d Solves two bandwidth estimation issues and measures the sent video bitrate.
Issues solved:
1. Possible overflow when reducing the bandwidth estimate at the send-side
2. A burst of loss reports could make us reduce the rate way too far since
   we reduced the rate relative the current estimate and not the actual
   rate sent.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/244011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@822 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 16:08:29 +00:00
mflodman@webrtc.org
7e4269e9ee Changed VP8 qp min and added noise reduction.
Review URL: http://webrtc-codereview.appspot.com/248003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@821 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-27 12:59:47 +00:00
mflodman@webrtc.org
8fc663b3ae Don't trigger false ViE SetReceiveCodec warning.
Review URL: http://webrtc-codereview.appspot.com/250001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@820 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-26 11:30:52 +00:00
kjellander@webrtc.org
6b7799021c Fixing build errors on Windows platform. Minor changes...
Review URL: http://webrtc-codereview.appspot.com/241004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@819 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-26 02:38:09 +00:00
andrew@webrtc.org
fdde8b3fb7 Add references to src/ copies for LICENSE etc.
Review URL: http://webrtc-codereview.appspot.com/246007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@818 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-26 01:05:07 +00:00
andrew@webrtc.org
cb18121990 Add an unpacker tool for audioproc debug files.
- It only unpacks audio data at the moment.
- Also switch to Chrome's protoc.gypi for protobuf targets. This reduces
  the complexity of our targets.

Review URL: http://webrtc-codereview.appspot.com/241009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@817 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-26 00:27:17 +00:00
frkoenig@google.com
fc9bcef8c7 Data alignment fix for SSIM.
WebRtc_UWord64[2] wasn't always aligned to 128 bytes, which
is necessary for _mm_store_si128.  By declaring the 
variable as __m128i it will always be 128 bytes aligned.

Incorrect include files.

__m128i is defined in emmintrin.h for visual studio.  Extra include on mac and linux is not a problem.
Review URL: http://webrtc-codereview.appspot.com/239013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@816 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-26 00:07:32 +00:00
phoglund@webrtc.org
78c767f9ba Rewrote codec test to use fake camera.
Tests now fail more cleanly if the input video file is incorrect. Fixed some of the style issues in vie_autotest_codec.

Rewrote the automated standard codec test to use the new fake camera.

Started sketching on a new test case. Wrote a new abstraction called ViEFakeCamera which hides the details of how to thread a file capture device in the typical test case.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/242008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@815 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 12:54:38 +00:00
stefan@webrtc.org
d855c1a4e8 Reverts r807 and fixes the real issue in the VCM.
This fixes an issue in the VCM where we don't wait for a packet to arrive
if the jitter buffer is empty. This also fixes an issue where an old
packet can trigger a packet event signal for a future frame.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/248001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@814 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 11:52:48 +00:00
henrika@webrtc.org
bdb55c806f This CL is an attempt to remove a crash we can see when closing down VoiceEgine.
It can happen that the capture thread tries to access an invalid object after StopPlayout has been called.

I have also extended the usage of the new ScopedCOMInitializer to all threads. See this step as code cleanup.
Review URL: http://webrtc-codereview.appspot.com/239014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@813 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 11:03:28 +00:00
henrika@webrtc.org
a6c23357c0 Solves crash in ADM API unit test for Core Audio on Windows
Review URL: http://webrtc-codereview.appspot.com/244009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@812 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 08:31:33 +00:00
henrika@webrtc.org
5423bc2d0b Adds correct absolute paths to all input files in ADM functional unit tests.
Files are now read and played out correctly.
Review URL: http://webrtc-codereview.appspot.com/246006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@811 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 08:24:20 +00:00
andrew@webrtc.org
5b5c31d8dd Update fixed point audio processing output.
Review URL: http://webrtc-codereview.appspot.com/247008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@810 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 03:29:08 +00:00
kma@webrtc.org
ca325ececd Corrected a linux build error introduced in issue 246005.
Review URL: http://webrtc-codereview.appspot.com/246008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@809 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 02:36:09 +00:00
wjia@webrtc.org
f0cd394a2e Put fwrite calls under corresponding macros since they shouldn't show up in release build.
This also make chromeos build happy.
BUG=none
TEST=compile
Review URL: http://webrtc-codereview.appspot.com/247006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@808 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 00:40:43 +00:00
mikhal@webrtc.org
f31826e17b adding a wait on the decode thread when no frames are available
Review URL: http://webrtc-codereview.appspot.com/246009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@807 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 00:20:54 +00:00
mikhal@webrtc.org
a412924c0e VP8:Setting number of cores based on image size
Review URL: http://webrtc-codereview.appspot.com/242010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@806 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-25 00:02:43 +00:00
kma@webrtc.org
913644b92d For commiting changes in CL 277002, due to file structure changes introduced during
the review of the code.
Review URL: http://webrtc-codereview.appspot.com/246005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@805 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-24 21:36:33 +00:00
henrike@webrtc.org
0d0037c2fd Return cached data instead of sleeping in CpuWrapperMac (shaves 2s off WebrtcMediaEngine creation time on Mac).
Review URL: http://webrtc-codereview.appspot.com/226005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@804 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-24 15:48:14 +00:00
phoglund@webrtc.org
0a9c318c9f The fread result is no longer ignored.
Changed unsigned longs into uint64_t to be a bit more portable.

Merge branch 'master' into fake_camera

Conflicts:
	src/video_engine/main/test/AutoTest/source/vie_autotest_base.cc

Removed unnecessary use of WebRTC types. Fixed style issues.

Fixed style issues. Added comments where needed.

(After review) Made the standard base test not mirror the render stream since that is assumed to be tested in the render module. Renamed functions accordingly.

Fixed merge errors.
Merge branch 'master' into fake_camera

Conflicts:
	src/video_engine/main/interface/vie_capture.h
	src/video_engine/main/test/AutoTest/automated/vie_standard_integration_test.cc
	src/video_engine/main/test/AutoTest/interface/vie_autotest.h
	src/video_engine/main/test/AutoTest/interface/vie_autotest_defines.h
	src/video_engine/main/test/AutoTest/source/vie_autotest_base.cc
	src/video_engine/main/test/AutoTest/source/vie_autotest_linux.cc
	src/video_engine/main/test/AutoTest/vie_auto_test.gypi

Merge branch 'extended_tests' into fake_camera

Conflicts:
	src/video_engine/main/test/AutoTest/automated/vie_standard_integration_test.cc
	src/video_engine/main/test/AutoTest/interface/vie_autotest.h
	src/video_engine/main/test/AutoTest/source/vie_autotest_base.cc
	src/video_engine/main/test/AutoTest/source/vie_autotest_linux.cc
	src/video_engine/main/test/AutoTest/vie_auto_test.gypi

More updates after review.

Updates after review.

Added new automated test. - Added a new mode to the vie_auto_test binary. It is now possible to pass --automated to it to make it run noninteractively. - To be precise, it will run everything that has been rewritten as GUnit tests, which currently is one "test suite" in the binary.

Added comments to the new test.

- Fixed a bug which caused test error messages to not get shown.

- Added extended and API tests.
- Abstracted out an integration test base class since all integration
tests set up the exact same way.

- The ViETest::TestError static method will now assert using GTest
asserts if we are running in GTest mode. This gets rid of the hard
asserts that get run otherwise. The hard asserts are still in when using
"classic" mode. TestError will use neither GUnit nor hard asserts if
VIE_ASSERT_ERROR is not defined.
- Formatted vie_autotest_defines.h according to Google style rules.

- Extracted a method for finding a capture device on the system. This
removes a fair bit of logic from the huge test method (mostly straight
statements remain there now).

Rebase from svn.

- Whitespace fixes after review.

Fixed presubmit warning.

- Fixed cpplint.py warnings.

Fixed merge error.

Merge branch 'extended_tests' into fake_camera

Conflicts:
	src/video_engine/main/test/AutoTest/automated/vie_extended_integration_test.cc
	src/video_engine/main/test/AutoTest/automated/vie_standard_integration_test.cc
	src/video_engine/main/test/AutoTest/helpers/vie_window_creator.cc
	src/video_engine/main/test/AutoTest/interface/vie_autotest.h
	src/video_engine/main/test/AutoTest/source/vie_autotest_base.cc
	src/video_engine/main/test/AutoTest/source/vie_autotest_linux.cc
	src/video_engine/main/test/AutoTest/vie_auto_test.gypi

More updates after review.

Updates after review.

Added new automated test. - Added a new mode to the vie_auto_test binary. It is now possible to pass --automated to it to make it run noninteractively. - To be precise, it will run everything that has been rewritten as GUnit tests, which currently is one "test suite" in the binary.

Added comments to the new test.

- Fixed a bug which caused test error messages to not get shown.

- Added extended and API tests.
- Abstracted out an integration test base class since all integration
tests set up the exact same way.

- The ViETest::TestError static method will now assert using GTest
asserts if we are running in GTest mode. This gets rid of the hard
asserts that get run otherwise. The hard asserts are still in when using
"classic" mode. TestError will use neither GUnit nor hard asserts if
VIE_ASSERT_ERROR is not defined.
- Formatted vie_autotest_defines.h according to Google style rules.

- Extracted a method for finding a capture device on the system. This
removes a fair bit of logic from the huge test method (mostly straight
statements remain there now).

Rebase from svn.

- Whitespace fixes after review.

Fixed presubmit warning.

- Fixed cpplint.py warnings.

Fixed merge error.

Fixed cpplint.py warnings.

Merge branch 'extended_tests' into fake_camera

Conflicts:
	src/video_engine/main/test/AutoTest/automated/vie_api_integration_test.cc
	src/video_engine/main/test/AutoTest/automated/vie_extended_integration_test.cc
	src/video_engine/main/test/AutoTest/automated/vie_integration_test_base.cc
	src/video_engine/main/test/AutoTest/automated/vie_standard_integration_test.cc
	src/video_engine/main/test/AutoTest/helpers/vie_window_creator.cc
	src/video_engine/main/test/AutoTest/interface/vie_autotest.h
	src/video_engine/main/test/AutoTest/source/vie_autotest_base.cc
	src/video_engine/main/test/AutoTest/source/vie_autotest_linux.cc
	src/video_engine/main/test/AutoTest/source/vie_autotest_main.cc
	src/video_engine/main/test/AutoTest/vie_auto_test.gypi

Revert "Revert "- Whitespace fixes after review.""

This reverts commit 3da2a148814e8dea78f73d3feeb32dce690dc2d4.

Revert "- Whitespace fixes after review."

This reverts commit fac670ca313580fb883191ae919091a2637ad0af.

- Whitespace fixes after review.

- Wrote a "file capture device" which is a kind of fake capture device. It reads a YUV file from disk and pretends that it is what the "camera" is seeing. This makes is possible to run tests based on video input without having an actual physical camera. This is good because physical cameras are quite unreliable. - Rewrote the standard mirrored preview loopback test so it can use the new file capture device. The old "classic" test is preserved. I tried to minimize duplication between the classic test case and the new one, which turned out to be quite painful. - There are some rough edges left in in the code. Suggested improvements is to get rid of the error counting mechanism since the code seems to assume that TestError invocations cause hard asserts anyway. The code will segfault for certain errors if the hard asserts doesn't happen, which means the error counting mechanism is unnecessary. This, by the way, could be a problem for the new test since it doesn't cause hard asserts. - Fixed comments for the thread wrapper and the external capture device interface.

- Extracted a method for finding a capture device on the system. This removes a fair bit of logic from the huge test method (mostly straight statements remain there now).

- The ViETest::TestError static method will now assert using GTest asserts if we are running in GTest mode. This gets rid of the hard asserts that get run otherwise. The hard asserts are still in when using "classic" mode. TestError will use neither GUnit nor hard asserts if VIE_ASSERT_ERROR is not defined. - Formatted vie_autotest_defines.h according to Google style rules.

- Added extended and API tests. - Abstracted out an integration test base class since all integration tests set up the exact same way.

- Fixed a bug which caused test error messages to not get shown.

Added comments to the new test.

- Added a new mode to the vie_auto_test binary. It is now possible to pass --automated to it to make it run noninteractively. - To be precise, it will run everything that has been rewritten as GUnit tests, which currently is one "test suite" in the binary.

- Fixed cpplint.py warnings.

Fixed presubmit warning.

- Whitespace fixes after review.

Rebase from svn.

- Extracted a method for finding a capture device on the system. This removes a fair bit of logic from the huge test method (mostly straight statements remain there now).

- The ViETest::TestError static method will now assert using GTest asserts if we are running in GTest mode. This gets rid of the hard asserts that get run otherwise. The hard asserts are still in when using "classic" mode. TestError will use neither GUnit nor hard asserts if VIE_ASSERT_ERROR is not defined. - Formatted vie_autotest_defines.h according to Google style rules.

- Added extended and API tests. - Abstracted out an integration test base class since all integration tests set up the exact same way.

- Fixed a bug which caused test error messages to not get shown.

Added comments to the new test.

- Added a new mode to the vie_auto_test binary. It is now possible to pass --automated to it to make it run noninteractively. - To be precise, it will run everything that has been rewritten as GUnit tests, which currently is one "test suite" in the binary.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/247004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@803 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-24 15:33:07 +00:00
andrew@webrtc.org
537096a5c1 Remove unnecessary objective-c compiler flags.
Review URL: http://webrtc-codereview.appspot.com/239011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@802 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-24 15:07:08 +00:00
phoglund@webrtc.org
c63f788e0f Added fake camera, rewrote one test to use it.
Wrote a "file capture device" which is a kind of fake capture device. It reads a YUV file from disk and pretends that it is what the "camera" is seeing. This makes is possible to run tests based on video input without having an actual physical camera. This is good because physical cameras are quite unreliable.

Rewrote the standard mirrored preview loopback test so it can use the new file capture device. The old "classic" test is preserved. I tried to minimize duplication between the classic test case and the new one, which turned out to be quite painful.

There are some rough edges left in in the code. Suggested improvements is to get rid of the error counting mechanism since the code seems to assume that TestError invocations cause hard asserts anyway. The code will segfault for certain errors if the hard asserts doesn't happen, which means the error counting mechanism is unnecessary. This, by the way, could be a problem for the new test since it doesn't cause hard asserts.

Fixed comments for the thread wrapper and the external capture device interface.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/224003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@801 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-24 13:20:09 +00:00
henrika@webrtc.org
bf478faebb Ensures that ADM unit tests builds on all platforms.
Review URL: http://webrtc-codereview.appspot.com/240009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@800 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-24 10:31:02 +00:00
mallinath@webrtc.org
58b4f1c43c Fixes broken build in peerconnection unit tests
Review URL: http://webrtc-codereview.appspot.com/244006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@799 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-24 05:10:55 +00:00
mikhal@webrtc.org
4e4c939ebf Upgrade libvpx to e529a825
CL in lieu of CL 239009
Review URL: http://webrtc-codereview.appspot.com/244007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@798 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-21 21:57:48 +00:00
andrew@webrtc.org
f1a605cad6 Update DEPS to support Mac clang build.
Review URL: http://webrtc-codereview.appspot.com/244003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@797 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-21 15:29:16 +00:00
stefan@webrtc.org
5eb64f06be Fix BitrateSent() API when having a default RTP module.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/242004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@796 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-21 13:42:50 +00:00
stefan@webrtc.org
158f496030 Fixes a rate control bug in the VP8 wrapper.
Changes how we signal frame rate and frame durations to the encoder. Rather
than changing the time base, we now only modify the frame durations, while
keeping the timebase constant. The frame duration is currently calculated
from the average input frame rate. Ideally, the frame duration should
be calculated as the timestamp diff, which is the real duration of a
frame, but the encoder doesn't seem to like too varying durations.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/247001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@795 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-21 13:15:16 +00:00
perkj@webrtc.org
aa32319046 Implement unittest for proxies of MediaStreamTrackInterface and MediaStreamInterface.
This cl also change MediaStreamProxy to only allow setting the state from the signaling thread.

BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/237001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@794 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-10-21 09:32:38 +00:00