Reason for revert:
This breaks the Win32 Release [large tests] bot (webrtc_perf_tests times out after 1h23m): https://build.chromium.org/p/client.webrtc/builders/Win32%20Release%20%5Blarge%20tests%5D
The Mac64 Release [large tests] bot's runtime also increased with +20 minutes.
These bot configs are not a part of the default trybot set, so please run them manually or add this to the CL description:
CQ_EXTRA_TRYBOTS=tryserver.webrtc:win_baremetal,mac_baremetal,linux_baremetal
Original issue's description:
> A unittest that reports the statistics for the duration of an APM stream processing API call.
>
> BUG=webrtc:5099
>
> Committed: https://crrev.com/880896ab0976bbf86a6753d0c900c70e51f421cb
> Cr-Commit-Position: refs/heads/master@{#10786}
TBR=henrik.lundin@webrtc.org,solenberg@webrtc.org,peah@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5099
Review URL: https://codereview.webrtc.org/1473733004
Cr-Commit-Position: refs/heads/master@{#10791}
This is part of the project that makes RTC rendering more
smooth. We've already finished the developement of the
frame selection algorithm in WebMediaPlayerMS, where we
managed a frame pool, and based on the vsync interval, we
actively select the best frame to render in order to
maximize the rendering smoothness.
Thus the frame timeline control in IncomingVideoStream is
no longer needed, because with sophisticated frame
selection algorithm in WebMediaPlayerMS, the time control
in IncomingVideoStream will do nothing but add some extra
delay.
BUG=514873
Review URL: https://codereview.webrtc.org/1419673014
Cr-Commit-Position: refs/heads/master@{#10781}
Remove the headers that were kept to provide non-breaking updates
of downstream code for https://codereview.webrtc.org/1418913006/
and https://codereview.webrtc.org/1417283007/.
BUG=webrtc:5095
TESTED=Passing compile-trybots with --clobber flag:
git cl try --clobber --bot=win_compile_rel --bot=linux_compile_rel --bot=android_compile_rel --bot=mac_compile_rel --bot=ios_rel --bot=linux_gn_rel --bot=win_x64_gn_rel --bot=mac_x64_gn_rel --bot=android_gn_rel -m tryserver.webrtc
NOTRY=True
Review URL: https://codereview.webrtc.org/1467173003
Cr-Commit-Position: refs/heads/master@{#10773}
This works aims to:
-More clearly separate the functionalities in the AEC.
-Make the inputs and outputs to functions more clear (currently the state struct is often passed as a parameter to the functions and the functions use members of the state both as inputs and outputs, which reduces the readability of the code and makes it difficult to change/refactor.
What is done in this CL:
-Most of what belongs to the echo subtraction functionality has been moved to a separate function.
-The NonLinearProcessing function has been renamed to EchoSuppressor which I think is more appropriate.
-Part of the code was replaced by a call to the TimeToFrequency function (which was also suggested by an existing todo).
-For consistency, a function FrequencyToTime doing the opposite of TimeToFrequency was added and part of the code was moved to that.
-The ScaleErrorSignal function was changed to no longer have the state as an input parameter. This entailed also changing the corresponding assembly optimized files accordingly.
Testing:
-The changes have been tested for bitexactness on Linux using a fairly extensive test.
-All the unittests pass on linux.
BUG=webrtc:5201
Review URL: https://codereview.webrtc.org/1455163006
Cr-Commit-Position: refs/heads/master@{#10764}
With this in, the only compilation errors left seems
related to yasm and libjpeg_turbo.
Notice the below example builds x86 builds (not ARM) since if
specifying target_cpu="arm", the gn step fails (separate issue).
BUG=webrtc:5213, webrtc:5195, chromium:459705
TESTED=Passing compilation with:
gn gen --args="target_os=\"ios\"" out/Default
ninja -C out/Default rtc_base audio_device
Review URL: https://codereview.webrtc.org/1471663002
Cr-Commit-Position: refs/heads/master@{#10763}
Also removes all virtual methods. Permits using a thread from
rtc_base_approved (namely event tracing).
BUG=webrtc:5158
R=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1469013002
Cr-Commit-Position: refs/heads/master@{#10760}
This change allows us to delete AcmReceiver::last_audio_codec_id().
BUG=webrtc:3520
Review URL: https://codereview.webrtc.org/1467183002
Cr-Commit-Position: refs/heads/master@{#10756}
This change moves the logics for keeping track of the last ouput
sample rate from AcmReceiver to NetEq, where it fits better. The
getter function AcmReceiver::current_sample_rate_hz() is renamed to
last_output_sample_rate_hz().
BUG=webrtc:3520
Review URL: https://codereview.webrtc.org/1467163002
Cr-Commit-Position: refs/heads/master@{#10754}
Currently we limit the enocder so that frames aren't encoded if the
expected pacer queue is longer than 2s. However, if the queue is full
and the bitrate suddenly drops (or there is a large overshoot), the
queue time can be long than the limit.
This CL allows the pacer to temporarily boost the pacing bitrate over
the 2s window.
BUG=
Review URL: https://codereview.webrtc.org/1412293003
Cr-Commit-Position: refs/heads/master@{#10729}
This will make it possible to remove the build_with_libjingle=1 and key=''
GYP_DEFINES the bots are using (https://codereview.chromium.org/1450313002/).
It will also pave the road for enabling more WebRTC native tests on iOS.
BUG=webrtc:4755,webrtc:3185,webrtc:5165
TESTED=git cl try -c --bot=android_compile_rel --bot=linux_compile_rel --bot=win_compile_rel --bot=mac_compile_rel --bot=ios_rel --bot=linux_gn_rel --bot=win_x64_gn_rel --bot=mac_x64_gn_rel --bot=android_gn_rel -m tryserver.webrtc
Local compilation with:
GYP_DEFINES='OS=ios target_arch=arm' webrtc/build/gyp_webrtc
ninja -C out/Release-iphoneos
GYP_DEFINES='OS=ios target_arch=arm chromium_ios_signing=0' webrtc/build/gyp_webrtc
ninja -C out/Release-iphoneos
GYP_DEFINES='OS=ios target_arch=arm64' webrtc/build/gyp_webrtc
ninja -C out/Release-iphoneos
GYP_DEFINES='OS=ios target_arch=ia32' webrtc/build/gyp_webrtc
ninja -C out/Release-iphonesimulator
GYP_DEFINES='OS=ios target_arch=x64' webrtc/build/gyp_webrtc
ninja -C out/Release-iphonesimulator
R=henrika@webrtc.org
Review URL: https://codereview.webrtc.org/1457053003 .
Cr-Commit-Position: refs/heads/master@{#10711}
Also clean up some include_dir entries and update the few
references to them with absolute include paths instead.
Finally fixed a few lint errors and invalid header guards.
None of these are used downstream.
BUG=webrtc:5095
TESTED=git cl try -c --bot=android_compile_rel --bot=linux_compile_rel --bot=win_compile_rel --bot=mac_compile_rel --bot=ios_rel --bot=linux_gn_rel --bot=win_x64_gn_rel --bot=mac_x64_gn_rel --bot=android_gn_rel -m tryserver.webrtc
R=kwiberg@webrtc.org
Review URL: https://codereview.webrtc.org/1438663003 .
Cr-Commit-Position: refs/heads/master@{#10700}
This makes it clearer this code not meant to be used as an API.
I could not find any use of this in downstream code.
BUG=webrtc:5095
TESTED=git cl try -c --bot=android_compile_rel --bot=linux_compile_rel --bot=win_compile_rel --bot=mac_compile_rel --bot=ios_rel --bot=linux_gn_rel --bot=win_x64_gn_rel --bot=mac_x64_gn_rel --bot=android_gn_rel -m tryserver.webrtc
R=stefan@webrtc.orgTBR=magjed@webrtc.org
Review URL: https://codereview.webrtc.org/1440873005 .
Cr-Commit-Position: refs/heads/master@{#10699}
The main purpose was the interface-> include rename, but other files
were also moved, eliminating the "main" dir.
To avoid breaking downstream, the "interface" directories were copied
into a new "video_coding/include" dir. The old headers got pragma
warnings added about deprecation (a very short deprecation since I plan
to remove them as soon downstream is updated).
Other files also moved:
video_coding/main/source -> video_coding
video_coding/main/test -> video_coding/test
BUG=webrtc:5095
TESTED=Passing compile-trybots with --clobber flag:
git cl try --clobber --bot=win_compile_rel --bot=linux_compile_rel --bot=android_compile_rel --bot=mac_compile_rel --bot=ios_rel --bot=linux_gn_rel --bot=win_x64_gn_rel --bot=mac_x64_gn_rel --bot=android_gn_rel -m tryserver.webrtc
R=stefan@webrtc.org, tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1417283007 .
Cr-Commit-Position: refs/heads/master@{#10694}
- Remove myself from OWNERS.
- Add myself to AUTHORS (I signed a CLA).
- Add minyue to audio_conference_mixer which would otherwise be empty.
- Add missing comma in WATCHLISTS.
Review URL: https://codereview.webrtc.org/1458763002
Cr-Commit-Position: refs/heads/master@{#10686}
Removes VP8::Encode trace in favor of VCMGenericEncoder ones and adds
one to InitEncode. Also adds an instant event to ::Encoded since this
can be done on a different thread.
Also adds the corresponding traces to VCMGenericDecoder.
BUG=webrtc:5167
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1412573010
Cr-Commit-Position: refs/heads/master@{#10674}
-Moved the initialize function
-Moved api_format into the shared state
BUG=
Review URL: https://codereview.webrtc.org/1413093002
Cr-Commit-Position: refs/heads/master@{#10668}