BUG=webrtc:6649
- Supports Bluetooth Headset profile.
- Detects new BT headset:
+ enabled at start, and
+ powered on during active call.
- Enables/disables BT SCO channel when BT device is selected.
- Removes proximity sensor usage to avoid conflicts (will be added again later).
- Adds new (unused) APIs to explicitly select audio device.
- Starts routing audio to BT headset when enabled, i.e, BT is default.
Review-Url: https://codereview.webrtc.org/2501983002
Cr-Commit-Position: refs/heads/master@{#15610}
# Legal requires us to keep the original license header.
NOPRESUBMIT=true
BUG=None
Review-Url: https://codereview.webrtc.org/2574143002
Cr-Commit-Position: refs/heads/master@{#15609}
This is a prerequisite to decode fmtp sprop-parameter-sets into
the right encoding for H264SpsPpsTracker.
# Legal requires us to keep the original license header.
NOPRESUBMIT=true
BUG=webrtc:5948
Review-Url: https://codereview.webrtc.org/2539153002
Cr-Commit-Position: refs/heads/master@{#15604}
The previous CL that added the ability to add
and artificial nearend signal had an issue with
null pointer access.
This is addressed in this CL.
BUG=webrtc:6018
Review-Url: https://codereview.webrtc.org/2573033003
Cr-Commit-Position: refs/heads/master@{#15600}
Reason for revert:
Crashes perf tests, e.g.,
./out/Debug/webrtc_perf_tests --gtest_filter='FullStackTest.ScreenshareSlidesVP8_2TL_VeryLossyNet'
dies with an assert related to rtc::Optional.
Original issue's description:
> Delete VideoFrame default constructor, and IsZeroSize method.
>
> This ensures that the video_frame_buffer method never can return a
> null pointer.
>
> BUG=webrtc:6591
>
> Committed: https://crrev.com/bfcf561923a42005e4c7d66d8e72e5932155f997
> Cr-Commit-Position: refs/heads/master@{#15574}
TBR=magjed@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:6591
Review-Url: https://codereview.webrtc.org/2574123002
Cr-Commit-Position: refs/heads/master@{#15597}
This test is flaky on all platforms, not just Android. Disabling it entirely until webrtc:6057 is fixed.
BUG=webrtc:6057
Review-Url: https://codereview.webrtc.org/2568743007
Cr-Commit-Position: refs/heads/master@{#15594}
It will be followed by a number of other CLs that extends this framework.
BUG=webrtc:6018
Review-Url: https://codereview.webrtc.org/2567513003
Cr-Commit-Position: refs/heads/master@{#15593}
Reason for revert:
The change from rtc::linked_ptr to std::unique_ptr broke a downstream project.
Original issue's description:
> Delete rtc::linked_ptr. Only use, in statstypes.h, replaced with std::unique_ptr.
>
> BUG=webrtc:6424
>
> Committed: https://crrev.com/36f74e55792cae19db8b222c29aa38d6e0eb1225
> Cr-Commit-Position: refs/heads/master@{#15588}
TBR=solenberg@webrtc.org,pthatcher@webrtc.org,hta@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6424
Review-Url: https://codereview.webrtc.org/2576673002
Cr-Commit-Position: refs/heads/master@{#15589}
We relied on the default destructor of RefCountedChannel to destroy its
members in reverse initialization order (deleting the DTLS wrapper
before the underlying ICE channel).
However, std::vector also may use the default assignment operator, which
performs a member-wise copy in initialization order. Which results in
deleting the ICE channel before the DTLS one. This CL fixes this by
using a vector of pointers instead of structures, and uses RefCountedObject
to handle ref-counting.
BUG=chromium:672951
Review-Url: https://codereview.webrtc.org/2571683004
Cr-Commit-Position: refs/heads/master@{#15583}
It's still valid SDP so just clamp it at INT_MAX.
BUG=chromium:648071
Review-Url: https://codereview.webrtc.org/2571073002
Cr-Commit-Position: refs/heads/master@{#15582}
An external audio mixer will be passed from PeerConnectionFactory to
AudioTransportProxy.
This CL has rewritten based on reverted CL
https://codereview.chromium.org/2539213003/
The only difference is that
static MediaEngineInterface* Create(
webrtc::AudioDeviceModule* adm,
const rtc::scoped_refptr<webrtc::AudioDecoderFactory>&
audio_decoder_factory,
WebRtcVideoEncoderFactory* video_encoder_factory,
WebRtcVideoDecoderFactory* video_decoder_factory);
in media/engine/webrtcmediaengine.h is kept in this CL instead of
replaced for backward compatibility.
BUG=webrtc:6457
Review-Url: https://codereview.webrtc.org/2570993002
Cr-Commit-Position: refs/heads/master@{#15580}
"Crypto required" is a property of the PeerConnection of construction
time; it has nothing to do with SDP. So I'm moving it out of
MediaContentDescription and putting it in the BaseChannel constructor
instead. This is more intuitive, and provides the added assurance that
"secure_required_" can't be flipped from "true" to "false".
BUG=None
Review-Url: https://codereview.webrtc.org/2537343003
Cr-Commit-Position: refs/heads/master@{#15579}
Also make supported protocols explicit in check.
Fix inconsistency where TLS_PROTOCOL_NAME was not exported.
BUG=webrtc:6885
Review-Url: https://codereview.webrtc.org/2570803003
Cr-Commit-Position: refs/heads/master@{#15577}
The improvement is mainly to extrapolate missing samples so that when querying the output, it assumes the input to continue even if no actual new samples are added.
The new implementation does not rely on base/exp_filter any longer. This is because it would be a bit cumbersome. base/exp_filter does pre-extrapolate, i.e., it assumes the all missing samples since the last sample equals the new sample.
BUG=webrtc:6443
Review-Url: https://codereview.webrtc.org/2551363002
Cr-Commit-Position: refs/heads/master@{#15575}
This ensures that the video_frame_buffer method never can return a
null pointer.
BUG=webrtc:6591
Review-Url: https://codereview.webrtc.org/2541863002
Cr-Commit-Position: refs/heads/master@{#15574}
AddCodec represents better what this function actually does.
BUG=None
Review-Url: https://codereview.webrtc.org/2573593003
Cr-Commit-Position: refs/heads/master@{#15565}
The Chromium mock implementation implements the new GetStats API, so we
can remove this default implementation.
BUG=chromium:627816
Review-Url: https://codereview.webrtc.org/2566143002
Cr-Commit-Position: refs/heads/master@{#15563}
This CL doesn't start *using* a=bundle-only; it just adds support for
parsing it. We need to do this first, because otherwise old versions of
WebRTC will interpret a zero port value as a rejected m= section.
BUG=webrtc:4674
Review-Url: https://codereview.webrtc.org/2562183002
Cr-Commit-Position: refs/heads/master@{#15558}
Reason for revert:
A interface change broke some downstream code in google3.
Original issue's description:
> Support external audio mixer in webrtc.
>
> An external audio mixer will be passed from PeerConnectionFactory to
> AudioTransportProxy.
>
> BUG=webrtc:6457
>
> Committed: https://crrev.com/f6bcac59e88c3be5ffd73bbb1098f2d82ee316a1
> Cr-Commit-Position: refs/heads/master@{#15556}
TBR=solenberg@webrtc.org,aleloi@webrtc.org,deadbeef@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6457
Review-Url: https://codereview.webrtc.org/2562333003
Cr-Commit-Position: refs/heads/master@{#15557}
An external audio mixer will be passed from PeerConnectionFactory to
AudioTransportProxy.
BUG=webrtc:6457
Review-Url: https://codereview.webrtc.org/2539213003
Cr-Commit-Position: refs/heads/master@{#15556}
It was using a non-WebRTC-named header guard, which could conflict with
other similarly named/intended headers.
BUG=None
NO_DEPENDENCY_CHECKS=true
Review-Url: https://codereview.webrtc.org/2548113002
Cr-Commit-Position: refs/heads/master@{#15554}
SimulcastEncoderAdapter calls Release() on a failed sub-encoder init,
but Release only knows how to clean up encoders that have registered
stream info. Since failed ones don't register, they aren't currently
cleaned up.
BUG=None
Review-Url: https://codereview.webrtc.org/2544003005
Cr-Commit-Position: refs/heads/master@{#15553}
Was added for video initially, but not for audio.
BUG=webrtc:6862
Review-Url: https://codereview.webrtc.org/2568553002
Cr-Commit-Position: refs/heads/master@{#15552}
The packetization parts of this class are accessed from the
encoder thread, which might change under different occasions.
The use of a sequenced task checker here is thus incorrect, since
that requires the access to always be on the same thread, whenever
a task queue is not used.
The access to the instantiated object of this class, at least when
it comes to the RTP packetization parts, is however synchronized
using the lock in PayloadRouter::OnEncodedImage. We can therefore
safely remove the sequenced task checker.
BUG=webrtc:5654
Review-Url: https://codereview.webrtc.org/2562983002
Cr-Commit-Position: refs/heads/master@{#15549}
The file was aldready pruned down to the point where it only included
webrtc/typedefs.h. Therefore, all includes of
voice_engine_configurations.h are replaced with typedefs.h, except on
two occasions where it was obvously not needed.
BUG=webrtc:6506
Review-Url: https://codereview.webrtc.org/2553583002
Cr-Commit-Position: refs/heads/master@{#15547}
adaptReason in webrtcvideoengine2.h only defines NONE=0, CPU=1 and BANDWIDTH=2 so &0x4 can not happen anymore.
This was probably never implemented in videoengine2
BUG=webrtc:6870
Review-Url: https://codereview.webrtc.org/1887773002
Cr-Commit-Position: refs/heads/master@{#15546}
The changes here are the same as in https://codereview.webrtc.org/2523993002/:
- reduce packet loss from 50% to 5%, to allow the BWE to ramp up better.
- Do not wait for 100 packets to be sent before letting the test pass.
BUG=webrtc:6851
Review-Url: https://codereview.webrtc.org/2558303002
Cr-Commit-Position: refs/heads/master@{#15542}