Giter Site home page Giter Site logo

Comments (15)

skvark avatar skvark commented on July 18, 2024 3

@techdragon Travis has now increased the build time limits. Feel free to create pull request.

from opencv-python.

techdragon avatar techdragon commented on July 18, 2024 2

@skvark let me know once Travis-CI have raised the build timeout limit and I'll submit the PR.

from opencv-python.

nicholasc avatar nicholasc commented on July 18, 2024 1

@techdragon Same here. Anything I can do to help with for Mac OS or Linux builds with FFMPEG, let me know.

from opencv-python.

skvark avatar skvark commented on July 18, 2024

Yes, that is correct as long as the FFmpeg version is LGPL and compiled with --enable-shared. I will not include any GPL'ed libraries to the wheels because then the whole package license would have to be GPL.

I have already experimented with FFmpeg LGPL builds on the Cent OS 5 containers and it seems that it should be possible to add FFmpeg support for Linux also.

Thanks for your work in advance :)

from opencv-python.

techdragon avatar techdragon commented on July 18, 2024

@skvark The default FFmpeg build on homebrew is built using --enabled-shared so the main issue is building without --enable-gpl which is/was part of the set options and not changeable with a build flag before my PR is merged. Speaking of the PR, it's now passing their CI checks so hopefully its merged soon.

I'm also glad to hear the Linux work appears possible since I was going to look at fixing that next. I'm fairly familiar with building things from source on linux but having not really used CentOS much I was concerned the build toolchain might be prohibitively difficult. Its one thing to compile some libraries from source code before compiling a program from sources, its another thing to need to build something like all of LLVM & clang using gcc because gcc is the only prebuilt compiler and the program won't compile with anything but clang.

from opencv-python.

techdragon avatar techdragon commented on July 18, 2024

@skvark I think I may have this working, but its a little hard to tell if it worked without the assets at the end and my travis-ci run didn't publish them anywhere useful. techdragon@b487193
https://travis-ci.org/techdragon/opencv-python/builds/286375673

@skvark do you want a PR regardless? or do you know a way I can get the wheel after travis is done in order to test these versions?

from opencv-python.

skvark avatar skvark commented on July 18, 2024

Sorry for the slow answer. As fas as I can see, the build does not have FFmpeg enabled:

--     FFMPEG:                      NO

--       avcodec:                   NO

--       avformat:                  NO

--       avutil:                    NO

--       swscale:                   NO

--       avresample:                NO

This is due to this error in brew recipe:

==> ./configure --prefix=/usr/local/Cellar/ffmpeg/3.3.4 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-vda

Last 15 lines from /Users/travis/Library/Logs/Homebrew/ffmpeg/01.configure:

--enable-libmp3lame

--enable-libx264

--enable-libxvid

--enable-opencl

--enable-videotoolbox

--disable-lzma

--enable-vda



libx264 is gpl and --enable-gpl is not specified.



If you think configure made a mistake, make sure you are using the latest

version from Git.  If the latest version fails, report the problem to the

[email protected] mailing list or IRC #ffmpeg on irc.freenode.net.

Include the log file "config.log" produced by configure as this will help

solve the problem.

You have to remove --enable-libx264. It's a GPL plugin.

You can test if the video support is ok by enabling macOS test here: https://github.com/skvark/opencv-python/blob/master/tests/test.py

from opencv-python.

techdragon avatar techdragon commented on July 18, 2024

Thanks for dissecting the output there @skvark, due to some how homebrew flags work, it seems I did indeed misconfigure things. I'll dig back into this again and now I know I should see some useful information in the OpenCV log output hopefully I'll know if it worked this time. 😄

from opencv-python.

techdragon avatar techdragon commented on July 18, 2024

@skvark I've gotten this working in my fork, but the complete build time is too slow and causes Travis-CI to fail for all four of the Mac + OpenCV + OpenCV Contrib modules combinations. Are there any possible speedups in the MultiBuild repo you can think of?

from opencv-python.

ofek avatar ofek commented on July 18, 2024

You could contact Travis and ask for an increased time limit.

from opencv-python.

skvark avatar skvark commented on July 18, 2024

Like @ofek said, I'll have contact Travis and ask if they can increase the time limit. There's no way to speed it up because brew builds FFmpeg from scratch.

Luckily this problem concerns only macOS since we can precompile FFmpeg on the Docker containers.

from opencv-python.

skvark avatar skvark commented on July 18, 2024

I sent an email about build time limit increase to Travis. Waiting for an answer.

from opencv-python.

arthurbarros avatar arthurbarros commented on July 18, 2024

@techdragon any way I could help you on this PR? Let me know

from opencv-python.

techdragon avatar techdragon commented on July 18, 2024

PR #56 opened. Hopefully the build doesn't time out.

from opencv-python.

skvark avatar skvark commented on July 18, 2024

Let's see, the build timeout limit should be at 90 minutes.

from opencv-python.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.