Package Details: video2x-qt6-git 6.4.0.r0.g4793103-1

Git Clone URL: https://aur.archlinux.org/video2x-qt6-git.git (read-only, click to copy)
Package Base: video2x-qt6-git
Description: The Qt6 GUI for Video2X
Upstream URL: https://github.com/k4yt3x/video2x-qt6
Licenses: ISC
Conflicts: video2x-qt6
Provides: video2x-qt6
Submitter: k4yt3x
Maintainer: k4yt3x
Last Packager: k4yt3x
Votes: 1
Popularity: 0.000222
First Submitted: 2024-12-23 03:13 (UTC)
Last Updated: 2025-01-25 05:37 (UTC)

Latest Comments

carlosnewmusic commented on 2026-02-21 17:39 (UTC)

build error https://pastes.io/video2x-qt

Archanfel80HUN commented on 2026-02-16 12:24 (UTC)

src/taskprocessor.cpp

Fixed implicit conversions for frame counts (int64_t → int) when emitting progress signals.

diff --git a/src/taskprocessor.cpp b/src/taskprocessor.cpp
index bb5ffaf..efe6803 100644
--- a/src/taskprocessor.cpp
+++ b/src/taskprocessor.cpp
@@ -37,8 +37,8 @@ void TaskProcessor::on_processVideo()
                 // Ensure that process_video sets total_frames and updates processed_frames
                 if (videoProcessor.get_total_frames() > 0) {
                     // Emit the progress update signal to the main thread
-                    emit on_progressUpdated(videoProcessor.get_total_frames(),
-                                            videoProcessor.get_processed_frames());
+                    emit on_progressUpdated(static_cast<int>(videoProcessor.get_total_frames()),
+                                            static_cast<int>(videoProcessor.get_processed_frames()));
                 }
             }
         }

Archanfel80HUN commented on 2026-02-16 12:24 (UTC)

src/taskconfigdialog.cpp

Commented out copy_streams references (removed from libvideo2x API) and fixed implicit conversions for Vulkan device index (int ↔ uint32_t), scene detection threshold (double → float), and bit rate (int64_t → int).

diff --git a/src/taskconfigdialog.cpp b/src/taskconfigdialog.cpp
index 2693ffb..17a37e0 100644
--- a/src/taskconfigdialog.cpp
+++ b/src/taskconfigdialog.cpp
@@ -354,7 +354,7 @@ std::optional<TaskConfig> TaskConfigDialog::getTaskConfig()
     // Create TaskConfig struct on stack
     TaskConfig taskConfig;

-    taskConfig.vkDeviceIndex = ui->vulkanDeviceSelectionComboBox->currentIndex();
+    taskConfig.vkDeviceIndex = static_cast<uint32_t>(ui->vulkanDeviceSelectionComboBox->currentIndex());

     // Processing mode selection
     video2x::processors::ProcessingMode procMode;
@@ -444,7 +444,7 @@ std::optional<TaskConfig> TaskConfigDialog::getTaskConfig()
         case 0: {
             taskConfig.procCfg.processor_type = video2x::processors::ProcessorType::RIFE;
             taskConfig.procCfg.frm_rate_mul = ui->frameRateMultiplierSpinBox->value();
-            taskConfig.procCfg.scn_det_thresh = ui->sceneDetectionThresholdDoubleSpinBox->value();
+            taskConfig.procCfg.scn_det_thresh = static_cast<float>(ui->sceneDetectionThresholdDoubleSpinBox->value());
             video2x::processors::RIFEConfig rifeConfig;

             std::optional<QString> rifeModelNameOpt = findRifeModelNameByDisplayName(
@@ -475,7 +475,7 @@ std::optional<TaskConfig> TaskConfigDialog::getTaskConfig()

     // EncoderConfig
     taskConfig.outputSuffix = ui->suffixLineEdit->text();
-    taskConfig.encCfg.copy_streams = ui->copyStreamsCheckBox->isChecked();
+    // taskConfig.encCfg.copy_streams = ui->copyStreamsCheckBox->isChecked();

     // Rate control and compression
     taskConfig.encCfg.bit_rate = ui->bitRateSpinBox->value();
@@ -550,7 +550,7 @@ std::optional<TaskConfig> TaskConfigDialog::getTaskConfig()
 void TaskConfigDialog::setTaskConfig(const TaskConfig &taskConfig)
 {
     // vkDeviceIndex
-    ui->vulkanDeviceSelectionComboBox->setCurrentIndex(taskConfig.vkDeviceIndex);
+    ui->vulkanDeviceSelectionComboBox->setCurrentIndex(static_cast<int>(taskConfig.vkDeviceIndex));

     // Determine ProcessingMode by processor_type
     video2x::processors::ProcessingMode procMode;
@@ -681,7 +681,7 @@ void TaskConfigDialog::setTaskConfig(const TaskConfig &taskConfig)
     ui->suffixLineEdit->setText(taskConfig.outputSuffix);

     // copy_streams
-    ui->copyStreamsCheckBox->setChecked(taskConfig.encCfg.copy_streams);
+    // ui->copyStreamsCheckBox->setChecked(taskConfig.encCfg.copy_streams);

     // frameRateMultiplier (only relevant if Interpolate)
     if (procMode == video2x::processors::ProcessingMode::Interpolate) {
@@ -691,7 +691,7 @@ void TaskConfigDialog::setTaskConfig(const TaskConfig &taskConfig)
     }

     // Rate control and compression
-    ui->bitRateSpinBox->setValue(taskConfig.encCfg.bit_rate);
+    ui->bitRateSpinBox->setValue(static_cast<int>(taskConfig.encCfg.bit_rate));
     ui->rcBufferSizeSpinBox->setValue(taskConfig.encCfg.rc_buffer_size);
     ui->rcMinRateSpinBox->setValue(taskConfig.encCfg.rc_min_rate);
     ui->rcMaxRateSpinBox->setValue(taskConfig.encCfg.rc_max_rate);

Archanfel80HUN commented on 2026-02-16 12:24 (UTC)

  1. Removed API compatibility: The copy_streams member was removed from EncoderConfig in libvideo2x, so all references have been commented out.
  2. Implicit conversion warnings: Added explicit static_cast conversions to resolve compiler warnings for type mismatches (int64_t → int, int → uint32_t, uint32_t → int, double → float, qsizetype → int).
src/mainwindow.cpp

Fixed implicit conversions in progress tracking: qsizetype to int for progress bar maximum, and int64_t to int for elapsed time calculation.

diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index 4b6198b..cb53244 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -708,7 +708,7 @@ void MainWindow::addFilesWithConfig(const QStringList &fileNames)

     // Increase the total number of tasks
     if (m_procStarted) {
-        ui->overallProgressBar->setMaximum(ui->overallProgressBar->maximum() + fileNames.count());
+        ui->overallProgressBar->setMaximum(static_cast<int>(ui->overallProgressBar->maximum() + fileNames.count()));
     }
 }

@@ -937,7 +937,7 @@ void MainWindow::on_progressUpdate(int totalFrames, int processedFrames)
     ui->framesPerSecondLabel->setText(elapsedSecondsString);

     // Convert to hours, minutes, and seconds
-    int hours = elapsedMilliseconds / (1000 * 60 * 60);
+    int hours = static_cast<int>(elapsedMilliseconds / (1000 * 60 * 60));
     int minutes = (elapsedMilliseconds / (1000 * 60)) % 60;
     int seconds = (elapsedMilliseconds / 1000) % 60;

YaSha256 commented on 2025-12-06 11:29 (UTC) (edited on 2025-12-06 11:34 (UTC) by YaSha256)

Fix: Edit src/video2x-qt6/src/taskconfigdialog.cpp

Line 478 - replace:

  taskConfig.encCfg.copy_streams = ui->copyStreamsCheckBox->isChecked();

with:

  taskConfig.encCfg.copy_audio_streams = ui->copyStreamsCheckBox->isChecked();
  taskConfig.encCfg.copy_subtitle_streams = ui->copyStreamsCheckBox->isChecked();

Line 684 - replace:

  ui->copyStreamsCheckBox->setChecked(taskConfig.encCfg.copy_streams);

with:

  ui->copyStreamsCheckBox->setChecked(taskConfig.encCfg.copy_audio_streams);

Then: makepkg -si --noextract

samdavid6 commented on 2025-12-04 02:42 (UTC) (edited on 2025-12-04 02:44 (UTC) by samdavid6)

First gave me one error:


-- Could NOT find WrapVulkanHeaders (missing: Vulkan_INCLUDE_DIR) 
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:290 (message):
  Could NOT find Vulkan (missing: Vulkan_INCLUDE_DIR) (found version "")
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:654 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake/Modules/FindVulkan.cmake:694 (find_package_handle_standard_args)
  CMakeLists.txt:72 (find_package)


-- Configuring incomplete, errors occurred!
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: video2x-qt6-git-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
video2x-qt6-git - exit status 4

Installed vulkan-headers

Now install fails in another location


4 warnings and 2 errors generated.
make[2]: *** [CMakeFiles/video2x-qt6.dir/build.make:252: CMakeFiles/video2x-qt6.dir/src/taskconfigdialog.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
2 warnings generated.
make[1]: *** [CMakeFiles/Makefile2:96: CMakeFiles/video2x-qt6.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: video2x-qt6-git-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
video2x-qt6-git - exit status 4

Maybe vulkan-headers as a dependency?