Closed Bug 1233447 Opened 9 years ago Closed 8 years ago

removeTrack throwing NS_ERROR_UNEXPECTED error

Categories

(Core :: WebRTC, defect)

43 Branch
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1133874

People

(Reporter: balwant.bisht, Unassigned)

References

()

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:44.0) Gecko/20100101 Firefox/44.0
Build ID: 20151214004008

Steps to reproduce:

Replace audio stream e.g mic gain stream, using removeTrack & addTrack of peerconnection


Actual results:

Firefox throwing error when removeTrack is called

Exception... "Unexpected error"  nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)"

As removeTrack not able to remove audio track, multiple audio track gets added to peerconnection and both audio tracks sending media to server


Expected results:

Audio track should be removed from peerconnection
Component: Untriaged → WebRTC
Product: Firefox → Core
Please provide more info - code snippets or a working example (preferably).  We support removeTrack() and have tests in our tree for various aspects of it.

What version of Firefox were you using?  44? (which was used to file the bug)
Flags: needinfo?(balwant.bisht)
Just looking at possible paths for RTCPeerConnection::RemoveTrack I do see one that throws NS_ERROR_UNEXPECTED: [1]

It is in jsep, with the following internal message: "Removing tracks outside of stable is unsupported."


[1] https://dxr.mozilla.org/mozilla-central/rev/584870f1cbc5d060a57e147ce249f736956e2b62/media/webrtc/signaling/src/jsep/JsepSessionImpl.cpp#134
Whiteboard: [needinfo 2016/01/31]
Resolving this as incomplete due to lack of response on needinfo from January.  We can reopen if we get more info and the problem is still happening for the reporter.
Status: UNCONFIRMED → RESOLVED
Closed: 8 years ago
Resolution: --- → INCOMPLETE
I was able to reproduce it in this fiddle:
Status: RESOLVED → REOPENED
Ever confirmed: true
Flags: needinfo?(balwant.bisht)
Resolution: INCOMPLETE → ---
Summary: removeTrack throwing error → removeTrack throwing NS_ERROR_UNEXPECTED error
Whiteboard: [needinfo 2016/01/31]
(In reply to Andreas Pehrson [:pehrsons] (Telenor) from comment #2)
> It is in jsep, with the following internal message: "Removing tracks outside
> of stable is unsupported."

The spec [1] makes no mention of not supporting removeTrack outside of stable state (except closed). Do we plan to support this?

If yes, then great. If no, then we can test for this state and throw a nicer error in PeerConnection.js.

[1] http://w3c.github.io/webrtc-pc/#dom-rtcpeerconnection-removetrack
Flags: needinfo?(docfaraday)
Yeah, this is a known limitation. I can either mark this as a dupe of bug 1133874, or we can keep this open for throwing a nicer error.
Flags: needinfo?(docfaraday)
Dup wfm.
Status: REOPENED → RESOLVED
Closed: 8 years ago8 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.