Closed Bug 1232082 Opened 9 years ago Closed 9 years ago

Add RTCRtpReceiver and fire ontrack for remote tracks

Categories

(Core :: WebRTC, defect, P1)

defect

Tracking

()

RESOLVED FIXED
mozilla46
Tracking Status
firefox45 --- affected
firefox46 --- fixed

People

(Reporter: jib, Assigned: jib)

References

(Blocks 1 open bug)

Details

(Keywords: dev-doc-needed)

Attachments

(4 files)

No description provided.
Bug 1232082 - add RTCRtpReceiver for each remote track (WIP).
Comment on attachment 8697737 [details] MozReview Request: Bug 1232082 - add RTCRtpReceiver for each remote track. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/27709/diff/1-2/
Attachment #8697737 - Attachment description: MozReview Request: Bug 1232082 - add RTCRtpReceiver for each remote track (WIP). → MozReview Request: Bug 1232082 - add RTCRtpReceiver for each remote track.
FYI, needed for Simulcast work
backlog: --- → webrtc/webaudio+
Rank: 15
Priority: -- → P1
Blocks: 1231507
Rank: 15 → 10
Just added jib's patch from this bug to the test from bug 1231507 and it works. So at least we get RTPReceivers and Byron's code for switching between incoming RTP streams seems to be happy about it.
@jesup: FYI I think this does not need an extra test per se, because it is already covered through existing code here: https://dxr.mozilla.org/mozilla-central/source/dom/media/tests/mochitest/pc.js#1432
The only code which seems to be "nice to have" fixed when this lands is: https://dxr.mozilla.org/mozilla-central/source/dom/media/tests/mochitest/pc.js#1455
Comment on attachment 8697737 [details] MozReview Request: Bug 1232082 - add RTCRtpReceiver for each remote track. https://reviewboard.mozilla.org/r/27709/#review26007 r+, should land with other simulcast code (simulcast mochitests) which will implicitly test it
Attachment #8697737 - Flags: review+
Comment on attachment 8697737 [details] MozReview Request: Bug 1232082 - add RTCRtpReceiver for each remote track. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/27709/diff/2-3/
Comment on attachment 8703941 [details] MozReview Request: Bug 1232082 - add pc.ontrack and RTCTrackEvent Review request updated; see interdiff: https://reviewboard.mozilla.org/r/29503/diff/1-2/
Attachment #8703941 - Flags: review?(bugs)
https://reviewboard.mozilla.org/r/29503/#review26317 ::: dom/webidl/RTCTrackEvent.webidl:10 (Diff revision 1) > +dictionary RTCTrackEventInit : EventInit { > + required RTCRtpReceiver receiver; > + required MediaStreamTrack track; > + required sequence<MediaStream> streams; See https://github.com/w3c/webrtc-pc/pull/446
Attachment #8703941 - Flags: review?(rjesup) → review+
Comment on attachment 8703941 [details] MozReview Request: Bug 1232082 - add pc.ontrack and RTCTrackEvent https://reviewboard.mozilla.org/r/29503/#review26319 Looks good; my only question is do we need to retain tests for the deprecated interfaces until they're removed? I'd think so....
I did not change all tests, so there are tests remaining of the deprecated interfaces. In fact, I gave up fixing pc.js (since the stream assumptions in setupAddStreamEventHandler and attachMedia started to fan out the more I touched them), so most tests effectively still rely on onaddstream for now.
Comment on attachment 8703941 [details] MozReview Request: Bug 1232082 - add pc.ontrack and RTCTrackEvent https://reviewboard.mozilla.org/r/29503/#review26359
Attachment #8703941 - Flags: review?(bugs) → review+
Any luck figuring out the oranges on that try run?
Flags: needinfo?(jib)
Yes, I addressed those in comment 10, but weirdly the link in comment 10 is still in "draft" stage in mozReview somehow, e.g. if I use private browsing and follow the link then it shows as "page missing". Odd. In any case, I'll publish it now and do another try.
Flags: needinfo?(jib)
Comment on attachment 8703941 [details] MozReview Request: Bug 1232082 - add pc.ontrack and RTCTrackEvent Review request updated; see interdiff: https://reviewboard.mozilla.org/r/29503/diff/1-2/
See, the link in comment 18 is the same as in comment 10. Straange.
Sorry, still working on the other orange.
Comment on attachment 8697737 [details] MozReview Request: Bug 1232082 - add RTCRtpReceiver for each remote track. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/27709/diff/3-4/
Comment on attachment 8703941 [details] MozReview Request: Bug 1232082 - add pc.ontrack and RTCTrackEvent Review request updated; see interdiff: https://reviewboard.mozilla.org/r/29503/diff/2-3/
Note: comment 21 and comment 22 have zero changes (I wish mozReview would quit spamming needlessly).
Comment on attachment 8706736 [details] MozReview Request: Bug 1232082 - fix removal of remote tracks to update receivers. https://reviewboard.mozilla.org/r/30485/#review27285 ::: dom/media/PeerConnection.js:1490 (Diff revision 1) > - this._receivers.splice(i, 1); > + pc._receivers.splice(i, 1); This was the primary fix on the PeerConnection.js side of things, right? ::: dom/media/PeerConnection.js (Diff revision 1) > - this.dispatchEvent(new this._dompc._win.MediaStreamTrackEvent("removetrack", > - { track: track })); I guess we're removing this since we've never supported it, and it isn't in the latest editor's draft anyway?
Attachment #8706736 - Flags: review?(docfaraday) → review+
> This was the primary fix on the PeerConnection.js side of things, right? Right. > > - this.dispatchEvent(new this._dompc._win.MediaStreamTrackEvent("removetrack", > > - { track: track })); > > I guess we're removing this since we've never supported it, and it isn't in > the latest editor's draft anyway? Right. onremovetrack was never in the WebIDL, so it never worked.
Comment on attachment 8703941 [details] MozReview Request: Bug 1232082 - add pc.ontrack and RTCTrackEvent Review request updated; see interdiff: https://reviewboard.mozilla.org/r/29503/diff/3-4/
Comment on attachment 8706736 [details] MozReview Request: Bug 1232082 - fix removal of remote tracks to update receivers. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/30485/diff/1-2/
(In reply to Wes Kocher (:KWierso) from comment #28) > wpt bustage: Forgot about those. :/ Thanks. Comment 29 has a fix (comment 30 has zero changes - mozReview artifact). Carrying forward r=jesup,smaug.
Flags: needinfo?(jib)
Backed out again in https://hg.mozilla.org/integration/mozilla-inbound/rev/a8a91621bad6 for a variety of Android webrtc failures, most prominently causing bug 1239200.
What you can do to (at least try to) answer that is to take your cset hash from landing and mine from backing out and stick them into &fromchange=/&tochange= to get https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&fromchange=fa3363702d51&tochange=a8a91621bad6, then click the Filters menu, "click new to filter by a specific job field" and add "failure classification, fixed by commit" to get https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&fromchange=fa3363702d51&tochange=a8a91621bad6&filter-failure_classification_id=2 But what that'll tell you is just that it was probably bug 1239200 plus I starred a couple of webrtc intermittents in there as being caused by this when they were really just coincidences.
Flags: needinfo?(philringnalda)
See Also: → 1240256
Attachment #8708653 - Flags: review?(rjesup) → review+
Blocks: 1050930
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: