View Full Version : dmMediaConverter v2.4.1
ReinerSchweinlin
18th November 2019, 23:52
Bitrate per channel - works like a charm :) Thank you very much !!!!
mdalacu
2nd January 2020, 16:22
Thanx for the help with AAC-HE :)
Bitrate in Audio per Channel:
Ok. Maybe I thought this to be too simple.. I had something like this in mind:
Stream 1: 8 Channels (7.1)
Stream 2: 2 Channels (Stereo, other language)
Stream 3: 1 Channel (Commentary)
Right now there seemes no way to convert these audiostreams in one batch to give everyone the bitrate that would be appropriate.
But if bitrate was set "per channel" in the GUI, it could be parsed to the encoder simply by multiplying with the amounts of channels (which are already known).
For example, set Bitrate per channel: 64 kbit/s
So Stream
1 gets 8 x 64 = 512 kbit/s
2 gets 2 x 64 = 128...
3 gets 1 x 64 ...
Sounds simple, but probably isnīt easy to implement.
About -grain:
I didn't try within ffmpeg, but presets, tune settings etc... can be set in ffmpeg for x265 and x264.. And since both have the -grain option, I thought this would be a no brainer. Why should the ffmpeg implementation of x265 leave this out?
Addition: Just noticed that ripbot is using ffmpeg as well - and here --grain can be used. Maybe this helps?
Hi, i have rechecked and to my surprise now grain and animation profiles for x265 are present, so i have added them. ;)
I will not post a intermediate release, just wait for v2.4.1, it's around the corner..:-))
mdalacu
5th January 2020, 12:14
Here we go!
https://dmsimpleapps.blogspot.com/2014/04/dmmediaconverter.html
Windows and x64 linux versions are up!
I hope you enjoy it and like always, please provide feedback! ;)
2020.01.05 - v2.4.1 - Added eac3 audio codec
- Added set audio bitrate per channel. It is very useful in bulk operation where you can have multiple files with different number of channels. You activate this option in settings. I use it for every job type now and i recommend it turning it on.
- Added tunes grain and animation for x265 like x264 had.
- HW Video decoding. You can squeeze some more fps with this. You can find this in Options.
- You can now put some custom option in IN and OUT section of ffmpeg commands. In Options those are permanent, in More.. are only for that run. Use the hints for an example.
- Stream disposition. Now you can set like default or forced flag for a stream (audio, subtitle, etc.) Just right click on that stream and you will see the options. Green means default, bold means forced.
- Some bugs corrected. Ex. opening the app and had Enabled and Copy columns with width 0.
- Updated ffmpeg version. Using 4.2.1 now. For x64 Linux I also provide an separated ffmpeg archive compiled with libmfx support, Intel Quick Sync. You can use this only on Ubuntu version 19.04 and up. You need also to install the necessary librarys.
sudo apt-get install libmfx1 libmfx-tools
On Windows i bundle the up with ffmpeg complied for x64, a little more speed. If you need 32bit then download the provided archive and replace ffmpeg binarys.
manolito
6th January 2020, 01:16
:thanks:
Tested under WinXP using the current XP compatible FFmpeg version by Reino from here:
https://ffmpeg.zeranoe.com/forum/viewtopic.php?f=3&t=6930#p15446
No problems whatsoever, the Fraunhofer LibFDK-AAC audio encoder also works fine (after you enable it in the dmMediaConverter.ini file in the local user folder by setting "AudioEnablelibFDK=0" to 1).
Cheers
manolito
mdalacu
6th January 2020, 06:23
:thanks:
Tested under WinXP using the current XP compatible FFmpeg version by Reino from here:
https://ffmpeg.zeranoe.com/forum/viewtopic.php?f=3&t=6930#p15446
No problems whatsoever, the Fraunhofer LibFDK-AAC audio encoder also works fine (after you enable it in the dmMediaConverter.ini file in the local user folder by setting "AudioEnablelibFDK=0" to 1).
Cheers
manolito
Thank you Manolito! :-)
Bigmango
6th January 2020, 11:27
Thank you sooo much for this great app.
Question : is there any reason the frauenhofer aac isn't an option toggle in the gui ?
And as it is of higher quality than the default aac, a visual option that shows if it is in use (=supported by the active ffmpeg library) would be nice.
Thanks!
mdalacu
6th January 2020, 12:29
Thank you sooo much for this great app.
Question : is there any reason the frauenhofer aac isn't an option toggle in the gui ?
And as it is of higher quality than the default aac, a visual option that shows if it is in use (=supported by the active ffmpeg library) would be nice.
Thanks!
Some legal stuff...
manolito
7th January 2020, 00:34
From trac.ffmpeg:
The license of libfdk_aac is not compatible with GPL, so the GPL does not permit distribution of binaries containing incompatible code when GPL-licensed code is also included. Therefore this encoder have been designated as "non-free", and you cannot download a pre-built ffmpeg that supports it. This can be resolved by compiling ffmpeg yourself.
So there is no doubt that FFmpeg binaries with built-in libfdk_aac cannot be distributed without violating the GPL. For the devs who want lib_fdk support the solution is to compile FFmpeg with libfdk support enabled, but without actually including any libfdk code within the FFmpeg binary.
Legally this may be a grey area, I am no lawyer and have no substantiated opinion on this. To me it looks similar as when FFmpeg is used by some commercial software. Even if this commercial software does not work without the GPLed FFmpeg, the GPL is not violated as long as the FFmpeg code is not modified to accommodate the commercial software.
The 2 FFmpeg distributions I am aware of which do it this way are the one by Reino which I have linked to, and the other one is by Sherpya at
https://oss.netfarm.it/mplayer/
//EDIT//
To toggle the LibFDK option in the GUI automatically you could write a small batch file which checks if FFmpeg supports LibFDK (just run "ffmpeg.exe -buildconf", redirect the output to a temp file and search this file for the string "--enable-libfdk-aac") , then modifies dmMediaConverter.ini accordingly and finally calls dmMediaConverter.exe. Should be easy...
Bigmango
7th January 2020, 03:11
To toggle the LibFDK option in the GUI automatically you could write a small batch file which checks if FFmpeg supports LibFDK (just run "ffmpeg.exe -buildconf", redirect the output to a temp file and search this file for the string "--enable-libfdk-aac") , then modifies dmMediaConverter.ini accordingly and finally calls dmMediaConverter.exe. Should be easy...
+1
Yes, this would be nice, with a visual option somewhere in the GUI to show it is enabled.
Many thanks.
mdalacu
7th January 2020, 07:03
The problem is that i do distribute a ffmpeg with libfdk prebuild ...but i do not make it easily available in GUI...I hope this way will not get me into trouble. (wishful thinking...i know)
jones1913
7th January 2020, 20:18
@mdalacu
Thank you very much for adding a qt5 version. This is much better now on scaled displays.
One small problem though: The actual CRF value is invisible (see screenshot).
Apparently the slider is a bit too wide.
https://abload.de/thumb/screenshot_20200107-19ck9k.png (https://abload.de/image.php?img=screenshot_20200107-19ck9k.png)
for comparison:
https://abload.de/thumb/screenshot_20200107-1fmjld.png (https://abload.de/image.php?img=screenshot_20200107-1fmjld.png)
mdalacu
8th January 2020, 07:55
@mdalacu
Thank you very much for adding a qt5 version. This is much better now on scaled displays.
One small problem though: The actual CRF value is invisible (see screenshot).
Apparently the slider is a bit too wide.
https://abload.de/thumb/screenshot_20200107-19ck9k.png (https://abload.de/image.php?img=screenshot_20200107-19ck9k.png)
for comparison:
https://abload.de/thumb/screenshot_20200107-1fmjld.png (https://abload.de/image.php?img=screenshot_20200107-1fmjld.png)
Hei. Thank you for testing. Unfortunately i will be out for a few days...Monday i will look into it.
stax76
8th January 2020, 08:29
@mdalacu
On Win 10 with 288 DPI the scaling is completely broken.
mdalacu
9th January 2020, 09:04
@mdalacu
On Win 10 with 288 DPI the scaling is completely broken.Yes. I know. It has it's limits.
Sent from my EVR-L29 using Tapatalk
mdalacu
13th January 2020, 14:49
@mdalacu
Thank you very much for adding a qt5 version. This is much better now on scaled displays.
One small problem though: The actual CRF value is invisible (see screenshot).
Apparently the slider is a bit too wide.
https://abload.de/thumb/screenshot_20200107-19ck9k.png (https://abload.de/image.php?img=screenshot_20200107-19ck9k.png)
for comparison:
https://abload.de/thumb/screenshot_20200107-1fmjld.png (https://abload.de/image.php?img=screenshot_20200107-1fmjld.png)
Ok, i have reuploaded the file.
Is it ok now?
Thx.
Bigmango
13th January 2020, 16:47
BUG with the Linux QT version:
After closing/exiting the app, the window closes but the process remains active in the process list. (it also slows down system shutdown/reboot as it waits 20 or 30 seconds to close it, but it survives after the system restart).
It remains there even after rebooting the PC. If I open/close it 12 times, there will be 12 processes remaining open in the process list. And they survive between system reboots.
(I'm on arch, latest KDE, QT 5.14).
The gtk version doesn't have this problem.
jones1913
13th January 2020, 18:16
Ok, i have reuploaded the file.
Is it ok now?
Thx.
Yeah, it's perfect now. :thanks::thanks::thanks:
BUG with the Linux QT version:
After closing/exiting the app, the window closes but the process remains active in the process list. (it also slows down system shutdown/reboot as it waits 20 or 30 seconds to close it, but it survives after the system restart).
It remains there even after rebooting the PC. If I open/close it 12 times, there will be 12 processes remaining open in the process list. And they survive between system reboots.
(I'm on arch, latest KDE, QT 5.14).
The gtk version doesn't have this problem.
I have not noticed such behavior on Manjaro Linux (Arch based). It is hard to imagine that a process can survive a clean reboot.
Is it possible that KDE saved your session on shutdown and restored it at the next login? (Pure speculation, I don't use KDE myself)
Bigmango
13th January 2020, 19:31
I have not noticed such behavior on Manjaro Linux (Arch based). It is hard to imagine that a process can survive a clean reboot.
Is it possible that KDE saved your session on shutdown and restored it at the next login? (Pure speculation, I don't use KDE myself)
Same problem on MANJARO KDE.
1. Exit the APP (QT version) : the app window closes.
2. Look in the tasks manager : the process is still running.
3. After system restart, when I log into the desktop the dmmediaconver app windows open (= it launches the same number of app instances as the number that where running before the reboot).
(the GTK version doesn't have this problem).
And regarding the KDE sessions : I don't know,... I never had this with any other app...? . (But anyway, if right this is another thing that doesn't have anything to do with the Bug).
Thanks for the feedback.
mdalacu
14th January 2020, 06:32
Same problem on MANJARO KDE.
1. Exit the APP (QT version) : the app window closes.
2. Look in the tasks manager : the process is still running.
3. After system restart, when I log into the desktop the dmmediaconver app windows open (= it launches the same number of app instances as the number that where running before the reboot).
(the GTK version doesn't have this problem).
And regarding the KDE sessions : I don't know,... I never had this with any other app...? . (But anyway, if right this is another thing that doesn't have anything to do with the Bug).
Thanks for the feedback.
Sorry but i can not reproduce your problem. So i can not help you. The app exited without an problem, cleanly, on 2 diffrent sistems Ubuntu with xfce and Kubuntu with kde.
An application can not survive an reboot. As jones1913 says, your desktop manager saves all the application in a list and reopens all that list after reboot. You have to find the setting and disable it.
Use this: System Settings->Startup and Shutdown->Desktop Session->On Login->Start with an empty session.
Bigmango
15th January 2020, 09:21
Sorry but i can not reproduce your problem. So i can not help you. The app exited without an problem, cleanly, on 2 diffrent sistems Ubuntu with xfce and Kubuntu with kde.
An application can not survive an reboot. As jones1913 says, your desktop manager saves all the application in a list and reopens all that list after reboot. You have to find the setting and disable it.
Use this: System Settings->Startup and Shutdown->Desktop Session->On Login->Start with an empty session.OK, so the reboot persistance issue is only further proof of the BUG in the QT version : the app only closes the window but doesn't exit).
Because:
a) The GTK version exists cleanly.
b) ALL of the other apps on my system, including KDE and QT apps exit cleanly (for example mkvtoolnix-gui is using QT, and others as well).
c) dmMediaConverter QT version is the ONLY app that remains running in the task manager process list AFTER exiting the app (the window closes properly).
(I have tried with versions kdeframework 5.65 and 5.66, qt 5.13 and 5.14)
Are you sure you can't see the app in the running process list, after the window has closed?
Perhaps this could be a bug with the Pascal QT bindings the QT version is using.
Thanks for the feedback.
Bigmango
15th January 2020, 10:23
The debugging output actually shows that the QT version is crashing on exit (window closes but process remains in process list, as explained).
Here is the strace output as soon as I select File>Exit (starting with --- SIGSEGV):
munmap(0x7f01ec0a1000, 32768) = 0
msync(0x7f01e67f0000, 10547304, MS_ASYNC|MS_INVALIDATE) = 0
munmap(0x7f01e67f0000, 10547304) = 0
--- SIGSEGV {si_signo=SIGSEGV, si_code=SI_KERNEL, si_addr=NULL} ---
rt_sigprocmask(SIG_UNBLOCK, [SEGV], NULL, 8) = 0
mmap(NULL, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f01f51ba000
mmap(NULL, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f01f51b2000
write(2, "An unhandled exception occurred "..., 54An unhandled exception occurred at $00007F01F392425C:
) = 54
write(2, "EAccessViolation: \n", 19EAccessViolation:
) = 19
write(2, " $00007F01F392425C\n", 20 $00007F01F392425C
) = 20
write(2, "\n", 1
) = 1
write(7, "\1\0\0\0\0\0\0\0", 8) = 8
futex(0x2826ea8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x2848270, FUTEX_WAIT_PRIVATE, 0, NULL
And if needed, here is what gets added to the last line (after NULL) after I terminate the process in the task manager:
futex(0x2848270, FUTEX_WAIT_PRIVATE, 0, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGTERM {si_signo=SIGTERM, si_code=SI_USER, si_pid=2609, si_uid=1000} ---
+++ killed by SIGTERM +++
Bigmango
15th January 2020, 17:05
Please add "-compression_level" for FLAC (0 to 12) (default is 5).
If I add '-compression_level 12' in the "More" field under FLAC I get this error:
AVFilterGraph @ 0x563a30080dc0] No such filter: '-compression_level 12'
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:1
Thanks.
mdalacu
16th January 2020, 07:12
Please add "-compression_level" for FLAC (0 to 12) (default is 5).
If I add '-compression_level 12' in the "More" field under FLAC I get this error:
AVFilterGraph @ 0x563a30080dc0] No such filter: '-compression_level 12'
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:1
Thanks.
Hi. Regarding previous questions, yes i am sure, no zombi processes after exiting the app.
The MORE fileld in audiio stream is ment to enter additional audio filters.
I have uploaded a test version with flac compression level. Just use the slider but as fas as i could test the size benefits are small above the default value of 5...only time in increasing dramatically. The file that you are after is : dmMediaConverter_v2.4.2_TEST.zip
Please test it and provide feedback.
Thx.
Bigmango
16th January 2020, 10:59
I have uploaded a test version with flac compression level. Just use the slider but as fas as i could test the size benefits are small above the default value of 5...only time in increasing dramatically. The file that you are after is : dmMediaConverter_v2.4.2_TEST.zip
Please test it and provide feedback.
Thx.
Great! It's working correctly.
But the text "Audio constant quality level" is wrong. It should be changed to "Audio codec compression level".
FLAC is a lossless codec = the quality never changes.
Many thanks !
Bigmango
16th January 2020, 11:42
Hi. Regarding previous questions, yes i am sure, no zombi processes after exiting the app.
As I have now tested this in several systems, I'm sure it is there, but you don't see it.
There is no zombie process. (on exit the QT app crashes with an access violation (as per the above posted strace log) and continues to run normally in ram after the window closes).
With the normal "top" you most of the time don't see it, because it is way below.
To see it, you need a task manager that you can sort alphabetically, and look for the app file name (the process runs as the app file name).
Or, you can also:
1. open the QT app
2. note down the proccess PID
3. run "top -p PID" : you will see the process alone
4. close the QT app window
5. you will see the process still running
You can also :
1. run "strace dmmediaconverter-qt"
2. close the app window
3. you should see an access violation in the log
This was tested with the qt-pascal binding lazarus IDE library version qtpas 2.6.r61322, qt 5.13.2 and 5.14 and kdeframework 5.65 and 5.66.
mdalacu
16th January 2020, 14:32
Great! It's working correctly.
But the text "Audio constant quality level" is wrong. It should be changed to "Audio codec compression level".
FLAC is a lossless codec = the quality never changes.
Many thanks !I know it is a lossless codec and i know the text it is wrong but for a quick feature add implies to many changes.
I have searched for the process with "ps -ef | grep dmmed" ...nothing. :) The only difference is that i have reneamed the binary as it's gtk version...without the .qt part. I am not at a computer now to test this....
Sent from my EVR-L29 using Tapatalk
Bigmango
17th January 2020, 08:35
I have searched for the process with "ps -ef | grep dmmed" ...nothing. :) The only difference is that i have reneamed the binary as it's gtk version...without the .qt part. I am not at a computer now to test this....
Some more thoughts on this :
1. If after testing this, if you really don't have the issues, including with the strace output, then I guess it could be a bug with this qtpas library version or support of the new qt versions.
(this would require to report a bug to Lazarus with the log info I posted above).
2. A quick search on the Lazarus forum shows someone had a similar issue. The fix was that one line had to be modified in the code. (but as your code is closed source only you can look into this).
(anyway, I'm happy all is good with the gtk version).
Thanks!
mdalacu
20th January 2020, 06:27
Some more thoughts on this :
1. If after testing this, if you really don't have the issues, including with the strace output, then I guess it could be a bug with this qtpas library version or support of the new qt versions.
(this would require to report a bug to Lazarus with the log info I posted above).
2. A quick search on the Lazarus forum shows someone had a similar issue. The fix was that one line had to be modified in the code. (but as your code is closed source only you can look into this).
(anyway, I'm happy all is good with the gtk version).
Thanks!
Hei. I have tested it using strace, no problem.
On the virtual machine that i have made the qt5 binary i had to use the latest version of qt5pas, i have compiled from source. But on the machine that i have ran strace, ubuntu 19.10, i have the default one, from the repository.
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/home/mdalacu/.config/dmMediaConverter", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/home/mdalacu/.config/dmMediaConverter/dmMediaConverter.ini", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 14
flock(14, LOCK_EX|LOCK_NB) = 0
write(14, "[GENERAL]\nTakeScreenshot=1\nUseff"..., 6133) = 6133
close(14) = 0
stat("/tmp/dmMediaConverter_20200120_072120032/", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
open("/tmp/dmMediaConverter_20200120_072120032/", O_RDONLY|O_LARGEFILE) = 14
getdents64(14, /* 2 entries */, 4096) = 48
lstat("/tmp/dmMediaConverter_20200120_072120032/.", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/tmp/dmMediaConverter_20200120_072120032/..", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=32768, ...}) = 0
getdents64(14, /* 0 entries */, 4096) = 0
close(14) = 0
rmdir("/tmp/dmMediaConverter_20200120_072120032/") = 0
munmap(0x7f17d2acf000, 32768) = 0
munmap(0x7f17d2ad7000, 32768) = 0
write(5, "\1\0\0\0\0\0\0\0", 8) = 8
munmap(0x7f17d1826000, 16842752) = 0
munmap(0x7f17d2b46000, 4980736) = 0
munmap(0x7f17d3006000, 2686976) = 0
munmap(0x7f17d3296000, 32768) = 0
munmap(0x7f17d32ae000, 1048576) = 0
munmap(0x7f17d33f6000, 32768) = 0
munmap(0x7f17d329e000, 32768) = 0
munmap(0x7f17d350e000, 1048576) = 0
munmap(0x7f17d3656000, 32768) = 0
munmap(0x7f17d3776000, 32768) = 0
munmap(0x7f17d2849000, 32768) = 0
munmap(0x7f17d28ac000, 32768) = 0
munmap(0x7f17d378e000, 32768) = 0
munmap(0x7f17d4369000, 32768) = 0
munmap(0x7f17d40e1000, 32768) = 0
munmap(0x7f17d32a6000, 32768) = 0
munmap(0x7f17d2aaf000, 32768) = 0
munmap(0x7f17d2abf000, 32768) = 0
munmap(0x7f17d3666000, 1114112) = 0
munmap(0x7f17d364e000, 32768) = 0
munmap(0x7f17d2ac7000, 32768) = 0
munmap(0x7f17d292d000, 1052672) = 0
munmap(0x7f17d381e000, 32768) = 0
munmap(0x7f17d383e000, 32768) = 0
munmap(0x7f17d2b3e000, 32768) = 0
munmap(0x7f17d01c8000, 32768) = 0
access(NULL, F_OK) = -1 EFAULT (Bad address)
munmap(0x7f17d3826000, 32768) = 0
munmap(0x7f17d2ab7000, 32768) = 0
munmap(0x7f17d4361000, 32768) = 0
munmap(0x7f17d33fe000, 1114112) = 0
munmap(0x7f17d33ae000, 262144) = 0
munmap(0x7f17d37de000, 262144) = 0
munmap(0x7f17d3836000, 32768) = 0
munmap(0x7f17d379e000, 262144) = 0
munmap(0x7f17d377e000, 32768) = 0
munmap(0x7f17d3786000, 32768) = 0
munmap(0x7f17d365e000, 32768) = 0
munmap(0x7f17d360e000, 262144) = 0
munmap(0x7f17d4371000, 32768) = 0
munmap(0x7f17d6514000, 32768) = 0
munmap(0x7f17d4937000, 262144) = 0
munmap(0x7f17d652e000, 32768) = 0
munmap(0x7f17d6526000, 32768) = 0
munmap(0x7f17d651e000, 32768) = 0
munmap(0x7f17d01c0000, 32768) = 0
munmap(0x7f17d33ee000, 32768) = 0
munmap(0x7f17d3796000, 32768) = 0
munmap(0x7f17d382e000, 32768) = 0
exit_group(0) = ?
+++ exited with 0 +++
ReinerSchweinlin
26th March 2021, 20:10
Hi, i have rechecked and to my surprise now grain and animation profiles for x265 are present, so i have added them. ;)
I will not post a intermediate release, just wait for v2.4.1, it's around the corner..:-))
I just noticed I never thanked you for this.. so:
Thank you :)
(Email notification is broken)
Fishman0919
17th August 2021, 15:35
Could you add Burn-in Subs as an option Please. I like to burn in forced subs.
If this helps... It's a ffmpeg scrip I used for Avatar Ext.... I used MakeMKV to rip the video and audio with the "eng" and forced subs
without cropping...
"D:\ffmpeg\ffmpeg.exe" -i "G:\Avatar.2009.EXTENDED.1080p.BluRay.REMUX.mkv" -metadata title="Avatar" -filter_complex "[0:0][0:3]overlay[v]" -map "[v]" -c:v libx265...
with cropping...
"D:\ffmpeg\ffmpeg.exe" -i "G:\Avatar.2009.EXTENDED.1080p.BluRay.REMUX.mkv" -metadata title="Avatar" -filter_complex "[0:0][0:3]overlay[subbed];[subbed]crop=1916:1078:2:2[v]" -map "[v]" -c:v libx265...
ReinerSchweinlin
21st September 2021, 19:18
I have a small request:
When batch transcoding, would it be possible to set "autogain" so every audio is normalized?
Thanx for considering !
JeffStronger
10th October 2021, 19:40
Hello, where can I choose 10bit color rendition, with nvenc encoding?
Fishman0919
12th March 2022, 01:18
18062
Hello, where can I choose 10bit color rendition, with nvenc encoding?
-pix_fmt yuv420p10le
Put the above code in the "Params:" line and set profile to main10
mdalacu
8th November 2022, 09:19
18062
-pix_fmt yuv420p10le
Put the above code in the "Params:" line and set profile to main10
And you can save it as a profile for a later more convenient use. ;)
mdalacu
8th November 2022, 09:35
Hi! Version v2.4.6 is up. Some bugs fixed and a new metadata import options, useful for bulk convert when you need to preserve creation_time of files for example. It will import metadata from fist added file.
For windows look for dmMediaConverter_v2.4.6_w32_ff64.zip in drive folder.
For linux just overwrite de executable with the one in GDrive without extention.
http://dmsimpleapps.blogspot.com/2014/04/dmmediaconverter.html
Please provide feedback.
Thanks.
P.S. I highly recommend to use ffmpeg binarys form JellyFin media library.
https://repo.jellyfin.org/releases/server/windows/stable/ffmpeg/jellyfin-ffmpeg_5.1.2-4-windows_win64.zip
https://repo.jellyfin.org/releases/server/ubuntu/versions/jellyfin-ffmpeg/5.1.2-4/
For linux install the deb and create simlinks so the ffmpeg and ffprobe appear in the folder indicated in "Options/Latest".
mdalacu
9th November 2022, 07:39
I have a small request:
When batch transcoding, would it be possible to set "autogain" so every audio is normalized?
Thanx for considering !
It will be present in v2.5.0. ;)
https://i.ibb.co/MCqxLRP/image.png
ReinerSchweinlin
18th November 2022, 22:02
fantastic :) You are back :)
dmmediaconverter still is one of my favourites when it comes to fast & easy batch conversions.. Since I recently got an ARC770, I am looking into QSVENC now. Last time I cheched, QSVENC from rigaya was supperior in quality than the ffmpeg implementation - but if its en par now.... then I am looking forward to blazingly fast batch encoding with dmmeediaconverter ...
jones1913
21st November 2022, 19:01
I have a small request:
When batch transcoding, would it be possible to set "autogain" so every audio is normalized?
Thanx for considering !
It will be present in v2.5.0. ;)
Hi, another great addition would be a more fine control over bulk audio encoding.
For example:
Track 1 -> copy
Track 2 -> AC3
Track 3 -> AAC
It is currently not possible if im not mistaken.
Fishman0919
24th November 2022, 15:02
It would be nice to be able to use fdk-aac if the FFmpeg used contains it.
manolito
25th November 2022, 08:58
Hi Fishman,
long time no see, good to hear from you after a long time...
After a stroke last year I am no longer the smart person I used to be, but I try to find my way back step by step. And your request for the Fraunhofer AAC encoder for dmMediaConverter sounds pamiliar to me. This AAC codec is way better than the standard AAC encoder, it just cannot be included in standard distributions due to the incompatible Fraunhofer license.
The latest version with complete documentation is here:
https://files.videohelp.com/u/172211/dmMediaConverter.zip
And Reinoīs FFmpeg versions are here:
https://rwijnsma.home.xs4all.nl/files/ffmpeg/?C=M;O=D
Good luck and cheers
Manolito
mdalacu
25th November 2022, 10:47
Hi, another great addition would be a more fine control over bulk audio encoding.
For example:
Track 1 -> copy
Track 2 -> AC3
Track 3 -> AAC
It is currently not possible if im not mistaken.
Sorry, but this is not on my TODO list.
Way to much work to implement it.
Thanks
mdalacu
25th November 2022, 10:50
It would be nice to be able to use fdk-aac if the FFmpeg used contains it.
Search for dmMediaConverter.ini and in [GENERAL] section add this line or modify it to look like this:
AudioEnablelibFDK=1
Usually the configuration file is here:
c:\Users\xxx\AppData\Local\dmMediaConverter\Config\
I hope it helps.
Fishman0919
26th November 2022, 02:03
Search for dmMediaConverter.ini and in [GENERAL] section add this line or modify it to look like this:
AudioEnablelibFDK=1
Usually the configuration file is here:
c:\Users\xxx\AppData\Local\dmMediaConverter\Config\
I hope it helps.
Thank You... should have been the first place I looked :thanks:
Fishman0919
26th November 2022, 02:14
Hi Fishman,
long time no see, good to hear from you after a long time...
After a stroke last year I am no longer the smart person I used to be, but I try to find my way back step by step. And your request for the Fraunhofer AAC encoder for dmMediaConverter sounds pamiliar to me. This AAC codec is way better than the standard AAC encoder, it just cannot be included in standard distributions due to the incompatible Fraunhofer license.
I uploaded a quite recent version from Jan. 2022 here:
https://files.videohelp.com/u/172211/Fishman.zip
Some more info:
https://forum.doom9.org/showthread.php?p=1894872#post1894872
The slightly older version with complete documentation is here:
https://files.videohelp.com/u/172211/dmMediaConverter.zip
And Reinoīs FFmpeg versions are here:
https://rwijnsma.home.xs4all.nl/files/ffmpeg/?C=M;O=D
Good luck and cheers
Manolito
Nice hearing from you also... and Thank You for the links.
Sorry to hear about your stroke and glad you are doing better my friend.
The reason I ask is because I have been building my own FFmpeg with fdk-aac for awhile now and sometimes I just don't feel like writing a script for encoding a movie. I've been using dmMediaConverter for awhile and the only reason I stopped was the lack of fdk-aac support. I should have asked sooner or maybe just looked a little.
manolito
26th November 2022, 08:00
Thanks Fishman for the kind words... ;)
Maybe a short note about how I modified the original script to remove the default low cutoff frequeny of 14 kHz because I believe that the Fraunhofer codec handles HF up to 18 kHz just fine:
@ECHO off
REM Must be compiled in Console Mode
SET FF_DRIVE=%~d0
SET FF_PATH=%~p0
%FF_DRIVE%
CD "%FF_PATH%"
SET ORIGINAL=%*
ECHO.%ORIGINAL% | %SYSTEMROOT%\system32\FIND /C "libfdk_aac" /I
IF ERRORLEVEL 1 goto quit
SET ORIGINAL=%ORIGINAL:!=_$$§§$$_%
SETLOCAL EnableDelayedExpansion
FOR /L %%a IN (0,1,9) DO SET ORIGINAL=!ORIGINAL: -vbr:a:%%a 4 = -vbr:a:%%a 4 -cutoff 18000 !
FOR /L %%a IN (0,1,9) DO (
FOR %%b IN (128 160 192 224 256 320 384 448 512 576 640 768 960 1152 1344 1536) DO (
SET ORIGINAL=!ORIGINAL: -b:a:%%a %%bk = -b:a:%%a %%bk -cutoff 18000 !
)
)
Setlocal DisableDelayedExpansion
SET ORIGINAL=%ORIGINAL:_$$§§$$_=!%
:quit
_ffmpeg.exe %ORIGINAL% 2>&1
From the FFmpeg Wiki: https://trac.ffmpeg.org/wiki/Encode/AAC
Note: libfdk_aac defaults to a low-pass filter of around 14kHz (http://wiki.hydrogenaud.io/index.php?title=Fraunhofer_FDK_AAC#Bandwidth). If you want to preserve higher frequencies, use -cutoff 18000. Adjust the number to the upper frequency limit only if you need to; keeping in mind that a higher limit may audibly reduce the overall quality.
I use this setting for some time now without ever experiencing any problms.
Cheers
manolito
Fishman0919
26th November 2022, 17:55
Thanks Fishman for the kind words... ;)
Maybe a short note about how I modified the original script to remove the default low cutoff frequeny of 14 kHz because I believe that the Fraunhofer codec handles HF up to 18 kHz just fine:
@ECHO off
REM Muss im Console Modus kompiliert werden
SET FF_DRIVE=%~d0
SET FF_PATH=%~p0
%FF_DRIVE%
CD "%FF_PATH%"
SET ORIGINAL=%*
ECHO.%ORIGINAL% | %SYSTEMROOT%\system32\FIND /C "libfdk_aac" /I
IF ERRORLEVEL 1 goto quit
SET ORIGINAL=%ORIGINAL:!=_$$§§$$_%
SETLOCAL EnableDelayedExpansion
FOR /L %%a IN (0,1,9) DO SET ORIGINAL=!ORIGINAL: -vbr:a:%%a 4 = -vbr:a:%%a 4 -cutoff 18000 !
FOR /L %%a IN (0,1,9) DO (
FOR %%b IN (128 160 192 224 256 320 384 448 512 576 640 768 960 1152 1344 1536) DO (
SET ORIGINAL=!ORIGINAL: -b:a:%%a %%bk = -b:a:%%a %%bk -cutoff 18000 !
)
)
Setlocal DisableDelayedExpansion
SET ORIGINAL=%ORIGINAL:_$$§§$$_=!%
:quit
_ffmpeg.exe %ORIGINAL% 2>&1
From the FFmpeg Wiki: https://trac.ffmpeg.org/wiki/Encode/AAC
Note: libfdk_aac defaults to a low-pass filter of around 14kHz (?details). If you want to preserve higher frequencies, use -cutoff 18000. Adjust the number to the upper frequency limit only if you need to; keeping in mind that a higher limit may audibly reduce the overall quality.
I use this setting for some time now without ever experiencing any problms.
Cheers
manolito
Thank You kind sir.... :thanks:
manolito
10th January 2023, 08:40
It will be present in v2.5.0. ;)
https://i.ibb.co/MCqxLRP/image.png
This post is over 2 months old, any ETA for v2.5.0?
One thing I could not figure out. Is there an easy way to add chapters (only simple chapters after a fixed time) within dmMediaConverter? I cannot find any option to do that, so I always use a different software (MkvToolNix) to achieve this in another conversion step.
Thanks again for this very useful software, I use it almost every day...
Cheers
manolito
mdalacu
11th January 2023, 08:25
This post is over 2 months old, any ETA for v2.5.0?
One thing I could not figure out. Is there an easy way to add chapters (only simple chapters after a fixed time) within dmMediaConverter? I cannot find any option to do that, so I always use a different software (MkvToolNix) to achieve this in another conversion step.
Thanks again for this very useful software, I use it almost every day...
Cheers
manolito
Hi. Sorry but no chapter editor yet...i have never used chapters ...:o
Please test autogain and provide feedback.
Just overwrite the exe file with "dmmediaconverter.exe" from here:
https://drive.google.com/drive/folders/0B1MiTYJef5a9TG9kMC04WWE3YkU?resourcekey=0-FSrK63MmseEb3RZBIYGg9A&usp=sharing
Thx
manolito
11th January 2023, 17:48
Hi. Sorry but no chapter editor yet...i have never used chapters ...:o
I do need chapters to make up for some stupid players which provide no way to navigate within longer clips.
Please test autogain and provide feedback.
Not sure what exactly you want me to test...
I tested three different clips. First I let the software determine the peak levels and determine the correction value. Then I started the encode and grabbed the ffmpeg command line. The results were identical for all three source files between the latest test version and the older version 2.4.1 . Hope this helps...
Cheers
manolito
mdalacu
11th January 2023, 18:06
I do need chapters to make up for some stupid players which provide no way to navigate within longer clips.
Not sure what exactly you want me to test...
I tested three different clips. First I let the software determine the peak levels and determine the correction value. Then I started the encode and grabbed the ffmpeg command line. The results were identical for all three source files between the latest test version and the older version 2.4.1 . Hope this helps...
Cheers
manolito
Hi!
Just to be clear, we are talking about Bulk mode, right?
Thanks!
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.