Commit Graph

5325 Commits

Author SHA1 Message Date
a276e73168 Clean the code for external denoiser.
BUG=webrtc:5255

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

Cr-Commit-Position: refs/heads/master@{#11235}
2016-01-13 13:36:40 +00:00
2f7dea164d [rtp_rtcp] rtcp::Empty moved into own file and renamed to CompoundPacket on the way
Class renamed to indicated use of the rtcp::Empty class: it can only be used as container for other rtcp packets.
All tests that use Append function moved from rtcp_packet_unittest, even if they did not use Empty class.
This is because there is plan to make RtcpPacket class lighter by moving Append functionality to CompoundPacket class.

BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11234}
2016-01-13 10:03:09 +00:00
ea8c0f6fcb Fix capture ntp time issue introduced with r11187.
I think the problem was that I only introduced delay in one direction, and the estimation assumes that the RTT is evenly divided between the send direction and the receive direction, which was true for the old test.

BUG=chromium:576246
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11233}
2016-01-13 07:58:52 +00:00
25249d92d3 Use an explicit identifier in Config
This let's us use them to configure them when using WebRTC as an external library. One use case where this is necessary is in the Android OS.

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

Cr-Commit-Position: refs/heads/master@{#11231}
2016-01-13 02:50:31 +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
92e677a1f8 [rtp_rtcp] rtcp::Sli packet moved into own file and got Parse function
BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11228}
2016-01-12 18:05:00 +00:00
5584bf4c4d Make :rtc_base_approved a public dep of :rtc_base.
It looks to me like targets :rtc_base_approved is logically a subset of
:rtc_base, and so any targets depending on :rtc_base expect to also get
access to the headers in :rtc_base_approved.

Thus I think it's appropriate for :rtc_base to have :rtc_base_approved in
public_deps, so that `gn check` will permit this without clients having to
explicitly depend on both.

NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11227}
2016-01-12 17:46:59 +00:00
e84e96e8be NetEq: Fix a typo in a comment
TBR=minyue@webrtc.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#11226}
2016-01-12 15:36:23 +00:00
36220ae24f Slap deprecation notices on Pass methods
There's no reason not to use std::move instead now that we can use the
C++11 standard library.

BUG=webrtc:5373

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

Cr-Commit-Position: refs/heads/master@{#11225}
2016-01-12 15:24:27 +00:00
d20e651327 Fix test bug introduced in r11101.
BUG=chromium:572995
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11224}
2016-01-12 14:51:28 +00:00
2845a02339 Remove unused enum RTPDirections.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11221}
2016-01-12 13:01:02 +00:00
3842c5c7f7 Wire-up BWE feedback for audio receive streams.
Also wires up receiving transport sequence numbers.

BUG=webrtc:5263
R=mflodman@webrtc.org, pbos@webrtc.org, solenberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11220}
2016-01-12 12:55:11 +00:00
67e94fb6f2 Add unit test for stand-alone denoiser and fixed some bugs.
The unit test will run the pure C denoiser and SSE2/NEON denoiser (based
on the CPU detection) and compare the denoised frames to ensure the bit
exact.

TBR=tommi@webrtc.org

BUG=webrtc:5255

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

Cr-Commit-Position: refs/heads/master@{#11216}
2016-01-12 05:34:14 +00:00
b2328d11dc Remove additional channel constraints when Beamforming is enabled in AudioProcessing
The general constraints on number of channels for AudioProcessing is:
num_in_channels == num_out_channels || num_out_channels == 1

When Beamforming is enabled and additional constraint was added forcing:
num_out_channels == 1

This artificial constraint was removed by adding upmixing support in CopyTo, since it was already supported for the AudioFrame interface using InterleaveTo.

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

Cr-Commit-Position: refs/heads/master@{#11215}
2016-01-12 04:32:32 +00:00
2a34688f86 Make Beamforming dynamically settable for Android platform builds
Review URL: https://codereview.webrtc.org/1563493005

Cr-Commit-Position: refs/heads/master@{#11213}
2016-01-12 02:04:33 +00:00
2bc63a1dd3 clang-format audio_device/mac.
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#11212}
2016-01-11 23:59:25 +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
f6c318ebae Update API for Objective-C RTCMediaSource.
BUG=
R=tkchin@webrtc.org

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

Patch from Jon Hjelle <hjon@andyet.net>.

Cr-Commit-Position: refs/heads/master@{#11210}
2016-01-11 22:39:05 +00:00
e799badacc Move Objective-C video renderers to webrtc/api/objc.
BUG=
R=tkchin@webrtc.org

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

Patch from Jon Hjelle <hjon@andyet.net>.

Cr-Commit-Position: refs/heads/master@{#11209}
2016-01-11 21:47:17 +00:00
81028796bc Update API for Objective-C RTCMediaStreamTrack.
R=tkchin@webrtc.org

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

Patch from Jon Hjelle <hjon@andyet.net>.

Cr-Commit-Position: refs/heads/master@{#11208}
2016-01-11 21:16:19 +00:00
a2c353f815 Update API for Objective-C RTCStats.
BUG=
R=tkchin@webrtc.org

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

Patch from Jon Hjelle <hjon@andyet.net>.

Cr-Commit-Position: refs/heads/master@{#11207}
2016-01-11 21:11:45 +00:00
7e8145f05d [rtp_rtcp] rtcp::Tmmbr moved into own file
BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11206}
2016-01-11 19:49:24 +00:00
a9a1d2acaf H.264: Default flags and pulling in openh264 and ffmpeg.
Defining use_third_party_h264 directly, and indirectly defining use_openh264 (from third_party/openh264) and ffmpeg_branding (from third_party/ffmpeg).
These will be used in a follow-up CL that adds an encoder and decoder implementation.
The flags are added in this CL so that they can be used by trybots/waterfall bots in GN without "Build argument had no effect" errors. Equivalent GYP changes are also added.

BUG=468365

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

Cr-Commit-Position: refs/heads/master@{#11204}
2016-01-11 18:19:06 +00:00
7823495698 Move RTCI420Frame to webrtc/api/objc/RTCVideoFrame with minor style changes.
BUG=
R=tkchin@webrtc.org

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

Patch from Jon Hjelle <hjon@andyet.net>.

Cr-Commit-Position: refs/heads/master@{#11203}
2016-01-11 17:47:14 +00:00
ef3d805f6e [rtp_rtcp] rtcp::Tmmbn moved into own file
explicetly unchanged.

BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11201}
2016-01-11 11:31:17 +00:00
db21f633a2 fix GN build break on native_client
TBR=guidou@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11196}
2016-01-09 21:12:11 +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
25702cb162 Misc. small cleanups.
* Better param names
* Avoid using negative values for (bogus) placeholder channel counts (mostly in tests).  Since channels will be changing to size_t, negative values will be illegal; it's sufficient to use 0 in these cases.
* Use arraysize()
* Use size_t for counting frames, samples, blocks, buffers, and bytes -- most of these are already size_t in most places, this just fixes some stragglers
* reinterpret_cast<int64_t>(void*) is not necessarily safe; use uintptr_t instead
* Remove unnecessary code, e.g. dead code, needlessly long/repetitive code, or function overrides that exactly match the base definition
* Fix indenting
* Use uint32_t for timestamps (matching how it's already a uint32_t in most places)
* Spelling
* RTC_CHECK_EQ(expected, actual)
* Rewrap
* Use .empty()
* Be more pedantic about matching int/int32_t/
* Remove pointless consts on input parameters to functions
* Add missing sanity checks

All this was found in the course of constructing https://codereview.webrtc.org/1316523002/ , and is being landed separately first.

BUG=none
TEST=none

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

Cr-Commit-Position: refs/heads/master@{#11191}
2016-01-08 21:50:32 +00:00
49c454e748 Cleaning neteq_unittest resource files.
BUG=webrtc:2692

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

Cr-Commit-Position: refs/heads/master@{#11189}
2016-01-08 19:30:18 +00:00
f1685c771d Disable RampUpTest.UpDownUp* in webrtc_perf_tests on Mac
NOTRY=True
BUG=5407
TBR=stefan@webrtc.org,pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11188}
2016-01-08 18:43:45 +00:00
e74eef19bd Add CreateSend/ReceiveTransport() methods to CallTest.
This allows the test to create its own transports if it, for instance, needs to do demuxing.

BUG=webrtc:5416

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

Cr-Commit-Position: refs/heads/master@{#11187}
2016-01-08 14:47:21 +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
b71b4f0c7a Update attributes to match gclibc's ansidecl.h
To ease use of WebRTC in other codebases, update some macros
to match glibc's ansidecl.h, which uses double-underscores for attributes.

NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11185}
2016-01-08 12:51:47 +00:00
e1ca167217 Add tracing to NetEqImpl::GetAudio
BUG=webrtc:5167
R=pbos@webrtc.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#11183}
2016-01-08 11:50:14 +00:00
ec80f03b3c Check the mic volume only periodically on Mac.
Ask the OS for the mic volume every 1 second rather than with every 10
ms chunk. The previous behavior was consuming ~2% of the CPU load of
a voice engine call, and is now negligible.

This is consistent with the webrtc Windows Core Audio implementation,
as well as the Chromium Mac implementation:
https://code.google.com/p/chromium/codesearch#chromium/src/media/audio/agc_audio_stream.h

TEST=voe_cmd_test with AGC continues to work well on Mac.

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

Cr-Commit-Position: refs/heads/master@{#11182}
2016-01-08 09:16:25 +00:00
59bac1a4c5 Fix for stats updated twice when switching content type (realtime <-> screenshare). Add unittest.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11180}
2016-01-08 07:36:06 +00:00
a2b1e03c66 Disable AudioDeviceAPITest.MicrophoneVolumeTests on Linux.
NOTRY=True
BUG=webrtc:5414
TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11178}
2016-01-08 07:26:11 +00:00
bedc17be5c Fixing integer underflow in FileAudioDevice (webrtc issue 4554)
Problem is described here:
https://code.google.com/p/webrtc/issues/detail?id=4554

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

Cr-Commit-Position: refs/heads/master@{#11174}
2016-01-07 20:38:36 +00:00
69387930e0 vp9 tests: Adjust some parameters and re-enable the tests.
Tests were failing on android with new libvpx.
vp9 speed setting was changed to 8 recently and some recent changes
in libvpx require update for the tests to pass.

TBR=stefan@webrtc.org
BUG=webrtc:5401

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

Cr-Commit-Position: refs/heads/master@{#11173}
2016-01-07 20:00:44 +00:00
6f5ca080b8 Update API for Objective-C RTCMediaConstraints.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11172}
2016-01-07 17:29:37 +00:00
9fea80f50d Add audio streams to CallTest and a first A/V call test.
Add audio send and receive streams to CallTest and call the necessary voice engine APIs for the streams to be usable. Verifies the implementation by adding a simple test which monitors outgoing packets and checks that both audio and video is being sent with transport sequence numbers.

Audio streams are using a fake audio device with file input.

The CallTest implementation is to a big degree based on call_perf_tests.cc and should in the future replace a lot of that code.

R=pbos@webrtc.org
TBR=kjellander@webrtc.org

BUG=webrtc:5263

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

Cr-Commit-Position: refs/heads/master@{#11171}
2016-01-07 16:43:31 +00:00
ecd21b481f Add ImplementationName to SimulcastEncoderAdapter.
BUG=webrtc:4897
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11170}
2016-01-07 16:03:13 +00:00
01f364ef06 Remove always-on options in OveruseFrameDetector.
BUG=webrtc:5132
R=asapersson@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11169}
2016-01-07 15:38:33 +00:00
30166cb1a8 iOS stability improvement for device switching, including BT devices
BUG=webrtc:5058

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

Cr-Commit-Position: refs/heads/master@{#11168}
2016-01-07 15:23:08 +00:00
7776e782d6 Remove unused methods in VideoCodingModule.
Also voids ::Codec which always passed.

BUG=
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11167}
2016-01-07 14:42:58 +00:00
3886fc8f57 Use pointer to generated FEC packet.
Removes multiple index lookups to generated_fec_packets_ speeding up
FecTest.FecTest with >2x in both Debug and Release, improving
performance but also readability.

On Debug this means that the slowest test in modules_tests now takes
~15-20 seconds instead of 50+ seconds, reducing the overall bottleneck.

BUG=webrtc:4712
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11166}
2016-01-07 14:33:57 +00:00
46ea3ce580 AudioDeviceTest.StartPlayoutOnTwoInstances now verifies two active playing streams
TBR=tkchin_webrtc
BUG=b/25343768

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

Cr-Commit-Position: refs/heads/master@{#11165}
2016-01-07 14:03:07 +00:00
cea7c2f783 Replace manual casting to rvalue reference with calls to std::move
Review URL: https://codereview.webrtc.org/1570473002

Cr-Commit-Position: refs/heads/master@{#11163}
2016-01-07 13:52:09 +00:00
a46a4c92d0 Roll chromium_revision 2a70cb1..4662d4f (367468:368042)
I had to fix the audio_device BUILD.gn which was forgotten back
in https://codereview.webrtc.org/1536923003. It also contained a few
missing source files and one library.

Change log: 2a70cb1..4662d4f
Full diff: 2a70cb1..4662d4f

Changed dependencies:
* src/buildtools: 6d0c448..0f8e6e4
* src/third_party/libsrtp: 8a7662a..ebfcc9a
DEPS diff: 2a70cb1..4662d4f/DEPS

No update to Clang.

TBR=henrika@webrtc.org
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11162}
2016-01-07 10:54:28 +00:00