am: fe8b4a6579
* commit 'fe8b4a657979b49e1701bd92f6d5814a99e0b2be': (7237 commits)
WIP: Changes after merge commit 'cb3f9bd'
Make the nonlinear beamformer steerable
Utilize bitrate above codec max to protect video.
Enable VP9 internal resize by default.
Filter overlapping RTP header extensions.
Make VCMEncodedFrameCallback const.
MediaCodecVideoEncoder: Add number of quality resolution downscales to Encoded callback.
Remove redudant encoder rate calls.
Create isolate files for nonparallel tests.
Register header extensions in RtpRtcpObserver to avoid log spam.
Make an enum class out of NetEqDecoder, and hide the neteq_decoders_ table
ACM: Move NACK functionality inside NetEq
Fix chromium-style warnings in webrtc/sound/.
Create a 'webrtc_nonparallel_tests' target.
Update scalability structure data according to updates in the RTP payload profile.
audio_coding: rename interface -> include
Rewrote perform_action_on_all_files to be parallell.
Update reference indices according to updates in the RTP payload profile.
Disable P2PTransport...TestFailoverControlledSide on Memcheck
pass clangcl compile options to ignore warnings in gflags.cc
...
Changes after "git merge cb3f9bd"
* git mv old Android.mk from src/ to webrtc/
* Remove old unused files in src/*.
* Modify webrtc/.gitignore to keep *.mk files.
* Copy old files from master, lost in auto-merge.
src/modules/audio_processing/test/unit_test.cc
src/modules/audio_coding/codecs/isac/fix/test/{Android.mk,kenny.c}
to webrtc, but most of the old test code do not compile with new
webrtc API and are commented out.
* Move src/modules/audio_processing/test/android/apmtest/jni/*.mk to
webrtc/... but the Android.mk files does not work.
Commented out its build target.
* Changes to Android.mk files:
* Change references of src/ to webrtc/.
* Fix include path
* Fix source file list, remove old non-existing files,
add new source files to resolve link errors.
* Add new Android.mk files to build some new static libraries
to link into current Android webrtc .so files.
* Remove unnecessary LOCAL_SHARED_LIBRARIES in Android.mk files
that build static libraries.
* Remove old unnecessary clang workarounds like
-Wno-tautological-pointer-compare
-no-integrated-as
* Fix include path of debug.pb.h in some source files.
* Add -DWEBRTC_POSIX in android-webrtc.mk
* Manually merge Android specific changes in
src/typedefs.h to webrtc/typedefs.h
* Fix trivial syntax error in scoped_ptr.h, calling static_assert.
* Use -std=c++0x in webrtc/system_wrappers/source/Android.mk
* #undef getchaar in spreadsort.hpp
* Verified and not to carry old Android hacks from src/... to webrtc/...
src/system_wrappers/source/android/cpu-features.c
src/modules/interface/module.h
src/modules/audio_coding/codecs/isac/fix/source/filters_neon.c
src/system_wrappers/source/trace_posix.cc
src/typedefs.h
More pathes from Alex Luebs:
* Use new unit test kenny.cc.
Delete old kenny.cc.
Comment out unessential code in kenny.cc to fix link error for now.
* Replace old unit test files with new ones in
webrtc/modules/audio_processing/Android.mk.
Delete old audio_processing/test/unit_test.cc.
* Fix compilation errors in
webrtc/modules/audio_processing/test/audio_processing_unittest.cc
Change-Id: I7bbf776eeb9dcfa21a82dd1f2dec378235cbbc3e
Including __DATE__ and __TIME__ in the binary means that every build of
this library is different, even if the sources are identical. It also
means that every OTA needs to patch this library. Remove __DATE__ and
__TIME__ from the trace build info, just record whether it's a debug or
release build.
Bug: 24204119
Change-Id: I0dfc1479f096197007db1920b89aeb61ea537168
(cherry picked from commit e3422c11696e715e66b1669230410f098bf4c038)
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}
Following CLs will finish the takeover completely. After that,
RentACodec will also start creating and owning codecs, at which point
its name will start making sense.
BUG=webrtc:5028
Review URL: https://codereview.webrtc.org/1412683006
Cr-Commit-Position: refs/heads/master@{#10432}
Required a bit of refactoring to make it possible to pass a Call to DirectTransport on construction. This also lead to me having to remove the shared lock between PacketTransport and RtpRtcpObserver. Now RtpRtcpObserver has a SetTransports method instead of a SetReceivers method.
BUG=webrtc:4173
Review URL: https://codereview.webrtc.org/1419193002
Cr-Commit-Position: refs/heads/master@{#10430}
Reason for revert:
Caused compiler warning, breaking Chrome FYI bots.
Original issue's description:
> Adding the ability to change ICE servers through SetConfiguration.
>
> Added a SetIceServers method to PortAllocator. Also added a new
> PeerConnection Initialize method that takes a PortAllocator, in the
> hope that we can get rid of PortAllocatorFactoryInterface, since the
> only substantial thing a factory does is convert the webrtc:: ICE
> servers to cricket:: versions.
>
> Committed: https://crrev.com/d3b26d94399ff539db375a9b84010ee75479d4cf
> Cr-Commit-Position: refs/heads/master@{#10420}
TBR=pthatcher@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.webrtc.org/1424803004
Cr-Commit-Position: refs/heads/master@{#10421}
Added a SetIceServers method to PortAllocator. Also added a new
PeerConnection Initialize method that takes a PortAllocator, in the
hope that we can get rid of PortAllocatorFactoryInterface, since the
only substantial thing a factory does is convert the webrtc:: ICE
servers to cricket:: versions.
Review URL: https://codereview.webrtc.org/1391013007
Cr-Commit-Position: refs/heads/master@{#10420}
This is necessary in order to support the RTCPeerConnectionState enum in
the future, as well as a correct RTCIceConnectionState (which isn't a
combination ICE and DTLS state).
Review URL: https://codereview.webrtc.org/1414363002
Cr-Commit-Position: refs/heads/master@{#10419}
Reason for revert:
https://codereview.chromium.org/1419253002 is landed to address this linker issue. Keep my fingers crossed.
Original issue's description:
> Revert of Add experiment on weak ping delay during call set up time (patchset #4 id:60001 of https://codereview.webrtc.org/1411883002/ )
>
> Reason for revert:
> This CL breaks Chromium, undefined reference link error to webrtc::field_trial::FindFullName. Adding the dependency system_wrappers to the rtc_p2p target is not enough to fix this.
>
> Looking at field_trial.h (in system_wrappers/interface/, not to be confused with the one in test/) the documentation says "WebRTC clients MUST provide an implementation of: ...FindFullName... Or link with a default one provided in: ...system_wrappers.gyp:field_trial_default).
>
> So maybe just depend on field_trial_default? Not sure what should be done in case there are implications to adding this dependency, I'm reverting this. Sorry :)
>
> Original issue's description:
> > Add experiment on weak ping delay during call set up time
> >
> > BUG=
> > R=pthatcher@webrtc.org
> >
> > Committed: https://crrev.com/3bf69b15f4c0c0ca4ab17c237084684a37bb8279
> > Cr-Commit-Position: refs/heads/master@{#10343}
>
> TBR=pthatcher@webrtc.org,juberti@webrtc.org,guoweis@webrtc.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=
>
TBR=pthatcher@webrtc.org,juberti@webrtc.org,hbos@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.webrtc.org/1413603005
Cr-Commit-Position: refs/heads/master@{#10418}
Reason for revert:
Causing a compiler warning, and causing WebRtcBrowserTest.CallAndModifyStream to fail.
Original issue's description:
> Adding the ability to create an RtpSender without a track.
>
> This CL also changes AddStream to immediately create a sender, rather
> than waiting until the track is seen in SDP. And the PeerConnection now
> builds the list of "send streams" from the list of senders, rather than
> the collection of local media streams.
>
> Committed: https://crrev.com/ac9d92ccbe2b29590c53f702e11dc625820480d5
> Cr-Commit-Position: refs/heads/master@{#10414}
TBR=pthatcher@webrtc.org,pthatcher@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.webrtc.org/1426443007
Cr-Commit-Position: refs/heads/master@{#10417}