obsproject / obsproject/obs-studio

If Output type Advanced cannot set Bitrate via (websocket) commands

Open
#12,925 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
76.4k
Forks
10.2k
Avg merge
4d 23h
Merged PRs (30d)
12

Description

Operating System Info

Other

Other OS

Windows and mac

OBS Studio Version

Other

OBS Studio Version (Other)

32.0.4

OBS Studio Log URL

N/A

OBS Studio Crash Log URL

No response

Expected Behavior

Set Stream Bitrate via alternative methods (not the UI)

Current Behavior

basic.ini is updated, not streamEncoder.json (and UI) is not.

Steps to Reproduce
      const setSimpleBitRate: OBSRequestTypes["SetProfileParameter"] = {
        parameterCategory: "SimpleOutput",
        parameterName: "VBitrate",
        parameterValue: "2500",
      };

      const setBitRate: OBSRequestTypes["SetProfileParameter"] = {
        parameterCategory: "AdvOut",
        parameterName: "FFVBitrate",
        parameterValue: "2500",
      };

I have not checked if other variables are effected but I cannot set the bitrate "externally" any more and this is unexpected.

(This might in fact need to be a feature request to expose streamencoder.json settings to read/write properly but I digress)

Anything else we should know?

I was surprised

In a new profile

Outputmode - advanced

  • FFVBitrate under AdvOut don't exist when using the UI to set values any more
  • streamencoder.json updates

but under outputmode simple

  • VBitrate under SimpleOutput will if set to simple
  • streamencoder.json does not

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the supplied SetProfileParameter websocket requests in an advanced-output profile, then compare basic.ini, streamencoder.json, and the UI state. Trace how AdvOut/FFVBitrate and SimpleOutput/VBitrate are handled. Done means external bitrate commands update the same setting and visible state as the UI, with coverage for both output modes.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
api
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.