Closed Angramme closed 3 months ago
The libav encoder for H.264 is not named "h264". They reserve that style of name for built-in/embedded encoders, and the H.264 encoder is external to libav. The particular H.264 encoder included in libav.js is "libopenh264". Use that encoder name; it should be included in the h264-aac[-avc] variants without the need to add any extra configs. (libx264 is more a popular encoder, but isn't included in libav.js, presumably because it's under the GPL.)
... personally, I find libav's naming convention for encoders to be inscrutable and inconsistent, but that's only because it's inscrutable and inconsistent.
I have read through the issues and it seems that video encoding for h264 should be supported, however it seems to me that it isn't. I have tried building my own config with the following array parameters:
(I included every possible option related to h264 and aac encoding I could think of) When building I get the following warning:
(here I also attach the full build log build-log.txt)
When running the code in the following manner:
I have tried variant 1 through 3 and all of them give me "DOMException: Unsupported codec" errors. Please note that on the native implementation in chrome both variant 1 and 2 work properly without errors and export readable video.
TLDR; It seems that the codec for h264 is not getting included in the build files despite the explicit flags. Either that or I'm configuring something wrong.
btw I wasn't sure if I should put this issue here or in the polyfill repo, but I thought it is more closely related to libav build.
Thank you in advance for your help :)