3174 Commits

Author SHA1 Message Date
danilchap
d8dccd57ea uses standard types instead of RTCPUtility type to store data.
got member read accessors, got Parse function.

BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11324}
2016-01-20 20:08:58 +00:00
ivoc
72c08edced Reenables several NetEq unittests on android.
Several unittests were disabled on android, this CL will reenable them. One of
the tests was accidentally disabled on all platforms, and now no longer gives a
bitexact result.

BUG=webrtc:3343,webrtc:5349

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

Cr-Commit-Position: refs/heads/master@{#11323}
2016-01-20 15:26:28 +00:00
stefan
32f81542c2 Support REMB in combination with send-side BWE.
BUG=webrtc:4173

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

Cr-Commit-Position: refs/heads/master@{#11322}
2016-01-20 15:14:03 +00:00
Peter Boström
a5dec16b42 Name SimulcastEncoderApdater on InitEncode.
Provides a better string (provides names of all implementations), but
also fixes a crash when accessing the ImplementationName() of
SimulcastEncoderAdapter where InitEncode has failed.

BUG=chromium:577932, webrtc:4897
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11321}
2016-01-20 14:54:02 +00:00
Tommi
9090e0b147 Switch CriticalSectionWrapper->rtc::CriticalSection in modules/audio_coding.
This is a part of cleaning up CriticalSectionWrapper in general.

BUG=
R=henrik.lundin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11319}
2016-01-20 12:39:45 +00:00
jackychen
f0b8a3784f Allow disabling denoiser when it is enabled.
BUG=webrtc:5255

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

Cr-Commit-Position: refs/heads/master@{#11312}
2016-01-20 02:19:01 +00:00
niklas.enbom
3a6bf2d68b Enable full screen windows to be shown in window picker for mac. Before this patch a full screen window can be shared if sharing is started before the window is entered into full screen mode, but not if it's already in full screen.
BUG=chromium:575990
TEST: Manual test using TextEdit full screen mode.

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

Cr-Commit-Position: refs/heads/master@{#11311}
2016-01-20 01:34:20 +00:00
Peter Boström
7b971e728b Remove extra_options from VideoCodec.
Constructing default options is racy when initializing multiple VP8
encoders in parallel. This is only used for VP8 temporal layers. Adding
TemporalLayerFactory to VP8 codec specifics instead of generic options.

Removes the last webrtc::Config uses/includes from video code.

Also removes VideoCodec equality operators which are no longer in use.

BUG=webrtc:5410
R=stefan@webrtc.org
TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11307}
2016-01-19 15:26:24 +00:00
Tommi
ee5a309f12 Make CriticalSectionWrapper non-virtual.
There's no need for this class to have a vtable since there exists only a single implementation (per platform).  It's also not good for performance.

BUG=
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11306}
2016-01-19 14:42:58 +00:00
kwiberg
0edb05b344 Declare that rent_a_codec depends on the audio codecs
That these declarations were missing was a bug, which apparently
didn't actually cause build problems in either Chromium or WebRTC
standalone. (Presumably, because rent_a_codec was always linked
together with other build targets that did declare such dependencies.)

BUG=webrtc:5435

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

Cr-Commit-Position: refs/heads/master@{#11303}
2016-01-19 13:54:31 +00:00
kjellander
73674f8064 Replace hardcoded constant in video capture with macro.
The roll in https://codereview.webrtc.org/1593713013 introduced a
cast that is undefined behavior. The right way to fix it is to use
a macro.

NOTRY=True
TESTED=Tommi verified that the values are the same.

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

Cr-Commit-Position: refs/heads/master@{#11302}
2016-01-19 13:49:25 +00:00
kjellander
3c85cad1d4 Roll chromium_revision 7a4fb8d..f527e86 (370025:370073)
Change log: 7a4fb8d..f527e86
Full diff: 7a4fb8d..f527e86

No dependencies changed.

Clang was updated 255169:257953.
Details: 7a4fb8d..f527e86/tools/clang/scripts/update.py

NOTRY=True
NOPRESUBMIT=True

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

Cr-Commit-Position: refs/heads/master@{#11301}
2016-01-19 12:47:24 +00:00
Peter Boström
8d6fab8fac Remove two dead 'using' instances.
BUG=
TBR=pthatcher@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11296}
2016-01-18 23:24:36 +00:00
Peter Boström
233bfd2da4 Move keyframe requests outside encoder mutex.
Enables faster keyframe requests since they are no longer blocked by
calls to the encoder.

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

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

Cr-Commit-Position: refs/heads/master@{#11294}
2016-01-18 19:23:51 +00:00
kwiberg
f8c2baca4e Add a gyp/gn variable for whether to use iLBC or not
BUG=webrtc:5415

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

Cr-Commit-Position: refs/heads/master@{#11291}
2016-01-18 14:38:40 +00:00
danilchap
34ed2b95a5 [rtp_rtcp] rtcp::SenderReport moved into own file and got Parse function
BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11288}
2016-01-18 10:43:38 +00:00
Danil Chapovalov
1567d0bd98 [rtp_rtcp] rtcp::Sdes moved into own file
Cleaning/Parsing will be done in the https://codereview.webrtc.org/1439553003/

BUG=webrtc:5260
R=asapersson@webrtc.org, åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11274}
2016-01-15 16:34:32 +00:00
Danil Chapovalov
2c13297bf5 [rtp_rtcp] rtcp::Rpsi moved into own file
Cleaning/Parsing will be done in the https://codereview.webrtc.org/1550293003/

BUG=webrtc:5260
R=asapersson@webrtc.org, åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11272}
2016-01-15 14:21:34 +00:00
Danil Chapovalov
256e5b23f8 Cleaning/Parsing will be done in the https://codereview.webrtc.org/1557593002/
BUG=webrtc:5260
R=asapersson@webrtc.org, åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11271}
2016-01-15 13:16:36 +00:00
Danil Chapovalov
5679da1291 [rtp_rtcp] rtcp::Fir moved into own file
Cleaning/Parsing will be done in the https://codereview.webrtc.org/1544403002

BUG=webrtc:5260
R=asapersson@webrtc.org, åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11269}
2016-01-15 12:19:59 +00:00
Danil Chapovalov
a5eba6c98b [rtp_rtcp] rtcp::Remb moved into own file
Cleaning/Parsing will be done in the https://codereview.webrtc.org/1552773002/

BUG=webrtc:5260
R=asapersson@webrtc.org, åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11268}
2016-01-15 11:40:27 +00:00
ivoc
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
danilchap
d9e62f5837 Fixed sending Rtp packets with non zero csrcs and certain extensions.
Added test that fails because of given issue.

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

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

Cr-Commit-Position: refs/heads/master@{#11258}
2016-01-14 22:55:23 +00:00
terelius
5d332ac8ff Fix expectation bug in the RTPSender unit test.
The current expectation for InsertPacket(...) uses WillRepeatedly, which accepts if the function is called zero or more times. This CL changes this to either a fixed number of calls, or at least a positive number of calls.

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

Cr-Commit-Position: refs/heads/master@{#11256}
2016-01-14 22:37:43 +00:00
kjellander
fcfc804e43 Eliminate defines in talk/
Replace LINUX, OSX and IOS defines with WEBRTC_ prefixed versions.
Remove no longer used defines from talk/build/common.gypi due to
previously migrated sources (into webrtc/p2p and webrtc/libjingle).

When this is rolled into Chromium, we can also clean up the platform
defines in
https://code.google.com/p/chromium/codesearch#chromium/src/third_party/libjingle/libjingle.gyp

NOTRY=True
BUG=webrtc:5420
TESTED=Ran all compile trybots with --clobber flag.
TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11254}
2016-01-14 19:01:25 +00:00
aluebs
688e308a35 Re-land: "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.

Original CL: https://codereview.webrtc.org/1538643004/

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11248}
2016-01-14 12:32:51 +00:00
tommi
fca54f41ad Revert of Use an explicit identifier in Config (patchset #4 id:60001 of https://codereview.webrtc.org/1538643004/ )
Reason for revert:
Reverting due to problem with roll:

/b/build/slave/linux/build/src/buildtools/linux64/gn gen //out/Release '--args=ffmpeg_branding="Chrome" proprietary_codecs=true is_debug=false is_component_build=false use_goma=true goma_dir="/b/build/goma" symbol_level=1 dcheck_always_on=true' --check --runtime-deps-list-file=/b/build/slave/linux/build/src/out/Release/runtime_deps
  -> returned 1
ERROR at //third_party/webrtc/BUILD.gn:245:18: Item not found
    configs -= [ "//build/config/clang:find_bad_constructs" ]
                 ^-----------------------------------------
You were trying to remove "//build/config/clang:find_bad_constructs"
from the list but it wasn't there.
GN gen failed: 1
step returned non-zero exit code: 1
@@@STEP_FAILURE@@@

Original issue's description:
> 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.
>
> Committed: https://crrev.com/25249d92d3cf105bcc7b684c8924ccdbc9afcb93
> Cr-Commit-Position: refs/heads/master@{#11231}

TBR=henrik.lundin@webrtc.org,stefan@webrtc.org,tommi@chromium.org,aluebs@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/1586563003

Cr-Commit-Position: refs/heads/master@{#11239}
2016-01-13 16:12:07 +00:00
jackychen
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
danilchap
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
aluebs
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
Peter Kasting
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
danilchap
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
Henrik Lundin
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
Stefan Holmer
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
jackychen
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
aluebs
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
aluebs
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
andrew
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
danilchap
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
hbos
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
danilchap
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
pkasting
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
minyue
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
henrik.lundin
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
andrew
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
kjellander
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
A.Brauckmann
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
Marco
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
pbos
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
henrika
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