Commit Graph

10326 Commits

Author SHA1 Message Date
0ffdcc51bc Delete unneeded includes of deprecated system_wrappers include files.
Deletes left-over includes of trace.h and critical_section_wrapper.h.

BUG=webrtc:7035

Review-Url: https://codereview.webrtc.org/2784873002
Cr-Commit-Position: refs/heads/master@{#17460}
2017-03-30 07:31:15 +00:00
e5ad5ca06a Reland of Don't hardcode MediaType::ANY in FakeNetworkPipe. (patchset #1 id:1 of https://codereview.webrtc.org/2784543002/ )
Reason for revert:
Intend to fix perf failures and reland.

Original issue's description:
> Revert of Don't hardcode MediaType::ANY in FakeNetworkPipe. (patchset #4 id:60001 of https://codereview.webrtc.org/2774463003/ )
>
> Reason for revert:
> Reverting since this seems to break multiple WebRTC Perf buildbots
>
> Original issue's description:
> > Don't hardcode MediaType::ANY in FakeNetworkPipe.
> >
> > 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}
> > Committed: 9c47b00e24
>
> TBR=stefan@webrtc.org,deadbeef@webrtc.org,solenberg@webrtc.org,pbos@webrtc.org,sprang@webrtc.org,nisse@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/2784543002
> Cr-Commit-Position: refs/heads/master@{#17427}
> Committed: 3a3bd50610

TBR=stefan@webrtc.org,deadbeef@webrtc.org,solenberg@webrtc.org,pbos@webrtc.org,sprang@webrtc.org,lliuu@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2783853002
Cr-Commit-Position: refs/heads/master@{#17459}
2017-03-30 06:57:43 +00:00
1dcb16409a Rewrite PeerConnection integration tests using better testing practices.
Also renames "peerconnection_unittests" to "peerconnection_integrationtests",
and moves the ICE URL parsing code to separate files.

The main problem previously was that the test assertions
occurred in various places in the main test class, and this shared test
code was overly complex and stateful. As a result, it was difficult to
tell what a test even does, let alone what assertions it's meant to be
making. And writing a new test that does what you want can be a
frustrating ordeal.

The new code still uses helper methods, but they have intuitive names
and a smaller role; all of the important parts of the test's logic are
in the test case itself.

We're planning on merging PeerConnection and WebRtcSession at some point
soon, so it seemed valuable to do this, so that the WebRtcSession tests
can be rewritten as PeerConnection tests using better patterns.

BUG=None

Review-Url: https://codereview.webrtc.org/2738353003
Cr-Commit-Position: refs/heads/master@{#17458}
2017-03-30 04:08:16 +00:00
7735b1e932 Add logging around audio session interruptions.
Always treat returning to foreground as interruption ended event, to help fix out of sync issues with interruption state.

BUG=0

Review-Url: https://codereview.webrtc.org/2780263002
Cr-Commit-Position: refs/heads/master@{#17457}
2017-03-29 21:53:32 +00:00
cf757cf3fd ScreenCapturerWinDirectx may flicker on certain hardware
Once the first capture attempt failed, we should keep the
context->updated_region unchanged for next attempt. This change can (partially?)
fix issue 704205.

BUG=704205

Review-Url: https://codereview.webrtc.org/2780093002
Cr-Commit-Position: refs/heads/master@{#17456}
2017-03-29 21:37:53 +00:00
2d699acf64 Add documentation to the ThresholdCurve unit tests
BUG=webrtc:7058

Review-Url: https://codereview.webrtc.org/2779953003
Cr-Commit-Position: refs/heads/master@{#17454}
2017-03-29 20:38:57 +00:00
fe627f30cb Use simulcast for screenshare only in conference mode
Also, don't crash if InitEncode fails for vp8.

BUG=chromium:705505

Review-Url: https://codereview.webrtc.org/2779163002
Cr-Commit-Position: refs/heads/master@{#17452}
2017-03-29 15:24:59 +00:00
1b35bab8f8 ADM unit test now runs on Mac and Windows as well.
TBR=solenberg
BUG=webrtc:7273

Review-Url: https://codereview.webrtc.org/2783863002
Cr-Commit-Position: refs/heads/master@{#17451}
2017-03-29 14:50:19 +00:00
07a01b3357 Allow RtpPacket::SetPayloadSize to increase payload size
Make SetPayloadSize return buffer to write to so that it can replace
AllocatePayload function.

BUG=None

Review-Url: https://codereview.webrtc.org/2785713002
Cr-Commit-Position: refs/heads/master@{#17450}
2017-03-29 14:33:13 +00:00
e127e7a0ed Visualize events related to probing in the total bitrate graph.
BUG=webrtc:6984
R=terelius@webrtc.org

Review-Url: https://codereview.webrtc.org/2782553005 .
Cr-Commit-Position: refs/heads/master@{#17449}
2017-03-29 14:28:54 +00:00
2c9306ed50 Send data from mixer to APM limiter more often.
Before this change, the APM limiter used in FrameCombiner (a
sub-component of AudioMixer) only gets to process the data when the
number of non-muted streams is >1. If this number varies between <=1
and >1, the limiter's view of the data will have gaps during the
periods with <= 1 active stream.

This leads to discontinuities in the applied gain. These
discontinuities cause clicks in the output audio. This change
activates APM limiter processing based on the number of audio streams,
independently of their mutedness status.

BUG=chromium:695993

Review-Url: https://codereview.webrtc.org/2776113002
Cr-Commit-Position: refs/heads/master@{#17442}
2017-03-29 11:25:16 +00:00
a1ab8bafe7 We need to specify the decoder map explicitly nowadays
(Since this CL landed: https://codereview.webrtc.org/2774833003/.)

Without this fix, low_bandwidth_audio_test breaks on the perf bots.

BUG=webrtc:5805

Review-Url: https://codereview.webrtc.org/2786603002
Cr-Commit-Position: refs/heads/master@{#17440}
2017-03-29 11:06:05 +00:00
ee99f86f00 Disable flaky TestVp9Impl.EncodeDecode for iOS.
Bot outputs this:

  Crashed during TestVp9Impl.EncodeDecode, resuming...

TBR=sprang@webrtc.org
NOTRY=True
BUG=webrtc:7057

Review-Url: https://codereview.webrtc.org/2779843005
Cr-Commit-Position: refs/heads/master@{#17438}
2017-03-29 10:33:18 +00:00
326263a678 Avoid code duplication between PLR/RPLR-based FecController
BUG=webrtc:7058

Review-Url: https://codereview.webrtc.org/2688613003
Cr-Commit-Position: refs/heads/master@{#17437}
2017-03-29 10:16:58 +00:00
61abe15829 Add Darwin thread.h implementation.
Due to quirks of the Cocoa runtime several platform-specific fixes were
in place. See the deleted files maccocoathreadhelper and
scoped_autorelease_pool for examples. There is no way to do a stack-based
RAII autoreleasepool that is compatible with ARC, and autoreleasepool
blocks can't be used with c++. The solution was to separate out the
implementation of some methods in thread.h to an ObjC++ file for Darwin
platforms, allowing us to get rid of the helper classes and enable ARC
everywhere.

BUG=webrtc:6412

Review-Url: https://codereview.webrtc.org/2784483002
Cr-Commit-Position: refs/heads/master@{#17436}
2017-03-29 09:32:36 +00:00
0f0a849cba H264 Supplemental Enhancement Information no longer considered a keyframe.
BUG=none

Review-Url: https://codereview.webrtc.org/2769863007
Cr-Commit-Position: refs/heads/master@{#17435}
2017-03-29 09:19:54 +00:00
7057b6b75f Disable flaky test EndToEndTest.InitialProbing
The test is flaky for Msan (memory sanitizer).

The test fails in this way:

../../webrtc/video/end_to_end_tests.cc:2237: Failure
Failed
Timed out while waiting for initial probing.

TBR=sprang@webrtc.org
NOTRY=true
BUG=webrtc:7419

Review-Url: https://codereview.webrtc.org/2778973004
Cr-Commit-Position: refs/heads/master@{#17434}
2017-03-29 09:07:33 +00:00
c3b3f7a8aa Reland of Log created probe clusters to RtcEventLog. (patchset #1 id:1 of https://codereview.chromium.org/2781853002/ )
Reason for revert:
Fix

Original issue's description:
> Revert of Log created probe clusters to RtcEventLog. (patchset #1 id:1 of https://codereview.chromium.org/2783693002/ )
>
> Reason for revert:
> Break bots.
>
> Original issue's description:
...
>
> TBR=terelius@webrtc.org,stefan@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6984
>
> Review-Url: https://codereview.webrtc.org/2781853002
> Cr-Commit-Position: refs/heads/master@{#17425}
> Committed: e3b354bdfa

TBR=terelius@webrtc.org,stefan@webrtc.org
BUG=webrtc:6984

Review-Url: https://codereview.webrtc.org/2779893004
Cr-Commit-Position: refs/heads/master@{#17433}
2017-03-29 08:23:13 +00:00
cb5d1150db Enable vp9 row-based multithreading.
Improves current multi-threading performance (for the same number of threads) by:
5%-8% speedup for 2 threads, ~15% for 4 threads on Linux/Mac
with standalone libvpx.
~6% speedup on AppRTC on Linux/Mac with 4 threads.

BUG=None

Review-Url: https://codereview.webrtc.org/2776803002
Cr-Commit-Position: refs/heads/master@{#17432}
2017-03-29 06:56:08 +00:00
acfb017775 Disable the ORTC integration tests on TSan.
BUG=webrtc:7366

Review-Url: https://codereview.webrtc.org/2767123002
Cr-Commit-Position: refs/heads/master@{#17431}
2017-03-28 20:45:18 +00:00
588101cb91 Change minimum DTMF event duration to be 40 milliseconds
The current value of 100 milliseconds is the recommended default value
in https://w3c.github.io/webrtc-pc/#rtcdtmfsender; the actual minimum specified is 40 milliseconds.

BUG=webrtc:7163

Review-Url: https://codereview.webrtc.org/2699503002
Cr-Commit-Position: refs/heads/master@{#17430}
2017-03-28 18:18:32 +00:00
3ac729a53b Fix compilation issue detected by internal tool.
Using decl NiceMock, Return, '_' is unused.

TBR=minyue@webrtc.org
BUG=None

Review-Url: https://codereview.webrtc.org/2782543002
Cr-Commit-Position: refs/heads/master@{#17429}
2017-03-28 17:35:48 +00:00
0e4a685542 Added licence boilerplate to our MATLAB files.
The command

tools/checklicenses/checklicenses.py --ignore-suppressions ./webrtc

previously produced this output:
'webrtc/modules/audio_processing/test/apmtest.m' has non-whitelisted license 'UNKNOWN'
'webrtc/modules/audio_processing/transient/test/readDetection.m' has non-whitelisted license 'UNKNOWN'
'webrtc/modules/audio_processing/transient/test/readPCM.m' has non-whitelisted license 'UNKNOWN'
...

This CL adds the WebRTC licence with appropriate year to all our
MATLAB files. All these files were contributed by WebRTC project
members hlundin@, pbos@, niklase@.

BUG=chromium:98592
NOTRY=True

Review-Url: https://codereview.webrtc.org/2781663005
Cr-Commit-Position: refs/heads/master@{#17428}
2017-03-28 17:18:58 +00:00
3a3bd50610 Revert of Don't hardcode MediaType::ANY in FakeNetworkPipe. (patchset #4 id:60001 of https://codereview.webrtc.org/2774463003/ )
Reason for revert:
Reverting since this seems to break multiple WebRTC Perf buildbots

Original issue's description:
> Don't hardcode MediaType::ANY in FakeNetworkPipe.
>
> 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}
> Committed: 9c47b00e24

TBR=stefan@webrtc.org,deadbeef@webrtc.org,solenberg@webrtc.org,pbos@webrtc.org,sprang@webrtc.org,nisse@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2784543002
Cr-Commit-Position: refs/heads/master@{#17427}
2017-03-28 16:40:59 +00:00
5db450d244 iOS:Add loopback launch argument functionality in AppRTCMobile.
It will enable us to start immediate loopback just by passing
the "loopback" string, as argument when launching.
Usefull for testing and command line profiling.

BUG=NONE

Review-Url: https://codereview.webrtc.org/2777983004
Cr-Commit-Position: refs/heads/master@{#17426}
2017-03-28 15:27:41 +00:00
e3b354bdfa Revert of Log created probe clusters to RtcEventLog. (patchset #1 id:1 of https://codereview.chromium.org/2783693002/ )
Reason for revert:
Break bots.

Original issue's description:
> Reland of Log created probe clusters to RtcEventLog. (patchset #1 id:1 of https://codereview.chromium.org/2775273003/ )
>
> Reason for revert:
> Speculative reland since it apparently built on https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/22852
>
> Original issue's description:
> > Revert of Log created probe clusters to RtcEventLog. (patchset #3 id:40001 of https://codereview.chromium.org/2776073003/ )
> >
> > Reason for revert:
> > Break build bots.
> >
> > Original issue's description:
> > > Log created probe clusters to RtcEventLog.
> > >
> > > BUG=webrtc:6984
> > >
> > > Review-Url: https://codereview.webrtc.org/2776073003
> > > Cr-Commit-Position: refs/heads/master@{#17413}
> > > Committed: bb9e6edc32
> >
> > TBR=terelius@webrtc.org,stefan@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:6984
> >
> > Review-Url: https://codereview.webrtc.org/2775273003
> > Cr-Commit-Position: refs/heads/master@{#17415}
> > Committed: 7ac5c32db2
>
> TBR=terelius@webrtc.org,stefan@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6984
>
> Review-Url: https://codereview.webrtc.org/2783693002
> Cr-Commit-Position: refs/heads/master@{#17424}
> Committed: 2a63160b95

TBR=terelius@webrtc.org,stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6984

Review-Url: https://codereview.webrtc.org/2781853002
Cr-Commit-Position: refs/heads/master@{#17425}
2017-03-28 14:59:51 +00:00
2a63160b95 Reland of Log created probe clusters to RtcEventLog. (patchset #1 id:1 of https://codereview.chromium.org/2775273003/ )
Reason for revert:
Speculative reland since it apparently built on https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/22852

Original issue's description:
> Revert of Log created probe clusters to RtcEventLog. (patchset #3 id:40001 of https://codereview.chromium.org/2776073003/ )
>
> Reason for revert:
> Break build bots.
>
> Original issue's description:
> > Log created probe clusters to RtcEventLog.
> >
> > BUG=webrtc:6984
> >
> > Review-Url: https://codereview.webrtc.org/2776073003
> > Cr-Commit-Position: refs/heads/master@{#17413}
> > Committed: bb9e6edc32
>
> TBR=terelius@webrtc.org,stefan@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6984
>
> Review-Url: https://codereview.webrtc.org/2775273003
> Cr-Commit-Position: refs/heads/master@{#17415}
> Committed: 7ac5c32db2

TBR=terelius@webrtc.org,stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6984

Review-Url: https://codereview.webrtc.org/2783693002
Cr-Commit-Position: refs/heads/master@{#17424}
2017-03-28 14:42:39 +00:00
76cc9be72c Make dummy device succeed at stopping recording/playout.
Makes sense, since it not recording/playing to begin with.

BUG=b/35415663

Review-Url: https://codereview.webrtc.org/2783673002
Cr-Commit-Position: refs/heads/master@{#17423}
2017-03-28 14:18:59 +00:00
3339743878 MultiEndCall is responsible for analyzing and validating timing information and audiotracks with which a multi-end call can be simulated.
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}
2017-03-28 12:39:59 +00:00
83862e3c14 Remove VoECodec from FakeWebRtcVoiceEngine.
BUG=webrtc:4690

Review-Url: https://codereview.webrtc.org/2785443002
Cr-Commit-Position: refs/heads/master@{#17420}
2017-03-28 12:07:15 +00:00
2877048afe Experiment-driven configuration of PLR/RPLR-based FecController
BUG=webrtc:7058

Review-Url: https://codereview.webrtc.org/2684773002
Cr-Commit-Position: refs/heads/master@{#17419}
2017-03-28 12:03:55 +00:00
9c47b00e24 Don't hardcode MediaType::ANY in FakeNetworkPipe.
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}
2017-03-28 11:59:41 +00:00
0238ba8327 Ensures that audio device tests works when run through remote desktop
BUG=webrtc:7397

Review-Url: https://codereview.webrtc.org/2779023002
Cr-Commit-Position: refs/heads/master@{#17417}
2017-03-28 11:38:29 +00:00
5a4c68e9f3 Minor Cleanup of RTCAudioSource.
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}
2017-03-28 11:35:58 +00:00
7ac5c32db2 Revert of Log created probe clusters to RtcEventLog. (patchset #3 id:40001 of https://codereview.chromium.org/2776073003/ )
Reason for revert:
Break build bots.

Original issue's description:
> Log created probe clusters to RtcEventLog.
>
> BUG=webrtc:6984
>
> Review-Url: https://codereview.webrtc.org/2776073003
> Cr-Commit-Position: refs/heads/master@{#17413}
> Committed: bb9e6edc32

TBR=terelius@webrtc.org,stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6984

Review-Url: https://codereview.webrtc.org/2775273003
Cr-Commit-Position: refs/heads/master@{#17415}
2017-03-28 11:20:56 +00:00
f4238f937e Log probe results to RtcEventLog.
BUG=webrtc:6984

Review-Url: https://codereview.webrtc.org/2785433002
Cr-Commit-Position: refs/heads/master@{#17414}
2017-03-28 11:18:02 +00:00
bb9e6edc32 Log created probe clusters to RtcEventLog.
BUG=webrtc:6984

Review-Url: https://codereview.webrtc.org/2776073003
Cr-Commit-Position: refs/heads/master@{#17413}
2017-03-28 11:12:26 +00:00
d49d3873ce Disable possibly flaky AudioCodingModuleTest.TestPacketLossStereo for Linux.
It failed after unrelated https://codereview.webrtc.org/2752233002.

TBR=tommi@webrtc.org
NOTRY=true
BUG=webrtc:7416

Review-Url: https://codereview.webrtc.org/2779913002
Cr-Commit-Position: refs/heads/master@{#17412}
2017-03-28 10:00:07 +00:00
0255acb085 Change VideoReceiveStream::Stats total_bitrate_bps to include all received packets.
The total_bitrate_bps is based on complete frames (from jitter buffer callback:
ReceiveStatisticsProxy::OnCompleteFrame(bool is_keyframe, size_t size_bytes)) (since M58).

Receive total_bitrate_bps can be incorrectly reported.
Example log of stats_.total_bitrate_bps in video_loopback call (target bitrate 600kbps):
SEND: stats_.total_bitrate_bps 682832
RECV: stats_.total_bitrate_bps 1078104 (new: 677384)
SEND: stats_.total_bitrate_bps 694280
RECV: stats_.total_bitrate_bps 1091768 (new: 663152)
SEND: stats_.total_bitrate_bps 626248
RECV: stats_.total_bitrate_bps 7683776 (new: 636080)

Changed total_bitrate_bps to be based on incoming packets (reported via callback from ReceiveStatisticsImpl: ReceiveStatisticsProxy::DataCountersUpdated(const webrtc::StreamDataCounters& counters, uint32_t ssrc)).

BUG=webrtc:7400

Review-Url: https://codereview.webrtc.org/2775813002
Cr-Commit-Position: refs/heads/master@{#17411}
2017-03-28 09:44:58 +00:00
b1a897680d Disable AudioCodingModuleTest.TestPacketLossStereo for iOS.
It failed twice in succession after https://codereview.webrtc.org/2752233002.

TBR=ossu@webrtc.org
NOTRY=True
BUG=webrtc:7057

Review-Url: https://codereview.webrtc.org/2778983003
Cr-Commit-Position: refs/heads/master@{#17410}
2017-03-28 09:28:08 +00:00
abb84b8128 iOS: Add new RTCVideoSource interface
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}
2017-03-28 08:56:41 +00:00
c4adacfb15 Pass settings model to ARDAppClient instead of individual settings.
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}
2017-03-28 08:22:48 +00:00
bcbaf74643 Let Call register ReceiveSideCongestionController as CallStatsObserver.
Fixes a regression from cl https://codereview.webrtc.org/2752233002.

BUG=chromium:704491,webrtc:6847

Review-Url: https://codereview.webrtc.org/2777423002
Cr-Commit-Position: refs/heads/master@{#17407}
2017-03-28 08:16:25 +00:00
f42cc9d8d9 Add MakeUnique from chromium and change StunMessage::AddAttribute to take a unique_ptr.
BUG=NONE

Review-Url: https://codereview.webrtc.org/2757893003
Cr-Commit-Position: refs/heads/master@{#17403}
2017-03-27 23:17:19 +00:00
858b0f4703 Update XServerPixelBuffer to handle shmget() errors properly.
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}
2017-03-27 20:47:32 +00:00
cecec1060f Set max bitrate for audio send stream based on RtpParameters.
BUG=webrtc:7392

Review-Url: https://codereview.webrtc.org/2775483004
Cr-Commit-Position: refs/heads/master@{#17399}
2017-03-27 20:04:25 +00:00
1436c83cd1 Base screenshare layers on TemporalReferences.
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}
2017-03-27 19:01:49 +00:00
d8cfa1af38 Accept remote offers with current DTLS role, rather than "actpass".
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}
2017-03-27 17:33:26 +00:00
a5e8aa6e2b Vp9: Enable denoiser by default.
BUG=webrtc:7412

Review-Url: https://codereview.webrtc.org/2765663002
Cr-Commit-Position: refs/heads/master@{#17395}
2017-03-27 17:09:00 +00:00
4e7645118e Fix UT failure by temporarily uncommenting
BUG=webrtc:7322, webrtc:7405

Review-Url: https://codereview.webrtc.org/2780473002
Cr-Commit-Position: refs/heads/master@{#17393}
2017-03-27 15:53:11 +00:00