initialization and errors.
The stats are counts using enumeration, an instance of
H264EncoderImpl/H264DecoderImpl will report at most 1 Init
and 1 Error for its entire lifetime. This is to avoid
spamming reports if initialization or coding fails and it
retries in a loop. The Init stats will give us an idea of
usage counts for the encoder/decoder. The Error stats will
give us an idea of how many of these usages encounters some
type of problem, such as encode or decode errors.
- WebRTC.Video.H264EncoderImpl.Event:
* kH264EncoderEventInit: Occurs at InitEncode.
* kH264EncoderEventError: Occurs if any type of error
occurs during initialization or encoding.
- WebRTC.Video.H264DecoderImpl.Event:
* kH264DecoderEventInit: Occurs at InitDecode.
* kH264DecoderEventError: Occurs if any type of error
occurs during initialization, AVGetBuffer2 or decoding.
Chromium sibling CL:
https://codereview.chromium.org/1719273002/
BUG=chromium:500605, chromium:468365
Review URL: https://codereview.webrtc.org/1716173002
Cr-Commit-Position: refs/heads/master@{#11736}
Previously, we relied on the encoded stream to come to an end before
the end of the buffer. This is a bad idea, since it is possible to
craft a stream that fills the buffer while decoding to less than the
expected amount of data; without the new checks introduced here, this
causes the decoder to read past the end of the input buffer.
BUG=chromium:582471, chromium:587852
Review URL: https://codereview.webrtc.org/1721593004
Cr-Commit-Position: refs/heads/master@{#11734}
They are invoked with the maximum size of the data to be added, and a
callable that generates that data, like this:
buffer.AppendData(10, [] (rtc::ArrayView<uint8_t> av) {
for (uint8_t i = 0; i != 5; ++i)
av[i] = i;
return 5;
});
The callable returns the number of bytes actually written, and the
final Buffer size will be adjusted accordingly. SetData and AppendData
both return the number of bytes added (i.e. the return value of the
callable).
These versions will be useful when converting AudioEncoder::Encode to use Buffer rather than raw pointers.
Also added a few tests for the new functionality.
Review URL: https://codereview.webrtc.org/1717273002
Cr-Commit-Position: refs/heads/master@{#11733}
Reason for revert:
Actually, we're going to need this soon, so I'm going to add it back again. We'll use it as part of the future GN migration.
Original issue's description:
> Revert of Add tools/mb to setup_links.py (patchset #1 id:1 of https://codereview.webrtc.org/1692543002/ )
>
> Reason for revert:
> Doesn't solve the problem and MB is actually hardcoded to use gyp_chromium when running in GYP mode, so it's better to clean this up for now.
>
> Original issue's description:
> > Add tools/mb to setup_links.py
> >
> > I believe this is needed in order to setup the iOS simulator bots
> > using the ios recipe module. We'll also most likely use MB in the future
> > when moving over from GYP to GN (since that's the sole purpose of the tool:
> > to make such a migration easier).
> >
> > BUG=chromium:498746
> > NOTRY=True
> > TBR=phoglund@webrtc.org
> >
> > Committed: https://crrev.com/68da769ab9579cac98fe4da7fb5da6dbb3842216
> > Cr-Commit-Position: refs/heads/master@{#11575}
>
> TBR=phoglund@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:498746
>
> Committed: https://crrev.com/67ca0e16501d5c9179d3003a38a7cefc7cd3e259
> Cr-Commit-Position: refs/heads/master@{#11577}
TBR=phoglund@webrtc.org
NOTRY=True
Review URL: https://codereview.webrtc.org/1730113002
Cr-Commit-Position: refs/heads/master@{#11732}
in order to suppress UBSan errors from the AGC.
BUG=webrtc:5124, webrtc:5487
Review URL: https://codereview.webrtc.org/1696153002
Cr-Commit-Position: refs/heads/master@{#11730}
RFC 5245 allows an ICE restart to occur on only one media section.
However, before this CL, if an endpoint attempted to do this, we would
change our local ICE ufrag/pwd in every media section.
Also did some refactoring, turning the transport options from
mediasesion.h into a map.
Review URL: https://codereview.webrtc.org/1671173002
Cr-Commit-Position: refs/heads/master@{#11728}
In order for the change to be reviewable, the
move was made into two steps consisting of the
first two patches in this CL.
Step 1 (patch set 1):
-Changed file types to use .cc
-Changed buildfiles to use the new files
-Changed C code inclusion to properly match the changed
file formats (removed and added extern "C" declarations).
-Changed implicit void-> nonvoid casts that are
illegal in C++ to be explicit.
Step 2 (patch set 2):
-Changed all the warnings reported when uploading the CL.
-The warnings about formatting of the assembly optimized
code were not addressed though.
BUG=webrtc:5201
Review URL: https://codereview.webrtc.org/1713923002
Cr-Commit-Position: refs/heads/master@{#11727}
Reason for revert:
Breaks downstream compilation using webrtc/common_audio/real_fourier.h. Let's chat tomorrow on how to coordinate a re-land.
Original issue's description:
> Replace scoped_ptr with unique_ptr in webrtc/common_audio/
>
> BUG=webrtc:5520
>
> Committed: https://crrev.com/79d7a499c0c3e1de8f5ad1138236f0386701053f
> Cr-Commit-Position: refs/heads/master@{#11716}
TBR=henrik.lundin@webrtc.org,kwiberg@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5520
Review URL: https://codereview.webrtc.org/1726043002
Cr-Commit-Position: refs/heads/master@{#11726}
Removes addition of at least one zero sample in webrtc_perf_tests that
can skew stats differently depending on how often these stats are
updated. Unclear if this skewing is different between now and before.
BUG=chromium:585071, chromium:586216
R=sprang@google.com, sprang@webrtc.org
Review URL: https://codereview.webrtc.org/1727583003 .
Cr-Commit-Position: refs/heads/master@{#11720}
This allows other projects to more easily depend on this.
The plan is to move remote_bitrate_estimator and bitrate_controller into this module and reduce the exposed interface to only a simplified version of congestion_controller.h.
No functional changes in this CL.
R=mflodman@webrtc.org, pbos@webrtc.org
Review URL: https://codereview.webrtc.org/1718473002 .
Cr-Commit-Position: refs/heads/master@{#11718}
Doesn't utilize the clock or any callbacks out of the receiver but
should still be useful to test input packet parsing.
BUG=webrtc:4771
R=danilchap@webrtc.org
Review URL: https://codereview.webrtc.org/1716143002 .
Cr-Commit-Position: refs/heads/master@{#11717}
Boost low QP threashold to 21, otherwise VGA encoding never
scales up even at 2.5 Mbps.
Also reduce high QP threshold to scale down faster.
BUG=b/26504665
R=jackychen@google.com
Review URL: https://codereview.webrtc.org/1717763003 .
Cr-Commit-Position: refs/heads/master@{#11712}
Compact NTP representation was designed exactly for that purpose: calculate RTT. No need to map to ms before doing arithmetic on this values.
Because of this change there is no need to keep mapping between compact ntp presentation and milliseconds in the RTCPSender.
BUG=webrtc:5565
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1491843004 .
Cr-Commit-Position: refs/heads/master@{#11710}
Moves RtpRtcp module pointers into VideoSendStream and uses them for
simple calls that were only forwarded by ViEChannel.
BUG=webrtc:5494
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1693553002 .
Cr-Commit-Position: refs/heads/master@{#11709}
Reduces contention on event_mutex_ while taking gettimeofday(). Impact
highly hypothetical at this point, but less locking is better.
BUG=
R=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1716563003 .
Cr-Commit-Position: refs/heads/master@{#11706}
avoid clang warnings.
The changes does not change any of the functionality
in the code.
BUG=webrtc:163
Review URL: https://codereview.webrtc.org/1710083006
Cr-Commit-Position: refs/heads/master@{#11705}
This is the only failing test of the currently deployed
at the iOS Simulator bots. Let's disable it so we can promote
the passing tests to the main waterfall and the trybots.
BUG=4755
TBR=henrika@webrtc.org
Review URL: https://codereview.webrtc.org/1722523002 .
Cr-Commit-Position: refs/heads/master@{#11703}
Landing https://codereview.webrtc.org/1675923002/ broke some Chromium FYI bots
because the GN build didn't include "sharedexclusivelock.cc" in that scenario.
This CL moves the files from the non-Chromium block into the common sources
list.
BUG=webrtc:5496
Review URL: https://codereview.webrtc.org/1712773003
Cr-Commit-Position: refs/heads/master@{#11699}
Since SSRCs can no longer change on the fly, SSRC code can be made a lot
simpler (and faster). Resulting code has less and shorter locking.
BUG=webrtc:5494
R=danilchap@webrtc.org
Review URL: https://codereview.webrtc.org/1713683003 .
Cr-Commit-Position: refs/heads/master@{#11691}