14320 Commits

Author SHA1 Message Date
zhihuang
b7f425ab68 Accept all the media profiles required by JSEP.
JSEP section 5.1.3 states that:
  Any profile matching the following patterns MUST be accepted:
  "RTP/[S]AVP[F]" and "(UDP/TCP)/TLS/RTP/SAVP[F]"

NOTRY=True
BUG=webrtc:5638

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

Cr-Commit-Position: refs/heads/master@{#12338}
2016-04-13 01:32:36 +00:00
Alex Glaznev
79299afa30 Enable H.264 HW decoder soft rest.
Also tune up scale thresholds a little.

BUG=b/27674326
R=wzh@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12337}
2016-04-12 23:39:50 +00:00
peah
bdb7af692f Changed the delay estimator to be built using C++
BUG=webrtc:5724
NOPRESUBMIT=true

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

Cr-Commit-Position: refs/heads/master@{#12336}
2016-04-12 21:47:46 +00:00
kjellander@webrtc.org
1a45cfbe8b Fix paths to Android tests .isolate files.
These errors surfaced after https://codereview.chromium.org/1882103002/
was committed recently. The tests previously used a path passed
on command line by the recipe.

TBR=agrieve@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#12335}
2016-04-12 20:15:18 +00:00
guidou
63911495de Revert of Fix screen capturers to initialize on the same thread on which Start() is called. (patchset #3 id:80001 of https://codereview.webrtc.org/1861893002/ )
Reason for revert:
This is preventing a WebRTC roll into Chromium. See https://codereview.chromium.org/1877263003/

Original issue's description:
> Fix screen capturers to initialize on the same thread on which Start() is called.
>
> Previously screen capturers were initialized when they are created.
> This means that in the CRD host they were initialized on the thread
> that's different from the thread on which they are used. Because of this
> on Linux the host was using XErrorTrap() on two different threads and
> this is not supported. Now ScreenCapturer implementations always
> initialize themselves on the thread on which Start() is called.
>
> Also added ThreadChecker to make sure the capturers are always called
> from the same thread.
>
> BUG=600432
>
> Committed: https://crrev.com/e8d4b7d8a3d298438a2ebd9ee8d5aa71f42cf033
> Cr-Commit-Position: refs/heads/master@{#12285}

TBR=jamiewalch@chromium.org,sergeyu@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=600432

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

Cr-Commit-Position: refs/heads/master@{#12334}
2016-04-12 18:42:07 +00:00
hta
a6b99448ee Generate FMTP parameters for the H.264 codec.
This CL generates FMTP parameters that allow H.264 interoperation
with Firefox for the default codec list.

BUG=chromium:591971

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

Cr-Commit-Position: refs/heads/master@{#12333}
2016-04-12 17:29:20 +00:00
agrieve
d0554b8068 Set --shard-timeout in wrapper scripts for apk tests
This will allow us to remove this flag from the "how to run the tests"
instructions, and also the bot recipes.

BUG=599919
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#12332}
2016-04-12 16:45:04 +00:00
phoglund
19b4fecf08 Revert of Make QualityScaler more responsive to downgrades. (patchset #3 id:40001 of https://codereview.webrtc.org/1830593003/ )
Reason for revert:
Speculative revert: want to see if this causes the regression in https://crbug.com/602621

Original issue's description:
> Make QualityScaler more responsive to downgrades.
>
> Permits going from HD to QVGA in 6 seconds instead of 10. Also adds
> windows for going up quickly in the beginning of a call (before any
> downscaling happens due to bad quality).
>
> BUG=webrtc:5678
> R=glaznev@webrtc.org, stefan@webrtc.org
>
> Committed: https://crrev.com/85829fd90cc4e7a91c9857921b19e8fc126aeb60
> Cr-Commit-Position: refs/heads/master@{#12219}

TBR=glaznev@webrtc.org,stefan@webrtc.org,pbos@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:5678
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#12331}
2016-04-12 16:06:02 +00:00
ossu
164bc4bbd3 Revert of Remove the deprecated EncodeInternal interface from AudioEncoder (patchset #4 id:60001 of https://codereview.webrtc.org/1864993002/ )
Reason for revert:
Broke import. Implementations of the old interface still exists somewhere.

Original issue's description:
> Remove the deprecated EncodeInternal interface from AudioEncoder
>
> Also hid MaxEncodedBytes by making it private. It will get removed as soon as subclasses have had time to remove their overrides.
>
> BUG=webrtc:5591
>
> Committed: https://crrev.com/5222d315dbea8f3563c100cc9f2451907f70b05f
> Cr-Commit-Position: refs/heads/master@{#12329}

TBR=kwiberg@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:5591

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

Cr-Commit-Position: refs/heads/master@{#12330}
2016-04-12 10:58:10 +00:00
ossu
5222d315db Remove the deprecated EncodeInternal interface from AudioEncoder
Also hid MaxEncodedBytes by making it private. It will get removed as soon as subclasses have had time to remove their overrides.

BUG=webrtc:5591

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

Cr-Commit-Position: refs/heads/master@{#12329}
2016-04-12 10:31:03 +00:00
sprang
afe1f74c04 Make sure temporal layered screenshare frames are sent in at least 2s.
If a very large frame is sent (high res slide change) when the available
send bitrate is very low, the it might take many seconds before any new
frames are emitted as the accrued debt will take time to pay off.

Add a bailout, so that if a frame hasn't been sent for 2 seconds, cancel
the debt immediately, even if the target bitrate is then exceeded.

BUG=webrtc:5750

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

Cr-Commit-Position: refs/heads/master@{#12328}
2016-04-12 09:45:20 +00:00
peah
b97526ed65 Corrected include of C++ header file in AECM that was done using external inclusion
BUG=

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

Cr-Commit-Position: refs/heads/master@{#12327}
2016-04-12 08:20:47 +00:00
nisse
c36b31b78e Embed a cricket::MediaConfig in RTCConfiguration.
This eliminates some instances rtc:Optional and makes the code
simpler. No changes in defaults or other behaviour are intended.

BUG=webrtc:4906

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

Cr-Commit-Position: refs/heads/master@{#12326}
2016-04-12 06:25:34 +00:00
kjellander
9c4fadc199 Add test annotations to AppRTCDemoTest.
After rolling in https://codereview.webrtc.org/1847963004 the AppRTCDemoTest
started running 0 tests due to https://crbug.com/601464. Adding test annotations
makes the tests being executed again.

BUG=chromium:601464
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#12325}
2016-04-12 04:27:40 +00:00
Marco
7f315883f0 vp8-intergationtest: Adjust a parameter in resize test.
Needed for new libvpx roll.

TBR=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12324}
2016-04-12 04:02:51 +00:00
mikescarlett
18b67a59ea Add QuicTransportChannel methods for QUIC streams
The QuicTransportChannel now creates outgoing QUIC streams
for sending a message, and incoming QUIC streams for
receiving a message. It also signals when the QUIC connection
closes.

Split from CL https://codereview.webrtc.org/1844803002/.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#12323}
2016-04-11 23:56:26 +00:00
mikescarlett
9a20fa6292 Add WriteUVarint to ByteBufferWriter and ReadUVarint to ByteBufferReader
Methods to write/read a varint as described by
https://developers.google.com/protocol-buffers/docs/encoding#varints
that will be used for a QUIC data channel.

Split from CL https://codereview.webrtc.org/1844803002/.

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

Cr-Commit-Position: refs/heads/master@{#12322}
2016-04-11 23:11:47 +00:00
zhihuang
3ba4d53379 Remove the if condition block in the function Transport::ConnectChannels. It will not be triggered anymore.
Review URL: https://codereview.webrtc.org/1844133002

Cr-Commit-Position: refs/heads/master@{#12321}
2016-04-11 22:10:57 +00:00
tkchin
efdd930dc9 Fix RTCAudioSession crash in removeDelegate.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#12320}
2016-04-11 19:01:06 +00:00
tkchin
9ff9c6540b iOS h264: Request keyframe after coming back from background.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#12319}
2016-04-11 18:40:36 +00:00
danilchap
90a1351072 Fixed rtcp rpsi parsing of invalid packets.
Added packet type RpsiItem to destinguish parsed rpsi header and Rpsi body
  preventing handling two half-valid (header-only) rpsi packets as one valid,
  making test parser calculate rpsi packet once instead of twice.
Added check padding bits doesn't exceed native bit string length.
Marking rpsi received moved after it is validated.

BUG=600977

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

Cr-Commit-Position: refs/heads/master@{#12318}
2016-04-11 17:05:06 +00:00
Peter Boström
f7704d197b Remove latency-based frame dropping on Android.
This logic currently prevents loopback calls on Nexus 5X when it's
slightly overloaded to maintain input framerate since encoding at ~25fps
with one framedrop results in >70ms between frames naturally.

With this change applied Nexus 5X can maintain ~25fps both in and out
without building excessive latency (>2 frames) (this is now covered by
CPU adaptation outside the codec wrapper).

BUG=
R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12317}
2016-04-11 14:42:48 +00:00
peah
c7bdf8a729 Added storing of the reverse output rate and number of channels in APM protobuf recordings.
Support for reading the newly added fields will be added in a another CL.

BUG=webrtc:5759, webrtc:5724

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

Cr-Commit-Position: refs/heads/master@{#12316}
2016-04-11 14:05:56 +00:00
Peter Boström
dda52b9c3e Add performance tracing to AudioDevice inits.
Adds tracing to AudioDeviceModuleImpl::InitRecording and
AudioDeviceModuleImpl::StartRecording to visualize that they are a
significant part of startup time in performance recordings.

BUG=webrtc:5723
R=henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12315}
2016-04-11 14:04:42 +00:00
nisse
25ed5800b9 Enable proxy_unittest (thread proxy tests).
BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#12314}
2016-04-11 13:01:32 +00:00
nisse
3858477d4b FakeVideoTrackRenderer is a thin wrapper over
FakeVideoRenderer, only registering itself on a
VideoSourceInterface on construction and removing itself on
destruction. Let it inherit FakeVideoRenderer, instead of
proxying all methods.

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#12313}
2016-04-11 11:38:39 +00:00
kjellander
29a34d70f9 Roll chromium_revision 29056bf821..a35c1c96c7 (386325:386363)
Change log: 29056bf821..a35c1c96c7
Full diff: 29056bf821..a35c1c96c7

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12312}
2016-04-11 11:07:29 +00:00
Peter Boström
dabc9449b7 Add missing tracing to RtpSender objects.
BUG=
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12311}
2016-04-11 09:45:43 +00:00
jansson
18d3d1e466 Update ice server provider response format in the Android AppRTCDemo app
BUG=None

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

Cr-Commit-Position: refs/heads/master@{#12310}
2016-04-11 09:42:20 +00:00
perkj
8aba997f3e Reland of Changed P2PTestConductor to use a separate worker thread.
patchset #1 contains the original cl.
https://codereview.webrtc.org/1859933002/

patchset #2 change the initiating client to accept both kIceConnectionCompleted kIceConnected as a ice state.

The reason for the previous revert was:
Causes P2PTestConductor.LocalP2PTestDtlsTransferCaller to fail on Win dbg.

https://build.chromium.org/p/client.webrtc/builders/Win32%20Debug/builds/7469/steps/peerconnection_unittests/logs/stdio

e:\b\build\slave\win\build\src\webrtc\api\peerconnection_unittest.cc(1221): error: Value of: initiating_client_->ice_connection_state()
  Actual: 2
Expected: webrtc::PeerConnectionInterface::kIceConnectionCompleted
Which is: 3

BUG= webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#12309}
2016-04-11 06:54:39 +00:00
peah
4d23447b15 Moved struct definition to the header file for the ring buffer.
This is done in order to allow the ringbuffer to be recorded using protobufs.
The actual recording will be added in other CLs.

BUG=webrtc:5724

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

Cr-Commit-Position: refs/heads/master@{#12308}
2016-04-11 05:51:10 +00:00
peah
2704512f7b What was done was
-changed filenames to *.cc
-fixed issues with implicit casts causing build errors.

All other CL warnings were ignored as the original
code is not changed, merely moved.

BUG=webrtc:5724
NOPRESUBMIT=true

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

Cr-Commit-Position: refs/heads/master@{#12307}
2016-04-11 05:38:19 +00:00
kjellander
59cbc4f3f3 Roll chromium_revision a56f16d1e1..29056bf821 (386317:386325)
Change log: a56f16d1e1..29056bf821
Full diff: a56f16d1e1..29056bf821

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12306}
2016-04-11 03:03:44 +00:00
kjellander
3be94bf471 Roll chromium_revision 5a3c87b37a..a56f16d1e1 (386316:386317)
Change log: 5a3c87b37a..a56f16d1e1
Full diff: 5a3c87b37a..a56f16d1e1

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12305}
2016-04-10 19:02:48 +00:00
kjellander
35cd9de84c Roll chromium_revision 11022bc348..5a3c87b37a (386314:386316)
Change log: 11022bc348..5a3c87b37a
Full diff: 11022bc348..5a3c87b37a

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12304}
2016-04-10 11:02:16 +00:00
kjellander
55fc495904 Roll chromium_revision f19c8c6644..11022bc348 (386300:386314)
Change log: f19c8c6644..11022bc348
Full diff: f19c8c6644..11022bc348

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12303}
2016-04-10 03:23:35 +00:00
peah
423d236a54 As the ClosestNativeRate method returns the closest native
rate that is higher than the specified rate, and not
the closest native rate the need for a name change has been
raised. This CL addresses that.

BUG=webrtc:5298

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

Cr-Commit-Position: refs/heads/master@{#12302}
2016-04-09 23:06:59 +00:00
kjellander
b8a1454ffd Roll chromium_revision 9bfe4e2f47..f19c8c6644 (386294:386300)
Change log: 9bfe4e2f47..f19c8c6644
Full diff: 9bfe4e2f47..f19c8c6644

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12301}
2016-04-09 19:02:26 +00:00
torbjorng
4b9d1dec5a OpenSSL/BoringSSL compatibility fixes.
With this CL, legacy OpenSSL should work again.

BUG=webrtc:5714

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

Cr-Commit-Position: refs/heads/master@{#12300}
2016-04-09 18:35:35 +00:00
kjellander
bbf0ab4477 Roll chromium_revision d2d9a3375e..9bfe4e2f47 (386271:386294)
Change log: d2d9a3375e..9bfe4e2f47
Full diff: d2d9a3375e..9bfe4e2f47

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12299}
2016-04-09 11:04:46 +00:00
kjellander
eae4d720f1 Roll chromium_revision fe515adb0e..d2d9a3375e (386125:386271)
Change log: fe515adb0e..d2d9a3375e
Full diff: fe515adb0e..d2d9a3375e

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12298}
2016-04-09 03:06:37 +00:00
skvlad
79b4b8720d Objective C API to read and set RtpParameters
This change adds the Objective C API functions to get and set RtpSender's
RtpParameters, which allows setting bitrate limits for audio and video and
turning off RtpSenders to pre-initialize the encoder.

This CL adds only the smallest set of methods required to support bitrate
limiting - there is no way to create an RtpSender, for example, or to set
its track. The only supported functionality is this:
 	RTCPeerConnection.senders - a read-only property returning the array
	  of all RTCRtpSenders for the connection.
        RTCRtpSender.parameters - a read-only property returning the current
    	  parameters
	RTCRtpSender.setParameters: - a method to change the parameters.
	RTCRtpSender.track - a read-only property returning the
	  RTCMediaStreamTrack corresponding to the sender. It is necessary
	  to be able to identify RTCRtpSenders for video and audio. The
	  track object is of the base RTCMediaStreamTrack type, not of the
          specific subclass for audio and video - just like it is in the
	  Java API.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#12297}
2016-04-09 00:29:02 +00:00
kjellander
d329584ede Roll chromium_revision 7bd0a75e3f..fe515adb0e (386032:386125)
Change log: 7bd0a75e3f..fe515adb0e
Full diff: 7bd0a75e3f..fe515adb0e

Changed dependencies:
* src/buildtools: 80b5126f91..a2082cafea
DEPS diff: 7bd0a75e3f..fe515adb0e/DEPS

No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12296}
2016-04-08 19:11:56 +00:00
perkj
57db65255c Changed PeerConnectionEndToEndTest to use a separate worker thread.
This is a follow up to https://codereview.webrtc.org/1859933002 to change this test also to use a separate worker thread.

PeerConnectionEndToEndTest currently use the current thread both as a signaling thread and a worker thread. Although convenient while debugging, it can also hide real bugs. An example is https://codereview.webrtc.org/1766653002/#ps420001 where the worker thread is deadlocked in the track proxy due to that the worker thread waits for the signaling thread but the proxy in turns invokes the worker thread..... That bug was only discovered on Android.

BUG= webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#12295}
2016-04-08 15:16:41 +00:00
agrieve
babf8ee78c Add test runner scripts for instrumentation tests
BUG=599919
NOTRY=True
TBR=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12294}
2016-04-08 13:54:32 +00:00
solenberg
5b5129a2ad Replace a few calls to VoEHardware with direct calls on the ADM, in WVoMC.
BUG=webrtc:4690

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

Cr-Commit-Position: refs/heads/master@{#12293}
2016-04-08 12:35:55 +00:00
kjellander
f37ba84e82 Roll chromium_revision e8e08b359c..7bd0a75e3f (385940:386032)
Change log: e8e08b359c..7bd0a75e3f
Full diff: e8e08b359c..7bd0a75e3f

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12292}
2016-04-08 11:04:57 +00:00
nisse
2ded9b19d1 Replace SetCapturer and SetCaptureDevice by SetSource.
Drop return value.

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#12291}
2016-04-08 09:24:01 +00:00
skvlad
e0d4637bea Allow applications to control audio send bitrate through RtpParameters.
This change builds on top of the refactoring in https://codereview.webrtc.org/1841083008/, and enables WebRTC client applications to control the max send bitrate for every audio stream through RtpParameters.

The AudioSendStream now stores the last codec spec, and whenever a global or per-stream bitrate limit changes, the effective limit (smaller of the two) is recomputed and the codec is reconfigured with that bitrate.

TBR=pthatcher
BUG=

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

Cr-Commit-Position: refs/heads/master@{#12290}
2016-04-08 05:59:32 +00:00
kjellander
e07a3af678 Roll chromium_revision 4b37fccfad..e8e08b359c (385806:385940)
Change log: 4b37fccfad..e8e08b359c
Full diff: 4b37fccfad..e8e08b359c

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#12289}
2016-04-08 03:05:05 +00:00