History log of /external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
822bdf978435b8eba9343ea96e9a9bc54b9c7df0 11-Dec-2015 Peter Boström <pbos@webrtc.org> Remove cricket::VideoEncoderConfig.

BUG=webrtc:5332
R=noahric@chromium.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1512853007 .

Cr-Commit-Position: refs/heads/master@{#10991}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
1387149ad1669365ac05278bf779a407bec08a4e 09-Dec-2015 deadbeef <deadbeef@webrtc.org> Adding reduced size RTCP configuration down to the video stream level.

Still waiting to turn on negotiation (in mediasession.cc)
until we verify it's working as expected.

BUG=webrtc:4868

Review URL: https://codereview.webrtc.org/1418123003

Cr-Commit-Position: refs/heads/master@{#10958}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
9d69c3f4d99240c27d997c37950b561605d403bd 07-Dec-2015 Stefan Holmer <stefan@webrtc.org> Return a copy of the supported RTP header extensions instead of a reference.

This also renames the method to better reflect what it does.

BUG=webrtc:5187
R=pbos@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1486123002 .

Cr-Commit-Position: refs/heads/master@{#10910}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
444682acf9804c5fcbddaded9e900ba3cc6921fc 25-Nov-2015 qiangchen <qiangchen@chromium.org> Remove frame time scheduing in IncomingVideoStream

This is part of the project that makes RTC rendering more
smooth. We've already finished the developement of the
frame selection algorithm in WebMediaPlayerMS, where we
managed a frame pool, and based on the vsync interval, we
actively select the best frame to render in order to
maximize the rendering smoothness.

Thus the frame timeline control in IncomingVideoStream is
no longer needed, because with sophisticated frame
selection algorithm in WebMediaPlayerMS, the time control
in IncomingVideoStream will do nothing but add some extra
delay.

BUG=514873

Review URL: https://codereview.webrtc.org/1419673014

Cr-Commit-Position: refs/heads/master@{#10781}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
43edf0ffb91a50e2efa01c7befe4d188a7e30ea2 21-Nov-2015 stefan <stefan@webrtc.org> Require negotiation to send transport cc feedback over RTCP.

BUG=4312

Review URL: https://codereview.webrtc.org/1452883002

Cr-Commit-Position: refs/heads/master@{#10735}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
bd13838ccc87f94d1e951bcf780979622b020359 21-Nov-2015 solenberg <solenberg@webrtc.org> Remove SetVideoLogging/SetAudioLogging from ChannelManager and down the stack.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1457653003

Cr-Commit-Position: refs/heads/master@{#10734}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
be57983f4bd875c39a229bab5112b32dad004057 10-Nov-2015 Karl Wiberg <kwiberg@webrtc.org> Rename Maybe to Optional

And add examples of good and bad usage to the documentation.

R=aluebs@webrtc.org, henrik.lundin@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1432553007 .

Cr-Commit-Position: refs/heads/master@{#10588}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
102c6a61bc0b42dc0956d013530fc0213b7e881b 30-Oct-2015 kwiberg <kwiberg@webrtc.org> Replace rtc::cricket::Settable with rtc::Maybe

The former is very similar to the latter, but less general (mostly in
naming).

This CL, which is the first to use Maybe at scale, also removes the implicit conversion from T to Maybe<T>, since it was agreed that the increased verbosity increased legibility.

Review URL: https://codereview.webrtc.org/1430433004

Cr-Commit-Position: refs/heads/master@{#10461}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
0c4e06b4c6107a1b94f764e279e4fb4161e905b0 07-Oct-2015 Peter Boström <pbos@webrtc.org> Use suffixed {uint,int}{8,16,32,64}_t types.

Removes the use of uint8, etc. in favor of uint8_t.

BUG=webrtc:5024
R=henrik.lundin@webrtc.org, henrikg@webrtc.org, perkj@webrtc.org, solenberg@webrtc.org, stefan@webrtc.org, tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1362503003 .

Cr-Commit-Position: refs/heads/master@{#10196}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
1d8a506405734d0cef9653704b036ca4f1388960 02-Oct-2015 stefan <stefan@webrtc.org> Add a PacketOptions struct to webrtc::Transport.

This allows us to pass packet meta data, such as transport sequence
number, to libjingle and further down to the socket implementation. A
similar struct already exist in libjingle, see rtc::PacketOptions in asyncpacketsocket.h.

BUG=4173

Review URL: https://codereview.webrtc.org/1376673004

Cr-Commit-Position: refs/heads/master@{#10144}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
2d566686a23fe93ada58f1c38a0d4b9a0d68556e 28-Sep-2015 pbos <pbos@webrtc.org> Unify Transport and newapi::Transport interfaces.

BUG=webrtc:1695
R=stefan@webrtc.org
TBR=mflodman@webrtc.org

Review URL: https://codereview.webrtc.org/1369263002

Cr-Commit-Position: refs/heads/master@{#10096}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
34fbfff068bf46d27812fb8fd531aea889a5feaf 24-Sep-2015 Peter Boström <pbos@webrtc.org> Remove VideoMediaChannel::SetRender().

Was a no-op in current implementation.

BUG=
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1334793003 .

Cr-Commit-Position: refs/heads/master@{#10059}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
61e933eac7673feb2f8663c3e71e503b714b350f 24-Sep-2015 solenberg <solenberg@webrtc.org> Remove ChannelManager::GetCapabilities()

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1364083002

Cr-Commit-Position: refs/heads/master@{#10045}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
b071a19019a0a2173cc139c960d6ef6946a1c581 17-Sep-2015 Fredrik Solenberg <solenberg@webrtc.org> Full use of NnChannel::SetSendParameters and NnChannel::SetRecvParameters.

SetOptions(), SetMaxBandwidth(), Set[Send|Recv]RtpHeaderExtensions(), Set[Send|Recv]Codecs() are now private.

BUG=webrtc:4690
R=pbos@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1327933002 .

Cr-Commit-Position: refs/heads/master@{#9973}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
709ed67c38d0a942f3bf3e68e337cc27a27bc353 15-Sep-2015 Fredrik Solenberg <solenberg@webrtc.org> Move instantiation of webrtc::Call into a MediaController class so that it can be used for both audio and video media channels.

I'm not super happy with the GetVoE() function added on MediaEngineInterface, but this will eventually be gone, once webrtc::Call owns the shared VoE state (or initially, maps ADM* to an implicitly created VoE).

BUG=webrtc:4690
R=pbos@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1269863005 .

Cr-Commit-Position: refs/heads/master@{#9939}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
1dd98f321920c1442dd5b3f791ea0fca133c2756 10-Sep-2015 solenberg <solenberg@webrtc.org> - Rename VoiceChannel::MuteStream() -> SetAudioSend() (incl. media channel)
- Rename VideoChannel::MuteStream() -> SetVideoSend() (incl. media channel)
- Collapse NnChannel::SetChannelOptions() into the above.
- Collapse VoiceChannel::SetLocalRenderer into SetAudioSend().

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1311533009

Cr-Commit-Position: refs/heads/master@{#9915}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
66f43392a31ac566565e910246ef496fcbbafb04 09-Sep-2015 solenberg <solenberg@webrtc.org> Remove [Voice|Video]MediaChannel::GetOptions().

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1324853003

Cr-Commit-Position: refs/heads/master@{#9904}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
f42376c60111edba6f29060bf3dd79e75d8dbb97 28-Aug-2015 pbos <pbos@webrtc.org> Wire up currently-received video codec to stats.

BUG=webrtc:1844, webrtc:4808
R=mflodman@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1315413002

Cr-Commit-Position: refs/heads/master@{#9810}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
4fbae2b79134572135d9d5fe35a7d1ccdeea3a4d 28-Aug-2015 solenberg <solenberg@webrtc.org> Add send transports to individual webrtc::Call streams.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1273363005

Cr-Commit-Position: refs/heads/master@{#9807}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
874ca3af5b163e1b3fd8802171e44ee252557842 21-Aug-2015 deadbeef <deadbeef@webrtc.org> Don't do reconfiguration if recv codec order/preference changes

Adding 'ReceiveCodecsHaveChanged' method that will determine if codecs
HAVE changed, irrespective of order and preference.

Review URL: https://codereview.webrtc.org/1291763003

Cr-Commit-Position: refs/heads/master@{#9748}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
048e80cacab128280c37c3e0574873cde8544410 19-Aug-2015 tommi <tommi@webrtc.org> Revert of Revert "Remove CpuMonitor and related, unused, code." (patchset #1 id:1 of https://codereview.webrtc.org/1287913004/ )

Reason for revert:
(retrying with my webrtc account...)
The reason for reverting is: Re-landing the change that removes the CpuMonitor class after having fixed the build issue in Chromium..

Original issue's description:
> Revert "Remove CpuMonitor and related, unused, code."
>
> This reverts commit 1a24012680f25440aa1d117373df2af14cdc2fc1.
>
> TBR=tommi@webrtc.org,pthatcher@webrtc.org
> BUG=
>
> This breaks
> http://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux/builds/20148/steps/compile/logs/stdio
>
> Committed: https://chromium.googlesource.com/external/webrtc/+/a472e968c95fb14e63ec42f453551d0967573ea8

TBR=pthatcher@webrtc.org,guoweis@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review URL: https://codereview.webrtc.org/1290033005

Cr-Commit-Position: refs/heads/master@{#9733}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
a472e968c95fb14e63ec42f453551d0967573ea8 19-Aug-2015 Guo-wei Shieh <guoweis@webrtc.org> Revert "Remove CpuMonitor and related, unused, code."

This reverts commit 1a24012680f25440aa1d117373df2af14cdc2fc1.

TBR=tommi@webrtc.org,pthatcher@webrtc.org
BUG=

This breaks
http://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux/builds/20148/steps/compile/logs/stdio

Review URL: https://codereview.webrtc.org/1287913004 .

Cr-Commit-Position: refs/heads/master@{#9730}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
1a24012680f25440aa1d117373df2af14cdc2fc1 18-Aug-2015 Tommi <tommi@webrtc.org> Remove CpuMonitor and related, unused, code.

BUG=
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1298953002 .

Cr-Commit-Position: refs/heads/master@{#9727}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
c2ee2c86f905991a8cd05ee1f35bea105b41e4e0 08-Aug-2015 Peter Thatcher <pthatcher@chromium.org> Refactor the relationship between BaseChannel and MediaChannel so that we send over all the parameters in one method call rather then having them broken up into multiple method calls. This should allow future refactorings of the WebRtcVideoEngine2 to not recreate configurations so many times, and have more simple code as well.

R=deadbeef@webrtc.org, pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1229283003 .

Cr-Commit-Position: refs/heads/master@{#9690}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
c27d89fdc6b33846ff06e8ca8bd03119d05c6530 16-Jul-2015 qiangchen <qiangchen@chromium.org> Let WebRtcVideoChannel2::WebRtcVideoSendStream::InputFrame carry the input frame's timestamp to output frame.

Essentially we are carrying over the capture timestamp to the encoded frame sent out, so the frame lengths will contain no noise.

Review URL: https://codereview.webrtc.org/1225153002

Cr-Commit-Position: refs/heads/master@{#9597}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
4765070b8d6f024509c717c04d9b708750666927 30-May-2015 Miguel Casas-Sanchez <mcasas@webrtc.org> Rename I420VideoFrame to VideoFrame.

This is a mechanical change since it affects so many
files.
I420VideoFrame -> VideoFrame
and reformatted.

Rationale: in the next CL I420VideoFrame will
get an indication of Pixel Format (I420 for
starters) and of storage type: usually
UNOWNED, could be SHMEM, and in the near
future will be possibly TEXTURE. See
https://codereview.chromium.org/1154153003
for the change that happened in Cr.

BUG=4730, chromium:440843
R=jiayl@webrtc.org, niklas.enbom@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9339}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
259bd2034c3d3ee7f2dc4d481e9bf896a3a4d6ef 28-May-2015 Peter Boström <pbos@webrtc.org> Report ssrc_groups in GetStats().

This was already available in the stats struct, just not filled in.

BUG=4720
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9308}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
3548dd21542c7b3f2c4680c6a6d86b0d719bd008 22-May-2015 Peter Boström <pbos@webrtc.org> Set local SSRCs on receivers added before senders.

Addresses bug where a receiver would report SSRC 1 even though the
endpoint has sending streams.

BUG=4678
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9262}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
9a416bd14ee225d8f1a1ada627a1dd7daf275032 22-May-2015 Fredrik Solenberg <solenberg@webrtc.org> Get rid of unnecessary Terminate() method and worker_thread_ from WebRtcVideoEngine2

BUG=
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9258}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
4d71edef45afa38b3f68b6af0519ac0f21d327df 19-May-2015 Peter Boström <pbos@webrtc.org> Add HW fallback option to software encoding.

Permits falling back to software encoding for unsupported resolutions.

BUG=chromium:475116, chromium:487934
R=mflodman@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9227}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
7252a2ba8035c4128917a9558a3e34fc9dbe7c44 18-May-2015 Peter Boström <pbos@webrtc.org> Add HW fallback option to software decoding.

Permits falling back to software decoding for unsupported resolutions in
bitstreams.

BUG=4625, chromium:487934
R=mflodman@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9209}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
67c9df79828991c5aab96b9253ae4e7ba7ed508e 11-May-2015 Peter Boström <pbos@webrtc.org> Base NACK on send codecs.

Addressing discrepancy where NACK used to be set from send codecs in
WebRtcVideoEngine(1), and before this change, from recv codecs in
WebRtcVideoEngine2. This should address that NACK might be sent even if
the remote side does not support it.

BUG=4626
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9171}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
126c03ea02d8a99bfa3d1e6d6fe04516183d31af 11-May-2015 Peter Boström <pbos@webrtc.org> Base decision to send REMB on send codecs.

Fixes bug where Chromium would send REMB even though the remote party
doesn't announce support for it (because it was based on local codec
settings instead of remote ones).

BUG=4626
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9170}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
4b60c73e74d62beff484b7f54d8f3267cb66274f 07-May-2015 Fredrik Solenberg <solenberg@webrtc.org> Hook up libjingle WebRtcVoiceEngine to Call API for combined A/V BWE.

BUG=4574,3109
R=pbos@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9150}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
81ea54eaac82b36b7208a02fd37a469d7d0bd9d0 07-May-2015 Peter Boström <pbos@webrtc.org> Remove WebRtcVideoEngine.

Leaves a stub file for talk/media/webrtc/webrtcvideoengine.cc until
build files in Chromium have been modified.

BUG=1695,4566
R=mflodman@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9148}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
143cec1cc68b9ba44f3ef4467f1422704f2395f0 28-Apr-2015 Erik Språng <sprang@google.com> Set correct encoder-specific settings for vpx in the new API.

Also, make VideoEncoderConfig::ContentType an enum class.

BUG=4569
R=mflodman@webrtc.org, pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9093}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
ee0b00e8a9cc2d8f4578912a389dee92ac020ee9 22-Apr-2015 Peter Boström <pbos@webrtc.org> Prevent recv-stream reconfig on identical codecs.

Receive streams seem to be reconfigured with identical codecs when
another stream is removed. Preventing this reconfiguration makes sure
that existing streams don't report stats during teardown when the stream
is still supposed to be running.

BUG=1788
R=asapersson@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9059}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
e62202fedf57b74cc263246c0586ee353978caf8 21-Apr-2015 Shao Changbin <changbin.shao@webrtc.org> Support handling multiple RTX but only generate SDP with RTX associated with VP8.

This implementation registers RTX-APT map inside RTP sender and receiver.
While it only generates SDP with RTX associated with VP8 to make it
compatible with previous Chrome versions.

Should add following changes after reaches stable,
* Use RTX-APT map for building and restoring RTP packets.
* Add RTX support for RED or VP9 in Video engine.
* Set RTX payload type for RED inside FecConfig in EndToEndTest.

BUG=4024
R=mflodman@webrtc.org, pbos@webrtc.org, pthatcher@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9040}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
56d50288e0f5df75cddc3798b8e01cdb75f25c92 14-Apr-2015 Peter Thatcher <pthatcher@chromium.org> Remove SignalCaptureStateChange from MediaEngine.

It's no longer used by anything.

R=juberti@google.com

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

Cr-Commit-Position: refs/heads/master@{#8994}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
77f0e3f7b6a0664661dc295eb235c543b8091554 13-Apr-2015 Peter Thatcher <pthatcher@chromium.org> Remove GetStartCaptureFormat and some related code.

It is no longer used by anything.

R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8990}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
e7b221f4760af10e29cb4c501e758cc3518f628b 13-Apr-2015 Peter Boström <pbos@webrtc.org> Remove deadlock in WebRtcVideoEngine2.

Acquiring stream_lock_ in WebRtcVideoChannel2 in a callback from Call
forms a lock-order inversion between process-thread locks and libjingle
locks, manifesting as CPU adaptation requests blocking on stream
creation that is blocked on the CPU adaptation request finishing.

R=asapersson@webrtc.org, mflodman@webrtc.org
BUG=4535,chromium:475065

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

Cr-Commit-Position: refs/heads/master@{#8985}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
9bfe3daf7349b62647997ced9389baa8ab043afe 10-Apr-2015 Thiago Farina <tfarina@chromium.org> Cleanup: Remove i420_video_frame.h header.

It is just a pass through to webrtc/video_frame.h. Updated the callers
to include webrtc/video_frame.h instead and removed i420_video_frame.h.

This should fix pbos' TODO in i420_video_frame.h.

Tested on Linux with the following command lines:

$ rm -rf out/
$ ./webrtc/build/gyp_webrtc
$ ninja -C out/Debug

BUG=None
TEST=see above
R=magjed@webrtc.org, pbos@webrtc.org, tommi@webrtc.org
TBR=tommi@webrtc.org

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

Patch from Thiago Farina <tfarina@chromium.org>.

Cr-Commit-Position: refs/heads/master@{#8973}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
64c1e8cda5cb4db85c5c296bf2f6a8181af7de9d 02-Apr-2015 Guo-wei Shieh <guoweis@chromium.org> Enable CVO by default through webrtc pipeline.

All RTP packets from sender side will carry the rotation info. (will file a bug to track this) On the receiving side, only packets with marker bit set will be examined.

Tests completed:
1. android standalone to android standalone
2. android standalone to chrome (with and without this change)
3. android on chrome

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

Committed: https://crrev.com/1b1c15cad16de57053bb6aa8a916079e0534bdae
Cr-Commit-Position: refs/heads/master@{#8905}

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

Cr-Commit-Position: refs/heads/master@{#8917}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
31331cfd2d3d17958942b67190c8b943c05b084f 01-Apr-2015 Minyue <minyue@webrtc.org> Revert "Enable CVO by default through webrtc pipeline."

This reverts commit 1b1c15cad16de57053bb6aa8a916079e0534bdae.

Due to failure on
http://build.chromium.org/p/client.webrtc/builders/Linux64%20Release%20%5Blarge%20tests%5D/builds/4092
and following builds (the test hangs and never finishes).
R=kjellander@webrtc.org
TBR=guoweis@chromium.org
TESTED=Local revert + execution of libjingle_peerconnection_java_unittest show that this is the culprit.

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

Cr-Commit-Position: refs/heads/master@{#8911}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
1b1c15cad16de57053bb6aa8a916079e0534bdae 01-Apr-2015 Guo-wei Shieh <guoweis@chromium.org> Enable CVO by default through webrtc pipeline.

All RTP packets from sender side will carry the rotation info. (will file a bug to track this) On the receiving side, only packets with marker bit set will be examined.

Tests completed:
1. android standalone to android standalone
2. android standalone to chrome (with and without this change)
3. android on chrome

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

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

Cr-Commit-Position: refs/heads/master@{#8905}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
dfd53fe26b013d0948024a38eec6fbc31c29a094 27-Mar-2015 Peter Boström <pbos@webrtc.org> Raise streams for SetMaxSendBitrates above 2000k.

Fixes b=AS effectively not setting bitrates above 2000k.

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

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

Cr-Commit-Position: refs/heads/master@{#8882}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
d6f4c25eedcfd502920f1b2a24744badd9da80be 26-Mar-2015 Peter Boström <pbos@webrtc.org> Reject streams reusing simulcast or RTX SSRCs.

BUG=1788, chromium:470122, chromium:470856
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8868}
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
8296ec518b2659de922668bfe0db57e71eb17e74 20-Mar-2015 pbos@webrtc.org <pbos@webrtc.org> Fix heap-use-after-free in WebRtcVideoEngine2.

Found in libjingle_peerconnection_unittest on asan while trying to
default-enable WebRtcVideoEngine2.

BUG=1788
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8808}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8808 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
afdd5dd372d69be7244a3d90d70de9d5ecd60eb9 12-Mar-2015 magjed@webrtc.org <magjed@webrtc.org> Revert "Revert "Remove frame copy from cricket::VideoFrame to I420VideoFrame""

This reverts r8683 and is a reland of r8682.

Reason for revert: The thread checker in Chromium that crashed has been fixed now.

BUG=1128
TBR=tommi,pbos,pthatcher

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

Cr-Commit-Position: refs/heads/master@{#8696}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8696 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
b218ff553148b9a26c82e3b3a46d626c4438cedd 11-Mar-2015 magjed@webrtc.org <magjed@webrtc.org> Revert "Remove frame copy from cricket::VideoFrame to I420VideoFrame"

This reverts r8682.

Reason for revert: Fails on Chromium FYI content_browsertests

BUG=1128
TBR=tommi,pbos,pthatcher

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

Cr-Commit-Position: refs/heads/master@{#8683}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8683 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
370a72cc3ff928099c6ec6766659ed12155b74df 11-Mar-2015 magjed@webrtc.org <magjed@webrtc.org> Remove frame copy from cricket::VideoFrame to I420VideoFrame

BUG=1128
R=pbos@webrtc.org, pthatcher@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8682}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8682 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
a2a6fe66a39797ea61a04d80ce3afc494d850bfc 06-Mar-2015 pbos@webrtc.org <pbos@webrtc.org> Reconfigure default streams on AddRecvStream.

Makes sure RTX can be used for streams that have received early media
before being properly configured.

BUG=1788
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8634}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8634 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
14665ff7d4024d07e58622f498b23fd980001871 04-Mar-2015 kjellander@webrtc.org <kjellander@webrtc.org> Roll chromium_revision e144d30..6fdb142 (318658:318841) + remove OVERRIDE macro

Clang version changed 223108:230914
Details: https://chromium.googlesource.com/chromium/src/+/e144d30..6fdb142/tools/clang/scripts/update.sh

Removes the OVERRIDE macro defined in:
* webrtc/base/common.h
* webrtc/typedefs.h

The majority of the source changes were done by running this in src/:
perl -0pi -e "s/virtual\s([^({;]*(\([^({;]*\)[^({;]*))(OVERRIDE|override)/\1override/sg" `find {talk,webrtc} -name "*.h" -o -name "*.cc*" -o -name "*.mm*"`

which converted all:
virtual Foo() OVERRIDE
functions to:
Foo() override

Then I manually edited:
* talk/media/webrtc/fakewebrtccommon.h
* webrtc/test/fake_common.h

Remaining uses of OVERRIDE was fixed by search+replace.

Manual edits were done to fix virtual destructors that were
overriding inherited ones.

Finally a build error related to the pure virtual definitions of
Read, Write and Rewind in common_types.h required a bit of
refactoring in:
* webrtc/common_types.cc
* webrtc/common_types.h
* webrtc/system_wrappers/interface/file_wrapper.h
* webrtc/system_wrappers/source/file_impl.cc

This roll should make it possible for us to finally re-enable deadlock
detection for TSan on the buildbots.

BUG=4106
R=pbos@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8596}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8596 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
058b1f17ac43b1fe69a8c18aaa7999ba88733dfd 04-Mar-2015 pbos@webrtc.org <pbos@webrtc.org> 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
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
f1f0d9a4cd53f4eacbf791cb7317612fa7382a45 02-Mar-2015 pbos@webrtc.org <pbos@webrtc.org> 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
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
9a4410e9934578e84cc129b978a29e151d957994 26-Feb-2015 pbos@webrtc.org <pbos@webrtc.org> 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
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
b4987bfc24e1e755a6c54053d09a58d1e72228bb 18-Feb-2015 pbos@webrtc.org <pbos@webrtc.org> 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
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
86196c4f481d7f515e54806988f763169e8b9206 16-Feb-2015 pbos@webrtc.org <pbos@webrtc.org> 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
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
0d852d5c27a759fe7aadc500bd7b3cadfae3deb8 09-Feb-2015 pbos@webrtc.org <pbos@webrtc.org> Use VideoReceiveStream as an ExternalRenderer.

Removes AddRenderCallback from ViERenderer and implements
VideoReceiveStream on top of DeliverI420Frame like WebRtcVideoEngine
currently does today.

Also adds ::IsTextureSupported() to the VideoRenderer interface to
permit querying whether an external renderer supports texture rendering.

R=stefan@webrtc.org
TBR=mflodman@webrtc.org
BUG=1667

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

Cr-Commit-Position: refs/heads/master@{#8299}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8299 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
5e161616b17900c06809e7275afca96363d44ad5 30-Jan-2015 pbos@webrtc.org <pbos@webrtc.org> Remove CPU monitor from WebRtcVideoEngine2.

CPU adaptation is based on timings done inside webrtc, not actual CPU
values anymore. This code has never been wired up and is causing flakes
on at least valgrind, but possibly also on actual platforms.

BUG=1788
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8221}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8221 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
fc5ad95fecc5ddc7d98dcfbac1c4e75a7814253f 27-Jan-2015 magjed@webrtc.org <magjed@webrtc.org> Reland of: "Implement elapsed time and capture start NTP time estimation." revision @8139

Link to original CL: https://review.webrtc.org/36909004/

R=pbos@webrtc.org
TBR=pthatcher@webrtc.org
BUG=4227

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8162 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
0f988447496e5d656d52bea279c8511d3569cb11 23-Jan-2015 tkchin@webrtc.org <tkchin@webrtc.org> Revert 8139 "Implement elapsed time and capture start NTP time e..."

> Implement elapsed time and capture start NTP time estimation.
>
> These two elements are required for end-to-end delay estimation.
>
> BUG=1788
> R=stefan@webrtc.org
> TBR=pthatcher@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/36909004

TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8143 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
ad3ee2c46bf502a18847229d42dd081c9e753c70 23-Jan-2015 pbos@webrtc.org <pbos@webrtc.org> Implement elapsed time and capture start NTP time estimation.

These two elements are required for end-to-end delay estimation.

BUG=1788
R=stefan@webrtc.org
TBR=pthatcher@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8139 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
f1c8b905204bc7a6c74271ead038f5d80d8d3eed 14-Jan-2015 pbos@webrtc.org <pbos@webrtc.org> Remove WebRtcVideoEncoderFactory2.

This interface is no longer required and just adds complexity.

R=stefan@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8065 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
f18fba2f7b3d1fad7b7b38a9a5dc281bef06c50e 14-Jan-2015 pbos@webrtc.org <pbos@webrtc.org> Implement SimulcastEncoderAdapter support.

R=stefan@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8061 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
8f27fcce79584378da97f0d84574564799e138d6 09-Jan-2015 andrew@webrtc.org <andrew@webrtc.org> Revert 8028 "Support associated payload type when registering Rt..."

Reasons for revert:
1. glaznev discovered potentially related problems using the Android AppRTCDemo.
2. We're trying to do an M41 webrtc roll in Chromium, and this CL is risky.

> Support associated payload type when registering Rtx payload type.
>
> Major changes include,
> - Add associated payload type for SetRtxSendPayloadType & SetRtxReceivePayloadType.
> - Receiver: Restore RTP packets by the new RTX-APT map.
> - Sender: Send RTP packets by checking RTX-APT map.
> - Add RTX payload type for RED in the default codec list.
>
> BUG=4024
> R=pbos@webrtc.org, stefan@webrtc.org
> TBR=mflodman@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/26259004
>
> Patch from Changbin Shao <changbin.shao@intel.com>.

TBR=pbos@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8033 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
2a169640a3225a559f926fe74f1fe1af239e191f 09-Jan-2015 pbos@webrtc.org <pbos@webrtc.org> Support associated payload type when registering Rtx payload type.

Major changes include,
- Add associated payload type for SetRtxSendPayloadType & SetRtxReceivePayloadType.
- Receiver: Restore RTP packets by the new RTX-APT map.
- Sender: Send RTP packets by checking RTX-APT map.
- Add RTX payload type for RED in the default codec list.

BUG=4024
R=pbos@webrtc.org, stefan@webrtc.org
TBR=mflodman@webrtc.org

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

Patch from Changbin Shao <changbin.shao@intel.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8028 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
2b19f0631233488e891d9db0d170b637dc8fc464 11-Dec-2014 pbos@webrtc.org <pbos@webrtc.org> Wire up RTT statistics to webrtc::Call.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7876 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
a85307737cc9ea3e79b86daf96d455fca4ad1bb4 10-Dec-2014 buildbot@webrtc.org <buildbot@webrtc.org> (Auto)update libjingle 81702493-> 81755413

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7860 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
008731868a09e2fe01da53733a612dc24761f791 25-Nov-2014 pbos@webrtc.org <pbos@webrtc.org> Implement settable min/start/max bitrates in Call.

These parameters are set by the x-google-*-bitrate SDP parameters. This
is implemented on a Call level instead of per-stream like the currently
underlying VideoEngine implementation to allow this refactoring to not
reconfigure the VideoCodec at all but rather adjust bandwidth-estimator
parameters.
Also implements SetMaxSendBandwidth in WebRtcVideoEngine2 as it's a SDP
parameter and allowing it to be dynamically readjusted in Call.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7746 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
a2ef4fe9c331e7668b9e8ff64ce5141a535a5f21 07-Nov-2014 pbos@webrtc.org <pbos@webrtc.org> Prevent a lot of VideoSendStream reconfigures.

Checking whether we're setting the same configuration or not.
Experimentally this brings down underlying reconfigures from ~20 to
about 4-5.

R=stefan@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7659 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
19b47410044aecac20f3f46a4d207018fc466e2e 06-Nov-2014 andresp@webrtc.org <andresp@webrtc.org> Removing unused method GetDefaultVideoEncoderConfig.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7649 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
0bae1fab4adb9bb8164e53142bf419049eafec38 05-Nov-2014 stefan@webrtc.org <stefan@webrtc.org> Wire up bandwidth stats to the new API and webrtcvideoengine2.

Adds stats to verify bandwidth and pacer stats.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7634 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
96a93259b361f4b03080a188d781b0835cf4edaf 03-Nov-2014 pbos@webrtc.org <pbos@webrtc.org> Implement external decoder support in WebRtcVideoEngine2.

R=stefan@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7594 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
3bf3d238c8c4578e444e5a601684db68c79a29ca 31-Oct-2014 pbos@webrtc.org <pbos@webrtc.org> Configure A/V sync in WebRtcVideoEngine2.

Sets up A/V sync for the first video receive channel with the default
voice channel. This is only done when conference mode is disabled to
preserve existing behavior. Ideally we'd know which voice channel to
sync with here.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7577 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
776e6f289c7396a1143b8b36b03f88b08ac8cba3 29-Oct-2014 pbos@webrtc.org <pbos@webrtc.org> Use external VideoDecoders in VideoReceiveStream.

Removes direct VideoCodec use from the new API, exposes VideoDecoders
through webrtc/video_decoder.h similar to VideoEncoders.

Also includes some preparation for wiring up external decoders in
WebRtcVideoEngine2 by adding AllocatedDecoders that specify whether they
were allocated internally or externally.

Additionally addresses a data race in VideoReceiver that was exposed with this change.

R=mflodman@webrtc.org, stefan@webrtc.org
TBR=pthatcher@webrtc.org
BUG=2854,1667

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7560 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
efc82c2c734171faba9e400ff60a114e7af2ebcc 27-Oct-2014 pbos@webrtc.org <pbos@webrtc.org> Implement screencast settings for WebRtcVideoEngine2.

Adds support for screencast_min_bitrate and sets content type
corresponding to the capture type.

R=stefan@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7529 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
fa553ef6053b20f3768d5fe4314e8c993648bf0a 20-Oct-2014 pbos@webrtc.org <pbos@webrtc.org> Set up start bitrate in WebRtcVideoEngine2.

R=stefan@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7476 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
1ecbe45c7e4c9142896cb2810d699558518f4f28 14-Oct-2014 buildbot@webrtc.org <buildbot@webrtc.org> (Auto)update libjingle 77689511-> 77696841

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7449 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
7fe1e03dd6da66401010119734245f114bf06645 14-Oct-2014 pbos@webrtc.org <pbos@webrtc.org> Wire up external encoders.

R=pthatcher@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7440 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
3c16d8bd1c0a3eea94a6678497eae0cf8e7f0187 13-Oct-2014 buildbot@webrtc.org <buildbot@webrtc.org> (Auto)update libjingle 77414393-> 77554188

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7428 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
97abeee2825ac93b62397feea74d0ad02d42540d 09-Oct-2014 buildbot@webrtc.org <buildbot@webrtc.org> (Auto)update libjingle 77263371-> 77296420

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7400 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
575d126a3d4a4bf6d43ea07189ac201f6bfe0798 08-Oct-2014 pbos@webrtc.org <pbos@webrtc.org> Protect send_/recv_streams_ in WebRtcVideoEngine2.

Important as OnLoadUpdate() won't be called on the worker thread and the
list of streams can't be concurrently modified while delivering this
callback to all send streams.

R=stefan@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7395 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
42684be21b255e2b07eb154e6a2807fa2226167e 03-Oct-2014 pbos@webrtc.org <pbos@webrtc.org> Wire up CPU adaptation in WebRtcVideoEngine2.

Includes clean-up work to be able to use the webrtc::Call::Config that's
set up. This introduced a CallFactory to spawn a FakeCall with the
config used and allowed removal of FakeWebRtcVideoChannel2.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7370 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
d60d79a14594cbc8266e4a50391ddbe64ed491f0 24-Sep-2014 pbos@webrtc.org <pbos@webrtc.org> Thread annotation of rtc::CriticalSection.

Effectively re-lands r5516 which was reverted because talk/-only
checkouts existed. This now resides in webrtc/base/, so no talk/-only
checkouts should be possible.

This change also enables -Wthread-safety for talk/ and fixes a bug in
talk/media/webrtc/webrtcvideoengine2.cc where a guarded variable was
read without taking the corresponding lock.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7284 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
38344ed2806c8fed60d67d280ca44c32e36707c0 24-Sep-2014 pbos@webrtc.org <pbos@webrtc.org> Move thread_annotations.h to webrtc/base/.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7283 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
0a2087a7110e2455ce68f2c85068df5ae447508f 23-Sep-2014 pbos@webrtc.org <pbos@webrtc.org> Skeleton for registering external encoders/decoders.

R=pthatcher@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7270 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
83f95ba9a645099df5e19a91030029181d766b40 22-Sep-2014 pbos@webrtc.org <pbos@webrtc.org> Remove engine-level SetOptions.

Already removed in WebRtcVideoEngine.

R=andresp@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7265 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
bbe0a8517d7f9da7aa779bff77cdbb70df358437 19-Sep-2014 pbos@webrtc.org <pbos@webrtc.org> Config struct for VideoEncoder.

Used for config parameters in common between multiple codecs as well as
the encoder-specific pointer. In particular this contains content mode
(realtime video vs. screenshare).

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7239 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
992febb9978d2ded1a2c3c8a42ea18ee071ca3ae 05-Sep-2014 buildbot@webrtc.org <buildbot@webrtc.org> (Auto)update libjingle 74873066-> 74873164

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7089 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
818b7b3ac982e9e1f579904c5f160103da046dcf 05-Sep-2014 buildbot@webrtc.org <buildbot@webrtc.org> (Auto)update libjingle 74825084-> 74825992

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7074 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
c4175b9fdf7d23eb58a044ff39e2b096f9091995 03-Sep-2014 pbos@webrtc.org <pbos@webrtc.org> Set resolution based on incoming VideoFrames.

R=pthatcher@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7042 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
9f341283f64d9b905c3883fd23988eb3d5fdcb8f 02-Sep-2014 pbos@webrtc.org <pbos@webrtc.org> Remove WebRtcVideoEngine::default_codec_format().

R=pthatcher@webrtc.org
BUG=1788

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7029 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
b648b9d85c5d07b0866ef45f5be587f71b0849b4 26-Aug-2014 pbos@webrtc.org <pbos@webrtc.org> Remove test constructor in WebRtcVideoEngine2.

Removes the need for ::Construct().

BUG=1788
R=pthatcher@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6977 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
3740d741068698baf987b1ced5ea485378e16d04 23-Aug-2014 buildbot@webrtc.org <buildbot@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> (Auto)update libjingle 73927658-> 73927775

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6958 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
ef8bb8d9b0bca0b1fd1ddb0a17df665e9dfaf9ad 13-Aug-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Make sure that muting muted streams succeeds.

We don't want to report an error here, and PeerConnection relies on
being able to mute already-muted streams (I hit an assert when testing
manually).

BUG=1788
R=pthatcher@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6895 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
a09a99950ec40aef6421e4ba35eee7196b7a6e68 13-Aug-2014 buildbot@webrtc.org <buildbot@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> (Auto)update libjingle 73222930-> 73226398

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6891 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
2c0fb05f1683b7a721072bdd93501b8afe164b9a 13-Aug-2014 buildbot@webrtc.org <buildbot@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> (Auto)update libjingle 73221069-> 73222930

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6889 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
afb554f404d68e6f3ca5395216f776169370713d 13-Aug-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Move default-recv-channels to a separate class.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6879 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
d4e598d57aed714a599444a7eab5e8fdde52a950 29-Jul-2014 buildbot@webrtc.org <buildbot@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> (Auto)update libjingle 72097588-> 72159069

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6799 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
6f48f1bf68a10669c9bcd81262c1a98ed2a8d462 22-Jul-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Implement encoder options in WebRtcVideoEngine2.

Implementing default options to enable denoising by default and wiring
up encoder settings to propagate VP8 settings.

BUG=1788
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6757 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
e6f84ae8a602ce78733d20b280ce32198e7ecef5 18-Jul-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Initial WebRtcVideoEngine2::GetStats().

Also forward-declaring and moving WebRtcVideoRenderer out of header.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6729 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
d1ea06b3d5adab352741df5092c56b20f3e1a74f 18-Jul-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Restart VideoReceiveStreams in WebRtcVideoEngine2.

Puts VideoReceiveStreams in a wrapper, WebRtcVideoReceiveStream that
contain their state (configs). WebRtcVideoRenderer (the wrapper between
webrtc::VideoRenderer and cricket::VideoRenderer) has also been merged
into WebRtcVideoReceiveStream.

Implements and tests setting codecs with new FEC settings as well as RTP
header extensions on already existing receive streams.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6727 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
5301b0f1fce9478dfa56476e174332a1d67b053a 17-Jul-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Move additional state into WebRtcVideoSendStream.

Prevents having two places where codecs etc. are set up and allows us to
avoid creating the underlying VideoSendStream before send codecs are
set up.

BUG=1788
R=pthatcher@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6716 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
587ef60056ff0e301a95a9eb8231fb0cae6b69b1 16-Jun-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Implement RTP extension support in WebRtcVideoEngine2.

BUG=1788
R=pthatcher@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6453 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
d41eaeb7cded2b2cda83f53aa320cf18e2d07380 12-Jun-2014 buildbot@webrtc.org <buildbot@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> (Auto)update libjingle 69005149-> 69049090

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6408 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
6ae48c660934784b4df56ab1ac99402ce3745e9f 06-Jun-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Make VideoSendStream/VideoReceiveStream configs const.

Benefits of this is that the send config previously had unclear locking
requirements, a lock was used to lock parts parts of it while
reconfiguring the VideoEncoder. Primary work was splitting out video
streams from config as well as encoder_settings as these change on
ReconfigureVideoEncoder. Now threading requirements for both member
configs are clear (as they are read-only), and encoder_settings doesn't
stay in the config as a stale pointer.

CreateVideoSendStream now takes video streams separately as well as the
encoder_settings pointer, analogous to ReconfigureVideoEncoder.

This change required changing so that pacing is silently enabled when
using suspend_below_min_bitrate rather than silently setting it.

R=henrik.lundin@webrtc.org, mflodman@webrtc.org, pthatcher@webrtc.org, stefan@webrtc.org
BUG=3260

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6349 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
0d523eea831e616c415c61765127ed5eb17e5f11 05-Jun-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Remove static initializer from WebRtcVideoEngine2.

BUG=
R=pliard@google.com, pthatcher@webrtc.org, pliard@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6338 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
b5a22b14648c53874b4b76368a1a2271d985e875 13-May-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Revert r6110 and r6109.

Effectively re-landing r6104 as well as r6108 which includes a fix to a
compile error that caused r6104 to be reverted in r6110.

BUG=
TBR=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6119 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
17911dca8099707b5c050741a108b95b79a4da66 12-May-2014 buildbot@webrtc.org <buildbot@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> (Auto)update libjingle 66798415-> 66813165

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6110 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h
d266a2020f9e86a787eada77d458ee75426d68af 12-May-2014 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Initial wiring of new webrtc API in libjingle.

BUG=1788
R=pthatcher@google.com, pthatcher@webrtc.org
TBR=juberti@webrtc.org, mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6104 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/talk/media/webrtc/webrtcvideoengine2.h