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

Initial Commit of FFMPEG settings. #49

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

odgrace
Copy link
Contributor

@odgrace odgrace commented Mar 6, 2023

Current behavior for ffmpeg settings is to set crf=0 and b:v 40M which I understand are mutually exclusive. They also have no effect for some hw accelerated options like videotoolbox. The approach taken is to set some sane defaults per encoder that will grow over time so must users can just press a button and have it 'work'. The settings are not set in stone at all and are not comprehensive at this stage.

The method Utils.load_encoder_defaults_yaml attempts to find this settings file but falls back to the existing encoder settings. If no settings around found it will also fall back to those same defaults, whether or not they work for the specified codec.

Keen to get your feedback to see if this is a direction worth taking. A few things im thinking of:

  1. I don't know if this will impact the GUI. I still have to try and get the GUI working but I'm caught up in the attrdict problem
  2. I've used yaml to allow the specification of encoder parameters but this adds a dependency. Open to other options if this is a problem
  3. We still have the same issue of encoder_settings going from resources to root when packaging the GUI, just like font.ttf

Current behavior for ffmpeg settings is to set crf=0 and b:v 40M. These are mutually exclusive. They also don't apply for hw accelerated options
like videotoolbox. The approach taken is to set some sane defaults that will grow over time so must users can just press a button and have it
'work'. The settings are not set in stone at all and are not comprehensive at this stage.

The method Utils.load_encoder_defaults_yaml attempts to find this settings file but falls back to the existing encoder settings. If no settings
around found it will also fall back to those same defaults, whether or not they work for the specified codec.
@odgrace odgrace marked this pull request as ready for review March 11, 2023 21:56
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.

None yet

2 participants