Fix FrameRate default to always be Source

- Add check in loadPersistedConvertConfig to default FrameRate to "Source" if empty
- Add check after loading persisted config to ensure FrameRate is "Source" if not set
- Prevents unwanted frame rate conversions from persisted config overriding safe defaults

This ensures that frame rate always defaults to "Source" and users won't
accidentally convert all their videos to 23.976fps or another frame rate
if they had previously saved a config with a specific frame rate set.
This commit is contained in:
Stu Leak 2025-12-17 13:28:26 -05:00
parent 34e613859d
commit 957b92d8cd

View File

@ -518,6 +518,10 @@ func loadPersistedConvertConfig() (convertConfig, error) {
} else if !strings.EqualFold(cfg.OutputAspect, "Source") {
cfg.AspectUserSet = true
}
// Always default FrameRate to Source if not set to avoid unwanted conversions
if cfg.FrameRate == "" {
cfg.FrameRate = "Source"
}
return cfg, nil
}
@ -4069,6 +4073,10 @@ func runGUI() {
if cfg, err := loadPersistedConvertConfig(); err == nil {
state.convert = cfg
// Ensure FrameRate defaults to Source if not explicitly set
if state.convert.FrameRate == "" {
state.convert.FrameRate = "Source"
}
} else if !errors.Is(err, os.ErrNotExist) {
logging.Debug(logging.CatSystem, "failed to load persisted convert config: %v", err)
}