Skip to content

Conversation

@Sean-Der
Copy link
Contributor

@Sean-Der Sean-Der commented Jun 28, 2023

Description

WebRTC allows broadcasters to upload multiple streams of different quality. OBS users could upload ‘high’, ‘med’, and ‘low’ streams themselves.

Motivation and Context

  • Higher Quality - Re-encoding video server side causes quality loss
  • Lower Latency - Reduces the amount of time before video gets to viewers
  • Less complicated servers - Users find it difficult to setup RTMP->HLS with transcodes. This removes the complexity.

How Has This Been Tested?

Tested against https://github.com/glimesh/broadcast-box

Types of changes

  • New feature (non-breaking change which adds functionality)

Checklist:

  • My code has been run through clang-format.
  • I have read the contributing document.
  • My code is not on the master branch.
  • The code has been tested.
  • All commit messages are properly formatted and commits squashed where appropriate.
  • I have included updates to all appropriate documentation.

@Sean-Der Sean-Der force-pushed the simulcast branch 2 times, most recently from 8f0dcbd to 0ddea45 Compare June 28, 2023 18:29
@notr1ch
Copy link
Member

notr1ch commented Jun 28, 2023

I started to review this but it seems like this is still at the proof of concept stage, there are too many hard coded assumptions and the deps point to your own repo. I don't think this was ready to be PR'ed.

@Sean-Der
Copy link
Contributor Author

Hey @notr1ch appreciate the review! I put the PR up to get feedback about the right way to do this. Instead of hardcoding these values what do you think would be best for users?

  • UI where people can set the settings per layer (bitrate, resolution...)
  • UI where users can select the amount of layers, but not configure the layers
  • UI where you enable Simulcast or disable, but no configuration.
  • Something else?

@Sean-Der Sean-Der force-pushed the simulcast branch 3 times, most recently from 1641633 to 9cccd77 Compare June 29, 2023 17:31
@Sean-Der Sean-Der requested a review from notr1ch June 29, 2023 18:59
@RytoEX RytoEX added the New Feature New feature or plugin label Jun 29, 2023
@notr1ch
Copy link
Member

notr1ch commented Jul 1, 2023

Those kinds of questions are best answered by creating an RFC. While this looks like a promising POC, it's way too early to be opened as a pull request.

@notr1ch notr1ch closed this Jul 1, 2023
@Sean-Der
Copy link
Contributor Author

Sean-Der commented Jul 1, 2023

@notr1ch I have multiple companies testing this PR. Can you please re-open so I can continue collaborating with people on this highly requested feature.

We also will not need a RFC. The developers of this PR discussed internally and will be doing a UI. Simulcast will not be available under simple at first.

What are the rules/requirements for a draft PR. Can you please provide the official guidelines

@Fenrirthviti
Copy link
Member

Guidelines for when an RFC is appropriate can be found on the RFC repo in the readme:

https://github.com/obsproject/rfcs

@Sean-Der
Copy link
Contributor Author

Sean-Der commented Jul 3, 2023

@Fenrirthviti @notr1ch RFC is here

Can you please re-open this PR now? It seems to be an accepted pattern to have a example implementation. here and here

@Fenrirthviti
Copy link
Member

That kind of pattern isn't exactly accepted, it's just happened. Discussion can take place on the RFC, and collaboration on the implementation can take place on your fork if there is still implementation work to be done. It would likely also be best to wait until the RFC is in a state that the project agrees on first, to avoid unnecessary efforts.

I'd prefer that this remain closed until it's ready for actual review to avoid cluttering the repo. Previous PRs in this ecosystem had a lot of troubleshooting and off-topic chatter that I'd like to avoid as well, as it complicated review having to sift through what were effectively support questions, not development questions.

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

Labels

New Feature New feature or plugin

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants