diff --git a/src/libresrc/default_config.json b/src/libresrc/default_config.json index 731d48d6f..593d4524e 100644 --- a/src/libresrc/default_config.json +++ b/src/libresrc/default_config.json @@ -590,7 +590,6 @@ }, "Pattern" : false }, - "Force BT.601" : false, "Last Script Resolution Mismatch Choice" : 2, "Open Audio" : true, "Overscan Mask" : false, diff --git a/src/libresrc/osx/default_config.json b/src/libresrc/osx/default_config.json index 707625e82..fc3dd4daf 100644 --- a/src/libresrc/osx/default_config.json +++ b/src/libresrc/osx/default_config.json @@ -590,7 +590,6 @@ }, "Pattern" : false }, - "Force BT.601" : false, "Last Script Resolution Mismatch Choice" : 2, "Open Audio" : true, "Overscan Mask" : false, diff --git a/src/preferences.cpp b/src/preferences.cpp index 93cac807c..c835bad13 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -421,9 +421,6 @@ void Advanced_Video(wxTreebook *book, Preferences *parent) { wxArrayString sp_choice = to_wx(SubtitlesProviderFactory::GetClasses()); p->OptionChoice(expert, _("Subtitles provider"), sp_choice, "Subtitle/Provider"); - p->CellSkip(expert); - p->OptionAdd(expert, _("Force BT.601"), "Video/Force BT.601"); - #ifdef WITH_AVISYNTH auto avisynth = p->PageSizer("Avisynth"); p->OptionAdd(avisynth, _("Allow pre-2.56a Avisynth"), "Provider/Avisynth/Allow Ancient"); diff --git a/src/project.cpp b/src/project.cpp index 5ed6578d4..312f86fe8 100644 --- a/src/project.cpp +++ b/src/project.cpp @@ -58,7 +58,6 @@ Project::Project(agi::Context *c) : context(c) { OPT_SUB("Provider/Video/FFmpegSource/Decoding Threads", &Project::ReloadVideo, this); OPT_SUB("Provider/Video/FFmpegSource/Unsafe Seeking", &Project::ReloadVideo, this); OPT_SUB("Subtitle/Provider", &Project::ReloadVideo, this); - OPT_SUB("Video/Force BT.601", &Project::ReloadVideo, this); OPT_SUB("Video/Provider", &Project::ReloadVideo, this); } diff --git a/src/resolution_resampler.cpp b/src/resolution_resampler.cpp index ee4e19f87..e5c0b56f9 100644 --- a/src/resolution_resampler.cpp +++ b/src/resolution_resampler.cpp @@ -48,7 +48,7 @@ static const std::string names[] = { }; YCbCrMatrix MatrixFromString(std::string const& str) { - if (str.empty()) return YCbCrMatrix::tv_601; + if (str.empty()) return YCbCrMatrix::tv_709; auto pos = std::find(std::begin(names), std::end(names), str); if (pos == std::end(names)) return YCbCrMatrix::rgb; diff --git a/src/video_provider_avs.cpp b/src/video_provider_avs.cpp index 5273a128d..dabcdaa68 100644 --- a/src/video_provider_avs.cpp +++ b/src/video_provider_avs.cpp @@ -191,17 +191,16 @@ void AvisynthVideoProvider::Init(std::string const& colormatrix) { real_colorspace = colorspace = "None"; else { /// @todo maybe read ColorMatrix hints for d2v files? - AVSValue args[2] = { script, "Rec601" }; - bool force_bt601 = OPT_GET("Video/Force BT.601")->GetBool() || colormatrix == "TV.601"; + AVSValue args[2] = { script, "Rec709" }; bool bt709 = vi.width > 1024 || vi.height >= 600; - if (bt709 && (!force_bt601 || colormatrix == "TV.709")) { - args[1] = "Rec709"; - real_colorspace = colorspace = "TV.709"; + if (colormatrix == "TV.601") { + args[1] = "Rec601"; + colorspace = "TV.601"; } else { - colorspace = "TV.601"; - real_colorspace = bt709 ? "TV.709" : "TV.601"; + colorspace = "TV.709"; } + real_colorspace = bt709 ? "TV.709" : "TV.601"; const char *argnames[2] = { 0, "matrix" }; script = avs.GetEnv()->Invoke("ConvertToRGB32", AVSValue(args, 2), argnames); } diff --git a/src/video_provider_ffmpegsource.cpp b/src/video_provider_ffmpegsource.cpp index 2f057e93d..a76339659 100644 --- a/src/video_provider_ffmpegsource.cpp +++ b/src/video_provider_ffmpegsource.cpp @@ -243,9 +243,9 @@ void FFmpegSourceVideoProvider::LoadVideo(agi::fs::path const& filename, std::st RealColorSpace = ColorSpace = colormatrix_description(CS, CR); #if FFMS_VERSION >= ((2 << 24) | (17 << 16) | (1 << 8) | 0) - if (CS != FFMS_CS_RGB && CS != FFMS_CS_BT470BG && ColorSpace != colormatrix && (colormatrix == "TV.601" || OPT_GET("Video/Force BT.601")->GetBool())) { + if (CS != FFMS_CS_RGB && CS != FFMS_CS_BT470BG && ColorSpace != colormatrix && colormatrix == "TV.601") { CS = FFMS_CS_BT470BG; - ColorSpace = colormatrix_description(FFMS_CS_BT470BG, CR); + ColorSpace = colormatrix_description(CS, CR); } if (CS != VideoCS) {