0

I'm developing a Qt5 Application for Windows/Linux, it has to play a H264/AAC flv video.

This works wonderful on Linux after installing gstreamer-plugins. This also works after installing K-lite codec pack on Windows.

I need to distribute my program with the required files to be able to play the video without installing anything else. I have tried copying the refrenced DLL files listed by Process Explorer (All related to A/V,libav*, av*, *.ax , etc), but this doesn't work.

What else do I need to set up?

David Ventura
  • 418
  • 2
  • 7
  • 20

1 Answers1

0

You cannot do this due to MPEG-4 licensing. If you distribute h.264 decoders you must contact MPEGLA.com and obtain a license. (Currently free up to 100,000 installs per year, but $20K if you exceed that).

Things like K-Lite skirt this requirement by having the end-user install the codecs "for their personal use".

So, you can direct your users to install K-Lite, or other codecs, but you can't ship them yourselves. This is fairly common in the open source world.

SteveS
  • 514
  • 3
  • 16
  • You do not answer the question. The question is what has to be done technically to make it work, it is not about the licensing restrictions of MPEG-4. – Benjamin T Apr 22 '17 at 13:16
  • He is not legally able to do what he's asking, and so he shouldn't, regardless of whether he is asking how to or not. He must direct his end users to install the codecs themselves, or he is in violation of open source licensing. @Benjamin T How is your comment helpful to anyone? – SteveS May 26 '17 at 20:51
  • He isn't able to legally do it unless he "contacts MPEGLA.com and obtain a license". You answer explains how one can bypass the license by not distributing the codec, but it does not cover the case where one would have obtain the said license and needs to (and legally can) distribute the codec. I agree that your answer should satisfy most developers, but still, it is not complete as it fails to provide the technical answer to OP question. For all we know he could have the required license. On a side not, my comment was supposed to be useful to you. – Benjamin T May 26 '17 at 21:13
  • @BenjaminT - Fair Enough. He probably needs to register the DLLs after installation. Google "regsvr32", and be aware of the differences between 32 and 64 bit. – SteveS May 30 '17 at 23:00