The purpose is so that a decoder (Android) that only have a limited number of output buffers can make sure that decoding is done just before the frame is needed.
Removed unused iSupportsRenderTiming and the settings structs since it was not used.
Added VCMReceiver::FrameForDecoding unit test for the case when PreferDecodeLate is set.
Note that this does not change the current behaviour. We actually currently always decode frames late. This cl is to make sure the behaviour is kept for Android, if the default behaviour is changed.
Review URL: https://codereview.webrtc.org/1428293003
Cr-Commit-Position: refs/heads/master@{#10974}
do the conversion using an opengl fragment shader.
BUG=webrtc:4993
Review URL: https://codereview.webrtc.org/1460703002
Cr-Commit-Position: refs/heads/master@{#10972}
Still waiting to turn on negotiation (in mediasession.cc)
until we verify it's working as expected.
BUG=webrtc:4868
Review URL: https://codereview.webrtc.org/1418123003
Cr-Commit-Position: refs/heads/master@{#10958}
This is needed for Chromium so that we can roll, update libjingle.gyp and then continue.
BUG=chromium:121673
Review URL: https://codereview.webrtc.org/1514573003
Cr-Commit-Position: refs/heads/master@{#10955}
If a description is set that requires making a default stream, and one
already exists, we'll now keep the existing default audio/video tracks,
rather than destroying them and recreating them. Destroying them caused
the blink MediaStream to go to an "ended" state, which is the root cause
of the bug.
BUG=webrtc:5250
Review URL: https://codereview.webrtc.org/1469833006
Cr-Commit-Position: refs/heads/master@{#10946}
Adds tracing specifically to Close, for creating streams and also moves
tracing for SetLocal/RemoteDescription from WebRtcSession. Also adding
some tracing in ChannelManager to see what's taking time inside Close.
BUG=webrtc:5167
R=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1509903002 .
Cr-Commit-Position: refs/heads/master@{#10943}
This fix an issue seen on Huawei Y300 where the camera feed is black and white if we capture to textures and setpreviewformat is called.
BUG=webrtc:4993
Review URL: https://codereview.webrtc.org/1502223002
Cr-Commit-Position: refs/heads/master@{#10941}
Adds tracing to WebRtcSession and corresponding BaseChannel calls to see
where time is spent better.
BUG=webrtc:5167
R=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1505023003 .
Cr-Commit-Position: refs/heads/master@{#10934}
This is needed so that the data channel isn't deleted while one of its
own methods is on the call stack.
BUG=565048
Review URL: https://codereview.webrtc.org/1492383002
Cr-Commit-Position: refs/heads/master@{#10923}
Reason for revert:
Broke downstream compile step, possibly relandable when using a MSVC version that has constexpr, other than that I'm out of ideas.
.../webrtc/base/atomicops.h:71:8: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const rtc::AtomicInt&'
Original issue's description:
> Reland of "Create rtc::AtomicInt POD struct."
>
> Relands https://codereview.webrtc.org/1420043008/ with brace initializers
> instead of constructors hoping that they won't introduce static
> initializers.
>
> BUG=
> R=tommi@webrtc.org
>
> Committed: https://crrev.com/84f0970d100e67a1dc4fe9a1b16b7d293302044e
> Cr-Commit-Position: refs/heads/master@{#10920}
TBR=tommi@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.webrtc.org/1505053002
Cr-Commit-Position: refs/heads/master@{#10922}
Logs tracing events (TRACE_EVENT0 and friends) to storage in a format
compatible with chrome://tracing which can be used for performance
evaluation, finding lock contention and other sweet things). Tracing is
still basic and doesn't contain thread metadata or logging of tracing
arguments.
BUG=webrtc:5158
R=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1457383002 .
Cr-Commit-Position: refs/heads/master@{#10921}
Brings in fixes that save log output to disk instead of piping them
through Python. Should fix problem where output from tests stall for
more than 10 seconds.
Also enabling JsepPeerConnectionP2PTestClient on all platforms again.
BUG=webrtc:5231
R=kjellander@webrtc.org
Review URL: https://codereview.webrtc.org/1509463002 .
Cr-Commit-Position: refs/heads/master@{#10917}
This CL contains three changes as a preparation for adding audio send streams
to the send-side BWE:
1. Audio packets are passed through the pacer with high priority. This
is needed to be able to set transport sequence numbers on the packets.
2. A feedback observer is passed to the audio stream's rtcp receiver so
that the BWE can get notified of any BWE feedback being received on the
audio feedback channel.
3. Support for the transport sequence number header extension is added
to audio send streams.
BUG=webrtc:5263,webrtc:5307
R=mflodman@webrtc.org, solenberg@webrtc.org
Review URL: https://codereview.webrtc.org/1479023002 .
Cr-Commit-Position: refs/heads/master@{#10909}
Delete EglBase.ConfigType, instead pass arrays of attributes, and define
constant arrays for the common cases.
Both in progress NativeToI420 and extending GlRectDrawer to other shapes (with alpha) needs this.
BUG=b/25694445
Review URL: https://codereview.webrtc.org/1498003002
Cr-Commit-Position: refs/heads/master@{#10908}
Changes include the following
1. modify FakeDtlsIdentityStore to support alternate certificate so we could have a different fingerprint in test case.
2. dtlstransportchannel can accept a new fingerprint and trigger DTLS handshake.
3. #2 will trigger new signal on the media side to reset SRTP context. Only reset SRTP context when we are using DTLS (not SDES).
4. Test cases for caller or callee are transfees.
TBR=pthatcher@webrtc.org
BUG=webrtc:3618
This is a reland of https://codereview.webrtc.org/1453523002
Review URL: https://codereview.webrtc.org/1505573002 .
Cr-Commit-Position: refs/heads/master@{#10903}
This reverts commit 9c38c2d33fa6d794704d53b18f39d5235439fe63.
This commit somehow is different from what I have in my local copy. Revert and will recommit.
TBR=pthatcher@webrtc.org
BUG=3618
Review URL: https://codereview.webrtc.org/1494373004 .
Cr-Commit-Position: refs/heads/master@{#10902}
Changes include the following
1. modify FakeDtlsIdentityStore to support alternate certificate so we could have a different fingerprint in test case.
2. dtlstransportchannel can accept a new fingerprint and trigger DTLS handshake.
3. #2 will trigger new signal on the media side to reset SRTP context. Only reset SRTP context when we are using DTLS (not SDES).
4. Test cases for caller or callee are transfees.
BUG=webrtc:3618
R=pthatcher@webrtc.org
Review URL: https://codereview.webrtc.org/1453523002 .
Cr-Commit-Position: refs/heads/master@{#10901}
and make it configurable from the app.
Changed the decision on whether a connection is pingable:
1.Check whether a connection is a backup connection. A connection is considered as a backup connection only if the channel is complete, the connection is active and it is not the best connection.
2. Ping a non-backup connection if it is active and for backup connection, ping it at a slower rate.
Note the default behavior is the same as before.
Also cached the channel state since we are accessing it more often.
BUG=webrtc:5034
R=pthatcher@webrtc.org
Review URL: https://codereview.webrtc.org/1455033004 .
Cr-Commit-Position: refs/heads/master@{#10900}
Prevents UAF when switching decoder capabilities and the
previously-supported decoder is currently being received on.
BUG=chromium:565967
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1490233010 .
Cr-Commit-Position: refs/heads/master@{#10898}
- Flatten logic and make the relevant calls on VoE::Channel from AudioSendStream::SendTelephoneEvent().
- Store current payload type for telephone events in WVoMC, instead of setting it on the Channel. This should be refactored to be an AudioSendStream::Config parameter when we redo WVoMC::SetSendCodecs().
BUG=webrtc:4690
R=pthatcher@webrtc.org, tina.legrand@webrtc.org
Review URL: https://codereview.webrtc.org/1491743004 .
Cr-Commit-Position: refs/heads/master@{#10895}
Rework filtering functionality to be reused for both Audio+Video.
BUG=webrtc:4690
Review URL: https://codereview.webrtc.org/1481963002
Cr-Commit-Position: refs/heads/master@{#10869}
Dropping the first frame intended to fix a problem when switching cameras on N6 when we are capturing to textures but due to a silly bug fixed in this cl the frame was not dropped...
BUG=webrtc:5262
TBR=magjed@webrtc.org
Review URL: https://codereview.webrtc.org/1489363002
Cr-Commit-Position: refs/heads/master@{#10867}
The reason we want to use EGL14 is to be able to use EGLExt.eglPresentationTimeANDROID when writing textures to MediaEncoder.
BUG=webrtc:4993
TBR=glaznew@webrtc.org
Review URL: https://codereview.webrtc.org/1461083002
Cr-Commit-Position: refs/heads/master@{#10864}
This will let us transition to the new Initialize method in Chromium,
and then get rid of the old one.
Review URL: https://codereview.webrtc.org/1462253002
Cr-Commit-Position: refs/heads/master@{#10860}
Related to issues discussed in the referenced bug but does not solve that bug's main problem.
BUG=webrtc:4776
Review URL: https://codereview.webrtc.org/1485673003
Cr-Commit-Position: refs/heads/master@{#10852}
The callback keeps a reference to an object until the callback goes out of scope.
Review URL: https://codereview.webrtc.org/1487493002
Cr-Commit-Position: refs/heads/master@{#10847}
Chromium implements AudioProcessorInterface::GetStats(), but other
clients may not. The existing stats were getting overwritten with
default AudioProcessorStats values in that case.
Now, we only overwrite the stats if the track has an
AudioProcessorInterface. Also, move signal level out of
SetAudioProcessingStats() to avoid the "don't set if it's -1" pattern.
Review URL: https://codereview.webrtc.org/1469803004
Cr-Commit-Position: refs/heads/master@{#10831}
Mostly moved code around in WebRtcVoiceEngine:
- Added new internal class WebRtcVoiceCodecs for static codec functions and the CodecPrefs.
- ConstructCodecs() -> WebRtcVoiceCodecs::SupportedCodecs().
- FindWebRtcCodec -> WebRtcVoiceCodecs::ToCodecInst().
- WebRtcVoiceMediaChannel::SetRecvCodecsInternal() folded into WebRtcVoiceMediaChannel::SetRecvCodecs() (slight logic change).
- Change to how SetRecPayloadType() is implemented in fakewebrtcvoiceengine.h (lines 460-470).
BUG=webrtc:4690
Review URL: https://codereview.webrtc.org/1461333002
Cr-Commit-Position: refs/heads/master@{#10819}