+ Reply to Thread
Results 2,131 to 2,160 of 2249
-
As always .. there is nothing wrong with my environment
-
@ProWo
Since you started looking at the speed issue ..
let me update you with my testing results of the 'batch scan for errors' feature.
No major issues/bugs/crashes were identified during batch processing of the scan for errors feature.
Statistics:
Clever processed 1344 files, ranging in size between [20mb - 2.2Gb] in ~24.15 hrs., found 13 damaged files.
When 'close me' was checked, Clever successfully closed after batch tasks were completed.
When 'Shutdown' was checked, Clever successfully Shutdown the PC after batch tasks were completed.
Resource Impact [Windows Task Manager]:
- Clever was light on CPU, disk i/o, & moderate on memory [23 mb].
- ffmpeg, called by Clever, was light on disk i/o, moderate on memory [40 mb], but a bit heavy on CPU [65%].
pros
- Sleep mode prevention, Abort button, Shutdown, & Close me .. were nice to have.
- A separate error text file was generated for each damaged video file.
- Each Task was automatically removed from the grid after processing.
cons
- Scan was very slow
Recommendations
- Try to speed up the scan
Potential enhancements [Advanced]
- FFmpeg parallel processing: [didn't know ffmpeg can do this]
Parallel processing in FFmpeg can be achieved through various means, including multi-threading & using multiple CPU cores.
Multi-threading: Focuses on dividing a single task into smaller, concurrent sub-tasks.
Multiple CPU Cores: Focuses on distributing the workload across different physical or logical cores of the CPU.
To leverage parallel processing in FFmpeg:
1- Multi-threading: FFmpeg can use multiple threads to process different parts of a video or audio stream simultaneously.
2- Frame-level parallelism: Some codecs & filters support frame-level parallelism, allowing multiple frames to be processed in parallel.
3- Slice-based parallelism: Some codecs support slicing, where a frame is divided into slices that can be processed in parallel.
4- CPU Affinity: Some FFmpeg builds & external libraries (like x264) support CPU affinity, which allows you to bind specific threads to specific CPU cores.
5- You might want to offload processing to the GPU on supported systems. Please refer to attached file for more info.
Last edited by videoAI; 4th Jul 2025 at 03:44.
As always .. there is nothing wrong with my environment -
-
@ ProWo
3.4.3.05 Feedback
The normal "Scan for errors" for proper files always ends in an error, has been fixed.
The new HW acceleration and it's selection is working, for "Scan for errors" batch tasks.
Could the "Batch tasks" page stay open when you use the "Clear tasks" button and there are no remaining tasks?
Stay open retains the last setting. But not for subtitles. -
I don't want this because the user with the blank page cannot determine which action should be performed for the file.
For the “Scan for errors” batch, the page is initialized in a certain way that only allows this action for the added files.
All other actions for the batch tasks are defined in other sections.
Stay open retains the last setting. But not for subtitles. -
When you load a source file and go to the Main Page, Various, Scan for errors and activate Batch scan, you get this empty "first opening" grid/page:
[Attachment 87700 - Click to enlarge]
When you add one or multible files
[Attachment 87701 - Click to enlarge]
with a wrong HW acceleration, you could clear all tasks and start with the same empty "first opening" grid/page.
Actually you get transfered to the Main Page when you clear all tasks.
It would be better to stay on the “Scan for errors” batch page only in that case.
But that is not important.
You could use a different color for the background of the tasks for the error scan to make it clear what is special.
---
>> davidt1: Also, How about memorizing the default for a chosen language for the streams? My default language is English (en, eng). It would be great if Clever automatically checks "default" if the language is English, or the last language checked.
> ProWo: our default language is english, but for other users it is french, spanish, german, hindi and so on.
Not useful.
Alternatively, the first subtitle stream added to the mux grid (or via drag and drop) could be marked as the default stream.
So everyone can control his language default that way. Source files and processed streams are not affected.
Maybe this is worth a try? -
@ProWo
I agree with Findu on this one ..
Think about it; you come to the batch tasks page, you are going to start from top to bottom,
you drag all your files in, then you check out the H/W acceleration drop down, which tells you
you need to select me first before adding your files !!!! so you clear all tasks in the grid, and
suddenly you are taken back to clever main page !!!!??? it doesn't make sense at all
kindly fix, and
- allow grid to stay open after clear tasks.
- allow H/A drop selection at any time, and default to 'auto'.
Also, a small change request ..
currently you can drag a folder to the tasks grid, it is treated as a single task, clicking execute takes
you to clever main page as well.
Wouldn't make perfect sense to add the files from the folder to the grid instead.
As always .. there is nothing wrong with my environment -
@ ProWo
3.4.3.06 Feedback
>> Could the "Batch tasks" page stay open when you use the "Clear tasks" button and there are no remaining tasks?.
> I don't want this because the user with the blank page cannot determine which action should be performed for the file.
For the “Scan for errors” batch, the page is initialized in a certain way that only allows this action for the added files.
All other actions for the batch tasks are defined in other sections.
With the current implementation of "Batch tasks," you're right about the "Clear tasks" behavior.
Preselecting the HWA type for "Scan for errors" files also makes sense and should remain at None by default, as this is likely faster for most users than using the GPU. No changes are necessary here!
NEW:
If unprocessed "scan for errors" tasks are in the "normal" batch grid (not the "scan for errors" batch grid), inheritance/replication of batch 0 is always that wrong entry (switch task 0 has no influence):
input.mp4??-hwaccel -i "C:\Users\Findu\input.mp4" -f nullLast edited by Findu; 3rd Jul 2025 at 05:44.
-
Changed. Stays open now.
Preselecting the HWA type for "Scan for errors" files also makes sense and should remain at None by default
NEW:
If unprocessed "scan for errors" tasks are in the "normal" batch grid (not the "scan for errors" batch grid), inheritance/replication of batch 0 is always that wrong entry (switch task 0 has no influence)
To return to the command line of the first batch for further files,
all “scan for error” batches must be deleted and the batch tasks window closed.
The next time you open it (with normal batches), normal mode will be active again.Last edited by ProWo; 3rd Jul 2025 at 10:34. Reason: typo
-
Adding folders is now prevented.
When you load a source file and go to the Main Page, Various,
Scan for errors and activate Batch scan, you get this empty "first opening" grid/page
When you add one or multiple files
with a wrong HW acceleration, you could clear all tasks and start with the same empty "first opening" grid/page.
Actually you get transferred to the Main Page when you clear all tasks.
It would be better to stay on the “Scan for errors” batch page only in that case.
You could use a different color for the background of the tasks for the error scan to make it clear what is special -
@ ProWo
3.4.3.07 Feedback
The Scan for erros Batch tasks work exactly as described. The adapted functionality is easy to understand and, so far, error-free. Thank you very much. -
As always .. there is nothing wrong with my environment
-
As always .. there is nothing wrong with my environment
-
@ProWo
Cosmetic change:
please align terminology for clarity; how about using:
- 'Check/Clear' for selections
- 'Remove' for grid task removal
- 'Delete' for OS level file action.
Using delete to mean remove is confusing.
[Attachment 87707 - Click to enlarge]As always .. there is nothing wrong with my environment -
I would have to reduce the size of the datagrid (I can't enlarge it due to lack of space)
and I don't want to do that because of the window design.
Does 'auto' check if you have a GPU, or not?
I am trying to determine if there is really a need for 'none'.
Care to explain how both options work exactly?
With auto, HWA is used (if available) and part of the task processing is handled by GPU.
To find the best setting for your computer you can create a task with any of the options.
Execute it and control the speed indicated in the ffmpeg line.
If a setting unsuitable for your hardware is selected, the task is terminated immediately and an error file is written for this task.
In this way, you can find the fastest setting for your computer.
The last setting remains saved.
Cosmetic change:
please align terminology for clarity; how about using:
- 'Check/Clear' for selections
- 'Remove' for grid task removal
- 'Delete' for OS level file action.
Using delete to mean remove is confusing.
The selected task will be removed from the grid and deleted.
The associated files are of course not deleted. -
if anyone is curious how I fixed the damaged files, here is the code:
Edit: updated the code; Jul 19
Code:@echo off echo == Fix all .mp4 files in folder, output to Video-Log.txt == setlocal enabledelayedexpansion :: Loop through all .mp4 files in the current directory for %%f in (*.mp4) do ( echo %%f echo %%f >> Video-Log.txt :: Start time set "start_time=!time!" echo Start at !start_time! echo Start at !start_time! >> Video-Log.txt :: Run command to fix the file ffmpeg -hide_banner -v 16 -i "%%f" -c:v libx264 -crf 33 -threads 4 -c:a aac -err_detect ignore_err -y "%%~nf_ok%%~xf" :: End time set "end_time=!time!" echo End at !end_time! echo End at !end_time! >> Video-Log.txt :: Check if the command was successful if !errorlevel! neq 0 ( echo Failed to process file >> Video-Log.txt ) else ( echo Successfully processed file >> Video-Log.txt ) echo ================================================ >> Video-Log.txt ) endlocal if exist Video-Log.txt (start "" /I Video-Log.txt) pause
Last edited by videoAI; 18th Jul 2025 at 21:33.
As always .. there is nothing wrong with my environment -
Wow, you folks are way smarter than me. I am using Clever just to mux subtitles.
Is it possible to start the app on the last page used? This would save me a click.
How about keyboard shortcuts?
Thanks. -
clever FFmpeg-GUI is much more than just a muxer.
I have already added the multiplex button on the start page for you, let's leave it at that. -
@ ProWo
For "Hardware decoding" at the Video encoding page, you're currently using auto, which works reliably on my systems. Could you also use the new "Hardware acceleration" selection from Scan for errors here?
But please only if it adds value for you! -
I had the same experience when testing hardware acceleration (AMD & Nvidia) last November.
My Ryzen 5 7530U is significantly slower with hardware acceleration when scanning for errors.
How is it with your Intel laptop? -
Last edited by ProWo; 4th Jul 2025 at 10:41.
-
@ ProWo
3.4.3.08 Feedback
With amf I get Invalid argument. I will look into this...
When all scan for error tasks have been processed, the page look like this so you can not add new tasks.
[Attachment 87712 - Click to enlarge]
Sorry. So this is what it looks like when you insert two tasks.Last edited by Findu; 4th Jul 2025 at 10:00.
-
Don't worry about amf!
EDIT:
Re-tesed HW acceleration with ffmpeg 7.1.1 (March 2025)
HW auto defaults to dxva2. d3d11va is similarly fast.
Depending on the input, "HW scan for errors" lose 50-80% of the speed compared to 12 CPU threads.
SW encoding lose 10-20% in combination with HW decoding.
HW encoding lose 35-45% in combination with HW decoding.
Still faster than my old 660 Ti with a fraction of the energy.Last edited by Findu; 4th Jul 2025 at 14:51.
-
Hardware acceleration leverages the GPU or other specialized hardware to offload processing tasks from the CPU,
resulting in faster and more efficient processing.
Hardware Acceleration for *** Decoding ***
Uses the GPU to decode video streams, which can significantly speed up the process, especially for high-resolution videos.
FFmpeg supports various hardware acceleration APIs, such as NVDEC / VDPAU (NVIDIA), and VAAPI / QSV (Intel).
VDPAU (Video Decode and Presentation API for Unix) is a library and API for video decode acceleration on Unix-like operating systems.
Decoding with NVDEC / VDPAU (NVIDIA)
Need to have the appropriate NVIDIA drivers and FFmpeg built with NVDEC / VDPAU support.
Code:ffmpeg -hwaccel nvdec -i input.mp4 -c:v copy -f null - ffmpeg -hwaccel vdpau -c:v vdpau -i input.mp4 -f null -
Need to have the appropriate Intel drivers and FFmpeg built with VAAPI / QSV support.
Code:ffmpeg -hwaccel vaapi -i input.mp4 -c:v copy -f null - ffmpeg -hwaccel qsv -c:v h264_qsv -i input.mp4 -c:v rawvideo -pix_fmt nv12 output.yuv
Uses the GPU to encode video streams, which can be much faster than software encoding, especially for high-resolution videos.
FFmpeg supports various hardware acceleration APIs for encoding, such as NVENC (NVIDIA), VAAPI (Intel), and QSV (Intel Quick Sync Video).
Encoding with NVENC (NVIDIA)
Need to have the appropriate NVIDIA drivers and FFmpeg built with NVENC support.
Code:ffmpeg -i input.mp4 -c:v h264_nvenc -preset slow -b:v 5M output.mp4
Need to have the appropriate Intel drivers and FFmpeg built with VAAPI / QSV support.
Code:ffmpeg -i input.mp4 -c:v h264_vaapi -preset slow -b:v 5M output.mp4 ffmpeg -i input.mp4 -c:v h264_qsv -preset veryfast -b:v 2M -c:a copy output.mp4
Useful for transcoding videos efficiently.
Transcoding with NVDEC and NVENC (NVIDIA)
Code:ffmpeg -hwaccel nvdec -i input.mp4 -c:v h264_nvenc -preset slow -b:v 5M output.mp4
*** Decoding *** with AMD Hardware Acceleration
Code:ffmpeg -hwaccel amf -c:v h264_amf -i input.mp4 -c:v copy output.mp4 ffmpeg -hwaccel amf -c:v hevc_amf -i input.mp4 -c:v copy output.mp4
Code:ffmpeg -i input.mp4 -c:v h264_amf -preset fast -b:v 2M output.mp4 ffmpeg -i input.mp4 -c:v hevc_amf -preset fast -b:v 2M output.mp4
Code:ffmpeg -hide_banner -hwaccels
ex:
cuda
vaapi
dxva2
qsv
d3d11va
opencl
vulkan
d3d12va
HWA; Supported Hardware
--------------------------------
CUDA; NVIDIA GPUs
VA-API; Intel integrated GPUs, AMD GPUs
DXVA2; Windows systems with compatible GPUs (NVIDIA, AMD, Intel)
QSV; Intel integrated GPUs
D3D11VA; Windows systems with compatible GPUs (NVIDIA, AMD, Intel)
OpenCL; Wide range of GPUs and CPUs (NVIDIA, AMD, Intel, etc.)
Vulkan; Wide range of GPUs (NVIDIA, AMD, Intel, etc.)
D3D12VA; Windows systems with compatible GPUs (NVIDIA, AMD, Intel)Last edited by videoAI; 5th Jul 2025 at 03:30.
As always .. there is nothing wrong with my environment -
General Performance Comparison
DXVA2:
Pros: Widely supported, low latency, efficient for playback.
Cons: Older API, fewer optimizations compared to newer APIs.
D3D11VA:
Pros: Better performance than DXVA2, more features, better integration with Direct3D 11.
Cons: May not be as efficient as D3D12VA for high-performance tasks.
D3D12VA:
Pros: Highest performance, most efficient use of GPU resources, low-level control.
Cons: Requires more complex setup and may have a steeper learning curve.
As always .. there is nothing wrong with my environment
Similar Threads
-
GUI for ffmpeg x265 encoder
By david55 in forum Video ConversionReplies: 15Last Post: 11th May 2025, 09:15 -
New small GUI for FFmpeg
By ProWo in forum Video ConversionReplies: 29Last Post: 24th Feb 2024, 02:06 -
Best GUI for ffmpeg encoding
By usta in forum Video ConversionReplies: 25Last Post: 17th Jan 2019, 11:23 -
GUI for FFMpeg amf?
By Micky in forum Video ConversionReplies: 0Last Post: 14th Jan 2018, 07:45 -
dmMediaEncoder v1.8.0 - crossplatform FFMPEG GUI
By mdalacu in forum Video ConversionReplies: 38Last Post: 29th Sep 2015, 00:19