Skip to content

feat: User-defined podcast fps#1232

Open
Vekhir wants to merge 1 commit intoOpenBoard-org:devfrom
Vekhir:podcast-increase-fps
Open

feat: User-defined podcast fps#1232
Vekhir wants to merge 1 commit intoOpenBoard-org:devfrom
Vekhir:podcast-increase-fps

Conversation

@Vekhir
Copy link
Contributor

@Vekhir Vekhir commented Feb 19, 2025

Currently, the podcast recording is set to a fixed 10 fps. While there exists a setting to allow for customisation, it remains unused.

This change takes the user setting into account. The actual fps are determined by the activity on the board, so it represents a maximum fps. This value is further refined depending on the selected podcast preset:

  • Full: Use the value directly
  • Medium: The max. fps are halved
  • Small: The max. fps are divided by 4

The default has been bumped up to 100 fps. During testing, I mostly got 40-70 fps in the resulting video. I don't know where the discrepancy comes from, but even setting it to a ridiculous 1000 only achieved like 127 fps peak. For highest quality I'd probably set it to 250 or 300.
For the Small preset, the default setting is 25, which is at the lower limit of what is perceived as fluid motion. In high activity scenes, it's around 12-18, though I regularly hit the 25. If bandwidth or CPU power needs to be saved, the default can be lowered further.
In moments of low activity, all values can go down to 8-10 fps. The horologe produces consistently 20fps.

In conclusion, I believe that this change improves the podcast experience.
Solves #991 #106

Currently, the podcast recording is set to a fixed 10 fps. While
there exists a setting to allow for customisation, it remains
unused.

This change takes the user setting into account. The actual fps
are determined by the activity on the board, so it represents
a maximum fps. This value is further refined depending on the
selected podcast preset:
- Full:   Use the value directly
- Medium: The max. fps are halved
- Small:  The max. fps are divided by 4

The default has been bumped up to 100 fps. This value is never
actually reached - the resulting fps hover mostly around 40-70.
During testing on my rather powerful machine (with values exceeding
250 fps), the observed frame rate never got appreciably higher than
100 fps (maximum was 127 fps for short periods at 1000).
Thus, the Full preset in its default configuration captures all
activity.
Choosing a lower preset decreases the fps accordingly, with 25 fps
at the lower end of what is perceived as fluid motion, though actual
framerate can be around 12-18. Further tuning is possible via the
"Podcast->FramesPerSecond" setting.
@kaamui
Copy link
Member

kaamui commented Jan 30, 2026

Hi @Vekhir,

could I ask you to expose the setting in the preferences ? and to add information in the label (e.g if the setting is actually max 100 fps, to display next to Max, medium and small the corresponding values you calculate) ? Something like "Small (max fps : 25)"

What do you think ?

Edit : expliciting the fps will give the impression the small, medium and maximum aren't about resolution.

Also, I wonder if it makes sense to attach a FPS limit to the resolution of the podcast. Shouldn't we simply add a section in the dropdown list for the max FPS, independant of the resolution section ?

@Vekhir
Copy link
Contributor Author

Vekhir commented Jan 30, 2026

Edit : expliciting the fps will give the impression the small, medium and maximum aren't about resolution.

Yes, the settings are really about the bandwidth/bitrate of the final video. The resolution and framerate are scaled to retain a passable quality per frame when lowering the bitrate.

could I ask you to expose the setting in the preferences ?

I think the general preferences dialog is quite crowded. Not sure how well that would integrate.
Maybe we could get away with a small dialog box that can be accessed via the recording preferences (like a little edit pen next to "Small", "Medium", and "Full"). There, each preset could be edited independently with bitrate, resolution, and framerate.

I'll try making a mockup. I can use the intranetPodcastPublishingDialog.ui as a template and would use the QSpinBox. I guess a dropdown menu could also work, though we'd need to decide which values to show.

@kaamui
Copy link
Member

kaamui commented Feb 4, 2026

I think the general preferences dialog is quite crowded

Fair point. I like your idea of a dialog directly from the record preferences. I don't how much effort it would take, but maybe this cog button could directly open a dialog box with the audio and video settings, and no longer be a drop down menu where we are limited in terms of space and ux. Could you give it a try ?

@Vekhir
Copy link
Contributor Author

Vekhir commented Feb 4, 2026

I'll see what I can do. Will create a separate PR for that (focusing on the reworked dialog), then adjust this PR to add the new settings.

@Vekhir
Copy link
Contributor Author

Vekhir commented Feb 12, 2026

Just to let you know, I currently don't have time to work on this. I'd like to see it come to fruition, but I can't commit the necessary time and energy.
Once I resume working on this issue, I'll write here. In the meantime, everyone feel free to work on this if you want.

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.

2 participants