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

Support different rtp header extentions and payload for each consumer. #1126

Open
penguinol opened this issue Jul 24, 2023 · 8 comments
Open
Labels

Comments

@penguinol
Copy link
Contributor

penguinol commented Jul 24, 2023

Feature Request

According to WHEP, when subscribing stream, client send Offer first, and server replay Answer then.
So the rtp header extention ids of each consumer may be different.
But in mediasoup, we send the same rtp header extentions to every consumer.
The purpose is to support any general WHEP client, so we can't motify the local sdp before setLocalDescrption.
I think #1107 do part of this, but i'm worring about the performence.

@ibc
Copy link
Member

ibc commented Jul 24, 2023

Can you please split these 2 feature requests into 2 different tickets? I'd like to comment about them separately.

@penguinol penguinol changed the title Support for WHEP and WHIP Support different rtp header extention id for each consumer. Jul 24, 2023
@ibc
Copy link
Member

ibc commented Jul 24, 2023

Performance of the change suggested in #1107 will be good, it's explained in that ticket. And yes, it will allow custom extension ids per Consumer. However I assume we also need custom codec payload types per Consumer, am I wrong?

@penguinol
Copy link
Contributor Author

Yes, the payload may also different between consumers.

@penguinol penguinol changed the title Support different rtp header extention id for each consumer. Support different rtp header extention id and payload for each consumer. Jul 25, 2023
@penguinol penguinol changed the title Support different rtp header extention id and payload for each consumer. Support different rtp header extentions and payload for each consumer. Jul 25, 2023
@paulorlyk
Copy link

I was also attempting to make WHEP work with mediasoup.

This branch allows to set payload types and header extension IDs per consumer. It also has some other unrelated things (option to enable bandwidth feedback from simple consumers to producer, time offset calculation for abs-capture-time and shifting media server time base to the future to work around bug in Chrome) that should not affect WHIP/WHEP.

The problem I was not able to fully solve was that because mediasoup is ice-lite implementation, sometimes, if client is not polite, it is impossible to know that it is gone. This makes impossible to track resources. Client always have to explicitly unsubscribe or some other mechanism, like keep-alives, must be involved.

@dank074
Copy link

dank074 commented Oct 1, 2024

I'm in the same boat. Need mediasoup to work with WHEP clients so I need it to support different codec payload ids for each consumer.

@MathMan05
Copy link

Spacebar needs this for VC support

@ibc
Copy link
Member

ibc commented Oct 11, 2024

Spacebar needs this for VC support

I don't know what VC means.

@MathMan05
Copy link

Voice Chat

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

No branches or pull requests

5 participants