I do like the idea of removing DirectShow splitting/decoding from the equation, but I'll really have to check how exactly you have implemented some stuff
. Also, since I didn't find any links towards any source code releases for your binaries, while you are using FFmpeg (which uses licenses that make you do at least some kind of source code releases), I think you might want to go through the usual steps of making sure no-one herps a derp at you.
FFmpeg is LGPL/GPL depending on how you configure it (some parts are GPL-only). You seemingly use nevcairiel's repository for it (the one LAV Filters use), so you should check if his additional patches make anything become GPL in case you are compiling it with a seemingly LGPL set-up. The LAV Filters package itself is GPL, so there could always be a possibility.
If your FFmpeg is configured to be GPL:
- The source code for the whole thing
has to be released. FFmpeg as well as your stuff.
If your FFmpeg is configured to be LGPL:
- You seem to be using dynamic linking, so releasing the exact source code used for compiling FFmpeg is needed.
- (if you had been using static linking you would also have to release the object files required for the final linking as well as the FFmpeg source code)
You can just package related source code into a zip/7z archive and upload it to a folder on your web server, and add a link to it at the part where you say "Media Preview is powered by Libavcodec, the leading audio/video codec library.
", for example "Media Preview is powered by Libavcodec, the leading audio/video codec library. Source code releases as marked under the (L)GPL license are available here.
To be honest I'd prefer for stuff like this to be open source, but it's your choice
(just remember to follow the licenses of the libraries you use, mainly FFmpeg's at the moment, as zlib and libpng seem to have much more lax licenses).Edit
Found from the libavcodec library:
--extra-cflags='-I../dxva2 -mmmx -msse -mfpmath=sse' --enable-shared --enable-gpl --enable-version3 --enable-w32threads --enable-runtime-cpudetect --enable-asm --enable-zlib --enable-swscale --disable-avfilter --disable-filters --disable-protocols --enable-protocol=file --disable-muxers --disable-hwaccels --enable-hwaccel=h264_dxva2 --enable-hwaccel=vc1_dxva2 --enable-hwaccel=wmv3_dxva2 --enable-hwaccel=mpeg2_dxva2 --disable-swresample --disable-postproc --disable-static --disable-altivec --disable-encoders --disable-debug --disable-ffplay --disable-ffserver --disable-ffmpeg --disable-ffprobe --disable-devices --disable-avdevice --disable-bsfs --arch=x86 --cpu=i686 --target-os=mingw32 --build-suffix=-mp
libavcodec license: GPL version 3 or later
Sorry, but you seem to have done what many people end up doing when dealing with (L)GPL software. I thus hereby request the full source code for 'Media Preview v22.214.171.124 (04/10/2012)' as mentioned under the GPL license. If you have done GPL compiles before this, I strongly recommend that you release sources for those releases as well.
(Note that future releases can be closed source [if you properly use LGPL libraries and release the used FFmpeg source code], and you don't have to support the source code you released, it just has to be exactly the stuff you used for those binaries that were released under the GPL)