HAP encoded video on Windows, a discussion.
I've recently been porting a video patch to HAP to improve performance. In the process I had to convert my source videos to .avi HAP encoding. I wanted to share some experiences and questions.
The HAP package readme contains a dead link to the codec necessary for encoding on Windows. It's now found here: https://github.com/Vidvox/hap-directshow/releases
I first tried transcoding my files using ffmpeg. This works and players like VLC will play the file but strangely jit.movie will not. Black output.
I moved to Adobe Media Encoder (using the trial). These files work in Max. Though the encoding is extremely - I mean EXTREMELY - slow. It's using only 1 CPU core and apparently no GPU CUDA acceleration meaning my 2 to 5 minute videos take 2 to 5 hours to transcode (regular HAP codec, max quality, 4272x256, 60 and 30fps).
I'm curious for best practices here. Does anyone have a better method?
Using Adobe Media Encoder is a problem because the trial will run out in some days and I'd hate to have to subscribe to Adobe just for this purpose. It's also ironic that to use the open-source HAP codec with Max I'd have to buy proprietary conversion software.
I've found a post in the forum saying VirtualDub will create files that do work in Max. This route ended for me when I found out it can read a ton of file formats except .mov, which all my source files are. If the price to avoid buying Adobe is to do an extra conversion step I'll do it but perhaps others have better solutions.
Btw, the improvement in performance using HAP is well worth the effort. CPU load is now negligible (i7-8750H). GPU is buzzing along happily (GTX 1050Ti) and any half decent SSD will easily keep up with serving the files in time (20-60MB/s).
Great overview. Thanks!
Still curious to hear about Max users' methods too.