Derived from rtcp::Rtpfb instead of directly from RtcpPacket
Does not depend on RTCPUtility.
Parse function takes CommonHeader.
TransportFeedback::BlockLength fixed to match size used by Create
BUG=webrtc:5260
Review-Url: https://codereview.webrtc.org/1847973003
Cr-Commit-Position: refs/heads/master@{#13846}
Reason for revert:
Breaks some h264 bitstream tests downstream. Reverting for now.
Original issue's description:
> Add pps id and sps id parsing to the h.264 depacketizer.
>
> BUG=webrtc:6208
>
> Committed: https://crrev.com/abcc3de169d8896ad60e920e5677600fb3d40180
> Cr-Commit-Position: refs/heads/master@{#13838}
TBR=sprang@webrtc.org,stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6208
Review-Url: https://codereview.webrtc.org/2265023002
Cr-Commit-Position: refs/heads/master@{#13844}
If the input to H264VideoToolBoxEncoder is a native CVPixelBuffer and
the quality scaler requests scaling, we fall back to a slow path where
the buffer is converted from NV12 to I420 on the CPU and then uploaded
to a native CVPixelBuffer again. It turns out this scaling is not needed
and that the H264VideoToolBoxEncoder can handle the scaling internally.
BUG=b/30939444
Review-Url: https://codereview.webrtc.org/2258103003
Cr-Commit-Position: refs/heads/master@{#13835}
Reason for revert:
Seems to break an external client.
Original issue's description:
> Cleanup of the AudioDeviceBuffer class.
>
> WebRTC works on 10ms buffer sizes in both directions but this class has contained
> support for any size (with some limits) and for changes on the fly. It makes no sense to maintain such code and we have no tests to test it. This CL ensures that only 10ms audio buffers are supported and that nothing can be changed on the fly.
>
> It also updates the style to follow the Google C++ style guide.
>
> Finally, I remove very old (not tested and not maintained) support for file
> handling since the code is never used. It was more or less dead code.
>
> BUG=NONE
> R=magjed@webrtc.org
>
> Committed: https://crrev.com/cf327b45b9f5738950d4fca2b6a7b6030d508cdf
> Cr-Commit-Position: refs/heads/master@{#13833}
TBR=magjed@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=NONE
Review-Url: https://codereview.webrtc.org/2260183002
Cr-Commit-Position: refs/heads/master@{#13834}
WebRTC works on 10ms buffer sizes in both directions but this class has contained
support for any size (with some limits) and for changes on the fly. It makes no sense to maintain such code and we have no tests to test it. This CL ensures that only 10ms audio buffers are supported and that nothing can be changed on the fly.
It also updates the style to follow the Google C++ style guide.
Finally, I remove very old (not tested and not maintained) support for file
handling since the code is never used. It was more or less dead code.
BUG=NONE
R=magjed@webrtc.org
Review URL: https://codereview.webrtc.org/2256833003 .
Cr-Commit-Position: refs/heads/master@{#13833}
Take 'tools/neteq_quality_test.cc' and 'tools/neteq_quality_test.h' outside of neteq_test_support into their own target, neteq_quality_test_support.
BUG=webrtc:6228
NOTRY=True
Review-Url: https://codereview.webrtc.org/2252413002
Cr-Commit-Position: refs/heads/master@{#13831}
When the sanitizer bots are switched to GN, this needs to be included as a dependency so that the executables can be compiled.
BUG=webrtc:6215
NOTRY=True
Review-Url: https://codereview.webrtc.org/2250893003
Cr-Commit-Position: refs/heads/master@{#13829}
bitexactness test. The activation of the test will
be done in another CL.
BUG=
Review-Url: https://codereview.webrtc.org/2257733002
Cr-Commit-Position: refs/heads/master@{#13822}
This code does not work and hasn't been used in a long time. It also
lacks a GN target. There's no reason to save it.
BUG=none
Review-Url: https://codereview.webrtc.org/2255173002
Cr-Commit-Position: refs/heads/master@{#13820}
by cleaning RTCPReceiveInfo class
and following cleaning of RTCPReceiver::BoundingSet function.
BUG=webrtc:5565
Review-Url: https://codereview.webrtc.org/2254703003
Cr-Commit-Position: refs/heads/master@{#13817}
The cast involves packet_len_samp, which is derived from the timestamps
and sequence numbers of incoming packets. Being values from the outside,
these should be treated as if any value is possible, making a
checked_cast unsuitable. Changing instead to saturated_cast to avoid
overflow with out-of-bounds values.
Review-Url: https://codereview.webrtc.org/2243403007
Cr-Commit-Position: refs/heads/master@{#13815}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
-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}
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}
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}
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}
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}