12345678910111213141516171819202122232425262728293031323334353637 |
- * On Linux and other Unix flavors OpenCV uses default or user-built ffmpeg/libav libraries.
- If user builds ffmpeg/libav from source and wants OpenCV to stay BSD library, not GPL/LGPL,
- he/she should use --enabled-shared configure flag and make sure that no GPL components are
- enabled (some notable examples are x264 (H264 encoder) and libac3 (Dolby AC3 audio codec)).
- See https://www.ffmpeg.org/legal.html for details.
- If you want to play very safe and do not want to use FFMPEG at all, regardless of whether it's installed on
- your system or not, configure and build OpenCV using CMake with WITH_FFMPEG=OFF flag. OpenCV will then use
- AVFoundation (OSX), GStreamer (Linux) or other available backends supported by opencv_videoio module.
- There is also our self-contained motion jpeg codec, which you can use without any worries.
- It handles CV_FOURCC('M', 'J', 'P', 'G') streams within an AVI container (".avi").
- * On Windows OpenCV uses pre-built ffmpeg binaries, built with proper flags (without GPL components) and
- wrapped with simple, stable OpenCV-compatible API.
- The binaries are opencv_videoio_ffmpeg.dll (version for 32-bit Windows) and
- opencv_videoio_ffmpeg_64.dll (version for 64-bit Windows).
- The pre-built opencv_videoio_ffmpeg*.dll is:
- * LGPL library, not BSD libraries.
- * Loaded at runtime by opencv_videoio module.
- If it succeeds, ffmpeg can be used to decode/encode videos;
- otherwise, other API is used.
- FFMPEG build includes support for H264 encoder based on the OpenH264 library.
- OpenH264 Video Codec provided by Cisco Systems, Inc.
- See https://github.com/cisco/openh264/releases for details and OpenH264 license.
- OpenH264 library should be installed separatelly. Downloaded binary file can be placed into global system path
- (System32 or SysWOW64) or near application binaries (check documentation of "LoadLibrary" Win32 function from MSDN).
- Or you can specify location of binary file via OPENH264_LIBRARY environment variable.
- If LGPL/GPL software can not be supplied with your OpenCV-based product, simply exclude
- opencv_videoio_ffmpeg*.dll from your distribution; OpenCV will stay fully functional except for the ability to
- decode/encode videos using FFMPEG (though, it may still be able to do that using other API,
- such as Video for Windows, Windows Media Foundation or our self-contained motion jpeg codec).
- See license.txt for the FFMPEG copyright notice and the licensing terms.
|