Commit Graph

106 Commits

Author SHA1 Message Date
ff761fba82 modules: more interface -> include renames
This changes the following module directories:
* webrtc/modules/audio_conference_mixer/interface
* webrtc/modules/interface
* webrtc/modules/media_file/interface
* webrtc/modules/rtp_rtcp/interface
* webrtc/modules/utility/interface

To avoid breaking downstream, I followed this recipe:
1. Copy the interface dir to a new sibling directory: include
2. Update the header guards in the include directory to match the style guide.
3. Update the header guards in the interface directory to match the ones in include. This is required to avoid getting redefinitions in the not-yet-updated downstream code.
4. Add a pragma warning in the header files in the interface dir. Example:
#pragma message("WARNING: webrtc/modules/interface is DEPRECATED; "
                "use webrtc/modules/include")
5. Search for all source references to webrtc/modules/interface and update them to webrtc/modules/include (*.c*,*.h,*.mm,*.S)
6. Update all GYP+GN files. This required manual inspection since many subdirectories of webrtc/modules referenced the interface dir using ../interface etc(*.gyp*,*.gn*)

BUG=5095
TESTED=Passing compile-trybots with --clobber flag:
git cl try --clobber --bot=win_compile_rel --bot=linux_compile_rel --bot=android_compile_rel --bot=mac_compile_rel --bot=ios_rel -m tryserver.webrtc

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

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

Cr-Commit-Position: refs/heads/master@{#10500}
2015-11-04 07:32:04 +00:00
373284da06 Make SendStatisticsProxy outlive ViEChannel.
Prevents data race on stats_proxy_ on VideoSendStream destruction.

BUG=
TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10493}
2015-11-03 12:53:16 +00:00
98f53510b2 system_wrappers: rename interface -> include
BUG=webrtc:5095
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10438}
2015-10-28 17:17:50 +00:00
0c478b3d75 Rename ChannelGroup to CongestionController and move to webrtc/call/.
BUG=webrtc:5079
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10358}
2015-10-21 13:52:33 +00:00
e37870297f ChannelGroup cleanup.
Move CallStats to Call, EncoderStateFeedback to VideoSendStream and
remove last ViEChannel dependency from ChannelGroup.

BUG=webrtc:5079
R=pbos@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10355}
2015-10-21 11:24:37 +00:00
0dbf0090a9 Remove the video channel id completely.
BUG=webrtc:5079

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

Cr-Commit-Position: refs/heads/master@{#10324}
2015-10-19 15:12:19 +00:00
949c2f04b4 Move ownership of send ViEChannels and ViEEncoder to VideoSendStream.
This is the first CL to get ready for adapting audio bitrate based on
BWE. I've kept this CL as small as possible and had to add a few getters
to ChannelManager. The next CL will do the same for receive ViEChannels.

The getters are a bit uggly, but is an in-between-state. Let's discuss
future ownership of the different modules and what do do with
ChannelGroup.

BUG=5079

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

Cr-Commit-Position: refs/heads/master@{#10298}
2015-10-16 09:31:14 +00:00
5c389d3e09 Split webrtc/video into webrtc/{audio,call,video}.
Moves audio_receive_stream.{h,cc} into webrtc/audio, and common parts
into webrtc/call, splitting out audio/shared components with separate
OWNERS files.

BUG=webrtc:4690
R=solenberg@webrtc.org, tina.legrand@webrtc.org
TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10073}
2015-09-25 11:58:39 +00:00
e526974759 Make LoadObserver settable per video send stream. Gives client flexibility and makes the implementation slightly simpler. See discussion in: https://codereview.webrtc.org/1269863005/
BUG=webrtc:4690

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

Cr-Commit-Position: refs/heads/master@{#9891}
2015-09-08 12:13:25 +00:00
4fbae2b791 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}
2015-08-28 11:07:15 +00:00
cd6702282a Define Stream base classes
BUG=webrtc:4690

Defined classes Stream, SendStream and ReceiveStream. Inherited existing stream classes from either SendStream or ReceiveStream.
This is a step towards having a Transport associated with streams instead of a Call. It will allow a lot of code in the Call to be media type agnostic.

R=henrika@webrtc.org, pbos@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9591}
2015-07-16 07:30:20 +00:00
4b91bd0897 Move frame input (ViECapturer) to webrtc/video/.
Renames ViECapturer to VideoCaptureInput and initializes several
parameters on construction instead of setters.

Also removes an old deadlock suppression.

BUG=1695, 2999
R=asapersson@webrtc.org, mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9508}
2015-06-26 04:58:23 +00:00
4765070b8d 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}
2015-05-30 00:21:56 +00:00
300eeb68f5 Remove VideoEngine interfaces.
Removes ViE interfaces, _impl.cc files, managers (such as
ViEChannelManager and ViEInputManager) as well as ViESharedData.

Interfaces necessary to implement observers have been moved to a
corresponding header (such as vie_channel.h).

BUG=1695, 4491
R=mflodman@webrtc.org, solenberg@webrtc.org
TBR=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9179}
2015-05-12 14:51:08 +00:00
45553aefac Remove VideoEngine interface usage from new API.
Instantiates ProcessThread/ChannelGroup inside Call instead of using
VideoEngine or ViEBase. This removes the need for ViEChannelManager,
ViEInputManager and other ViESharedData completely.

Some interface headers are still referenced due to external interfaces
being defined there. Upon interface removal these will be moved to
implementation headers.

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

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

Cr-Commit-Position: refs/heads/master@{#9160}
2015-05-08 11:54:39 +00:00
5cb9ce4c74 Remove ViECodec usage in VideoSendStream.
Replaces interface usage with direct calls on ViEEncoder removing a
layer of indirection. Also inlining the necessary parts of SetSendCodec
done previously in ViECodecImpl.

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

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

Cr-Commit-Position: refs/heads/master@{#9136}
2015-05-05 13:16:40 +00:00
f16fcbec73 Remove ViECapture usage in VideoSendStream.
Instead a ViECapturer object is allocated and directly operated on. This
additionally exposes ViESharedData to Call to access the module
ProcessThread, moving towards Call ownership of shared resources.

BUG=1695
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9119}
2015-04-30 10:16:11 +00:00
94cc1fe4af Remove ViEImageProcess usage in VideoSendStream.
Replaces interface usage with direct calls on ViEEncoder removing a
layer of indirection. Also removing some methods from ViEImageProcess
that were only added for Video{Send,Receive}Stream usage.

BUG=1695
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9111}
2015-04-29 12:08:49 +00:00
ddbddbdee6 Remove ViENetwork usage in VideoSendStream.
Replaces interface usage with direct calls on ViEEncoder and ViEChannel
removing a layer of indirection.

BUG=1695
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9096}
2015-04-28 10:35:15 +00:00
038df3c5d7 Remove ViEExternalCodec usage in VideoSendStream.
Replaces interface usage with direct calls on ViEEncoder removing a
layer of indirection.

BUG=1695
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9095}
2015-04-28 09:58:18 +00:00
59d91dc951 Remove ViERTP_RTCP usage in VideoSendStream.
Replaces interface usage with direct calls on ChannelGroup, ViEEncoder
and ViEChannel removing a layer of indirection.

BUG=1695
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9088}
2015-04-27 15:24:12 +00:00
e590416722 Moving the pacer and the pacer thread to ChannelGroup.
This means all channels within the same group will share the same pacing queue and scheduler. It also means padding will be computed and sent by a single pacer. To accomplish this I also introduce a PacketRouter which finds the RTP module which owns the packet to be paced out.

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

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

Cr-Commit-Position: refs/heads/master@{#8864}
2015-03-26 10:11:22 +00:00
af612d5e07 Reland "Make the entry point for VideoFrames to webrtc const ref I420VideoFrame.""
Original cl description:
This removes the none const pointer entry and SwapFrame.
Since frames delivered using VideoSendStream no longer use the external capture module, VideoSendStream will not get an incoming framerate callback. VideoSendStream now uses a rtc::RateTracker.
Also, the video engine must ensure that time stamps are always increasing.

With this, time stamps (ntp, render_time and rtp timestamps ) are checked and set in ViECapturer::OnIncomingCapturedFrame

This cl was previously reverted in https://webrtc-codereview.appspot.com/46549004/.

Patchset 1 contains the original patch after rebase.
Patshet 2 fix webrtc_perf_tests reported in chromium:465306

Note that chromium:465287 is being fixed in https://webrtc-codereview.appspot.com/43829004/

BUG=1128
R=magjed@webrtc.org, mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8776}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8776 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-18 09:51:44 +00:00
d7452a0168 Revert "Make the entry point for VideoFrames to webrtc const ref I420VideoFrame."
This reverts commit r8633.

Reason for revert: Performance regressions in browser_tests_new_vie and webrtc_perf_tests.

BUG=1128,chromium:465287,chromium:465306
TBR=pbos,mflodman,perkj

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

Cr-Commit-Position: refs/heads/master@{#8670}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8670 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-10 15:13:13 +00:00
bcead305a2 Make the entry point for VideoFrames to webrtc const ref I420VideoFrame.
This removes the none const pointer entry and SwapFrame.

Since frames delivered using VideoSendStream no longer use the external capture module, VideoSendStream will not get an incoming framerate callback. VideoSendStream now uses a rtc::RateTracker.
Also, the video engine must ensure that time stamps are always increasing.

With this, time stamps (ntp, render_time and rtp timestamps ) are checked and set in ViECapturer::OnIncomingCapturedFrame

BUG=1128
R=magjed@webrtc.org, mflodman@webrtc.org, pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8633}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8633 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-06 12:38:22 +00:00
14665ff7d4 Roll chromium_revision e144d30..6fdb142 (318658:318841) + remove OVERRIDE macro
Clang version changed 223108:230914
Details: 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
2015-03-04 13:04:54 +00:00
16825b1a82 Use int64_t more consistently for times, in particular for RTT values.
Existing code was inconsistent about whether to use uint16_t, int, unsigned int,
or uint32_t, and sometimes silently truncated one to another, or truncated
int64_t.  Because most core time-handling functions use int64_t, being
consistent about using int64_t unless otherwise necessary minimizes the number
of explicit or implicit casts.

BUG=chromium:81439
TEST=none
R=henrik.lundin@webrtc.org, holmer@google.com, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8045 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-12 21:51:21 +00:00
2b19f06312 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
2014-12-11 13:26:09 +00:00
273a414b0e Report encoded frame size in VideoSendStream.
Implements reporting transmitted frame size in WebRtcVideoEngine2.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7772 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-01 15:23:21 +00:00
008731868a 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
2014-11-25 14:03:34 +00:00
0bae1fab4a 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
2014-11-05 14:05:29 +00:00
32452b20b8 Make ReconfigureVideoEncoder use current bitrate.
Prevents bitrate drops when changing resolution etc.

R=stefan@webrtc.org
BUG=1667

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7493 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-22 12:15:24 +00:00
bbe0a8517d 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
2014-09-19 12:30:25 +00:00
26c0c41a06 Network up/down signaling in Call.
BUG=2429
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7044 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-03 16:17:12 +00:00
dde16f19e3 Fix some code styles.
BUG=
R=pbos@webrtc.org

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6830 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-05 23:35:43 +00:00
168f23faa5 Move pacer to fully use webrtc::Clock instead of webrtc::TickTime.
This required rewriting the send-side delay stats api to be callback based, as otherwise the SuspendBelowMinBitrate test started flaking much more frequently since it had lock order inversion problems.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6664 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 13:44:02 +00:00
4ef438e2de Remove the send-side cname getter APIs from voice and video engine.
These APIs aren't being used, and introduces deadlocks when using GetStats() in the new Call api. Having getters for cname at the send-side is pointless, as it's always the user who sets the cname.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6659 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 09:55:30 +00:00
2bb1bdab8d Preserve RTP states for restarted VideoSendStreams.
A restarted VideoSendStream would previously be completely reset,
causing gaps in sequence numbers and potentially RTP timestamps as well.
This broke SRTP which requires fairly sequential sequence numbers.
Presumably, were this sent without SRTP, we'd still have problems on the
receiving end as the corresponding receiver is unaware of this reset.

Also adding annotation to RTPSender and addressing some unlocked
access to ssrc_, ssrc_rtx_ and rtx_.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6612 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-07 13:06:48 +00:00
be9d2a4549 Reserve RTP/RTCP modules in SetSSRC.
Allows setting SSRCs for future simulcast layers even though no set send
codec uses them.

Also re-enabling CanSwitchToUseAllSsrcs as an end-to-end test, required
for bitrate ramp-up, instead of send-side only (resolving issue 3078).
This test was used to verify reserved modules' SSRCs are preserved
correctly.

To enable a multiple-stream end-to-end test test::CallTest was modified
to work on a vector of receive streams instead of just one.

BUG=3078
R=kjellander@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6565 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-30 13:19:09 +00:00
eb16b811fb Implements start bitrate for new video API.
Added  a new rampup test.

BUG=2879
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6443 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-16 08:57:39 +00:00
6ae48c6609 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
2014-06-06 10:49:19 +00:00
1566ee2893 Revert "Revert "Remove VideoSendStreamInput::PutFrame.""
This reverts commit r6230 to re-land r6229.

ViECapturer::SwapFrame now resets timestamps.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6231 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-23 13:03:45 +00:00
2cdd433edf Revert "Remove VideoSendStreamInput::PutFrame."
This reverts r6229.

Test WebRtcVideoChannel2BaseTest.MuteStream fails after r6229.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6230 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-23 10:43:26 +00:00
f3085e43ab Remove VideoSendStreamInput::PutFrame.
PutFrame just copies the frame before swapping it, if it's required that
can easily be done outside this API before swapping the frame.

BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6229 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-23 09:41:45 +00:00
de1429e9ad Add thread annotations to Call API.
Also constified a lot of pointers and reordered members to make
protected members more grouped together.

R=kjellander@webrtc.org, stefan@webrtc.org
BUG=2770

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5998 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-28 13:00:21 +00:00
a5c8d2c9b3 Rename Start/Stop in Video{Send,Receive}Streams.
Rename {Start,Stop}{Sending,Receving} to Start/Stop. StartSending
provides no extra information in the context of a VideoSendStream, as
what it does is to send.

R=mflodman@webrtc.org
BUG=3227

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5970 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-24 11:13:21 +00:00
f577ae9eac Remove internal codecs from VideoSendStream.
Replaces VideoCodec in VideoSendStream::Config with an EncoderSettings
struct. The EncoderSettings struct uses an external encoder for all
codecs. This means that external users, such as libjingle, will provide
the encoders themselves, removing the previous distinction of internal
and external codecs.

For now VideoSendStream translates to VideoCodec internally. In the
interrim (before the corresponding change is implemented in
VideoReceiveStream) tests convert EncoderSettings to VideoCodecs.

Removes Call::GetVideoCodecs().

Disables RampUpTest.WithPacingAndRtx as its further exposed with changes
to bitrates used in tests.

BUG=2854,2992
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5722 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 08:43:57 +00:00
09315705b9 Wire up statistics in video receive stream of new API
This CL includes Call tests that test both send and receive sides.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5499 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-07 12:06:29 +00:00
bdc5ed2e7d Add configuration for cpu overuse detection to video send stream.
BUG=2422
R=mflodman@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5468 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-31 10:05:07 +00:00
ccd42840bc Wire up statistics in video send stream of new video engine api
Note, this CL does not contain any tests. Those are implemeted as call
tests and will be submitted when the receive stream is wired up as well.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5344 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-07 09:54:34 +00:00