Commit Graph

1019 Commits

Author SHA1 Message Date
8947a01e05 Fixing an uninitialized variable in webrtcsession_unittest.
Introduced in https://codereview.webrtc.org/1590333004/

TBR=pthatcher@webrtc.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#11345}
2016-01-21 18:26:46 +00:00
3c16978c84 Remove cast to LocalAudioSource from AudioRtpSender.
We can't assume that the audio source implementation will be our own internal one and we shouldn't apply local audio options to a remote audio track this way either.

BUG=5423
R=solenberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11341}
2016-01-21 15:12:28 +00:00
5082c83320 Make type and constructors in EglBase14 public.
This type is used for GL contexts in android hardware encode/decode, so
it seems correct/useful to make it publicly constructable.

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

Cr-Commit-Position: refs/heads/master@{#11331}
2016-01-21 10:13:00 +00:00
057ecf01e4 Making WebRtcSession fire a destroyed signal.
This ensures the DtmfSender won't try to access it after it's
destroyed.

BUG=webrtc:5403

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

Cr-Commit-Position: refs/heads/master@{#11327}
2016-01-20 22:30:50 +00:00
1d61a518ac Send key frame if time difference between incoming frames exceeds a certain limit.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11315}
2016-01-20 09:13:51 +00:00
c4c8485662 Deleted renderer-related SetSize methods, and all uses.
webrtc::VideoRendererInterface::SetSize was completely unused.

cricket::VideoRenderer::SetSize only had dummy implementations
returning true and doing nothing.

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11298}
2016-01-19 08:52:55 +00:00
81354f5ef6 Added mute logic to VideoTrackRenderers.
If the track is disabled, replace incoming frames by black frames. Affects local rendering of disabled tracks.
Also intended to replace the similar logic in
WebRtcVideoChannel2::WebRtcVideoSendStream::InputFrame, once
VideoRtpSender is hooked up as a renderer for the track.

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11297}
2016-01-19 08:23:31 +00:00
8b1e431231 Delete remnants of non-square pixel support from cricket::VideoFrame.
If ever needed, add some aspect ratio parameter, without pixel_width
and pixel_height arguments cluttering commonly used functions.

BUG=webrtc:5426

Committed: https://crrev.com/709513d4133107d5c02aed34a5ee99444c4d4e25
Cr-Commit-Position: refs/heads/master@{#11243}

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

Cr-Commit-Position: refs/heads/master@{#11287}
2016-01-18 09:46:33 +00:00
cec0a08275 Add a new interface for creating a udp socket in which it binds the socket to a network if the network handle is set.
Plus, in stunport, turnport and allocation sequence, create a socket using the new interface.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11279}
2016-01-15 22:49:15 +00:00
f4decb5469 Add QP statistics logging to Android HW encoder.
- Similar to HW decoder log timing for first 5 frames
of HW encoder input and output to track correct encoder
start.
- Increment input timestamp when frame is dropped.
- Better calculate average encoding time.
- Use different tags for encoder and decoder modules.

BUG=b/26504665

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

Cr-Commit-Position: refs/heads/master@{#11277}
2016-01-15 21:49:26 +00:00
884f58523a Storing raw audio sink for default audio track.
BUG=webrtc:5250

Committed: https://crrev.com/e591f9377f33f3f725a30faecd1bef1a71fa6b99
Cr-Commit-Position: refs/heads/master@{#11230}

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

Cr-Commit-Position: refs/heads/master@{#11275}
2016-01-15 17:20:08 +00:00
79a5a83e10 Adapt to boringssl's new defaults.
This is now a merge with patchset #2 of https://codereview.webrtc.org/1550773002 after that CL was reverted.

BUG=webrtc:5381

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

Cr-Commit-Position: refs/heads/master@{#11273}
2016-01-15 15:16:54 +00:00
d66b44d565 Reland "Added option to specify a maximum file size when recording an AEC dump.", commit ae2c5ad12afc8cc29fe9c59dea432b697b871a87.
The revert of the original CL was commit 36d4c545007129446e551c45c17b25377dce89a4.
Original review: https://codereview.webrtc.org/1413483003/

The original CL changes a function on audio_processing.h that is used by Chrome, this CL adds back the old function.

TBR=glaznev@webrtc.org, henrik.lundin@webrtc.org, solenberg@google.com, henrikg@webrtc.org, perkj@webrtc.org
BUG=webrtc:4741
Committed: https://crrev.com/f4f5cb09277d5ef6aeac8341e5f54a055867803a
Cr-Commit-Position: refs/heads/master@{#11093}

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

Cr-Commit-Position: refs/heads/master@{#11267}
2016-01-15 11:06:41 +00:00
20ac434010 Fix a test bot failure.
That was caused by https://codereview.webrtc.org/1581903002/

BUG=
R=pthatcher@google.com
TBR=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11260}
2016-01-14 23:56:35 +00:00
e1f9d837ae Adding AddTrack/RemoveTrack to native PeerConnection API.
Also, now creating the RtpSender/RtpReceiver proxy objects immediately,
rather than waiting until when GetSenders/GetReceivers is called.

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

Cr-Commit-Position: refs/heads/master@{#11259}
2016-01-14 23:35:46 +00:00
67b1e1ab0b Put options as the argument of the java PeerConnectionFactory constructor.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11257}
2016-01-14 22:45:44 +00:00
3542013f58 Revert of Update with new default boringssl no-aes cipher suites. Re-enable tests. (patchset #3 id:40001 of https://codereview.webrtc.org/1550773002/ )
Reason for revert:
We're getting boringssl version conflicts. Reverting for now.

Original issue's description:
> Update with new default boringssl no-aes cipher suites. Re-enable tests.
>
> This undoes https://codereview.webrtc.org/1533253002 (except the DEPS part).
>
> BUG=webrtc:5381
> R=davidben@webrtc.org, henrika@webrtc.org
>
> Committed: https://crrev.com/31c8d2eac5aec977f584ab0ae5a1d457d674f101
> Cr-Commit-Position: refs/heads/master@{#11250}

TBR=davidben@webrtc.org,henrika@webrtc.org,torbjorng@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5381

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

Cr-Commit-Position: refs/heads/master@{#11253}
2016-01-14 17:14:06 +00:00
31c8d2eac5 Update with new default boringssl no-aes cipher suites. Re-enable tests.
This undoes https://codereview.webrtc.org/1533253002 (except the DEPS part).

BUG=webrtc:5381
R=davidben@webrtc.org, henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11250}
2016-01-14 14:18:02 +00:00
268493a96b Revert of Delete remnants of non-square pixel support from cricket::VideoFrame. (patchset #1 id:1 of https://codereview.webrtc.org/1586613002/ )
Reason for revert:
These changes broke chrome.

Need to temporarily keep methods InitToEmptyBuffer, InitToBlack, CreateEmptyFrame with old but ignored arguments for pixel_width and pixel_height. Then update chrome, and delete the old methods in a separate cl.

Original issue's description:
> Delete remnants of non-square pixel support from cricket::VideoFrame.
>
> If ever needed, add some aspect ratio parameter, without pixel_width
> and pixel_height arguments cluttering commonly used functions.
>
> BUG=webrtc:5426
>
> Committed: https://crrev.com/709513d4133107d5c02aed34a5ee99444c4d4e25
> Cr-Commit-Position: refs/heads/master@{#11243}

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

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

Cr-Commit-Position: refs/heads/master@{#11246}
2016-01-14 10:35:30 +00:00
709513d413 Delete remnants of non-square pixel support from cricket::VideoFrame.
If ever needed, add some aspect ratio parameter, without pixel_width
and pixel_height arguments cluttering commonly used functions.

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11243}
2016-01-14 07:43:56 +00:00
2d110be77f Revert of Storing raw audio sink for default audio track. (patchset #7 id:120001 of https://codereview.chromium.org/1551813002/ )
Reason for revert:
tommi pointed out that using a refptr for the sink may cause issues. Will reland with a slightly different approach.

Original issue's description:
> Storing raw audio sink for default audio track.
>
> BUG=webrtc:5250
>
> Committed: https://crrev.com/e591f9377f33f3f725a30faecd1bef1a71fa6b99
> Cr-Commit-Position: refs/heads/master@{#11230}

TBR=pthatcher@webrtc.org,solenberg@webrtc.org,pbos@webrtc.org,tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5250

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

Cr-Commit-Position: refs/heads/master@{#11241}
2016-01-13 20:00:29 +00:00
e591f9377f Storing raw audio sink for default audio track.
BUG=webrtc:5250

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

Cr-Commit-Position: refs/heads/master@{#11230}
2016-01-13 00:45:33 +00:00
6955870806 Convert channel counts to size_t.
IIRC, this was originally requested by ajm during review of the other size_t conversions I did over the past year, and I agreed it made sense, but wanted to do it separately since those changes were already gargantuan.

BUG=chromium:81439
TEST=none
R=henrik.lundin@webrtc.org, henrika@webrtc.org, kjellander@webrtc.org, minyue@webrtc.org, perkj@webrtc.org, solenberg@webrtc.org, stefan@webrtc.org, tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11229}
2016-01-13 00:26:55 +00:00
3e1cfa7edb Delete unused method webrtc::VideoRendererInterface::SetSize.
BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11223}
2016-01-12 14:39:25 +00:00
127782bbb1 Add default dummy implementation of cricket::VideoRenderer::SetSize, to easy later removal.
BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11218}
2016-01-12 11:39:20 +00:00
a7446d2a50 Change DTLS default from 1.0 to 1.2 for webrtc.
This changes for standalone webrtc applications.

BUG=
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11211}
2016-01-11 23:27:12 +00:00
f475d365a2 Properly handle different transports having different SSL roles.
This meant splitting "transport_options" into audio/video/data options,
for when creating the answer, and giving "GetSslRole" a "transport_name"
parameter so we can retrieve the current role on a per-transport basis.

BUG=webrtc:4525
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11192}
2016-01-08 23:36:06 +00:00
37ebcf0ce5 Reland "Add APK targets to build libjingle tests for Android."
patchset #10 id:180001 of https://codereview.webrtc.org/1511633002/

This reverts commit bc14164aad254e72ce4d1e381b912b7d3acf5391.

We have made more preparations downstream, so this should work now. Original CL by perkj@.

BUG=webrtc:2365
The work started from the work by kjellander@ in https://codereview.webrtc.org/1413663003/

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

Cr-Commit-Position: refs/heads/master@{#11186}
2016-01-08 13:05:01 +00:00
fbeb97e01f Fix clang warning in peerconnection_jni.cc
TEST= export GYP_DEFINES="OS=android clang=1" ...
      ninja -C out/Debug AppRTCDemo
BUG=webrtc:5399

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

Cr-Commit-Position: refs/heads/master@{#11181}
2016-01-08 08:43:15 +00:00
893505d0fb Adding unit test to ensure TURN server priorities are unique.
BUG=webrtc:5209
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11177}
2016-01-07 23:12:53 +00:00
e5ba13bc09 Adding a way for a Java RtpSender to set a track without taking ownership.
This means that the track will still have a reference count after the
PeerConnection and RtpSender have been destroyed.

R=glaznev@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11176}
2016-01-07 23:11:33 +00:00
60ca31bf5d Roll chromium_revision d66326c..4df108a (367167:367307)
The changes in d66326c..4df108a/build/common.gypi
enables a lot more warnings, which have been disabled/fixed in this CL.
See tracking bugs for remaining work.

Change log: d66326c..4df108a
Full diff: d66326c..4df108a

Changed dependencies:
* src/buildtools: fee7f1e..6d0c448
* src/third_party/libsrtp: b8dd754..8a7662a
DEPS diff: d66326c..4df108a/DEPS

No update to Clang.

BUG=webrtc:5397, webrtc:5398, webrtc:5399
TBR=hta@webrtc.org, perkj@webrtc.org
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11147}
2016-01-04 18:16:01 +00:00
0c7e9f540b Removing webrtc::PortAllocatorFactoryInterface.
ICE servers are now passed directly into PortAllocator,
making PortAllocatorFactoryInterface redundant. This CL also
moves SetNetworkIgnoreMask to PortAllocator.

R=phoglund@webrtc.org, pthatcher@webrtc.org, tkchin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11139}
2015-12-29 22:15:02 +00:00
3f7219be70 Fixing issue where description contains empty ICE ufrag/pwd.
The issue occurred when deserializing and then serializing a rejected
content description, which doesn't have the ICE ufrag/pwd in the first
place.

BUG=webrtc:5105

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

Cr-Commit-Position: refs/heads/master@{#11134}
2015-12-28 23:17:22 +00:00
2f042f26a3 Roll chromium_revision 1b6c421..db567a8 (365999:366304)
I had to disable some Dtls12Both tests failing under MSan (see bug).
Notice those errors started happening in the range of
https://boringssl.googlesource.com/boringssl.git/+log/afd565f..9f897b2
while this CL brings in an even newer BoringSSL (that still has the same problem).

Change log: 1b6c421..db567a8
Full diff: 1b6c421..db567a8

Changed dependencies:
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/afd565f..afe57cb
* src/third_party/libyuv: 1019e45..1ccbf8f
* src/third_party/nss: a676aa0..aee1b12
DEPS diff: 1b6c421..db567a8/DEPS

No update to Clang.

NOTRY=True
BUG=webrtc:5381
TBR=torbjorng@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11095}
2015-12-20 20:25:17 +00:00
a4df27b671 Revert of Reland "Added option to specify a maximum file size when recording an AEC dump." (patchset #2 id:20001 of https://codereview.webrtc.org/1541633002/ )
Reason for revert:
Compile error on Android needs to be fixed before relanding.

Original issue's description:
> Reland "Added option to specify a maximum file size when recording an AEC dump.", commit ae2c5ad12afc8cc29fe9c59dea432b697b871a87.
>
> The revert of the original CL was commit 36d4c545007129446e551c45c17b25377dce89a4.
> Original review: https://codereview.webrtc.org/1413483003/
>
> The original CL changes a function on audio_processing.h that is used by Chrome, this CL adds back the old function.
>
> NOTRY=true
> TBR=glaznev@webrtc.org, henrik.lundin@webrtc.org, solenberg@google.com, henrikg@webrtc.org, perkj@webrtc.org
> BUG=webrtc:4741
>
> Committed: https://crrev.com/f4f5cb09277d5ef6aeac8341e5f54a055867803a
> Cr-Commit-Position: refs/heads/master@{#11093}

TBR=glaznev@webrtc.org,henrik.lundin@webrtc.org,solenberg@google.com,henrikg@webrtc.org,perkj@webrtc.org,kwiberg@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4741

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

Cr-Commit-Position: refs/heads/master@{#11094}
2015-12-19 18:14:18 +00:00
f4f5cb0927 Reland "Added option to specify a maximum file size when recording an AEC dump.", commit ae2c5ad12afc8cc29fe9c59dea432b697b871a87.
The revert of the original CL was commit 36d4c545007129446e551c45c17b25377dce89a4.
Original review: https://codereview.webrtc.org/1413483003/

The original CL changes a function on audio_processing.h that is used by Chrome, this CL adds back the old function.

NOTRY=true
TBR=glaznev@webrtc.org, henrik.lundin@webrtc.org, solenberg@google.com, henrikg@webrtc.org, perkj@webrtc.org
BUG=webrtc:4741

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

Cr-Commit-Position: refs/heads/master@{#11093}
2015-12-19 18:02:39 +00:00
bd7d8f7e2b Adding a MediaStream parameter to createSender.
This will allow an app to create senders with the same stream id,
without SDP munging.

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

Cr-Commit-Position: refs/heads/master@{#11092}
2015-12-19 00:58:51 +00:00
36d4c54500 Revert of Added option to specify a maximum file size when recording an AEC dump. (patchset #5 id:120001 of https://codereview.webrtc.org/1413483003/ )
Reason for revert:
Breaks Chrome-FYI bots because of a change in the StartDebugRecording function in audio_processing.h, that is called from Chrome.

Original issue's description:
> Added option to specify a maximum file size when recording an AEC dump.
>
> For applications with a strict filesize limit for debug files,
> I added an option to specify a maximum filesize for AEC dumps. An
> existing unit test is extended to check that the feature works as
> advertised.
>
> BUG=webrtc:4741
> TBR=glaznev@webrtc.org
>
> Committed: https://crrev.com/ae2c5ad12afc8cc29fe9c59dea432b697b871a87
> Cr-Commit-Position: refs/heads/master@{#11081}

TBR=pthatcher@webrtc.org,henrik.lundin@webrtc.org,henrikg@webrtc.org,solenberg@webrtc.org,andrew@webrtc.org,kwiberg@webrtc.org,perkj@webrtc.org,glaznev@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4741

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

Cr-Commit-Position: refs/heads/master@{#11087}
2015-12-18 16:05:21 +00:00
b7d9a97ce4 Expose codec implementation names in stats.
Used to distinguish between software/hardware encoders/decoders and
other implementation differences. Useful for tracking quality
regressions related to specific implementations.

BUG=webrtc:4897
R=hta@webrtc.org, mflodman@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11084}
2015-12-18 15:01:23 +00:00
ae2c5ad12a Added option to specify a maximum file size when recording an AEC dump.
For applications with a strict filesize limit for debug files,
I added an option to specify a maximum filesize for AEC dumps. An
existing unit test is extended to check that the feature works as
advertised.

BUG=webrtc:4741
TBR=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11081}
2015-12-18 11:53:42 +00:00
88518a22c6 Use NV21 instead of YUV12 and clean up.
BUG=webrtc:5375

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

Cr-Commit-Position: refs/heads/master@{#11079}
2015-12-18 08:37:10 +00:00
48477c1c6a MediaCodecVideoEncoder, set timestamp on the encoder surface when drawing a texture.
BUG=webrtc:4993

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

Cr-Commit-Position: refs/heads/master@{#11078}
2015-12-18 08:34:44 +00:00
4638331fd8 DTLS-SRTP set up is bypassed when the channel has been writable.
This regression was introduced by CL 1505573002 to support remote fingerprint update. What happened is that during PrAnswer, we incorrectly do not apply bundle. However, the channel has become writable at that time. When Answer comes, we still reset the srtp_filter but since the channel has been writable, the new SRTP context has never been applied.

We're making sure that we could always apply SRTP context even when channel has been writable. We'll address the issue that bundle should apply even in PrAnswer in a different CL.

BUG=568734

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

Cr-Commit-Position: refs/heads/master@{#11075}
2015-12-18 00:46:04 +00:00
0eb15ed7b8 Don't call the Pass methods of rtc::Buffer, rtc::scoped_ptr, and rtc::ScopedVector
We can now use std::move instead!

This CL leaves the Pass methods in place; a follow-up CL will add deprecation annotations to them.

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

Cr-Commit-Position: refs/heads/master@{#11064}
2015-12-17 11:04:24 +00:00
a54a080112 Add ufrag to the ICE candidate signaling.
On the receiving side, if a candidate arrives with an old ufrag, it will be dropped. If it contains a new frag that has never seen before, it will hold the ufrag and create connections, although those connections are not pingable until the ICE credentials are received.
This could avoid a bunch of ICE generation issues.

BUG=webrtc:5138,webrt:5292

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

Cr-Commit-Position: refs/heads/master@{#11060}
2015-12-17 02:37:27 +00:00
672aba3f57 Fix error prone code in VideoCapturerAndroid
BUG=webrtc:5282

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

Cr-Commit-Position: refs/heads/master@{#11046}
2015-12-16 10:17:24 +00:00
eb45981165 Restoring behavior where PeerConnection tracks changes to MediaStreams.
If a MediaStream is added to a PeerConnection, and later a track
is added to the MediaStream, a new RtpSender will now be created for
that track, and it will appear in subsequent offers.
Similarly, removed tracks will remove RtpSenders.

BUG=webrtc:5265

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

Cr-Commit-Position: refs/heads/master@{#11040}
2015-12-16 03:24:50 +00:00
51254331cc Android: Refactor renderers to allow apps to inject custom shaders
This CL:
 * Abstracts the functions in GlRectDrawer to an interface.
 * Adds viewport location as argument to the draw() functions, because this information may be needed by some shaders. This also moves the responsibility of calling GLES20.glViewport() to the drawer.
 * Moves uploadYuvData() into a separate helper class.
 * Adds new SurfaceViewRenderer.init() function and new VideoRendererGui.create() function that takes a custom drawer as argument. Each YuvImageRenderer in VideoRendererGui now has their own drawer instead of a common one.

BUG=b/25694445
R=nisse@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11031}
2015-12-15 15:22:38 +00:00
6eca7e3c37 Add a 'remote' property to MediaSourceInterface. Also adding an implementation to the relevant sources we have (audio/video) and an extra check where we're casting a source into a local audio source :(
Additionally:
* Moving all implementation inside RemoteAudioTrack into AudioTrack and remove RemoteAudioTrack.
* AddSink/RemoveSink are now on all audio sources (like they are for video sources).

While doing this I found that some of our tests are broken :) and fixed them.  They were broken because AudioTrack didn't previously do much such as updating its state.

BUG=chromium:569526

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

Cr-Commit-Position: refs/heads/master@{#11026}
2015-12-15 12:27:20 +00:00