obsproject / obs-studio

OBS Studio - Free and open source software for live streaming and screen recording
https://obsproject.com
GNU General Public License v2.0
57.22k stars 7.72k forks source link

Changes to "recording filename formatting" does not apply to already-running replay buffers #10923

Open Reiuji-ch opened 1 week ago

Reiuji-ch commented 1 week ago

Operating System Info

Windows 10

Other OS

No response

OBS Studio Version

30.1.2

OBS Studio Version (Other)

No response

OBS Studio Log URL

N/A

OBS Studio Crash Log URL

No response

Expected Behavior

Saving a replay should apply the "Filename formatting", as well as "Replay Buffer Filename Prefix/Suffix", as configured at the time the replay is saved

Current Behavior

The replay uses a snapshot of the "Filename formatting" and "Replay Buffer Filename Prefix/Suffix" from when the replay buffer was started

Steps to Reproduce

  1. Configure formatting for recordings, Settings -> Advanced -> Recording
  2. Start the replay buffer
  3. Change the Filename Formatting or Replay Buffer Filename Prefix/Suffix
  4. Save the changed settings
  5. Save a replay -- This will use the configuration from (1.) instead of (3.)

Anything else we should know?

Perhaps my use-case is somewhat unusual, but I leave the replay buffer running most of the time and occasionally make changes to the filename via websockets.
Since the replay isn't actually written to the disk until I press "save replay", I'd expect it to use the formatting configured at the time I press save, not at the time I started the replay buffer. I can understand recordings using whatever formatting is configured when you start them, since they stream-write the file to the disk, but replays live in-memory until saved, so there shouldn't be a strict need to use a snapshot of the settings.

Stopping and starting the replay buffer is not a viable solution, as it causes me to lose whatever is in the buffer.

Reiuji-ch commented 1 week ago

I have managed to find a workaround for my particular use-case. Since I'm already using websockets, I can call GetOutputSettings and SetOutputSettings on the Replay Buffer output to change the format while the replay buffer is running.

While it fixes my use-case, it does not change the fact that the issue still exists if you're using the UI. Whether that's considered expected and/or acceptable behavior, I'll leave up to someone else.
I'm in favor of just closing this issue, unless a maintainer thinks the behavior should be different.