Commit Graph

1252 Commits

Author SHA1 Message Date
pbos@webrtc.org
058b1f17ac Remove GetReceiveBandwidthEstimatorStats.
Removes unnecessary non-standard stats that we don't really make use of.

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

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

Cr-Commit-Position: refs/heads/master@{#8588}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8588 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 08:55:16 +00:00
guoweis@webrtc.org
fc2f146af2 Revert "Turn on IPv6 for WebRTC as default as required before ramping the experiment to 30%."
This reverts commit bbbdeed2bf.

TBR=juberti@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8585}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8585 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 04:50:41 +00:00
pthatcher@webrtc.org
7bea1ffe77 Expose negotiated ciphers through stats API.
Use the new internal API to expose the negotiated SRTP/SSL ciphers
through the stats API.
This is a follow-up to https://webrtc-codereview.appspot.com/37209004.

BUG=3976
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8584}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8584 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 01:38:49 +00:00
jiayl@webrtc.org
be77872d2c Revert "Create a in-memory DTLS identity store that keeps a free identity generated in the background."
Breaking Chromium FYI.

TBR=pthatcher@webrtc.org

This reverts commit 369f68255f.

BUG=4241
R=pthatcher@webrtc.org

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

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


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

Cr-Commit-Position: refs/heads/master@{#8583}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8583 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 00:19:16 +00:00
guoweis@webrtc.org
bbbdeed2bf Turn on IPv6 for WebRTC as default as required before ramping the experiment to 30%.
BUG=
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8582}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8582 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 23:27:41 +00:00
jiayl@webrtc.org
369f68255f Create a in-memory DTLS identity store that keeps a free identity generated in the background.
BUG=4241
R=pthatcher@webrtc.org

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

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

Cr-Commit-Position: refs/heads/master@{#8581}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8581 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 23:14:18 +00:00
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
jiayl@webrtc.org
8ad96605c1 Revert "Create a in-memory DTLS identity store that keeps a free identity generated in the background."
Test failure: http://chromegw/i/client.webrtc/builders/Linux32%20Release/builds/3557

This reverts commit df512cc8b7.

TBR=andrew@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8579}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8579 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 20:35:34 +00:00
jiayl@webrtc.org
df512cc8b7 Create a in-memory DTLS identity store that keeps a free identity generated in the background.
BUG=4241
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8576}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8576 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 16:42:21 +00:00
perkj@webrtc.org
a1c9803e32 Fix crash in setPictureSize on Galaxy Nexus.
This cl tries to find the best supported pictureSize before setting it.
BUG=4197
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8571}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8571 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 10:54:21 +00:00
perkj@webrtc.org
be00e3c198 Make sure VideoFrameFactory handles rotated frames when scaling.
BUG=4366
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8570}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8570 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 10:48:46 +00:00
magjed@webrtc.org
cb04aa4a81 WebRtcVideoFrameTest: Initialize memory to fix DrMemory error
R=pbos@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8566}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8566 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 09:24:16 +00:00
perkj@webrtc.org
1d82813961 Reland "Fix CVO in androidvideocapturer".
This cl was originally revieved in https://webrtc-codereview.appspot.com/40759004/

Patchset 2 adds a unittest for VideoFrame::Reset with and without the apply_rotation flag set.

BUG=4145
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8564}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8564 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-03 06:44:40 +00:00
tommi@webrtc.org
0482d01902 Implement TraceCallback in a nested class of WebRtcVideoEngine.
This is to fix a race that occurs in unit tests when the tests inherit
from the engine class that also implements the callback interface for
tracing.  If tracing happens while the most derived class is still being
constructed, we're in trouble.

So, instead, factoring out the TraceCallback implementation.

R=pbos@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8562}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8562 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 17:51:44 +00:00
glaznev@webrtc.org
43f4a47c28 Add more Android peer connection client unit tests:
- Add front/back camera switch test.
- Add video source stop and restart test to simulate
application going into background.
- Add a loopback test for 3 video codecs - VP8, VP8, H.264.
- Add a loopback test for voice only call.

R=wzh@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8560}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8560 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 17:32:18 +00:00
pbos@webrtc.org
f1f0d9a4cd Remove WebRtcVideoEngine::SetVoiceEngine.
Instead enforcing that a voice engine is set on construction. Apart from
simplifying the class this permits tracing to be set up in the
constructor without worrying about racing sets from SetVoiceEngine
later.

BUG=
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8555}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8555 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 13:30:46 +00:00
perkj@webrtc.org
60f9d6f959 Revert "Add default implementation to VideoSourceInterface."
Chrome test mock has been updated so VideoSourceInterface can now be pure virtual again. This reverts commit ed8d52378c43a7a93e0d2ca586486ca06db9eabe.

R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8551}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8551 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 11:33:41 +00:00
tommi@webrtc.org
afa6d16a05 Add a ToString() method to StatsReport::Value.
This is an interface change only at this point which will be followed up by a matching change in Chromium that removes the dependency on the 'value' member variable.  Once that's been done, I'll add native support for non-string types in the Value class.

R=magjed@webrtc.org
BUG=2822

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

Cr-Commit-Position: refs/heads/master@{#8550}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8550 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 11:28:35 +00:00
magjed@webrtc.org
50b2295091 cricket::VideoFrameFactory: Don't overwrite frames in use
VideoFrameFactory has a single frame buffer that is used when scaling frames. If the previous frame is still in use, we need to allocate a new frame.

BUG=4347
R=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8549}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8549 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 10:04:19 +00:00
kjellander@webrtc.org
24485eb3cc Remove last pieces of libjingle_unittest
Most of this code has been moved into rtc_unittests
a long time ago. The target is no longer executing on the bots.

BUG=
R=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8548}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8548 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 09:41:15 +00:00
kjellander@webrtc.org
5cd6828ee6 Remove stale isolate files.
These two tests no longer exist, they're a part of
the rtc_unittests target.
The libjingle_unittest target is being completely removed in
https://webrtc-codereview.appspot.com/39319004/

R=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8547}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8547 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-02 09:38:17 +00:00
kjellander@webrtc.org
d68fa65d76 Improve cleaning for Android demo applications
There are a bunch of directories that are not cleaned between
builds since they're added to .gitignore.

R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8542}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8542 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-28 11:18:20 +00:00
aluebs@webrtc.org
73acc15c69 Revert 8538 "Reland "Fix CVO in androidvideocapturer."""
> Reland "Fix CVO in androidvideocapturer.""
> This reverts commit b8bcf8cbbf.
> after I fixed a rebase mistake. The fix is the delta between patchset 1 and 2.
> 
> The original cl was reviewed here:
> https://webrtc-codereview.appspot.com/40759004/
> 
> TBR=magjed@webrtc.org
> 
> BUG=4145
> 
> Review URL: https://webrtc-codereview.appspot.com/45409004

TBR=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8539}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8539 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 23:27:41 +00:00
perkj@webrtc.org
3a93e33c56 Reland "Fix CVO in androidvideocapturer.""
This reverts commit b8bcf8cbbf.
after I fixed a rebase mistake. The fix is the delta between patchset 1 and 2.

The original cl was reviewed here:
https://webrtc-codereview.appspot.com/40759004/

TBR=magjed@webrtc.org

BUG=4145

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

Cr-Commit-Position: refs/heads/master@{#8538}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8538 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 20:19:16 +00:00
perkj@webrtc.org
b8bcf8cbbf Revert "Fix CVO in androidvideocapturer."
This reverts commit 02ed57bf9d.
https://webrtc-codereview.appspot.com/40759004/

Reason- breaks tests after rebase.

TBR=magjed@webrtc.org

BUG=4145

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

Cr-Commit-Position: refs/heads/master@{#8537}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8537 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 19:48:15 +00:00
perkj@webrtc.org
02ed57bf9d Fix CVO in androidvideocapturer.
This add bool apply_rotation to WebrtcVideoFrame::Init and removes the need for WebrtcVideoFrame::SetRotation.

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

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

Cr-Commit-Position: refs/heads/master@{#8536}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8536 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 19:10:45 +00:00
perkj@webrtc.org
41d8fda12d VideoCapturerAndroid allocates direct buffers so that the frame buffers can be used in C++ without a copy. However byte[] array = ByteBuffer.array() seems to point to the beginning of the underlaying buffer and that is what the camera fills. But it turns out that ByteBuffer.arrayOffset() returns an offset and it seems like the pointer returned by jni->GetDirectBufferAddress(j_frame). This cl reverts back to pass the byte[] to c++ and use jni->GetByteArrayElements to get the address of the buffer.
R=glaznev@webrtc.org, magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8535}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8535 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 18:51:18 +00:00
guoweis@webrtc.org
21ad37528e Ensure we set the right attrib for correct shader
When using oesProgram, we still specify the yuvProgram for setting shader attributes. This should be changed to the correct shader program.

BUG=
R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8533}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8533 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 18:12:20 +00:00
hbos@webrtc.org
f296859c83 PeerConnectionClient.createPeerConnectionClient was calling new PeerConnectionParameters and PeerConnectionClient.createPeerConnectionFactory, .createPeerConnection with invalid arguments.
This CL makes sure the project compiles, it does not ensure the parameters now used are correct!

There may be something strange going on with the build files. I was previously able to recompile the whole project despite of the incorrect code, until I changed the file and tried again.
The changes made are just so that it will compile. The code should likely be updated by someone who knows what he/she is doing.

TBR=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8526}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8526 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 12:43:41 +00:00
braveyao@webrtc.org
c68e0c9dfe Fix cpplint warning in the previous cl to peerconnection client example.
BUG=3872
TEST=Manual Test + AutoTest
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8525}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8525 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 09:51:43 +00:00
pbos@webrtc.org
ea89495786 Remove {Is,Set}BlackOutput from VideoAdapter.
BUG=
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8523}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8523 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-27 08:56:42 +00:00
tkchin@webrtc.org
9650ab4d59 Fix case sensitivity of AppRTCDemo include dirs
BUG=4341
R=tkchin@webrtc.org

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

Patch from Vicken Simonian <vsimon@gmail.com>.

Cr-Commit-Position: refs/heads/master@{#8521}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8521 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-26 20:58:55 +00:00
pbos@webrtc.org
2a72c6506a Keep feedback params in SetDefaultEncoderConfig.
Prevents NACK etc. from breaking completely as it won't be reported in
the generated SDP.

BUG=1788
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8519}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8519 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-26 16:01:44 +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
pbos@webrtc.org
891d48393e Wire up target_media_bitrate in VideoSendStream.
Also wires up target_enc_bitrate in WebRtcVideoEngine2.

BUG=1667,1788
R=mflodman@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8515}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8515 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-26 13:16:17 +00:00
pbos@webrtc.org
3e6e271ec3 Implement CpuOveruseMetrics as callbacks.
Adds avg_encode_ms and encode_usage_percent in WebRtcVideoEngine2 and
corresponding stats to VideoSendStream::Stats.

BUG=1667, 1788
R=asapersson@webrtc.org, mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8513}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8513 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-26 12:20:24 +00:00
pbos@webrtc.org
9a4410e993 Implement adaptation stats in WebRtcVideoEngine2.
BUG=1788
R=asapersson@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8510}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8510 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-26 10:04:15 +00:00
glaznev@webrtc.org
b5e60b6ca7 Remove non necessary check from WebSocket send function.
Peer connection may generate answer and ICE candidates before
websocket client is registered. Remove check from sendAnswer()
and sendLocalIceCandidate() functions and allow websocket client
to accumulate messages and send them later once it will be
registered.

R=wzh@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8508}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8508 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-25 19:19:39 +00:00
magjed@webrtc.org
f09e7b8a4f WebRtcVideoFrame: DCHECK exclusive ownership for non-const pixel access
Add some const safety by DCHECK(HasOneRef()) in non-const GetYPlane. This CL also replaces all incorrect non-const calls with const calls for pixel data access in cricket::VideoFrame. It's easy to call the non-const version of e.g. GetYPlane by mistake, even if only const-access is needed. For example:
const scoped_ptr<cricket::VideoFrame> foo;
const uint8_t* y = foo->GetYPlane();
will actually call the non-const version of GetYPlane.

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

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

Cr-Commit-Position: refs/heads/master@{#8507}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8507 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-25 14:50:19 +00:00
pbos@webrtc.org
09c77b95bb Add decoder-timing stats to VideoReceiveStream.
Also breaks out SsrcStats from VideoReceiveStream::Stats as they don't
have that much overlap.

R=mflodman@webrtc.org, stefan@webrtc.org
BUG=1667, 1788

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

Cr-Commit-Position: refs/heads/master@{#8501}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8501 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-25 10:42:45 +00:00
hbos@webrtc.org
4aef5fef18 Add thread checks to the CaptureManager.
It looks like it is being used single threadedly, except that in some cases it is created and/or destroyed in threads other than the one running its operations. As such, CaptureManager() contains 'thread_checker_.DetachFromThread()' and ~CaptureManager() does not have a DCHECK.

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

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

Cr-Commit-Position: refs/heads/master@{#8498}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8498 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-25 10:09:45 +00:00
hbos@webrtc.org
1e64263b90 Thread-safe ChannelManager.GetSupportedFormats, used by VideoSource
VideoSource was using VideoCapturer's GetSupportedFormats in a non-thread safe manner.
Now this is handled to (new method) ChannelManager.GetSupportedFormats.

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

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

Cr-Commit-Position: refs/heads/master@{#8495}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8495 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-25 09:50:22 +00:00
perkj@webrtc.org
112f127170 Refactor how VideoCapturerAndroid delivers frames and is stopped.
With this cl, video buffers are now allocated using direct buffers.
These buffers are guaranteed to live as long as the capturer is running.
We can now post frames in c++ from the Java thread to the  c++ worker thread and let c++ post the buffers back when it has finished
processing them.

This cl also reverts back to make Stop asynchronouse so that it is guaranteed that the c++ worker thread is not used and no frames are delivered to VideoCapturerAndroid after Stop completes.

BUG=4318
TESTED= On a N5, N6, N9 and Samsung device.
R=glaznev@webrtc.org, magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8493}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8493 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-25 09:20:43 +00:00
glaznev@webrtc.org
a4623d26d7 Fix H.264 HW decoding for Qualcomm KK devices.
- Qualcomm H.264 HW decoder on KK and older requires
a few video frames before it can generate output. Increase
maximum allowed pending frames for H.264 decoder to 30.
Plus changes in the logging to track decoder buffers
timestamps.

R=wzh@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8490}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8490 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-25 00:03:21 +00:00
lally@webrtc.org
348072845a Swap decl-terms from juberti@ review.
Cr-Commit-Position: refs/heads/master@{#8487}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8487 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:21:13 +00:00
lally@webrtc.org
3630085df1 Tested equiv classes of DTLS/SCTP.
Cr-Commit-Position: refs/heads/master@{#8486}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8486 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:20:22 +00:00
lally@webrtc.org
91d52305ac Renamed string and test.
Cr-Commit-Position: refs/heads/master@{#8485}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8485 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:20:21 +00:00
lally@webrtc.org
c7848b7fd1 Added a separate DTLS/SCTP test.
Cr-Commit-Position: refs/heads/master@{#8484}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8484 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:20:20 +00:00
lally@webrtc.org
a747093334 After another round of reviews.
Cr-Commit-Position: refs/heads/master@{#8483}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8483 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:20:19 +00:00
lally@webrtc.org
9616196c38 Merging definitions of IsSctp.
Cr-Commit-Position: refs/heads/master@{#8482}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8482 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:20:18 +00:00
lally@webrtc.org
12aa8a68f9 Post-rebase.
Cr-Commit-Position: refs/heads/master@{#8481}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8481 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:20:17 +00:00
lally@webrtc.org
1730869596 Added raw SCTP to IsSctp.
Cr-Commit-Position: refs/heads/master@{#8480}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8480 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:19:32 +00:00
lally@webrtc.org
871b1c373a Review comments -- added IsSctp()
Cr-Commit-Position: refs/heads/master@{#8479}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8479 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:19:31 +00:00
lally@webrtc.org
d7b6165483 Made DTLS/SCTP equivalent to UDP/DTLS/SCTP when comparing session descs in tests.
Cr-Commit-Position: refs/heads/master@{#8478}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8478 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:19:30 +00:00
lally@webrtc.org
ec97c6516f Attempt on read-only acceptance of -12.
Cr-Commit-Position: refs/heads/master@{#8477}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8477 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 20:19:29 +00:00
phoglund@webrtc.org
a30f007e45 Fixing incorrect memset in mock class.
I got a linker warning, and I could see the memset was clearly
incorrect since the arugment order should be ptr, value, size_t.

BUG=None
R=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8473}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8473 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 13:43:22 +00:00
phoglund@webrtc.org
a5de951b37 Make Options public and not package access in pc factory.
I realized I had accidentally made the Options struct package private,
which means no client can actually use it.

BUG=4181
R=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8472}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8472 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 13:42:20 +00:00
glaznev@webrtc.org
e3fccd4268 Merge changes from internal repo to AppRTCDemo.
- Add a setting option to disable outgoing video in a call.
- Add an option to select audio codec.
- Add an option to specify audio bitrate for Opus codec.
- Plus add an option to select H.264 as default video codec.

R=wzh@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8468}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8468 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-24 00:54:00 +00:00
pkasting@chromium.org
d324546ced Misc. cleanup split out of https://webrtc-codereview.appspot.com/37699004/ :
* Move constants into the files/functions that use them
* Declare variables in the narrowest scope possible
* Use correct (expected, actual) order for gtest macros
* Remove unused functions
* Untabify
* 80-column limit
* Avoid C-style casts
* Prefer true typed constants to "enum hack" constants
* Print size_t using the right format macro
* Shorten and simplify code
* Other random cleanup bits and style fixes

BUG=none
TEST=none
R=henrik.lundin@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8467}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8467 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-23 21:29:45 +00:00
kjellander@webrtc.org
722739108a Roll chromium_revision b0c3ed3..2c3ffb2 (316737:317530)
Includes GN changes from
https://webrtc-codereview.appspot.com/39249004/

Android changes for JNI were required due to
https://codereview.chromium.org/843103003

Other relevant changes:
* src/buildtools: 5c5e924..93b3d0a
* src/third_party/boringssl/src: d306f16..b180ee9
* src/third_party/icu: 4e3266f..2081ee6
* src/third_party/libvpx: 5cdd302..33bbffe
* src/third_party/usrsctp/usrsctplib: 190c8cb..13718c7
* src/tools/gyp: 4d7c139..3464008
* src/tools/swarming_client: bdad118..1b7bfec
Details: b0c3ed3..2c3ffb2/DEPS

Clang version was not updated in this roll.

R=dpranke@chromium.org, phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8466}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8466 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-23 19:09:22 +00:00
glaznev@webrtc.org
b28474c7a0 Add H.264 HW encoder and decoder support for Android.
- Allow to configure MediaCodec Java wrapper to use VP8
and H.264 codec.
- Save H.264 config frames with SPS and PPS NALUs and append them to every key frame.
- Correctly handle the case when one encoded frame may generate several output NALUs.
- Add code to find H.264 start codes.
- Add a flag (non configurable yet) to use H.264 in AppRTCDemo.
- Improve MediaCodec logging.

R=wzh@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8465}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8465 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-23 17:44:58 +00:00
pbos@webrtc.org
77e11bbe83 Wire up preferred/nominal_bitrate to stats.
Also adds a test that shows that actual_enc_bitrate was not summed
correctly plus fixing it.

Additionally reducing locking when grabbing stats.

BUG=1778
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8464}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8464 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-23 16:39:58 +00:00
henrika@webrtc.org
962c62475e Refactoring WebRTC Java/JNI audio track in C++ and Java.
This CL is part II in a major refactoring effort. See https://webrtc-codereview.appspot.com/33969004 for part I.

- Removes unused code and old WEBRTC logging macros
- Now uses optimal sample rate and buffer size in Java AudioTrack (used hard-coded sample rate before)
- Makes code more inline with the implementation in Chrome
- Adds helper methods for JNI handling to improve readability
- Changes the threading model (high-prio audio thread now lives in Java-land and C++ only works as proxy)
- Simplified the delay estimate
- Adds basic thread checks
- Removes all locks in C++ land
- Removes all locks in Java
- Improves construction/destruction
- Additional cleanup

Tested using AppRTCDemo and WebRTCDemo APKs on N6, N5, N7, Samsung Galaxy S4 and
Samsung Galaxy S4 mini (which uses 44.1kHz as native sample rate).

BUG=NONE
R=magjed@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8460}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8460 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-23 11:54:41 +00:00
perkj@webrtc.org
2ad3bb17a7 Reland patch for Switch default color format to YV12 on Android.
The new since the previous patch is that we ignore all resolutions with width % 16 != 0
since they are not tightly packed.

http://developer.android.com/reference/android/graphics/ImageFormat.html#YV12

R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8459}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8459 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-23 11:15:23 +00:00
torbjorng@webrtc.org
3c4668e27d Amend CpuMonitor fix.
Merged CpuMonitor changes.

R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8445}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8445 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-20 14:17:18 +00:00
torbjorng@webrtc.org
f906e55de1 Add CpuMonitor to Android ApprtcDemo
R=magjed@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8444}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8444 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-20 13:15:46 +00:00
pbos@webrtc.org
ec45e3b290 Fix test race in GetStatsMultipleSendStreams.
Test now waits for stats to be filled instead of failing instantly if
they haven't been updated.

BUG=2409
R=asapersson@webrtc.org
TBR=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8441}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8441 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-20 10:25:18 +00:00
jlmiller@webrtc.org
804eb46806 Change default from GICE to ICE5245 for SDP offers
BUG=4299
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8440}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8440 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-20 02:20:19 +00:00
guoweis@webrtc.org
cce874b8d2 Fix libjingle_media_unittest codec comparison issue
Missing one comparison of AudioCodec

TBR=juberti@webrtc.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#8437}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8437 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-19 18:14:52 +00:00
guoweis@webrtc.org
bc6961fe32 Make webrtc 50 KB smaller by not inlining Codec.
The Codec class is a big class and objects of the Codec class are passed
around by value. That means that inlined operations would be duplicated
at many places, in particular inside STL.

By not inlining Codec methods, webrtc shrinks by 50 KB in
a Linux x64 clang build.

Total change: -54147 bytes
==========================
 +2810 - Source: /home/bratell/src/chromium/src/third_party/libjingle/source/talk/media/base/codec.cc - (gained 2920, lost 110)
 -1003 - Source: /home/bratell/src/chromium/src/third_party/libjingle/source/talk/media/base/codec.h - (gained 0, lost 1003)
 -1129 - Source: /home/bratell/src/chromium/src/third_party/libjingle/source/talk/media/sctp/sctpdataengine.cc - (gained 1660, lost 2789)
 -1190 - Source: /home/bratell/src/chromium/src/third_party/libjingle/source/talk/media/base/rtpdataengine.cc - (gained 1408, lost 2598)
 -1747 - Source: /home/bratell/src/chromium/src/third_party/libjingle/source/talk/session/media/mediasession.cc - (gained 803, lost 2550)
 -2141 - Source: /home/bratell/src/chromium/src/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine.cc - (gained 1679, lost 3820)
 -2250 - Source: /home/bratell/src/chromium/src/third_party/libjingle/source/talk/app/webrtc/webrtcsdp.cc - (gained 1224, lost 3474)
 -2927 - Source: /usr/include/c++/4.8/bits/stl_vector.h - (gained 0, lost 2927)
 -3729 - Source: /home/bratell/src/chromium/src/third_party/libjingle/source/talk/media/webrtc/webrtcvideoengine2.cc - (gained 10925, lost 14654)
 -6369 - Source: /usr/include/c++/4.8/bits/vector.tcc - (gained 0, lost 6369)
 -10582 - Source: /usr/include/c++/4.8/bits/stl_heap.h - (gained 0, lost 10582)
 -19324 - Source: /usr/include/c++/4.8/bits/stl_algo.h - (gained 743, lost 20067)

BUG=
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8436}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8436 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-19 17:55:50 +00:00
tommi@webrtc.org
e07710cc91 Make SendCodec() lock-free.
Fetching the current codec for sake of gathering stats, is frequently blocked since it's done by acquiring the same lock as is held while encoding frames.  This can mean tens of milliseconds.

To improve this, I'm taking advantage of the fact that the codec information is set on the same thread as is used to query the information.  This means that locking isn't needed for querying this information.  I'm adding checks to make sure debug builds will crash if this isn't followed.

An alternative to this approach could be to add one more lock that is specifically used for the codec information variable.  This would also decouple querying codec information from the encoder itself, but still requires a lock.

This patch depends on making ThreadChecker part of rtc_base_approved:
https://webrtc-codereview.appspot.com/40539004/

BUG=2822
R=mflodman@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8435}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8435 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-19 17:43:45 +00:00
pbos@webrtc.org
1ed6224eaf Revert r8430 "Remove dead stats from Video{Sender,Receiver}Info."
This breaks compilation outside this codebase that needs to have it
removed before.

BUG=4322
TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8432}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8432 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-19 13:57:43 +00:00
pbos@webrtc.org
8ad05b7628 Remove dead stats from Video{Sender,Receiver}Info.
These stats are neither filled nor plumbed further and might as well be
removed (as proven by how easy they were to remove).

BUG=
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8430}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8430 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-19 13:00:46 +00:00
pbos@webrtc.org
1d0fa5d352 Add RtcpPacketTypeCounter stats to new API.
R=mflodman@webrtc.org, stefan@webrtc.org
BUG=1667,1788

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

Cr-Commit-Position: refs/heads/master@{#8429}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8429 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-19 12:47:45 +00:00
perkj@webrtc.org
3db042e2f0 Stop AndroidVideoCapturer asynchronously.
The purpose is to avoid a deadlock between the C++ thread calling Stop and the Java thread that provides video frames.

BUG=4318
R=glaznev@webrtc.org, magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8425}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8425 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-19 08:44:17 +00:00
jiayl@webrtc.org
254840692e Add empty files to implement a in-memory DTLS identity store without breaking Chromium build.
BUG=4241
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8424}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8424 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 23:58:44 +00:00
minyue@webrtc.org
652bc37a07 Adding two new stats to StatsReport.
A follow up of r8415. This is to post the data to the StatsReport.

BUG=3867
TEST=chromium + netem + apprtc + chrome://webrtc-internals
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8423}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8423 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 23:51:22 +00:00
jlmiller@webrtc.org
a744a28b92 Templatize and clean up codec wildcards.
BUG=4123
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8422}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8422 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 21:38:20 +00:00
glaznev@webrtc.org
18c92472df Move Android MediaCodec encoder and decoder factories to separate files.
Move Android media encoder and media decoder factories from
peerconnection_jni.cc to androidmediaencoder_jni.cc and
androidmediadecoder_jni.cc

R=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8417}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8417 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 18:43:21 +00:00
minyue@webrtc.org
c0bd7be0df Adding two new stats to VoiceReceiverInfo
There have been requests of two new stats namely

speech_expand_rate and secondary_decoded_rate.

BUG=3867
R=henrik.lundin@webrtc.org, henrika@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8415}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8415 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 15:24:39 +00:00
perkj@webrtc.org
8fbdcfd73f Revert "Switch default color format to YV12."
This reverts commit 1c3e728aa9.

Reason: Fails test running on Nexus 9 bots - org.webrtc.VideoCapturerAndroidTest#testStartStopWithDifferentResolutions.
Note that all other tests pass so it seems like there is resolution supported by the device that can't use YV12.

TBR=glaznev@webrtc.org
BUG=4011

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

Cr-Commit-Position: refs/heads/master@{#8414}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8414 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 15:20:14 +00:00
perkj@webrtc.org
1c3e728aa9 Switch default color format to YV12.
Currently N21 is used per default. But according to
http://developer.android.com/reference/android/graphics/ImageFormat.html#YV12
YV12 has been mandatory to support since api level 12.
Since YV12 and I420 is the same except for the order of planes, this format is cheaper to use.

Tested on N5, N6 and a Samsung device.

BUG=4011
R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8411}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8411 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 13:16:46 +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
pbos@webrtc.org
b4987bfc24 Send black frame with previous size when muting.
Instead of sending a black frame that's the size of the VideoFormat send
a black frame in the format we're already sending. This prevents
expensive encoder reconfiguration when the sending format is a different
resolution. This speeds up setting a null capturer (removing the
capturer) significantly as it doesn't entail an encoder reconfiguration.

R=mflodman@webrtc.org, pthatcher@webrtc.org
BUG=1788

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

Cr-Commit-Position: refs/heads/master@{#8405}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8405 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 10:13:45 +00:00
magjed@webrtc.org
3864363e2c cricket::VideoFrame: Refactor CopyToBuffer into base class
It’s possible to implement cricket::VideoFrame::CopyToBuffer using the virtual interface. This removes the need for subclasses to implement their own versions. This CL also fixes a bug in cricket::VideoFrame::CopyToPlanes which currently assumes that GetUPitch() == GetVPitch(), otherwise it may segfault.

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=fbarchard@google.com, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8403}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8403 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 09:19:45 +00:00
magjed@webrtc.org
dd4a8da68a Remove DISABLE_YUV flag
R=fbarchard@google.com, pbos@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8402}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8402 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-18 08:47:43 +00:00
decurtis@webrtc.org
bfa3c7253f Don't call g_thread_init on glib >=2.31.0
g_thread_init() is deprecated in glib 2.31.0 and later. This will call
g_thread_ini() only when compiling against older versions of glib.

BUG=1971,chromium:253566
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8400}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8400 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-17 21:23:13 +00:00
pkasting@chromium.org
e9facf8bb3 Add range checks in a variety of places where the values will subsequently be
expected to be 0-127.

BUG=none
TEST=none
R=juberti@webrtc.org
TBR=henrika

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

Cr-Commit-Position: refs/heads/master@{#8399}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8399 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-17 20:37:35 +00:00
magjed@webrtc.org
640313ce4f WebRtcVideoCapturer: Remove dead code |OnIncomingCapturedEncodedFrame|
The end goal except cleanup is to remove webrtc::VideoFrame.

R=mflodman@webrtc.org, pbos@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8393}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8393 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-17 15:10:41 +00:00
perkj@webrtc.org
1a38a51119 Add default implementation to VideoSourceInterface of Stop and Restart.
This is to make sure Chrome does not break when rolling. This should be reverted once
Chrome has been updated.

Please see:
http://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac/builds/16556/steps/compile/logs/stdio

BUG=4303
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8391}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8391 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-17 14:51:43 +00:00
perkj@webrtc.org
8f605e8911 Add VideoSource::Stop and Restart methods.
The purpose is to make sure that start and stop is called on the correct thread on Android. It also cleans up the Java VideoSource implementation.

BUG=4303
R=glaznev@webrtc.org, magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8389}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8389 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-17 13:54:42 +00:00
minyue@webrtc.org
f9b5c1b3d0 Removing CELT.
CELT is not supported in WebRTC/Libjingle. There are a few left-over in our code base. They are cleaned up in this CL.

BUG=
R=pbos@webrtc.org, tina.legrand@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8385}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8385 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-17 12:37:14 +00:00
pbos@webrtc.org
86196c4f48 Setup encoders inexpensively before first frame.
Modifies WebRtcVideoSendStream to use a default width/height of 16px.
This significantly reduces SetRemoteDescription time under
WebRtcVideoEngine2. Also preventing (expensive) reconfigurations due to
incoming frames when the channel is not sending yet.

Tests have been modified to generate a frame before expecting a certain
encoder size to have been configured.

Also adding tracing to WebRtcVideoSendStream::InputFrame as it can lead
to reconfigurations of the encoder which is expensive and it should show
up in chrome://tracing.

BUG=1788
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8381}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8381 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-16 21:02:20 +00:00
pthatcher@webrtc.org
3341b401cc Fix bug parsing media descriptions: the final field isn't a codec type for any of DTLS/SCTP, SCTP, or SCTP/DTLS.
BUG=none
TEST=none
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8369}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8369 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-13 21:14:44 +00:00
guoweis@webrtc.org
5a7dc39277 This is a code clean up. No functional change intended.
Consolidate the enum for capturer/frame rotation we use through out the code base.

BUG=4145
R=mflodman@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8365}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8365 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-13 14:32:13 +00:00
perkj@webrtc.org
96e4db9bea Split peerconnection_jni.cc into separate files.
For now:
java_helpers - JNI convenience functions etc. Can in theory be moved to libjingle / webrtc general one day.
classreferenceholder - app/webrtc specific Java class loader.
androidvideocapturer_jni - the jni part of the video capturer I added.
peerconnection_jni - all the rest.

This also move all jni specifics into ns webrtc_jni to avoid naming collision.

R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8363}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8363 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-13 12:47:21 +00:00
solenberg@webrtc.org
40fdb8ab96 Remove flaky test cases from peerconnection_unittest. The chain of API calls is tested from top to bottom anyway.
BUG=3871
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8359}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8359 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-13 11:09:43 +00:00
pbos@webrtc.org
40367f984b Remove default video encoders for new video API.
Reduces stream creation time significantly. As a side effect also
removes default encoders for receive-only channels.

BUG=1788,1667
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8356}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8356 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-13 08:00:42 +00:00
kjellander@webrtc.org
94eb9a6005 Whitespace change to test gsubtreed.
BUG=chromium:438149

Cr-Commit-Position: refs/heads/master@{#8355}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8355 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-13 07:40:40 +00:00
glaznev@webrtc.org
e388c19a9f Fix start bitrate settings for VP9 codec in AppRTCDemo.
R=wzh@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8354}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8354 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-13 00:34:45 +00:00