4101 Commits

Author SHA1 Message Date
noahric
6a35590d14 Add code for dummy file audio to fallback to dummy audio.
BUG=

Review-Url: https://codereview.webrtc.org/2250853002
Cr-Commit-Position: refs/heads/master@{#13804}
2016-08-17 22:19:55 +00:00
noahric
d8a72f0ab2 Close input file in FileAudioDevice::StopRecording.
Also added some more logging, to help track down start/stop, start
failure, and the name of the file used.

BUG=

Review-Url: https://codereview.webrtc.org/2253763002
Cr-Commit-Position: refs/heads/master@{#13802}
2016-08-17 22:14:57 +00:00
kwiberg
d22854bf7d FilePlayer: Remove unused default values for arguments
The functions in question were virtual, so we would've wanted to get
rid of the default values even if callers had relied on them.

Review-Url: https://codereview.webrtc.org/2045943004
Cr-Commit-Position: refs/heads/master@{#13800}
2016-08-17 16:27:08 +00:00
henrika
4a42900540 Removes redundant log warning in WebRtcAudioManager.
Trivial patch which avoids logs that are of no value.

BUG=NONE

Review-Url: https://codereview.webrtc.org/2250403002
Cr-Commit-Position: refs/heads/master@{#13799}
2016-08-17 15:43:59 +00:00
danilchap
86c96948e3 Revert of StartTimestamp generated randomly in RtpSender constructor (patchset #4 id:60001 of https://codereview.webrtc.org/2241193002/ )
Reason for revert:
Breaks downstream code.

Original issue's description:
> StartTimestamp generated randomly in RtpSender constructor
> instead of not-randomly at SetSendingState(true)
> Renamed to timestamp_offset_ to better match meaning of the variable.
>
> R=asapersson@webrtc.org, terelius@webrtc.org
>
> Committed: https://crrev.com/4466782ae43e1b1125a55ee7e18abd10dd37cede
> Cr-Commit-Position: refs/heads/master@{#13796}

TBR=asapersson@webrtc.org,terelius@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/2248413002
Cr-Commit-Position: refs/heads/master@{#13798}
2016-08-17 15:12:27 +00:00
kwiberg
5a25d9504a FileRecorder + FilePlayer: Let Create functions return unique_ptr
Because passing ownership in raw pointers makes kittens cry.

This also means we can ditch the Destroy functions and the protected
destructors. (Well, almost. We need to keep the old CreateFilePlayer
and DestroyFilePlayer around for a little while longer because of an
external caller.)

Review-Url: https://codereview.webrtc.org/2049683003
Cr-Commit-Position: refs/heads/master@{#13797}
2016-08-17 14:31:18 +00:00
Danil Chapovalov
4466782ae4 StartTimestamp generated randomly in RtpSender constructor
instead of not-randomly at SetSendingState(true)
Renamed to timestamp_offset_ to better match meaning of the variable.

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

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

Cr-Commit-Position: refs/heads/master@{#13796}
2016-08-17 13:07:49 +00:00
kwiberg
144dd27056 FileRecorderImpl and FilePlayerImpl don't need their own .h and .cc files
They are implementations of interfaces that are only ever exposed
via "create" functions, so the entire class definitions can be put in
anonymous namespaces in the .cc files that defines the "create"
functions.

NOPRESUBMIT=true

Review-Url: https://codereview.webrtc.org/2038513002
Cr-Commit-Position: refs/heads/master@{#13794}
2016-08-17 09:46:57 +00:00
ossu
c54071d8ab WebRtcVoiceEngine: Use AudioDecoderFactory to generate recv codecs.
Reland of https://codereview.webrtc.org/2072753002/ which broke
chromium due to how their build was setup. This issue should now be
resolved.

Changed WebRtcVoiceEngine to present receive codecs from the formats
provided by its decoder factory. Added supported formats to
BuiltinAudioDecoderFactory. Added helper functions for creating some
simple decoder factories for mocking.

Created a PayloadTypeMapper for assigning payload types to formats. I
think we'll eventually want to use this further up, or possibly in
both the audio and video sides. It would be best if the engines didn't
have to talk payload types at all, but it might be more difficult to
get around when payload types depend on each-other, like the RTX
codecs for video.

BUG=webrtc:5805
TBR=ivoc@webrtc.org

Review-Url: https://codereview.webrtc.org/2250683002
Cr-Commit-Position: refs/heads/master@{#13793}
2016-08-17 09:45:47 +00:00
philipel
eb680eac5d CongestionController::SetBweBitrates may now trigger probing.
BUG=webrtc:5859
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#13791}
2016-08-17 09:12:14 +00:00
noahric
c594aa61bc Add a gyp/gn option to use dummy audio file devices.
Conceptually, dummy audio file devices are a "platform", like
win/mac/linux, and so the conditional slots under
include_internal_audio_device. When enabled, use_dummy_audio_file_devices
disables whatever platform-specific audio layer would have been used and
turns on dummy file device support.

BUG=

Review-Url: https://codereview.webrtc.org/2250483002
Cr-Commit-Position: refs/heads/master@{#13790}
2016-08-17 01:21:23 +00:00
zijiehe
49c01d7f34 Currently there is not way to programmically test whether a ScreenCapturer
implementation can accurately capture updated regions. Especially in
ScreenCapturerWinDirectx, which has a specific updated region spreading logic
and cannot be tested through regular code path. So we need a controllable
ScreenDrawer to draw some basic shapes on the screen. And a platform independent
test case can use the ScreenDrawer to test a ScreenCapturer.

So this change addes a ScreenDrawer virtual class, and its Windows
implementation ScreenDrawerWin. A disabled gtest ScreenDrawerTest.DrawRectangles
is also added to manually test whether ScreenDrawer can work on a certain
platform.

BUG=314516

TBR=kjellander@webrtc.org

Review-Url: https://codereview.webrtc.org/2210443002
Cr-Commit-Position: refs/heads/master@{#13788}
2016-08-17 00:34:00 +00:00
danilchap
287e54820b Cleanup RtcpReceiver::TMMBRReceived function
BUG=webrtc:951

Review-Url: https://codereview.webrtc.org/2250633002
Cr-Commit-Position: refs/heads/master@{#13786}
2016-08-16 22:15:46 +00:00
kwiberg
a06ce499d6 Run "git cl format" on some files before I start to modify them
This CL does literally nothing else but run "git cl format --full"
on the touched files.

NOPRESUBMIT=true

Review-Url: https://codereview.webrtc.org/2035663002
Cr-Commit-Position: refs/heads/master@{#13782}
2016-08-16 12:35:29 +00:00
ehmaldonado
90920d5bec GN: Enable msse2 flag in Mac.
It was disabled for some reason, even though in GYP it's enabled.

BUG=626067
NOTRY=True

Review-Url: https://codereview.webrtc.org/2247293002
Cr-Commit-Position: refs/heads/master@{#13780}
2016-08-16 11:13:07 +00:00
kwiberg
9d7eb13c40 Revert of Move FilePlayer and FileRecorder to Voice Engine (patchset #3 id:40001 of https://codereview.webrtc.org/2247033003/ )
Reason for revert:
Reverting, because it turns out that third-party code was using webrtc::FilePlayer. I'm not at all sure that this is something WebRTC ought to be exporting, but since we did export it, we have to live with it for now.

Original issue's description:
> Move FilePlayer and FileRecorder to Voice Engine
>
> Because Voice Engine was the only user.
>
> (This has been landed twice before, as
> https://codereview.webrtc.org/2037623002 and
> https://codereview.webrtc.org/2240163002. Third time's a charm!)
>
> NOPRESUBMIT=True
> TBR=kjellander@webrtc.org
>
> Committed: https://crrev.com/427ce3d86f6328dc994f84a15c28bb7bfbaa46ef
> Cr-Commit-Position: refs/heads/master@{#13777}

TBR=
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.webrtc.org/2245413002
Cr-Commit-Position: refs/heads/master@{#13779}
2016-08-16 11:08:39 +00:00
kwiberg
427ce3d86f Move FilePlayer and FileRecorder to Voice Engine
Because Voice Engine was the only user.

(This has been landed twice before, as
https://codereview.webrtc.org/2037623002 and
https://codereview.webrtc.org/2240163002. Third time's a charm!)

NOPRESUBMIT=True
TBR=kjellander@webrtc.org

Review-Url: https://codereview.webrtc.org/2247033003
Cr-Commit-Position: refs/heads/master@{#13777}
2016-08-16 10:34:50 +00:00
danilchap
2f69ce9498 Cleaned out candidateSet member from TMMBRHelp class
leaving that class memberless.

BUG=webrtc:5565

Review-Url: https://codereview.webrtc.org/2234783002
Cr-Commit-Position: refs/heads/master@{#13776}
2016-08-16 10:21:44 +00:00
maxmorin
6910537458 Add gn target for audio_device_tests.
Note (for myself) that this depends on https://codereview.webrtc.org/2219653004/ and https://codereview.webrtc.org/2214003002/, it should not be landed before them.

NOTRY=True
BUG=webrtc:6170,webrtc:5949

Review-Url: https://codereview.webrtc.org/2216423002
Cr-Commit-Position: refs/heads/master@{#13773}
2016-08-16 09:17:48 +00:00
aleloi
70f866c647 Added new mixer to |check_targets| in .gn and fixed include/depend errors.
Also fixed one small chromium-style error in the new mixer.

NOTRY=True

Committed: https://crrev.com/d700bef583d29ba2834ae57b3af7e8d3b8306cb9
Review-Url: https://codereview.webrtc.org/2234293002
Cr-Original-Commit-Position: refs/heads/master@{#13752}
Cr-Commit-Position: refs/heads/master@{#13772}
2016-08-16 09:15:55 +00:00
philipel
7522a28051 Removed old probe cluster logic and logic related to ssrcs from DelayBasedBwe.
-Removed the old probe cluster logic and use the new ProbeBitrateEstimator
 instead.
-Removed all logic related to ssrcs from DelayBasedBwe as they have no function
 on the sender side.

BUG=webrtc:5859
R=stefan@webrtc.org, terelius@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#13771}
2016-08-16 08:59:48 +00:00
aleloi
b7186d0aa7 Migrated GN target :isac_fix_test
Migrated GN target :isac_fix_test from
webrtc/modules/audio_coding/codecs/isac/isacfix_test.gypi

NOTRY=True

BUG=webrtc:6191

Review-Url: https://codereview.webrtc.org/2247233002
Cr-Commit-Position: refs/heads/master@{#13770}
2016-08-16 08:47:26 +00:00
maxmorin
88e31a3fd8 Fix warnings, simplify ADM.
This is in preparation for adding a gn target for audio_device_tests.

BUG=webrtc:6170,webrtc:163
NOTRY=True

Review-Url: https://codereview.webrtc.org/2222563002
Cr-Commit-Position: refs/heads/master@{#13768}
2016-08-16 07:56:14 +00:00
zijiehe
82dda1af5e [WebRTC] Disable DirectX capturer tests if the system does not support it.
A recent DrMemory failure has been detected after change 2099123002. After some
investigation, an uninitialized read has been detected in

NtUserGetThreadDesktop
webrtc::Desktop::GetThreadDesktop
webrtc::ScopedThreadDesktop::ScopedThreadDesktop
webrtc::ScreenCapturerWinGdi::ScreenCapturerWinGdi
webrtc::ScreenCapturer::Create
webrtc::ScreenCapturerTest_UseDirectxCapturer_Test::TestBody

So there are two issues,
1. The Directx capturer won't be triggered as the system does not support it. So
these tests should be disabled in this scenario.
2. An uninitialized read in NtUserGetThreadDesktop -> ScopedThreadDesktop
stacks, which should be suppressed. By default, these suppressions should be
placed in chromium/external with other suppressions.

So this change is a quick fix to the failure, do not use ScreenCapturerWinGdi in
ScreenCaputrerWinDirectx tests.

BUG=

Review-Url: https://codereview.webrtc.org/2247943002
Cr-Commit-Position: refs/heads/master@{#13766}
2016-08-16 02:53:40 +00:00
jianjun.zhu
e1b4d243e2 Skip AUD while extracting SPS and PPS on iOS.
H.264 frames may have AUD before SPS. This change detects AUD and try to extract SPS and PPS behind AUD.

BUG=webrtc:6173

Review-Url: https://codereview.webrtc.org/2209143002
Cr-Commit-Position: refs/heads/master@{#13765}
2016-08-16 01:56:23 +00:00
tkchin
6c687e72a0 Make prior H264 QP adjustments iOS specific.
BUG=

Review-Url: https://codereview.webrtc.org/2248883002
Cr-Commit-Position: refs/heads/master@{#13764}
2016-08-15 23:38:02 +00:00
noahric
3473288296 Remove VERBOSE logs in (android) audio device code.
When playing out, for example, you'd see 3 lines for every call to
PlayoutDelay, which happens quite often (every sample?).

The ones around the Playout/Recording Warning/Error are only once a
second, but they don't seem to add anything. Same with
Process/TimeUntilNextProcess, which just log that the method is called.

BUG=

Review-Url: https://codereview.webrtc.org/2202243004
Cr-Commit-Position: refs/heads/master@{#13763}
2016-08-15 20:41:28 +00:00
ehmaldonado
b1e66110e3 GN: Fix audio_decoder_unittests for android.
Tested on a physical device.

BUG=webrtc:6036
NOTRY=True

Review-Url: https://codereview.webrtc.org/2241293002
Cr-Commit-Position: refs/heads/master@{#13761}
2016-08-15 19:02:08 +00:00
philipel
4a1ec1e639 Added ProbeBitrate(bitrate_bps, num_probes) to BitrateProber.
Also some minor cleanup.

BUG=webrtc:5859

Review-Url: https://codereview.webrtc.org/2243823002
Cr-Commit-Position: refs/heads/master@{#13760}
2016-08-15 18:51:12 +00:00
maxmorin
1aee0b5bd9 Remove old methods in AudioTransport, make it pass a gn build
when building with default warnings.

This is in preparation for making a gn target for audio_device_tests.

BUG=webrtc:6170, webrtc:163
NOTRY=True

Review-Url: https://codereview.webrtc.org/2219653004
Cr-Commit-Position: refs/heads/master@{#13759}
2016-08-15 18:46:28 +00:00
kwiberg
c8c71f484e Revert of Move FilePlayer and FileRecorder to Voice Engine (patchset #6 id:100001 of https://codereview.webrtc.org/2240163002/ )
Reason for revert:
Breaks downstream code, so revert again. Yay.

Original issue's description:
> Move FilePlayer and FileRecorder to Voice Engine
>
> Because Voice Engine was the only user.
>
> (This is a re-land of https://codereview.webrtc.org/2037623002, which
> had to be reverted.)
>
> NOPRESUBMIT=True
>
> Committed: https://crrev.com/dc65ea29b3270ad418050658ad962ddd33ee70c1
> Cr-Commit-Position: refs/heads/master@{#13757}

TBR=perkj@webrtc.org,kjellander@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/2245153002
Cr-Commit-Position: refs/heads/master@{#13758}
2016-08-15 18:43:56 +00:00
kwiberg
dc65ea29b3 Move FilePlayer and FileRecorder to Voice Engine
Because Voice Engine was the only user.

(This is a re-land of https://codereview.webrtc.org/2037623002, which
had to be reverted.)

NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2240163002
Cr-Commit-Position: refs/heads/master@{#13757}
2016-08-15 17:36:38 +00:00
kjellander
f96c51ac05 GN: Add video_capture_tests for Mac
BUG=webrtc:6042
NOTRY=True
TBR=mflodman@webrtc.org

Review-Url: https://codereview.webrtc.org/2245083002
Cr-Commit-Position: refs/heads/master@{#13756}
2016-08-15 16:21:36 +00:00
olka
2ab1da7c37 Revert of Added new mixer to |check_targets| in .gn and fixed include/depend errors. (patchset #1 id:1 of https://codereview.webrtc.org/2234293002/ )
Reason for revert:
Breaks Chromium FYI builds, for example https://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/9219/steps/compile/logs/stdio

Original issue's description:
> Added new mixer to |check_targets| in .gn and fixed include/depend errors.
>
> Also fixed one small chromium-style error in the new mixer.
>
> NOTRY=True
>
> Committed: https://crrev.com/d700bef583d29ba2834ae57b3af7e8d3b8306cb9
> Cr-Commit-Position: refs/heads/master@{#13752}

TBR=kjellander@webrtc.org,aleloi@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/2241243002
Cr-Commit-Position: refs/heads/master@{#13753}
2016-08-15 14:36:22 +00:00
aleloi
d700bef583 Added new mixer to |check_targets| in .gn and fixed include/depend errors.
Also fixed one small chromium-style error in the new mixer.

NOTRY=True

Review-Url: https://codereview.webrtc.org/2234293002
Cr-Commit-Position: refs/heads/master@{#13752}
2016-08-15 14:24:13 +00:00
kwiberg
963be23e62 RtpRtcp: Remove the SetSendREDPayloadType and SendREDPayloadType methods
The last in-tree call site recently disappeared, so they were unused.

BUG=webrtc:5922

Review-Url: https://codereview.webrtc.org/2066473002
Cr-Commit-Position: refs/heads/master@{#13751}
2016-08-15 14:08:39 +00:00
aleloi
5bcc00e538 Changed folder structure in new mixer and fixed simple lint errors.
The folder structure is now as was agreed on in the 'Slim and Modular
WebRTC' effort.  Also added some dependencies that were previously in
another part of the tree.

NOTRY=True

Review-Url: https://codereview.webrtc.org/2238803002
Cr-Commit-Position: refs/heads/master@{#13742}
2016-08-15 10:01:37 +00:00
sakal
714dd4e532 GN: Update tests to have the correct shard timeout value on Android.
TBR=mflodman@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2231413002
Cr-Commit-Position: refs/heads/master@{#13741}
2016-08-15 09:29:19 +00:00
flim
64a7eab891 Update tests and DTX check for Opus 1.1.3.
DTX is now indicated by packets that may have a size of up to 2 bytes.
Ref: https://git.xiph.org/?p=opus.git;a=commit;h=1c311423c86b89eba27a494e17c79fefd7d75ab0

BUG=

Review-Url: https://codereview.webrtc.org/2158293003
Cr-Commit-Position: refs/heads/master@{#13736}
2016-08-12 11:36:14 +00:00
philipel
17deeb47ed PacketBuffer is now ref counted.
Since all FrameObjects have a reference to its PacketBuffer and since
the PacketBuffer can be thrown away at any moment the PacketBuffer
has to be ref counted in order to avoid FrameObjects dereferencing a potentially
destroyed object.

BUG=webrtc:5514
R=danilchap@webrtc.org, mflodman@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#13725}
2016-08-11 13:09:40 +00:00
sakal
bd59c71ff8 GN: Add dependency libjingle_peerconnection_java to modules_unittests.
This change only affects the Android build.

BUG=webrtc:6189
TBR=tommi@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2233903002
Cr-Commit-Position: refs/heads/master@{#13722}
2016-08-11 07:59:23 +00:00
philipel
bf8a2c94ce Probe bitrate estimator correction.
Since the interval between the timestamps does not include the send/receive
time of the last/first packet we correct the interval by adding the average
of the interval between probing packets.

BUG=webrtc:5859
R=mflodman@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#13719}
2016-08-10 17:00:52 +00:00
aleloi
c4ac700781 Migrated GN target :neteq_pcmu_quality_test
Migrated GN target :neteq_pcmu_quality_test from
webrtc/modules/audio_coding/neteq/neteq_tests.gypi

NOTRY=True

BUG=webrtc:6190

Review-Url: https://codereview.webrtc.org/2224313002
Cr-Commit-Position: refs/heads/master@{#13711}
2016-08-10 12:06:31 +00:00
aleloi
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
aleloi
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
aleloi
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
aleloi
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
Danil Chapovalov
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
aleloi
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
brandtr
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