Implement post-processing levels for VideoStreamPlayer and Theora #102410
+566
−385
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is based on #102360 and #101958. I could have based this on master but I prefer to keep the order of the PRs. Otherwise, it would break my other PRs and it wouldn't be very useful by itself anyway. Each PR has its own commit with the commit message matching the PR title to avoid confusion.
This is part of a request for comments in godotengine/godot-proposals#11699 that I'm opening for this feature.
I'm adding a
pp_level
property to VideoStreamPlayer so that we can set a maximum preferred post-processing level from 0 (disabled) to 255 (max). The real max value used will depend on the codec implementation used. Since the requested value is a maximum, the codec will be able to choose.I've also enabled post-processing in VideoStreamTheora. VideoStreamTheora will dinamically change the pp level depending on how much time is spent decoding frames between 0 and
pp_level
.This property should be useful for other codecs added as plugins.