Commit Graph

7590 Commits

Author SHA1 Message Date
6df36dc054 Migrated GN target :neteq_isac_quality_test
Migrated GN target :neteq_isac_quality_test from
webrtc/modules/audio_coding/neteq/neteq_tests.gypi

NOTRY=True

BUG=webrtc:6190

Review-Url: https://codereview.webrtc.org/2226253002
Cr-Commit-Position: refs/heads/master@{#13710}
2016-08-10 12:04:51 +00:00
e6ca9ec7b9 Broke out 'level_indicator' of the voice_engine GN target. This is
needed for the new audio_mixer to depend on just
'voice_engine:level_indicator' instead of the whole voice_engine and
avoid a circular dependency.

TBR=henrika@webrtc.org

NOTRY=True

Review-Url: https://codereview.webrtc.org/2221103004
Cr-Commit-Position: refs/heads/master@{#13709}
2016-08-10 12:01:59 +00:00
0e0be0a2f5 Migrated GN target :neteq_ilbc_quality_test
Migrated GN target :neteq_ilbc_quality_test from
webrtc/modules/audio_coding/neteq/neteq_tests.gypi

NOTRY=True

BUG=webrtc:6190

Review-Url: https://codereview.webrtc.org/2221193004
Cr-Commit-Position: refs/heads/master@{#13708}
2016-08-10 11:55:29 +00:00
6e6e70f55b Add magjed@webrtc.org as owner of webrtc/base/java/
magjed@ is the author of two out of three files in webrtc/base/java
(ThreadUtils.java and Size.java). They were originally created in
webrtc/api/android/java, but were moved to base/ in order to be
accessible from e.g. webrtc/modules/audio_device/android/java.

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#13707}
2016-08-10 11:49:35 +00:00
6391012514 Migrated GN target :audio_classifier_test
Migrated GN target :audio_classifier_test from
webrtc/modules/audio_coding/neteq/neteq_tests.gypi

NOTRY=True

BUG=webrtc:6190

Review-Url: https://codereview.webrtc.org/2225333002
Cr-Commit-Position: refs/heads/master@{#13706}
2016-08-10 11:41:23 +00:00
bcdad0f3a8 Generate random rtp packets with RtpPacketToSend instead of RtpSender
in rtc event log unittest

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

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

Cr-Commit-Position: refs/heads/master@{#13705}
2016-08-10 11:23:38 +00:00
116fd61599 Migrated GN target :neteq_speed_test
Migrated GN target :neteq_speed_test from
webrtc/modules/audio_coding/neteq/neteq.gypi

NOTRY=True

BUG=webrtc:6190

Review-Url: https://codereview.webrtc.org/2223343004
Cr-Commit-Position: refs/heads/master@{#13704}
2016-08-10 11:16:45 +00:00
3651d8f97f Add libjingle_peerconnection_unittest to GN targets.
BUG=webrtc:6037
NOTRY=True

Review-Url: https://codereview.webrtc.org/2226093003
Cr-Commit-Position: refs/heads/master@{#13703}
2016-08-10 10:10:53 +00:00
daa90a7e35 Cleaned out boundingSet member from TMMBRHelp class
BUG=webrtc:5565
R=philipel@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#13702}
2016-08-10 09:30:08 +00:00
630c6d58d3 Migrated GN target :neteq_opus_quality_test
Migrated GN target :neteq_opus_quality_test from
webrtc/modules/audio_coding/neteq/neteq_tests.gypi

NOTRY=True

BUG=webrtc:6190, webrtc:2692

Review-Url: https://codereview.webrtc.org/2223933004
Cr-Commit-Position: refs/heads/master@{#13701}
2016-08-10 09:11:49 +00:00
74811e5fa3 Style updates to ProducerFec/FecReceiver.
- Make more use of std::unique_ptr.
- Auto type deduction for iterator type names.
- More extensive comments.
- Variable renaming.
- Make ProducerFec::BuildRedPacket() static.
- Avoid dynamic allocation of ProducerFec::fec_.

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2110763002
Cr-Commit-Position: refs/heads/master@{#13700}
2016-08-10 07:51:59 +00:00
5d6b84c484 MB: Set crosscompilation config for Linux ARM bot.
This apparently was missed as well for our initial Linux configs,
thus failing compilation.

BUG=589510
NOTRY=True
TBR=ehmaldonado@webrtc.org

Review-Url: https://codereview.webrtc.org/2228123003
Cr-Commit-Position: refs/heads/master@{#13699}
2016-08-09 20:17:48 +00:00
4c45234b81 Fix regression for h264 VideoToolbox entering background.
We need to check the pool to make sure that the encoder session is valid. Otherwise, it appears as if the encoder just does not output frames.

NOTRY=True
BUG=

Review-Url: https://codereview.webrtc.org/2226383002
Cr-Commit-Position: refs/heads/master@{#13698}
2016-08-09 20:02:03 +00:00
3cb0c573dd MB: Make commit-/trybots identical + add OpenH264 for all desktop configs
We actually run with OpenH264 enabled on all the desktop platforms:
https://cs.chromium.org/chromium/build/scripts/slave/recipe_modules/webrtc/chromium_config.py?rcl=0&l=48
We also have dcheck_always_enabled=1 both on commit- and trybots
(which is different from Chromium):
https://cs.chromium.org/chromium/build/scripts/slave/recipe_modules/webrtc/chromium_config.py?rcl=0&l=15

I also made a few alphabetic sorting of configs to get more consistency.

BUG=589510
NOTRY=True
TBR=ehmaldonado@webrtc.org

Review-Url: https://codereview.webrtc.org/2228053004
Cr-Commit-Position: refs/heads/master@{#13697}
2016-08-09 20:01:04 +00:00
89b0ca878c Add Android bots to MB.
BUG=589510
NOTRY=True

Review-Url: https://codereview.webrtc.org/2228923002
Cr-Commit-Position: refs/heads/master@{#13696}
2016-08-09 15:15:09 +00:00
048ab2f08f Rename linux_ubsan_clang_vptr to linux_ubsan_vptr.
I mistyped the name of the bot as 'linux_ubsan_clang_vptr'.
The real name is 'linux_ubsan_vptr'.

Also erase the libfuzzer bot, since it's alreading using GN.

BUG=589510
NOTRY=True

Review-Url: https://codereview.webrtc.org/2227043002
Cr-Commit-Position: refs/heads/master@{#13695}
2016-08-09 14:55:50 +00:00
5fb291ac88 Remove RTPSenderInterface
Review-Url: https://codereview.webrtc.org/2218153002
Cr-Commit-Position: refs/heads/master@{#13694}
2016-08-09 14:43:33 +00:00
d90fa0be29 Unit test for media packet reordering in ForwardErrorCorrection.
This CL expands the test coverage by checking that the FEC can
handle reordered received media packets. Specifically, this checks
that |recovered_packets| is kept in sorted order.

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2101253002
Cr-Commit-Position: refs/heads/master@{#13693}
2016-08-09 13:57:18 +00:00
e5106e75da Removed target rtp_to_text. The code does not even run.
NOTRY=True

BUG=webrtc:6162, webrtc:2692

Review-Url: https://codereview.webrtc.org/2199803002
Cr-Commit-Position: refs/heads/master@{#13692}
2016-08-09 13:56:16 +00:00
3e2d6ac0c0 Updated comments and renaming of variables in ForwardErrorCorrection.
This CL should have no changes to functionality.

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2107703002
Cr-Commit-Position: refs/heads/master@{#13690}
2016-08-09 10:29:57 +00:00
09abaa0c7d Add Linux bots to mb_config.pyl.
BUG=589510
NOTRY=True

Review-Url: https://codereview.webrtc.org/2223893002
Cr-Commit-Position: refs/heads/master@{#13689}
2016-08-09 09:26:20 +00:00
5d4d59c069 Remove LooperExecutor and replace it with built-in HandlerThread.
Review-Url: https://codereview.webrtc.org/2206473003
Cr-Commit-Position: refs/heads/master@{#13688}
2016-08-09 09:03:41 +00:00
35c480cf18 Use std::unique_ptr in ForwardErrorCorrection.
This CL converts the ForwardErrorCorrection class to use std::unique_ptr
for memory management, rather than manually delete'ing allocated memory.

It further renames some data structures and types to distinguish between
generated FEC packets (i.e. coming from the encode operation) and
received FEC packets (i.e. coming in over the wire, intended for the
decode operation).

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2099243003
Cr-Commit-Position: refs/heads/master@{#13687}
2016-08-09 08:23:35 +00:00
2d618de25a [Chromoting] Improve DirectX capturer to support multiple outputs
Current DirectX capturer cannot capture multiple video cards or monitors. But
according to DXGI desktop duplication sample (https://goo.gl/An0L9l), we can
capture multiple video cards and monitors by duplicating them one by one. So
instead of one IDXGIOutputDuplication instance, this change creates an
IDXGIOutputDuplication instance for each monitor, and merge the output into
one DesktopFrame.
Several other changes are also included,
1. Add supports to DXGI_OUTDUPL_DESC.DesktopImageInSystemMemory. When this flag
is true, we won't copy its content to staging buffer.
2. Capture one monitor instead of entire screen.

Above changes make the logic complex. But with some refactor work, the logic is
not disordered. Please refer to the doc @ https://goo.gl/hU1ifG.

BUG=314516

Review-Url: https://codereview.webrtc.org/2099123002
Cr-Commit-Position: refs/heads/master@{#13684}
2016-08-09 00:50:28 +00:00
e3eff7c062 Check that table evenly divides 256 when generating random string.
This prevents biased modulo arithmetic when selecting a character for a
random value from the provided table.

BUG=webrtc:5870

Review-Url: https://codereview.webrtc.org/2115793003
Cr-Commit-Position: refs/heads/master@{#13683}
2016-08-09 00:13:44 +00:00
912f46a348 Don't silently ignore RNG failures when creating strings / numbers.
RTC_CHECK in functions that return the random value.

BUG=webrtc:6072

Review-Url: https://codereview.webrtc.org/2119003002
Cr-Commit-Position: refs/heads/master@{#13682}
2016-08-08 23:33:14 +00:00
d3b953db30 Remove NSS SecureRandomGenerator.
All platforms should be using OpenSSL/BoringSSL.

BUG=

Review-Url: https://codereview.webrtc.org/2115123002
Cr-Commit-Position: refs/heads/master@{#13681}
2016-08-08 23:23:00 +00:00
6a450105cd Adjust H264 QP thresholds.
NOTRY=True
BUG=

Review-Url: https://codereview.webrtc.org/2228683002
Cr-Commit-Position: refs/heads/master@{#13680}
2016-08-08 22:27:41 +00:00
0060c56b22 Catch exceptions thrown by getCodecInfoAt() and getCapabilitiesForType().
BUG=b/30715199
R=jiayl@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#13678}
2016-08-08 19:27:37 +00:00
df9e4d9fce Added new mixer folder to CPPLINT_DIRS. Fixed one small issue.
NOTRY=True

Review-Url: https://codereview.webrtc.org/2228503003
Cr-Commit-Position: refs/heads/master@{#13677}
2016-08-08 17:26:17 +00:00
6382a19dc4 Renamed old-style variables.
Review-Url: https://codereview.webrtc.org/2227633002
Cr-Commit-Position: refs/heads/master@{#13676}
2016-08-08 17:25:10 +00:00
0740a2040a Track SSRCs configured for each media type in event log visualization tool.
Review-Url: https://codereview.webrtc.org/2207453003
Cr-Commit-Position: refs/heads/master@{#13675}
2016-08-08 17:21:09 +00:00
4496809b28 Changed mixing api and moved resampler.
Removed resampler from NewAudioConferenceMixer and AudioMixer (which started as a copy of former OutputMixer). This is part of the mixer rewrite project. In particular,
this is one of the steps required to have a single mixing component
instead of two doing the same thing.

The next planned change (which is not part of this CL) is to plug in the
new mixer (NewAudioConferenceMixer) into AudioState and AudioDeviceModule.

NOTRY=True

Review-Url: https://codereview.webrtc.org/2221443002
Cr-Commit-Position: refs/heads/master@{#13674}
2016-08-08 17:19:03 +00:00
0727f15186 Create gn target for peerconnection examples
BUG=

Review-Url: https://codereview.webrtc.org/2218053002
Cr-Commit-Position: refs/heads/master@{#13673}
2016-08-08 16:03:27 +00:00
03bc3cfb3e GN target for test_packet_masks_metrics.
NOTRY=True
BUG=webrtc:6193

Review-Url: https://codereview.webrtc.org/2229473002
Cr-Commit-Position: refs/heads/master@{#13672}
2016-08-08 15:09:00 +00:00
d046d985f9 Cleaning up mb_config.pyl style.
BUG=589510
NOTRY=True

Review-Url: https://codereview.webrtc.org/2222853003
Cr-Commit-Position: refs/heads/master@{#13671}
2016-08-08 13:59:24 +00:00
f4433ef14e Add argument support for stand-alone WebRTC tracing.
BUG=webrtc:6186

Review-Url: https://codereview.webrtc.org/2215153003
Cr-Commit-Position: refs/heads/master@{#13670}
2016-08-08 11:10:17 +00:00
04dbb34d51 iOS: Add support for rendering native CVPixelBuffers directly
This CL adds support in RTCEAGLVideoView for rendering CVPixelBuffers as
OpenGL ES textures directly, compared to the current code that first
converts the CVPixelBuffers to I420, and then reuploads them as
textures. This is only supported on iOS with the use of a
CVOpenGLESTextureCache.

The I420 rendering and native rendering are separated in two different
implementations of a simple shader interface:
@protocol Shader
- (BOOL)drawFrame:(RTCVideoFrame*)frame;
@end
GL resources are allocated when the shader is instantiated and released
when the shader is destroyed. RTCEAGLVideoView will lazily instantiate
the necessary shader when it receives the first frame of that kind. This
is primarily done to avoid allocating GL resources for both I420 and
native rendering.

Some other changes are:
 - Print GL shader compilation errors.
 - Remove updateTextureSizesForFrame() function. The textures will
   resize automatically anyway when the texture data is uploaded with
   glTexImage2D().

patch from issue 2154243002 at patchset 140001 (http://crrev.com/2154243002#ps140001)
Continuing magjed@'s work since he is OOO this week.

BUG=

Review-Url: https://codereview.webrtc.org/2202823004
Cr-Commit-Position: refs/heads/master@{#13668}
2016-08-08 10:10:12 +00:00
c3ec1fd23c Adding GN targets for audioproc, audioproc_f and unpack_aecdump
BUG=webrtc:6171
NOTRY=True

Review-Url: https://codereview.webrtc.org/2222643002
Cr-Commit-Position: refs/heads/master@{#13667}
2016-08-08 06:19:35 +00:00
2ddfdba989 GN: Add targets for AppRTCDemo on Mac+iOS
BUG=webrtc:6022
NOTRY=True

Review-Url: https://codereview.webrtc.org/2211413003
Cr-Commit-Position: refs/heads/master@{#13666}
2016-08-08 04:37:56 +00:00
9763d56464 Modified PeerConnection and WebRtcSession for end-to-end QuicDataChannel usage.
To allow end-to-end QuicDataChannel usage with a
PeerConnection, RTCConfiguration has been modified to
include a boolean for whether to do QUIC, since negotiation of
QUIC is not implemented. If one peer does QUIC, then it will be
assumed that the other peer must do QUIC or the connection
will fail.

PeerConnection has been modified to create data channels of type
QuicDataChannel when the peer wants to do QUIC.

WebRtcSession has ben modified to use a QuicDataTransport
instead of a DtlsTransportChannelWrapper/DataChannel
when QUIC should be used

QuicDataTransport implements the generic functions of
BaseChannel to manage the QuicTransportChannel.

Committed: https://crrev.com/34b54c36a533dadb6ceb70795119194e6f530ef5
Review-Url: https://codereview.webrtc.org/2166873002
Cr-Original-Commit-Position: refs/heads/master@{#13645}
Cr-Commit-Position: refs/heads/master@{#13657}
2016-08-05 18:14:54 +00:00
3859c89b2e Add decoder-specific settings with proper lifetime.
Utilize these settings for h264 sprop-parameter-sets.

BUG=webrtc:5948

Review-Url: https://codereview.webrtc.org/2185953002
Cr-Commit-Position: refs/heads/master@{#13656}
2016-08-05 16:19:33 +00:00
4cd2790f17 Move RTP for synchroninzation and rename classes, files and variables.
This CL removes (almost) the last RTP references in VideoReceiveStream.
There are still references to RTPFragmentationHeader and SSRCs, which
will be dealt with later.

There are also new GUARDED_BY and thred checker added to the
synchronization class.

When there are othre transports than RTP, there will instead be an
interface + inheritance for RtpStreamReceiver and
RtpStreamSynchronizattion in VideoReceiveStream. This work will be done
when we actually know how we want to make thee transport interface.

BUG=webrtc:5838

Review-Url: https://codereview.webrtc.org/2216533002
Cr-Commit-Position: refs/heads/master@{#13655}
2016-08-05 13:28:50 +00:00
b7b9dca4e4 Reland Enable socketservers unittests on windows.
Original CL: https://codereview.webrtc.org/2199193004/
Revert CL: https://codereview.webrtc.org/2209333002/

NOTRY=true
BUG=webrtc:6167,webrtc:6178

Review-Url: https://codereview.webrtc.org/2218853002
Cr-Commit-Position: refs/heads/master@{#13654}
2016-08-05 12:55:49 +00:00
262e486128 TMMBRHelp::FindBoundingSet function cleaned
it become static to clearly state input, output and temporary variables
style updated with minor improvments to actual algorithm.

Review-Url: https://codereview.webrtc.org/1989363006
Cr-Commit-Position: refs/heads/master@{#13652}
2016-08-05 10:37:43 +00:00
33f00e1272 Fix case-sensitive build system errors.
This is https://codereview.webrtc.org/2141093002/, just wanted to get it in.

NOTRY=True
BUG=

Review-Url: https://codereview.webrtc.org/2214113002
Cr-Commit-Position: refs/heads/master@{#13649}
2016-08-04 19:46:51 +00:00
907abe4411 Revert of Modified PeerConnection and WebRtcSession for end-to-end QuicDataChannel usage. (patchset #8 id:280001 of https://codereview.webrtc.org/2166873002/ )
Reason for revert:
Reverting because it broke an RTP data channel test on the FYI bots.

Original issue's description:
> Modified PeerConnection and WebRtcSession for end-to-end QuicDataChannel usage.
>
> To allow end-to-end QuicDataChannel usage with a
> PeerConnection, RTCConfiguration has been modified to
> include a boolean for whether to do QUIC, since negotiation of
> QUIC is not implemented. If one peer does QUIC, then it will be
> assumed that the other peer must do QUIC or the connection
> will fail.
>
> PeerConnection has been modified to create data channels of type
> QuicDataChannel when the peer wants to do QUIC.
>
> WebRtcSession has ben modified to use a QuicDataTransport
> instead of a DtlsTransportChannelWrapper/DataChannel
> when QUIC should be used
>
> QuicDataTransport implements the generic functions of
> BaseChannel to manage the QuicTransportChannel.
>
> Committed: https://crrev.com/34b54c36a533dadb6ceb70795119194e6f530ef5
> Cr-Commit-Position: refs/heads/master@{#13645}

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

Review-Url: https://codereview.webrtc.org/2206793007
Cr-Commit-Position: refs/heads/master@{#13647}
2016-08-04 19:22:22 +00:00
34b54c36a5 Modified PeerConnection and WebRtcSession for end-to-end QuicDataChannel usage.
To allow end-to-end QuicDataChannel usage with a
PeerConnection, RTCConfiguration has been modified to
include a boolean for whether to do QUIC, since negotiation of
QUIC is not implemented. If one peer does QUIC, then it will be
assumed that the other peer must do QUIC or the connection
will fail.

PeerConnection has been modified to create data channels of type
QuicDataChannel when the peer wants to do QUIC.

WebRtcSession has ben modified to use a QuicDataTransport
instead of a DtlsTransportChannelWrapper/DataChannel
when QUIC should be used

QuicDataTransport implements the generic functions of
BaseChannel to manage the QuicTransportChannel.

Review-Url: https://codereview.webrtc.org/2166873002
Cr-Commit-Position: refs/heads/master@{#13645}
2016-08-04 18:06:58 +00:00
f736d2365d Add fraction loss in visualization tool.
Review-Url: https://codereview.webrtc.org/2204713005
Cr-Commit-Position: refs/heads/master@{#13644}
2016-08-04 17:00:19 +00:00
ddba75c7cb Remove rtt limit on retransmission rate limiter
After offline discussion, this was mostly of historical use and may
actually be more of a risk now that we have the paced sender.

BUG=

Review-Url: https://codereview.webrtc.org/2198933004
Cr-Commit-Position: refs/heads/master@{#13643}
2016-08-04 16:52:46 +00:00