Comments (12)
I think you are correct. On Windows this is easy to fix because the FFmpeg dlls are precompiled as LGPL (https://github.com/opencv/opencv/tree/master/3rdparty/ffmpeg) and can be easily copied to the wheel package during build. I guess that on OS X the situation is probably similar to Windows. On Linux it gets more complicated since FFmpeg has to be compiled separately as LGPL on the manylinux containers. However, it should not be a problem but requires some work.
I'll start working on this FFmpeg issue. Contributions are more than welcome. In the meantime, non-video features of the opencv-python wheels should work just fine.
from opencv-python.
Good to know. I'll make now the release.
from opencv-python.
I am not aware of any. Sources are available, so all GPL requirements are met.
from opencv-python.
Thanks, I see it's up. :-)
from opencv-python.
If there's no licensing related issues, it can be added to the wheel.
from opencv-python.
If it's GPL, that would be a problem for non-GPL projects if they didn't realize what they were using (as OpenCV is not GPL, so they normally wouldn't need to worry about that).
from opencv-python.
I'm going to leave this issue open for now. I'm not a lawyer so I'm not sure what consequences there are if the GPL licensed ffmpeg binary is distributed within this package.
from opencv-python.
@skvark ask at https://opensource.stackexchange.com
from opencv-python.
I'm not a lawyer either, but my understanding is that it would be OK to distribute a GPL component with OpenCV, but the whole package would then fall under the GPL, along with anything that uses it.
However, FFmpeg itself is LGPL, with optional GPL parts. If it is compiled without the --enable-gpl
flag, the GPL should not apply, so it should be sufficient to include an appropriate copyright notice for FFmpeg and a copy of the LGPL document.
from opencv-python.
Thanks @techtonik and @skvark for the fix! Any chance of a new release on PyPI? @cachitas is making an example of bundling it into a windows installer (takluyver/pynsist#79), which should work neatly once the new wheel is available.
from opencv-python.
I can make the release. However, OS X / Linux builds are still missing ffmpeg support since it's a bit more complicated to enable it on them (especially on Linux due to the Cent OS 5 manylinux containers).
from opencv-python.
For our example, it's only the Windows build that is necessary, so if it's easy to do a release, I wouldn't wait for a solution for the other platforms.
I've managed to get pygame plus its dependencies built and bundled in a manylinux container, though there were no license concerns to watch out for there. It was mostly a matter of compiling new versions of the dependencies from source to avoid the ancient versions available in CentOS 5's repos. http://www.pkgsrc.org/ might help there; I didn't know about it at the time.
from opencv-python.
Related Issues (20)
- PyPI: macOS arm64 wheel missing
- cv2.createThinPlateSplineShapeTransformer not exist in 4.10
- imdecode jpeg2000 segfault or deadlock in multithreading HOT 2
- Typing of compare does not allow scalar for src1 or src2
- Why Building wheel for opencv-python when using "pip install opencv-python"
- Typing stubs generation has failed when building wheel HOT 1
- error: OpenCV(4.9.0) D:\a\opencv-python\opencv-python\opencv\modules\dnn\src\layers\convolution_layer.cpp:396: error: (-2:Unspecified error) Number of input channels should be multiple of 3 but got 4 in function 'cv::dnn::ConvolutionLayerImpl::getMemoryShapes'
- Gstreamer support on windows 10
- why ı am getting this error
- BUG: cv2.fillPoly() causing segmentation fault on Ubuntu 22.04.4 LTS HOT 1
- [Suggestion] Metapackage as solution to current issues with opencv as dependency HOT 1
- Build from source python 3.12 fails HOT 6
- error: OpenCV(4.8.0) /io/opencv/modules/core/src/copy.cpp:71: error: (-215:Assertion failed) cn <= 4 in function 'scalarToRawData'
- ModuleNotFoundError: No module named 'distutils' in latest release HOT 7
- MacOS arm64 wheels missing from PyPI 4.10 release HOT 2
- ImportError: numpy.core.multiarray --- Numpy 2.0.0 HOT 1
- cv2/cv2.abi3.so, 2): Library not loaded: /usr/local/opt/libunistring/lib/libunistring.2.dylib Referenced from: /usr/local/opt/gnutls/lib/libgnutls.30.dylib HOT 1
- When will opencv-python support numpy 2.0? HOT 6
- compile bug
- AttributeError: module 'numpy' has no attribute 'object'. `np.object` was a deprecated alias for the builtin `object`. To avoid this error in existing code, use `object` by itself. Doing this will not modify any behavior and is safe. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from opencv-python.