Avidemux Forum

Avidemux => Windows => Topic started by: chairman.faust on August 21, 2019, 01:49:50 PM

Title: x265 missing, 'null' is in its place
Post by: chairman.faust on August 21, 2019, 01:49:50 PM
Does avidemux require GPU hardware for x265 to work? I'm trying to use this on a Hyper-V virtual machine, if it requires hardware I can look into getting a dedicated GPU and pass it through, but i was counting on just using CPU power... (32 core host, all cores are presented to the VM)

In any case it seems that the x265 option under video is missing... I only have 'null' as a choice.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 21, 2019, 02:01:55 PM
Quote from: chairman.faust on August 21, 2019, 01:49:50 PM
Does avidemux require GPU hardware for x265 to work?

No, it doesn't. The HW accelerated decoding, indeed, needs a display.

Quote
In any case it seems that the x265 option under video is missing... I only have 'null' as a choice.

Damaged installation? Anyway, I suspect that what you try to do is completely untested.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 21, 2019, 02:09:03 PM
By the way, does "null in its place" mean that null is the only video "encoder" present? Or is it really just x265 missing from the list?

There was a report in the French section of the forum about x265 encoder missing, which I absolutely can't reproduce either with the official VC++ release build or with an earlier nightly.
Title: Re: x265 missing, 'null' is in its place
Post by: chairman.faust on August 21, 2019, 02:14:00 PM
Quote
No, it doesn't. The HW accelerated decoding, indeed, needs a display.

ok good to know... i will not be doing anything HW related

Quote
Damaged installation? Anyway, I suspect that what you try to do is completely untested.

I first tried this on Server 2019 and then tried it on a Windows 10 install... both instances presented the same problem. While I realize this is completely untested, it should work as I run avidemux just fine on my Windows 10 laptop.

If there is anything I can do to provide logs or troubleshoot this issue, I will do so gladly.

Quote
By the way, does "null in its place" mean that null is the only video "encoder" present? Or is it really just x265 missing from the list?

It appears that only the x265 option is missing from the video section... the word null is there instead and it cant be configured. I've attached a pic
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 21, 2019, 02:25:44 PM
"null" is not in x265 place, it is in its own place, but x265 is indeed missing. Is the plugin dll videoEncoders\qt5\libADM_ve_x265_QT5.dll (or a similar filename) completely missing? Have you verified the checksum (at least md5 one) for the installer?
Title: Re: x265 missing, 'null' is in its place
Post by: chairman.faust on August 21, 2019, 02:28:49 PM
its there
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 21, 2019, 02:30:23 PM
Quote from: chairman.faust on August 21, 2019, 02:14:00 PM
If there is anything I can do to provide logs or troubleshoot this issue, I will do so gladly.

Please just launch Avidemux, close it and attach the file %localappdata%\avidemux\admlog.txt to your reply.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 21, 2019, 02:32:32 PM
Why are the .lib files there?? I don't think they should have been packaged (no idea whether it is related in any way).
Title: Re: x265 missing, 'null' is in its place
Post by: chairman.faust on August 21, 2019, 02:37:17 PM
Here is the adm log... also MD5 checks out
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 21, 2019, 02:53:20 PM
Thank you, now it is becoming interesting:

[videoEncoder6]Symbol loading failed for C:\Program Files\Avidemux 2.7 VC++ 64bits\plugins\videoEncoders/qt5/libADM_ve_x265_QT5.dll
C:\Program Files\Avidemux 2.7 VC++ 64bits\plugins\videoEncoders/qt5/libADM_ve_x265_QT5.dll:CannotLoad


I get md5 SHA-1 f3a13e044b0d1a622442c27d6abb73eb86827a42 for this dll file. What do you get on your system?

(MD5: 2829d8e8edba01e06e5a99b73d88505a)
Title: Re: x265 missing, 'null' is in its place
Post by: chairman.faust on August 21, 2019, 02:57:45 PM
f3a13e044b0d1a622442c27d6abb73eb86827a42

looks the same
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 21, 2019, 03:02:10 PM
Yes, the same. A complete mystery so far.
Title: Re: x265 missing, 'null' is in its place
Post by: chairman.faust on August 21, 2019, 03:20:43 PM
well if you need me to run or test anything let me know... ive got a completely disposable Windows 10 VM we can destroy (latest version 1903)
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 21, 2019, 03:42:15 PM
Just for fun of it: is the MinGW release build (r190814) or the latest nightly from https://avidemux.org/nightly/win64/ capable of loading its own x265 plugin?
Title: Re: x265 missing, 'null' is in its place
Post by: chairman.faust on August 21, 2019, 03:52:30 PM
yes! I tried the 819 build... and its there... null is also at the bottom as well
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 21, 2019, 04:08:52 PM
Well, good that the MinGW build works. I have no idea ATM why this is broken in VC++ builds for some users.
Title: Re: x265 missing, 'null' is in its place
Post by: chairman.faust on August 21, 2019, 04:16:47 PM
I really appreciate you taking the time to look at it... I'd be lost with out this app... I used handbrake for a long time but Avidemux generally creates smaller files sizes for identical settings and i have the ability to edit the files (just home videos)

Thanks again! I'll run with the nightly build for now
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 22, 2019, 11:00:16 PM
I have exactly the same problem. "glad" to find this topic.

What happened is: i launched avidemux 2.7.3 and got the update notification. I followed the update option, downloaded v2.7.4 and installed it, only to discover afterwards that 2.7.3 still was running (the installer doesnt automatically close the active avidemux process, this keeps being a problem). As a user you are alerted that there is an update and are suggested to update, which is a good thing, but you forget or dont know that the originally started avidemux process still is active.

I closed the running 2.7.3 process and started the 2.7.4 installed version. The "about" option stated it being 2.7.4, but there was no hevc output option. I then removed the enire installation with revo uninstaller, using the normal uinstaller and running a registry cleanup afterwards. I then reinstalled 2.7.4 , but there still is no hevc output option. On other computers i own i do not have this problem. Now it doesnt matter if i uninstall/reinstall the application, the hevc output option is gone.

Help!!
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 23, 2019, 07:11:01 AM
Could you think of any specific differences between systems where the x265 encoder plugin can be loaded and where the loading fails? Like different virus scanners, different Visual C++ redistributables for Microsoft Visual Studio installed etc.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 23, 2019, 10:32:16 AM
I literally didnt change anything on this system. Its a separate machine i use for video encoding (with avidemux) , nothing else. In the meantime, i installed the nightly build, this one runs fine and has the hevc output option.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 23, 2019, 10:57:47 AM
You probably installed a MinGW build now, it is known to be not affected by the problem. But by evading you merely ensure that the issue persists longer for everyone affected.

Quote from: dipswitch on August 23, 2019, 10:32:16 AM
I literally didnt change anything on this system.

This was not the question. But if you have a system A which is fine and system B which exhibits the problem, could you please help to identify the cause?

1) Do they have different virus scanners?

2) Are VC++ runtimes installed on one machine which are not present on the other?
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 23, 2019, 11:08:32 AM
The virus scanners are the same (windows 10 builtin virus scanner).

Ok, here we go:
vc++ builds installed on the machine that does work:
2013 x64 12.0.30501
2013 x86 12.0.30501
2015 x64 14.0.23918
2015-2019 x86 14.20.27508

vc++ builds installed on the machine that has no hevc output:
2015 x86 14.0.23026
2017 x64 14.16.27027

Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 23, 2019, 11:14:54 AM
Could you please install 2015 x64 14.0.23918 on the second machine and report back whether it helps?

Maybe uninstall the other two.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 23, 2019, 11:23:37 AM
yes i will, i'm running an encoding job right now, as soon as its ready ill try this.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 24, 2019, 10:31:22 AM
Quote from: eumagga0x2a on August 23, 2019, 11:14:54 AM
Could you please install 2015 x64 14.0.23918 on the second machine and report back whether it helps?

Maybe uninstall the other two.

I couldnt find 14.0.23918, the closest i could find is 14.0.23026 x86, which i installed. I removed both avidemux vc++ and the nightly build. I also removed the other visual c++ redist packages. Then i reinstalled avidemux vc++ 2.6.4 . I still have no hevc output.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 24, 2019, 10:34:49 AM
Quote from: dipswitch on August 24, 2019, 10:31:22 AM
I couldnt find 14.0.23918, the closest i could find is 14.0.23026 x86, which i installed.

If the redist matters, then it must be a x64, not x86.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 24, 2019, 10:49:52 AM
Quote from: eumagga0x2a on August 24, 2019, 10:34:49 AM
Quote from: dipswitch on August 24, 2019, 10:31:22 AM
I couldnt find 14.0.23918, the closest i could find is 14.0.23026 x86, which i installed.

If the redist matters, then it must be a x64, not x86.

Typo, ofcourse i installed the 64bit version.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 24, 2019, 11:28:17 AM
Thanks, could you please verify once again that the redist version you tried was https://www.microsoft.com/en-us/download/details.aspx?id=48145 (https://www.microsoft.com/en-us/download/details.aspx?id=48145)?

Please disregard the above, I've already verified with the help of virustotal.com that it is the version you installed. There must be other factors involved then.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 24, 2019, 03:26:05 PM
I really have no idea; regarding the actual code, there i cant help (i have no programming skills). Both machines are intel, both win10 64bit, both boot uefi, both have intel graphics , albeith different generations. I access them both through ms rdp. Only thing i know is that the overnight build gives me hevc output.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 24, 2019, 10:25:06 PM
Quote from: dipswitch on August 24, 2019, 03:26:05 PM
I really have no idea

Neither do I  :(

QuoteOnly thing i know is that the overnight build gives me hevc output.

That nightly is a MinGW build, right? Builds which exhibit the problem are VC++ builds.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 24, 2019, 10:36:10 PM
Quote from: eumagga0x2a on August 24, 2019, 10:25:06 PM
Quote from: dipswitch on August 24, 2019, 03:26:05 PM
I really have no idea

Neither do I  :(

QuoteOnly thing i know is that the overnight build gives me hevc output.

That nightly is a MinGW build, right? Builds which exhibit the problem are VC++ builds.

This is correct.What i didnt understand: i'm using avidemux for some time now. Suddenly the installer has vc++ in its name. Didnt actually new what was going on. Now i seem to guess there is something changing in the way avidemux runs? it ran in a mingw environment and this now is shifting to microsoft visual c++? Was mingw no good?
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 24, 2019, 10:46:10 PM
Official release builds were moved to Visual Studio between releases 2.7.1 and 2.7.2 because MinGW builds are (almost) impossible to debug.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 26, 2019, 06:53:47 PM
There is a new VC++ nightly build with some (unrelated) changes in the build environment --> https://avidemux.org/nightly/vsWin64/Avidemux_2.7.4%20VC++%2064bits%20190826.exe

Could you please try it and report back whether the x265 encoder plugin in this build loads or not?
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 26, 2019, 08:42:27 PM
By the way, we have verified with TO that the checksum for the plugin DLL matches, but we haven't checked libx265.dll itself. Could you please check that the libx265.dll the HEVC encoder plugin needs to load has MD5 equal

cdbea182ddf9a35cb4164eafcd9eee09 ?

If you have installed Avidemux VC++ to C:\Program Files\Avidemux 2.7 - 64 bits, then please execute

cd /d "C:\Program Files\Avidemux 2.7 - 64 bits"
certutil -hashfile libx265.dll MD5
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 26, 2019, 09:25:57 PM
Who are you asking this? Me or @chairman.faust  ?
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 26, 2019, 09:38:51 PM
You (though it wouldn't matter if the TO responds too). It is about excluding the option that libx265.dll is corrupted.

Have you already tried the new nightly? (libx265.dll there is exactly the same as in the release, but as we don't know what is causing the problem, trying should not do at least any harm).
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 27, 2019, 08:58:01 AM
@dipswitch: It would be really desirable to know for sure whether libx265.dll from the Avidemux VC++ install directory on a system, where the HEVC encoder plugin is missing, is undamaged, i.e. whether the checksum for this file matches. This is IMHO even more important than to try the nightly which fixes PNG decoder in the internal ffmpeg missing (libx265.dll in this nightly is exactly the same as in the 2.7.4 release).

Of course, should libx265.dll turn out to be damanged, this would imply something very selectively messing up the extraction of the 7z archives with all the components of Avidemux stored within the QtIFW installer file.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 27, 2019, 08:07:57 PM
Quote from: eumagga0x2a on August 26, 2019, 08:42:27 PM
By the way, we have verified with TO that the checksum for the plugin DLL matches, but we haven't checked libx265.dll itself. Could you please check that the libx265.dll the HEVC encoder plugin needs to load has MD5 equal

cdbea182ddf9a35cb4164eafcd9eee09 ?

If you have installed Avidemux VC++ to C:\Program Files\Avidemux 2.7 - 64 bits, then please execute

cd /d "C:\Program Files\Avidemux 2.7 - 64 bits"
certutil -hashfile libx265.dll MD5


On the machine with no hevc output, avidemux 2.7.4 was installed in C:\Program Files\Avidemux 2.7 VC++ 64bits

The MD5 checksum of libx265.dll is f9b31d6a0e526efbd048b1073f795373     (i checked twice).
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 27, 2019, 08:13:29 PM
Quote from: eumagga0x2a on August 26, 2019, 06:53:47 PM
There is a new VC++ nightly build with some (unrelated) changes in the build environment --> https://avidemux.org/nightly/vsWin64/Avidemux_2.7.4%20VC++%2064bits%20190826.exe

Could you please try it and report back whether the x265 encoder plugin in this build loads or not?

I installed it and there still is no hevc output on this nightly build.

The md5 checksum for libx265.dll on this build is f9b31d6a0e526efbd048b1073f795373 . Seems something is really messing up the x265 dll.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 27, 2019, 08:30:16 PM
Strangly enough, the not working libx265.dll is exactly the same size as a working one: 6.065.152 bytes.

But things get weirder, the md5 checksum for libx265.dll on the working 2.6.4 install on another machine is also:

f9b31d6a0e526efbd048b1073f795373

And when i copy libx265.dll from a working install on another machine to the not working avidemux, it still doesnt work, i still dont get hevc output.

I'm lost.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 27, 2019, 09:50:05 PM
Thank you for checking this, one more possible reason for the issue ruled out.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 27, 2019, 10:01:06 PM
Probably a completely bogus idea, but is there any other software installed which has libx265.dll bundled?

(bogus because usually the application install dir is searched for libs first)
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 27, 2019, 10:08:12 PM
i've searched the entire hdd for libx265.dll, only the one from avidemux is there.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 27, 2019, 10:08:27 PM
Okay, thanks. I could only suggest to try the following: uninstall 2.7.4 VC++, install 2.7.3 VC++, make a copy of its older libx265.dll, uninstall 2.7.3 VC++, install 2.7.4 VC++ (release or better nightly as the latest nightly has the PNG decoder which is missing in the release), replace the newer libx265.dll with the older copy. Does it work?
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 27, 2019, 10:28:19 PM
Quote from: eumagga0x2a on August 27, 2019, 10:08:27 PM
Okay, thanks. I could only suggest to try the following: uninstall 2.7.4 VC++, install 2.7.3 VC++, make a copy of its older libx265.dll, uninstall 2.7.3 VC++, install 2.7.4 VC++ (release or better nightly as the latest nightly has the PNG decoder which is missing in the release), replace the newer libx265.dll with the older copy. Does it work?

Did you read my previous post, where i explained that the libx265.dll from the working avidemux has exactly the same md5 checksum and size as the non working installation? strangely enough the md5 checksum doesnt match the one you provided, how is this possible?
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 27, 2019, 10:31:04 PM
In the mean time i literally binary compared two avidemux folders, one from a working machine and one from the machine which doesnt do hevc output. the only mismatching files are:

Uninstall Avidemux VC++ 64bits.dat
components.xml
InstallationLog.txt
Uninstall Avidemux VC++ 64bits.ini

other then these, the files are exactly the same.
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 27, 2019, 10:39:53 PM
You misunderstood the idea. We've already verified that the file (and the installation in general) is not damaged. I would like to test whether an older version of this library works where a newer one fails. 2.7.3 has an older version (2.4), 2.7.4 the newer one (3.0). Please replace the libx265.dll from 2.7.4 on the machine where the plugin can't be loaded with the older version.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 28, 2019, 08:57:02 PM
Quote from: eumagga0x2a on August 27, 2019, 10:39:53 PM
You misunderstood the idea. We've already verified that the file (and the installation in general) is not damaged. I would like to test whether an older version of this library works where a newer one fails. 2.7.3 has an older version (2.4), 2.7.4 the newer one (3.0). Please replace the libx265.dll from 2.7.4 on the machine where the plugin can't be loaded with the older version.

I did as asked. Removing 2.7.4 vc++ and installing 2.7.3 results in hevc output.

Then i removed 2.7.3, installed 2.7.4 and replaced libx265.dll with the one from 2.7.3 . This got me a whole bunch of error messages.

The error message loosely translates into:

avidemux - can't find accesspoint

Can't find accesspoint from procedure x265_encoder_open_169 in dll file c:\program files\....
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 28, 2019, 09:03:19 PM
Ah, my fault, so the plugin is linked to a particular version of the DLL and thus not interchangeable after compilation.
Title: Re: x265 missing, 'null' is in its place
Post by: mean on August 29, 2019, 01:34:12 PM
That one http://avidemux.org/nightly/vsWin64/Avidemux_2.7.4%20VC++%2064bits%20190829.exe should work
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 30, 2019, 09:05:05 AM
You are right, unbelievable. Does this mean that you know what was wrong? Im anxious to know.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 31, 2019, 09:51:55 AM
I have the feeling something is going on  :D
Title: Re: x265 missing, 'null' is in its place
Post by: eumagga0x2a on August 31, 2019, 11:29:42 AM
I don't think the exact reason for libx265.dll failing to load on some systems was identified. Once it turned out that the problem disappeared once x265 was updated to the latest release 3.1.2 taken directly from upstream instead of from the Shift Media Project (https://github.com/ShiftMediaProject), the 2.7.4 release source with version incremented to 2.7.5 was rebuilt with Visual Studio in this updated environment and subsequently published as 2.7.5 VC++.
Title: Re: x265 missing, 'null' is in its place
Post by: dipswitch on August 31, 2019, 11:31:17 AM
I didnt notice there was a 2.7.5 version released  :D . thanks.