This method is no longer called. With that gone, a number of other
methods and member variables are obsoleted, and removed.
Methods deleted:
AcmReceiver::InsertStreamOfSyncPackets
AcmReceiver::GetNumSyncPacketToInsert()
AcmReceiver::GetSilence, never called
Member variables deleted:
missing_packets_sync_stream_
late_packets_sync_stream_
av_sync_
initial_delay_manager_
BUG=webrtc:3520
Review URL: https://codereview.webrtc.org/1419573013
Cr-Commit-Position: refs/heads/master@{#10484}
This is a re-land of https://codereview.webrtc.org/1353263005/
which was reverted because of perf-regressions. Changes since that CL:
* Change LayerFilteringTransport to send a padding packet instead of
dropping it for data that should be filtered out. This prevents
confusion due to changed sequence numbers.
* Changed timing of stats poller thread in VideoAnalyzer. Startup was
racy wrt initializion of send_stream_.
* Minor formatting issues.
PERF NOTE: This change will affect some performance numbers slightly.
In particular, {encode_frame_rate, encode_time_ms,
encode_usage_percent, media_bitrate_bps} will change due to timing
of the measurements.
BUG=
R=pbos@webrtc.orgTBR=mflodman@webrtc.org
Review URL: https://codereview.webrtc.org/1412233003
Cr-Commit-Position: refs/heads/master@{#10483}
Triggers more often on tsanv2 in parallel, suppressing for now to get
the parallel bot into the main waterfall.
BUG=chromium:445880, webrtc:5152
R=kjellander@webrtc.org
Review URL: https://codereview.webrtc.org/1428033002 .
Cr-Commit-Position: refs/heads/master@{#10480}
More visible in parallel execution of tsanv2, suppression needed for now
to launch parallel in main waterfall.
BUG=chromium:445880, webrtc:5151
R=kjellander@webrtc.org
Review URL: https://codereview.webrtc.org/1433433002 .
Cr-Commit-Position: refs/heads/master@{#10478}
This change avoids calling neteq_->EnableVad() and DisableVad from the
AcmReceiver constructor. Instead, the new member
enable_post_decode_vad is added to NetEq's config struct. It is
disabled by defualt, but ACM sets it to enabled. This preserves the
behavior both of NetEq stand-alone (i.e., in tests) and of ACM.
BUG=webrtc:3520
Review URL: https://codereview.webrtc.org/1425133002
Cr-Commit-Position: refs/heads/master@{#10476}
The end goal is to remove AcmReceiver::SetInitialDelay. This change is
in preparation for that goal. It turns out that
AcmReceiver::SetInitialDelay was only invoked through the following
call chain, where each method in the chain is never referenced from
anywhere else (except from tests in some cases):
ViEChannel::SetReceiverBufferingMode
-> ViESyncModule::SetTargetBufferingDelay
-> VoEVideoSync::SetInitialPlayoutDelay
-> Channel::SetInitialPlayoutDelay
-> AudioCodingModule::SetInitialPlayoutDelay
-> AcmReceiver::SetInitialDelay
The start of the chain, ViEChannel::SetReceiverBufferingMode was never
referenced.
This change deletes all the methods above except
AcmReceiver::SetInitialDelay itself, which will be handled in a
follow-up change.
BUG=webrtc:3520
Review URL: https://codereview.webrtc.org/1421013006
Cr-Commit-Position: refs/heads/master@{#10471}
MediaCodec.stop() call may hang in some rear cases. To avoid
application hang this call need to be done on separate thread and
possible error reported back to application.
Application may elect to continue executing and use another codec
instance for encoding/decoding or stop the call and exit.
BUG=b/24339249
R=magjed@webrtc.org
Review URL: https://codereview.webrtc.org/1425143005 .
Cr-Commit-Position: refs/heads/master@{#10467}
The test didn't previously run on Android bots, but was enabled by
mistake in https://codereview.webrtc.org/1426643003/
It used to be long to the rtc_unittests target, which also don't run
on Android unfortunately. For now, let's just disable this one test
on Android to get the bots go green.
BUG=4364
TBR=pthatcher@webrtc.org
Review URL: https://codereview.webrtc.org/1419033007 .
Cr-Commit-Position: refs/heads/master@{#10464}
The former is very similar to the latter, but less general (mostly in
naming).
This CL, which is the first to use Maybe at scale, also removes the implicit conversion from T to Maybe<T>, since it was agreed that the increased verbosity increased legibility.
Review URL: https://codereview.webrtc.org/1430433004
Cr-Commit-Position: refs/heads/master@{#10461}
Add a new interface to abstract away file operations. This CL temporarily
removes support for dumping the output of reverse streams. It will be easy to
restore in the new framework, although we may decide to only allow it with
the aecdump format.
We also now require the user to specify the output format, rather than
defaulting to the input format.
TEST=Bit-exact output to the previous audioproc_f version using an input wav
file, and to the legacy audioproc using an aecdump file.
Review URL: https://codereview.webrtc.org/1409943002
Cr-Commit-Position: refs/heads/master@{#10460}
When estimating that we can send more than the codec max bitrate (under
the assumption that codec max bitrate is good enough for the quality),
we should use additional bitrate so that we can maintain good quality.
Global bitrate caps should still be enforced through bitrate caps (b=AS)
and not codec max bitrates.
BUG=webrtc:5102
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1428473002
Cr-Commit-Position: refs/heads/master@{#10457}
This removes unnecessary RTP header extension overhead since only one of
these extensions is used at a time.
BUG=webrtc:4254
R=pbos@webrtc.org
Review URL: https://codereview.webrtc.org/1429753003 .
Cr-Commit-Position: refs/heads/master@{#10455}
This operation was relatively simple, since no one was doing anything
fishy with this enum. A large number of lines had to be changed
because the enum values now live in their own namespace, but this is
arguably worth it since it is now much clearer what sort of constant
they are.
BUG=webrtc:5028
Review URL: https://codereview.webrtc.org/1424083002
Cr-Commit-Position: refs/heads/master@{#10449}
Negative acknowledgement (NACK) has up to now been implemented in
ACM. But, since NetEq is in charge of the actual packet buffer, it
makes more sense to have the NACK functionlaity in there.
This CL does the following:
- Move nack.{h,cc} and the unit tests from main/acm2 to neteq.
- Move the NACK related code in ACM into NetEq.
- NACK related functions in AcmReceiver are changed to simple
forwarding APIs.
- Remove unused members in AcmReceiver.
- Remove unused API functions in NetEq.
BUG=webrtc:3520
Review URL: https://codereview.webrtc.org/1410073006
Cr-Commit-Position: refs/heads/master@{#10448}
Tested on Linux with the following command lines:
$ ./webrtc/build/gyp_webrtc -Dclang_use_chrome_plugins=1
$ ninja -C out/Release rtc_sound
BUG=webrtc:163
R=perkj@webrtc.org
Review URL: https://codereview.webrtc.org/1425533003
Cr-Commit-Position: refs/heads/master@{#10447}
Used for tests that cannot be run in parallel due to using non-virtual
resources such as filesystems and sockets. Initially moves socket
unittests from rtc_unittest since
PhysicalSocketTest.TestUdpReadyToSendIPv4 is one of the worst flake
offenders.
Future prospect targets are GTEST_DEATH tests that are flaky on Mac in
parallel for instance.
BUG=chromium:445880
R=kjellander@webrtc.org
Review URL: https://codereview.webrtc.org/1426643003 .
Cr-Commit-Position: refs/heads/master@{#10446}
This speeds up decode for a 720p workload from 25s to 5s on my machine.
I did some benchmarking and it appears we spend the vast majority of
the time on zxing decoding, so now we will bring all processors on the
the machine to bear.
BUG=webrtc:4986
Review URL: https://codereview.webrtc.org/1428433002
Cr-Commit-Position: refs/heads/master@{#10443}
Plus log first few decoder frames in and out events.
BUG=b/25287910
Review URL: https://codereview.webrtc.org/1423843005
Cr-Commit-Position: refs/heads/master@{#10439}