The class creates one WavReaderInterface object for each unique audiotrack and builds the set of speaker names.
Validating if the audiotrack lengths and the timing information are compatible (and hence valid) is not implemented yet.
MultiEndCall is designed using dependency injection. This allows to use mock objects with which we can quickly simulate different timings and track lengths without needing actual wav files.
BUG=webrtc:7218
Review-Url: https://codereview.webrtc.org/2761853002
Cr-Commit-Position: refs/heads/master@{#17421}
Instead let each test set the appropriate media type. This simplifies
demuxing in Call and later in RtpTransportController.
BUG=webrtc:7135
Review-Url: https://codereview.webrtc.org/2774463003
Cr-Commit-Position: refs/heads/master@{#17418}
This CL fixes a comment that has the wrong format, and takes over
ownership of an orphaned todo. It also removes some unneeded code
from ObjC classes and moves them to a style more fitting the rest
of the codebase.
BUG=None
Review-Url: https://codereview.webrtc.org/2777453003
Cr-Commit-Position: refs/heads/master@{#17416}
The new RTCVideoSource interface can be used by custom implementations of RTCVideoCapturer.
BUG=webrtc:7177
TBR=tommi
Review-Url: https://codereview.webrtc.org/2745193002
Cr-Commit-Position: refs/heads/master@{#17409}
Moves settings model and related classes to code common for both iOS
and Mac.
BUG=webrtc:7177,webrtc:6494
Review-Url: https://codereview.webrtc.org/2770113004
Cr-Commit-Position: refs/heads/master@{#17408}
When screen/window capturers fail to use shared memory, they are
supposed to fall back to XGetImage(). It's slower, but should still
allow to capture desktop content. This wasn't implemented correclty in
XScreenPixelBuffer - it was failing completely when shmget() returns an
error.
BUG=705146
Review-Url: https://codereview.webrtc.org/2775793003
Cr-Commit-Position: refs/heads/master@{#17401}
Decouples encode flags and calculates them the same for both default and
screencast temporal layers.
With this change encoders could start using TemporalReferences for
temporal-layers flags, but they can not be used by asynchronous encoders
(hardware encoders) yet.
Also removes 'timestamp' as a dead parameter to FrameEncoded().
BUG=chromium:702017, webrtc:7349
R=marpan@google.com, sprang@webrtc.org, marpan@webrtc.org
Review-Url: https://codereview.webrtc.org/2769263002 .
Cr-Commit-Position: refs/heads/master@{#17397}
JSEP implementations are required to always generate offers with
"actpass", but remote endpoints are not. So we should accept remote
offers with the current negotiated DTLS role.
This was recently clarified in dtls-sdp; it was somewhat ambiguous
before.
Also doing a bit of refactoring of JsepTransport (making a method
private that should have been private, fixing unit tests that were
directly calling said method).
BUG=webrtc:7072
Review-Url: https://codereview.webrtc.org/2770903003
Cr-Commit-Position: refs/heads/master@{#17396}
Implementation owned by call, and passed to VideoSendStream and
AudioSendStream.
BUG=webrtc:6847, webrtc:7135
Review-Url: https://codereview.webrtc.org/2685673003
Cr-Commit-Position: refs/heads/master@{#17389}
We are using Google style guide for ObjC code. Clang-format now allows
us to differentiate between C++ and ObjC code. With this change it now
uses Google style guide with ColumnLimit of 100 for ObjC code.
NOTRY=True
BUG=webrtc:7406
Review-Url: https://codereview.webrtc.org/2775613002
Cr-Commit-Position: refs/heads/master@{#17387}
This reverts to previous behavior where b=AS only affects the codec bitrate for audio streams, and not the max bandwidth estimate.
BUG=chromium:703903
Review-Url: https://codereview.webrtc.org/2774123002
Cr-Commit-Position: refs/heads/master@{#17386}
This will later allow calling the "PeerConnectionObserver::OnIceCandidate"
method asynchronously while keeping the object alive.
BUG=webrtc:3721
Review-Url: https://codereview.webrtc.org/2748253003
Cr-Commit-Position: refs/heads/master@{#17380}
The test is failing due to libvpx roll which will be fixed in future roll.
It wasn't discovered at trybots since webrtc_perf_tests doesn't run
on Mac because of webrtc:7322.
BUG=webrtc:7401
TBR=marpan@webrtc.org
Review-Url: https://codereview.webrtc.org/2774973002 .
Cr-Commit-Position: refs/heads/master@{#17377}
TWCC-PLR -based FecController doesn’t need smoothing; instead, use "null-smoothing", which just returns the last value (if any).
If we end up using TWCC-PLR, we'll just remove smoothing altogether. Until then, this is the least intrusive way to modify the code while still letting it work correctly for RTCP-PLR.
BUG=webrtc:7058
Review-Url: https://codereview.webrtc.org/2687433004
Cr-Commit-Position: refs/heads/master@{#17375}
Reason for revert:
Makes perf and Chromium FYI bots unhappy.
Original issue's description:
> WebRtcVoiceMediaChannel::AddRecvStream: Don't call SetRecPayloadType
>
> This removes one more place where we were unable to handle codecs not
> in the built-in set.
>
> BUG=webrtc:5805
>
> Review-Url: https://codereview.webrtc.org/2686043006
> Cr-Commit-Position: refs/heads/master@{#17370}
> Committed: 1724cfbdbaTBR=ossu@webrtc.org,solenberg@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5805
Review-Url: https://codereview.webrtc.org/2772043002
Cr-Commit-Position: refs/heads/master@{#17374}
1. Rename FecController to FecControllerPlrBased.
2. Introduce FecControllerRplrBased - a version of FecController that makes its decision based on RPLR instead of PLR.
BUG=webrtc:7058
Review-Url: https://codereview.webrtc.org/2672933003
Cr-Commit-Position: refs/heads/master@{#17373}
Only one test case in it, testing an API which is deprecated.
BUG=webrtc:4690
Review-Url: https://codereview.webrtc.org/2757213002
Cr-Commit-Position: refs/heads/master@{#17372}