This is a first cl of removing use of CriticalSectionWrapper after a series of cleanup CLs that have been landing recently (and still are landing).
BUG=
Review URL: https://codereview.webrtc.org/1610553002
Cr-Commit-Position: refs/heads/master@{#11316}
BUG=chromium:575990
TEST: Manual test using TextEdit full screen mode.
Review URL: https://codereview.webrtc.org/1579213007
Cr-Commit-Position: refs/heads/master@{#11311}
This helps with untangling CriticalSectionWrapper from ConditionVariableWrapper and looks like we can just delete ConditionVariableWrapper and use rtc::Event instead.
BUG=
R=pbos@webrtc.org
Review URL: https://codereview.webrtc.org/1606993002 .
Cr-Commit-Position: refs/heads/master@{#11309}
Constructing default options is racy when initializing multiple VP8
encoders in parallel. This is only used for VP8 temporal layers. Adding
TemporalLayerFactory to VP8 codec specifics instead of generic options.
Removes the last webrtc::Config uses/includes from video code.
Also removes VideoCodec equality operators which are no longer in use.
BUG=webrtc:5410
R=stefan@webrtc.orgTBR=mflodman@webrtc.org
Review URL: https://codereview.webrtc.org/1606613003 .
Cr-Commit-Position: refs/heads/master@{#11307}
There's no need for this class to have a vtable since there exists only a single implementation (per platform). It's also not good for performance.
BUG=
R=pbos@webrtc.org
Review URL: https://codereview.webrtc.org/1601743004 .
Cr-Commit-Position: refs/heads/master@{#11306}
That these declarations were missing was a bug, which apparently
didn't actually cause build problems in either Chromium or WebRTC
standalone. (Presumably, because rent_a_codec was always linked
together with other build targets that did declare such dependencies.)
BUG=webrtc:5435
Review URL: https://codereview.webrtc.org/1607463002
Cr-Commit-Position: refs/heads/master@{#11303}
Since this is on Windows only, I'm also using the CriticalSectionWrapper and ConditionVariableWrapper Windows types directly which allows us to skip 3 extra heap allocations. It also helps with the removal of the 'friend' relationship between ConditionVariableWrapper and CriticalSectionWrapper, which is causing headaches on Mac.
BUG=
Review URL: https://codereview.webrtc.org/1595983002
Cr-Commit-Position: refs/heads/master@{#11300}
This is a part of cleaning up 'friend' parts of ConditionVariableWrapper's implementation where it accesses private variables of CriticalSectionWrapper, which is not good since it makes assumptions about the implementation on all posix platforms.
Instead I'm using rtc::Event, another condition variable based implementation we have, and fits the requirements of UdpSocketPosix.
BUG=
R=pbos@webrtc.org
Review URL: https://codereview.webrtc.org/1591333002 .
Cr-Commit-Position: refs/heads/master@{#11295}
This removes dependency on ConditionVariableWrapper and CriticalSectionWrapper which currently have a 'friend' relationship that I'd like to get rid of.
BUG=
Review URL: https://codereview.webrtc.org/1590983005
Cr-Commit-Position: refs/heads/master@{#11292}
Plus, in stunport, turnport and allocation sequence, create a socket using the new interface.
BUG=
Review URL: https://codereview.webrtc.org/1556743002
Cr-Commit-Position: refs/heads/master@{#11279}
Fixed misusage of Connection function and also fixed the test case.
BUG=webrtc:5430
Review URL: https://codereview.webrtc.org/1592763003
Cr-Commit-Position: refs/heads/master@{#11278}
The current expectation for InsertPacket(...) uses WillRepeatedly, which accepts if the function is called zero or more times. This CL changes this to either a fixed number of calls, or at least a positive number of calls.
Review URL: https://codereview.webrtc.org/1585783003
Cr-Commit-Position: refs/heads/master@{#11256}
Chromium reported errors when building libjingle_nacl due to some methods used virtual instead of override when they were overriding the base class. My guess is that when one method starts using override, all other in the same class must too.
R=tommi@webrtc.orgTBR=pthatcher@webtrc.org
BUG=4173
Review URL: https://codereview.webrtc.org/1589563003 .
Cr-Commit-Position: refs/heads/master@{#11251}
To reduce the risk of future mistakes when connecting Ports, Port::OnSentPacket was made pure virtual to ensure that new implementations take care of it.
BUG=4173
R=pthatcher@webrtc.org
Review URL: https://codereview.webrtc.org/1577873003 .
Cr-Commit-Position: refs/heads/master@{#11247}
Also add a perf metric tracking the average network latency.
The audio stream test is disabled for now since audio isn't included in bitrate allocation.
BUG=webrtc:5263
R=mflodman@webrtc.org
Review URL: https://codereview.webrtc.org/1582833002 .
Cr-Commit-Position: refs/heads/master@{#11244}
Reason for revert:
Reverting due to problem with roll:
/b/build/slave/linux/build/src/buildtools/linux64/gn gen //out/Release '--args=ffmpeg_branding="Chrome" proprietary_codecs=true is_debug=false is_component_build=false use_goma=true goma_dir="/b/build/goma" symbol_level=1 dcheck_always_on=true' --check --runtime-deps-list-file=/b/build/slave/linux/build/src/out/Release/runtime_deps
-> returned 1
ERROR at //third_party/webrtc/BUILD.gn:245:18: Item not found
configs -= [ "//build/config/clang:find_bad_constructs" ]
^-----------------------------------------
You were trying to remove "//build/config/clang:find_bad_constructs"
from the list but it wasn't there.
GN gen failed: 1
step returned non-zero exit code: 1
@@@STEP_FAILURE@@@
Original issue's description:
> Use an explicit identifier in Config
>
> This let's us use them to configure them when using WebRTC as an external library. One use case where this is necessary is in the Android OS.
>
> Committed: https://crrev.com/25249d92d3cf105bcc7b684c8924ccdbc9afcb93
> Cr-Commit-Position: refs/heads/master@{#11231}
TBR=henrik.lundin@webrtc.org,stefan@webrtc.org,tommi@chromium.org,aluebs@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/1586563003
Cr-Commit-Position: refs/heads/master@{#11239}
This makes it possible to use protobuffers with
an external protobuf library instead of the one that
comes with the WebRTC code.
NOTRY=True
Review URL: https://codereview.webrtc.org/1589433002
Cr-Commit-Position: refs/heads/master@{#11236}
Class renamed to indicated use of the rtcp::Empty class: it can only be used as container for other rtcp packets.
All tests that use Append function moved from rtcp_packet_unittest, even if they did not use Empty class.
This is because there is plan to make RtcpPacket class lighter by moving Append functionality to CompoundPacket class.
BUG=webrtc:5260
R=åsapersson
Review URL: https://codereview.webrtc.org/1582503002
Cr-Commit-Position: refs/heads/master@{#11234}