Commit Graph

9 Commits

Author SHA1 Message Date
ee01a839d2 Remove MetricsObserverInterface.
The usage of MetricsObserverInterface to log metrics has been replaced
by RTC_HISTOGRAM_* macros in WebRTC.

Bug: webrtc:9409
Change-Id: I67df74a18942ac7ea4227e4affdf84f06258a287
Reviewed-on: https://webrtc-review.googlesource.com/86780
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24048}
2018-07-19 23:00:20 +00:00
365381fdf1 Replace BundleFilter with RtpDemuxer in RtpTransport.
BundleFilter is replaced by RtpDemuxer in RtpTransport for payload
type-based demuxing. RtpTransport will support MID-based demuxing later.

Each BaseChannel has its own RTP demuxing criteria and when connecting
to the RtpTransport, BaseChannel will register itself as a demuxer sink.

The inheritance model is changed. New inheritance chain:
DtlsSrtpTransport->SrtpTransport->RtpTranpsort

The JsepTransport2 is renamed to JsepTransport.

NOTE:
When RTCP packets are received, Call::DeliverRtcp will be called for
multiple times (webrtc:9035) which is an existing issue. With this CL,
it will become more of a problem and should be fixed.

Bug: webrtc:8587
Change-Id: Ibd880e7b744bd912336a691309950bc18e42cf62
Reviewed-on: https://webrtc-review.googlesource.com/65786
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22867}
2018-04-14 00:57:11 +00:00
e830e683c4 Use new TransportController implementation in PeerConnection.
The TransportController will be replaced by the JsepTransportController
and JsepTransport will be replace be JsepTransport2.

The JsepTransportController will take the entire SessionDescription
and handle the RtcpMux, Sdes and BUNDLE internally.

The ownership model is also changed. The P2P layer transports are not
ref-counted and will be owned by the JsepTransport2.

In ORTC aspect, RtpTransportAdapter is now a wrapper over RtpTransport
or SrtpTransport and it implements the public and internal interface
by calling the transport underneath.

Bug: webrtc:8587
Change-Id: Ia7fa61288a566f211f8560072ea0eecaf19e48df
Reviewed-on: https://webrtc-review.googlesource.com/59586
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22693}
2018-03-30 18:41:19 +00:00
95e7dbb7c7 Revert "Reland "Replace BundleFilter with RtpDemuxer in RtpTransport.""
This reverts commit 27f3bf512827b483f9e0c67ce76362d83faa1950.

Reason for revert: Broken internal project.

Original change's description:
> Reland "Replace BundleFilter with RtpDemuxer in RtpTransport."
> 
> This reverts commit 97d5e5b32c77bf550f1d788454f2db10ac9fbb1c.
> 
> Reason for revert: <INSERT REASONING HERE>
> 
> Original change's description:
> > Revert "Replace BundleFilter with RtpDemuxer in RtpTransport."
> > 
> > This reverts commit ea8b62a3e74fe91cd6bf66304839cd5677880a4e.
> > 
> > Reason for revert: Broke chromium tests.
> > Original change's description:
> > > Replace BundleFilter with RtpDemuxer in RtpTransport.
> > > 
> > > BundleFilter is replaced by RtpDemuxer in RtpTransport for payload
> > > type-based demuxing. RtpTransport will support MID-based demuxing later.
> > > 
> > > Each BaseChannel has its own RTP demuxing criteria and when connecting
> > > to the RtpTransport, BaseChannel will register itself as a demuxer sink.
> > > 
> > > The inheritance model is changed. New inheritance chain:
> > > DtlsSrtpTransport->SrtpTransport->RtpTranpsort
> > > 
> > > NOTE:
> > > When RTCP packets are received, Call::DeliverRtcp will be called for
> > > multiple times (webrtc:9035) which is an existing issue. With this CL,
> > > it will become more of a problem and should be fixed.
> > > 
> > > Bug: webrtc:8587
> > > Change-Id: I1d8a00443bd4bcbacc56e5e19b7294205cdc38f0
> > > Reviewed-on: https://webrtc-review.googlesource.com/61360
> > > Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
> > > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#22613}
> > 
> > TBR=steveanton@webrtc.org,deadbeef@webrtc.org,zhihuang@webrtc.org
> > 
> > Change-Id: If245da9d1ce970ac8dab7f45015e9b268a5dbcbd
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: webrtc:8587
> > Reviewed-on: https://webrtc-review.googlesource.com/64860
> > Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
> > Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#22614}
> 
> TBR=steveanton@webrtc.org,deadbeef@webrtc.org,zhihuang@webrtc.org
> 
> Change-Id: I3c272588ab4388ecadc4edc6786d5195c701855f
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:8587
> Reviewed-on: https://webrtc-review.googlesource.com/64862
> Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
> Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22615}

TBR=steveanton@webrtc.org,deadbeef@webrtc.org,zhihuang@webrtc.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:8587
Change-Id: I694ce9a039ed52c5961cdc0cba57587bed4cbde4
Reviewed-on: https://webrtc-review.googlesource.com/65381
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22665}
2018-03-29 02:45:17 +00:00
27f3bf5128 Reland "Replace BundleFilter with RtpDemuxer in RtpTransport."
This reverts commit 97d5e5b32c77bf550f1d788454f2db10ac9fbb1c.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Replace BundleFilter with RtpDemuxer in RtpTransport."
> 
> This reverts commit ea8b62a3e74fe91cd6bf66304839cd5677880a4e.
> 
> Reason for revert: Broke chromium tests.
> Original change's description:
> > Replace BundleFilter with RtpDemuxer in RtpTransport.
> > 
> > BundleFilter is replaced by RtpDemuxer in RtpTransport for payload
> > type-based demuxing. RtpTransport will support MID-based demuxing later.
> > 
> > Each BaseChannel has its own RTP demuxing criteria and when connecting
> > to the RtpTransport, BaseChannel will register itself as a demuxer sink.
> > 
> > The inheritance model is changed. New inheritance chain:
> > DtlsSrtpTransport->SrtpTransport->RtpTranpsort
> > 
> > NOTE:
> > When RTCP packets are received, Call::DeliverRtcp will be called for
> > multiple times (webrtc:9035) which is an existing issue. With this CL,
> > it will become more of a problem and should be fixed.
> > 
> > Bug: webrtc:8587
> > Change-Id: I1d8a00443bd4bcbacc56e5e19b7294205cdc38f0
> > Reviewed-on: https://webrtc-review.googlesource.com/61360
> > Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#22613}
> 
> TBR=steveanton@webrtc.org,deadbeef@webrtc.org,zhihuang@webrtc.org
> 
> Change-Id: If245da9d1ce970ac8dab7f45015e9b268a5dbcbd
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:8587
> Reviewed-on: https://webrtc-review.googlesource.com/64860
> Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
> Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22614}

TBR=steveanton@webrtc.org,deadbeef@webrtc.org,zhihuang@webrtc.org

Change-Id: I3c272588ab4388ecadc4edc6786d5195c701855f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8587
Reviewed-on: https://webrtc-review.googlesource.com/64862
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22615}
2018-03-27 04:39:12 +00:00
97d5e5b32c Revert "Replace BundleFilter with RtpDemuxer in RtpTransport."
This reverts commit ea8b62a3e74fe91cd6bf66304839cd5677880a4e.

Reason for revert: Broke chromium tests.
Original change's description:
> Replace BundleFilter with RtpDemuxer in RtpTransport.
> 
> BundleFilter is replaced by RtpDemuxer in RtpTransport for payload
> type-based demuxing. RtpTransport will support MID-based demuxing later.
> 
> Each BaseChannel has its own RTP demuxing criteria and when connecting
> to the RtpTransport, BaseChannel will register itself as a demuxer sink.
> 
> The inheritance model is changed. New inheritance chain:
> DtlsSrtpTransport->SrtpTransport->RtpTranpsort
> 
> NOTE:
> When RTCP packets are received, Call::DeliverRtcp will be called for
> multiple times (webrtc:9035) which is an existing issue. With this CL,
> it will become more of a problem and should be fixed.
> 
> Bug: webrtc:8587
> Change-Id: I1d8a00443bd4bcbacc56e5e19b7294205cdc38f0
> Reviewed-on: https://webrtc-review.googlesource.com/61360
> Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22613}

TBR=steveanton@webrtc.org,deadbeef@webrtc.org,zhihuang@webrtc.org

Change-Id: If245da9d1ce970ac8dab7f45015e9b268a5dbcbd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8587
Reviewed-on: https://webrtc-review.googlesource.com/64860
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22614}
2018-03-27 00:09:12 +00:00
ea8b62a3e7 Replace BundleFilter with RtpDemuxer in RtpTransport.
BundleFilter is replaced by RtpDemuxer in RtpTransport for payload
type-based demuxing. RtpTransport will support MID-based demuxing later.

Each BaseChannel has its own RTP demuxing criteria and when connecting
to the RtpTransport, BaseChannel will register itself as a demuxer sink.

The inheritance model is changed. New inheritance chain:
DtlsSrtpTransport->SrtpTransport->RtpTranpsort

NOTE:
When RTCP packets are received, Call::DeliverRtcp will be called for
multiple times (webrtc:9035) which is an existing issue. With this CL,
it will become more of a problem and should be fixed.

Bug: webrtc:8587
Change-Id: I1d8a00443bd4bcbacc56e5e19b7294205cdc38f0
Reviewed-on: https://webrtc-review.googlesource.com/61360
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22613}
2018-03-26 22:40:05 +00:00
db67ba1c81 Report SRTP error codes to UMA
Bug: webrtc:8996
Change-Id: I75de77ed15c2829425c00f57ebd07109803425db
Reviewed-on: https://webrtc-review.googlesource.com/63122
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22521}
2018-03-20 18:37:49 +00:00
f2d7beb1d4 Created the DtlsSrtpTransport.
The DtlsSrtpTransport is designed to take DTLS responsibilities from BaseChannel.
DtlsSrtpTransport is responsible for exporting keys from DtlsTransport
and setting up the wrapped SrtpTransport.

The DtlsSrtpTransport is not hooked up to BaseChannel yet in this CL.

Bug: webrtc:7013
Change-Id: I318c00dadf9b1e033ec842de6e1536e9227ab713
Reviewed-on: https://webrtc-review.googlesource.com/6700
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20804}
2017-11-20 23:18:22 +00:00