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

obs-webrtc: Add "bframes" key override for mac VT encoder #11782

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

kc5nra
Copy link
Contributor

@kc5nra kc5nra commented Jan 27, 2025

Most of the encoders use "bf" as a key to store the number of bframes but VT and QSV use "bframes". QSV already has code to work around this issue.

NOTE There is another way to accomplish this, similar to the QSV encoder:

if (obs_data_has_user_value(settings, "bf"))
		bFrames = (int)obs_data_get_int(settings, "bf");

This seemed a bit "hidden behavior..y", but happy to do either way! Certainly would make it most consistent to override bframes in the future if everyone didn't need to reason about both bframes and bf.

Description

Adds "bframes" override in addition to "bf" to convert VT encoders.

Motivation and Context

The WHIP service overrides bframes using "bf" but the VT encoder uses "bframes" as the key. As a result, the encoder ends up sending bframes if they are configured in the output settings.

How Has This Been Tested?

Tested on Mac with and without keyframes specified in the output.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)

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.

Most of the encoders use "bf" as a key to store the number of bframes
but VT and QSV use "bframes". QSV already has code to work around
this issue.
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.

1 participant