-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Add Settings > Preview Scaling > Use Hardware Decoder #1761
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
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds a new setting to enable/disable hardware decoder usage in the preview player. The feature allows users to toggle hardware-accelerated decoding through the Settings > Preview Scaling menu, configuring platform-specific hardware decoders (VideoToolbox on macOS, D3D11VA on Windows, VAAPI on Linux).
Key Changes:
- Added UI option to toggle hardware decoder in preview scaling menu
- Implemented hardware decoder configuration logic with platform-specific support
- Added safety checks to prevent invalid producer/consumer operations
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/mainwindow.ui | Added "Use Hardware Decoder" action to preview scaling menu |
| src/mainwindow.h | Added slot declaration for hardware decoder toggle handler |
| src/mainwindow.cpp | Implemented hardware decoder toggle handler and initialization logic |
| src/settings.h | Added getter/setter declarations for hardware decoder preference |
| src/settings.cpp | Implemented hardware decoder preference storage with default value true |
| src/mltcontroller.h | Added hardware decoder configuration method declaration |
| src/mltcontroller.cpp | Implemented platform-specific hardware decoder configuration logic |
| src/videowidget.cpp | Added producer validation check and preview scale configuration |
| src/player.cpp | Added safety check for invalid producer in onProducerOpened |
| src/jobs/meltjob.cpp | Removed hardware decoder environment variable for background jobs |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
PPS = maximum pixels per second to use hwaccel. The purpose of this is to permit usage of hardware decoding without preview scale but only for video <= 1080p60. Otherwise, the data is too much especially for multiple transfers (movit and/or preview).
No description provided.