proxy: isolate proxies from export renders and improve proxy workflow
- FootageJob::should_use_proxy() centralizes the proxy decision; worker pre-decode now honors the render mode so exports always decode the original media (previously every frame was pre-decoded from proxies) - global Tools > Use Proxy Media toggle with footage invalidation - ffmpeg -progress parsing for real percentage feedback while generating - divider mode (1/2, 1/4, 1/8 of source resolution) with UI, proxy filename tags and per-footage persistence (pdivider) - Media Offline warning slat rendered for missing footage - regression tests: export isolation, relink invalidation, offline slat, progress parsing, divider arguments
This commit is contained in:
@@ -361,6 +361,15 @@ MainMenu::MainMenu(MainWindow *parent)
|
||||
|
||||
tools_menu_->addSeparator();
|
||||
|
||||
tools_use_proxy_item_ = new QAction(this);
|
||||
Menu::conform_item(tools_use_proxy_item_, "useproxymedia");
|
||||
tools_use_proxy_item_->setCheckable(true);
|
||||
tools_use_proxy_item_->setChecked(
|
||||
Config::current()[QStringLiteral("UseProxyMedia")].toBool());
|
||||
connect(tools_use_proxy_item_, &QAction::triggered, Core::instance(),
|
||||
&Core::set_use_proxy_media);
|
||||
tools_menu_->addAction(tools_use_proxy_item_);
|
||||
|
||||
tools_proxy_settings_item_ = new QAction(this);
|
||||
Menu::conform_item(tools_proxy_settings_item_, "proxysettings");
|
||||
connect(tools_proxy_settings_item_, &QAction::triggered, this, [this]() {
|
||||
@@ -892,6 +901,7 @@ void MainMenu::retranslate()
|
||||
tools_add_item_->setText(tr("Add Tool"));
|
||||
tools_record_item_->setText(tr("Record Tool"));
|
||||
tools_snapping_item_->setText(tr("Enable Snapping"));
|
||||
tools_use_proxy_item_->setText(tr("Use Proxy Media"));
|
||||
tools_proxy_settings_item_->setText(tr("Proxy Settings..."));
|
||||
tools_preferences_item_->setText(tr("Preferences"));
|
||||
tools_add_item_menu_->setTitle(tr("Add Tool Item"));
|
||||
|
||||
Reference in New Issue
Block a user