-
-
Notifications
You must be signed in to change notification settings - Fork 387
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
Add Simulcast support #903
Conversation
9e2fd90
to
e8abb32
Compare
@paullouisageneau Ok everything is green!
|
Thank you for the addition. It looks good overall, I'll look into it over the weekend. |
Nice! If the C++ API looks ok will add the C equivalent Hopefully I kept the new API/designs in spirit with current. Don’t want to just bolt something ugly on the side :( |
Not sure how RTX is handled in libdatachannel, but rtx packets should use the repaired-rtp-stream-id not the rtp-stream-id, is it possible to be handled with this API? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wouldn't it be easier to implement support for rids inside Description::Media
and use the same track for the different quality levels?
RTX are generated by |
a6230a5
to
fa305ca
Compare
Hey @paullouisageneau can I get another review please, thank you! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for the changes, this looks better to me, the implementation is way simpler!
3f108a1
to
ca8bc90
Compare
Hi @paullouisageneau responded to all the reviews. Mind taking a look again, thank you! |
6951f05
to
096cbaa
Compare
@paullouisageneau done! Pulled out the example also. PR is much smaller now :) |
@paullouisageneau sorry for all the mistakes :/ Pushed mind reviewing again? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's looking good, thank you!
@paullouisageneau could you create a tag for obs ? Unless you plan an imminent new release. |
@pkviet I'll create a tag when a solution to #891 (comment) is merged, so this can be used with OBS.
Great news! |
@paullouisageneau hi, pinging again for a new tag for obs ! |
@pkviet Sorry for the delay, it's now tagged as |
This allow senders to send multiple quality levels as one stream.
I also added an example. It just works against the public WHIP/WHEP server I run. I will adjust to w/e you think is best @paullouisageneau. I need to make everything argv driven, but currently you can
ffmpeg -re -f lavfi -i testsrc=size=640x480:rate=30 -pix_fmt yuv420p -c:v libx264 -g 10 -preset ultrafast -tune zerolatency -f rtp -payload_type 96 'rtp://127.0.0.1:6000?pkt_size=1200
Then you will see a drop down where you can select different quality levels.