Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make setMid of Transceiver public #2074

Merged
merged 1 commit into from Jan 6, 2022
Merged

Make setMid of Transceiver public #2074

merged 1 commit into from Jan 6, 2022

Conversation

cnderrauber
Copy link
Member

in some case like session migration from one sfu node
to another, we need manual set mid of transceiver instead of
auto generate, to make mid consistent between to sfu node.

Description

Reference issue

Fixes #...

@codecov
Copy link

codecov bot commented Jan 6, 2022

Codecov Report

Merging #2074 (2c3d177) into master (d2cc00d) will decrease coverage by 0.08%.
The diff coverage is 66.66%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2074      +/-   ##
==========================================
- Coverage   76.79%   76.71%   -0.09%     
==========================================
  Files          85       85              
  Lines        8711     8711              
==========================================
- Hits         6690     6683       -7     
- Misses       1612     1617       +5     
- Partials      409      411       +2     
Flag Coverage Δ
go 78.53% <66.66%> (-0.09%) ⬇️
wasm 70.22% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
peerconnection.go 76.62% <50.00%> (-0.19%) ⬇️
rtptransceiver.go 83.76% <100.00%> (ø)
internal/mux/endpoint.go 51.72% <0.00%> (-6.90%) ⬇️
dtlstransport.go 63.63% <0.00%> (-1.89%) ⬇️
icetransport.go 69.51% <0.00%> (+1.21%) ⬆️
operations.go 94.11% <0.00%> (+1.96%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d2cc00d...2c3d177. Read the comment docs.

Copy link
Contributor

@boks1971 boks1971 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good to me, one question.

@@ -1,3 +1,4 @@
//go:build !js
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this due to Go version? Does this affect older supported version?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks added by IDE, removed.

in some case like session migration from one sfu node
to another, we need manual set mid of transceiver instead of
auto generate, to make mid consistent between to sfu node.
@Sean-Der
Copy link
Member

Sean-Der commented Jan 6, 2022

nice change :)

What do you think of moving this to RTPParameters as muxId. That would match the spec [here](https://draft.ortc.org/#rtcrtpparameters*]

@cnderrauber That is really exciting that you are moving between SFU nodes! Are you also transferring ICE/SRTP/DTLS/SCTP state?

@cnderrauber
Copy link
Member Author

cnderrauber commented Jan 6, 2022

Thanks @Sean-Der . That Sounds good. I will check this

I’m not transfer these state because it is complex. Just use ICE restart to moving to new node. Difficult things is DTLS, because pion will not restart dtls with different fingerprint(but chrome and webrtc does), so I manipulated fingerprint during negotiate with new sfu node.

Restart DTLS in pion when fingerprint changed during icerestart is useful and consistent with rfc, I will look at this when have time

@Sean-Der
Copy link
Member

Sean-Der commented Jan 6, 2022

That would be awesome, I think we just need to land #1846 !

I wasn't able to find the time to give it the quality of review it needs. But if you and @boks1971 are interested that could be a huge improvement.

We just have to be really careful to keep up code quality/not introduce any security bugs :) that was the part that scared me.

@cnderrauber
Copy link
Member Author

Excited! Agree that security is more important than feature, we should be careful about this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants