My legacy software breaks after migrating it to Windows 10 since WMV Encoder 9 SDK isn't longer supported.
I've tried other approaches, and I can generate the ASF file I need using FFmpeg. I only need mux audio and video into ASF container, and this command do it :
ffmpeg -y -i audio.mp3 -i video.asf -vcodec copy -acodec copy output.asf
It works well, and the file can be played using VLC or Windows Media Player.
But it can't be played by DirectShow. I've got a ASF_E_INVALIDHEADER error when I set as the source of WMAsfReader. Any idea how can I generate a valid ASF file for the WMAsfReader?
Thnks!
You might be unable to use legacy SDK, but current Windows APIs to produce ASF files (with DirectShow and Media Foundation) are in good standing in Windows 10:
This content should be acceptable for WMAsfReader. FFmpeg has always generated "almost good" output, so it was acceptable for long time. However checks for format consistency in OS components were getting stricter and stricter over time and once in a while FFmpeg content is not longer considered valid.