On Tue, 20 Jan 2026, Rémi Denis-Courmont via ffmpeg-devel wrote:
Do you have a plan to address the outstanding shortcomings? What would the actual performance look like in such case, seen as it would disable most or all of the assembler optimisations?
It is possible to use the current aarch64 assembler as such - even though it does violate the arm64ec ABI.
I just did a set of test builds of ffmpeg with MSVC, natively for arm64, one for arm64ec (with an unpatched ffmpeg) and one for x86_64. For a simple testcase of decoding VP9, both the proper arm64 and the less proper arm64ec build end up decoding at a similar speed, ~390 fps. The x86_64 build, running emulated runs at 171 fps.
The fact that the arm64ec ABI is violated by the assembly is mostly not a practical problem, as long as it only is called directly by the arm64ec code, not by emulated x86_64. There are also some other limitations (if someone is suspending/resuming the process, the register state would be limited to what is expressible in arm64ec mode). There's of course no guarantees that this violation will be tolerated in the same way in future versions of Windows either.
The cpuflags part of the library API/ABI is indeed a problem - but for a caller user application which doesn't call that (and, practically speaking, I would expect that most user apps don't do that), that issue doesn't really crop up either.
I'm not arguing for us to support this in any greater form than we currently do - anyone wanting to use this can really build it for themselves. But in the current form, with ABI violations at all, it does practically work quite fine in many cases, and it does give essentially the same performance as a native build. But those who want to do that will need to worry about the limitations - and I wouldn't expect those who currently distribute binary builds of ffmpeg to care to add arm64ec builds.
(Do note that the ffmpeg project itself doesn't distribute binary builds, that is up to third party volunteers. So at this point, it's not us that would need to be convinced, it's those third parties that do binary builds.)
// Martin _______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]
