JuliaIO / VideoIO.jl

Reading and writing of video files in Julia via ffmpeg
https://juliaio.github.io/VideoIO.jl/stable
Other
128 stars 53 forks source link

Fail to install on 1.0-rc1 #121

Closed hearnsj closed 5 years ago

hearnsj commented 6 years ago

I am not sure if VideoIO is ready for the 1.0 release yet... I tried to pkg add and I get
ERROR: LoadError: syntax: misplaced assignment statement in "[libavcodec = library_dependency

My Windows 10 system does have several 0.6 and 0.7 releases already installed. Maybe I should have to delete the directory with which contains the codecs?

v1.0) pkg> add VideoIO Resolving package versions... Installed Reactive ───────── v0.7.0 Installed Glob ───────────── v1.1.1 Installed RoundingIntegers ─ v0.0.3 Installed GtkReactive ────── v0.4.1 Installed ImageView ──────── v0.6.0 Installed VideoIO ────────── v0.2.0 Installed Gtk ────────────── v0.14.0 Updating C:\Users\hearn\.julia\environments\v1.0\Project.toml [d6d074c3] + VideoIO v0.2.0 Updating C:\Users\hearn\.julia\environments\v1.0\Manifest.toml [c27321d9] + Glob v1.1.1 [4c0ca9eb] + Gtk v0.14.0 [27996c0f] + GtkReactive v0.4.1 [86fae568] + ImageView v0.6.0 [a223df75] + Reactive v0.7.0 [d5f540fe] + RoundingIntegers v0.0.3 [d6d074c3] + VideoIO v0.2.0 ┌ Warning: Dependency graph not a DAG, linearizing anyway └ @ Pkg.Operations C:\cygwin\home\Administrator\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.0\Pkg\src\Operations.jl:985 Building Gtk ────→ C:\Users\hearn\.julia\packages\Gtk\Zlc4t\deps\build.log ┌ Error: Error building Gtk: │ ERROR: LoadError: syntax: misplaced assignment statement in "[glib = library_dependency("glib", aliases = ["libglib-2.0", "libglib-2.0-0"], group = group); gobject = library_dependency("gobject", aliases = ["libgobject-2.0", "libgobject-2.0-0"], group = group); gtk = library_dependency("gtk", aliases = ["libgtk-3", "libgtk-3-0"], group = group); gdk = library_dependency("gdk", aliases = ["libgdk-3", "libgdk-3-0"], group = group); gdk_pixbuf = library_dependency("gdk_pixbuf", aliases = ["libgdk_pixbuf-2.0", "libgdk_pixbuf-2.0-0"], group = group); gio = library_dependency("gio", aliases = ["libgio-2.0", "libgio-2.0-0"], group = group)]" │ Stacktrace: │ [1] include at .\boot.jl:317 [inlined] │ [2] include_relative(::Module, ::String) at .\loading.jl:1038 │ [3] include(::Module, ::String) at .\sysimg.jl:29 │ [4] include(::String) at .\client.jl:388 │ [5] top-level scope at none:0 │ in expression starting at C:\Users\hearn.julia\packages\Gtk\Zlc4t\deps\build.jl:7 └ @ Pkg.Operations C:\cygwin\home\Administrator\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.0\Pkg\src\Operations.jl:1068 Building VideoIO → C:\Users\hearn\.julia\packages\VideoIO\wzTPi\deps\build.log ┌ Error: Error building VideoIO: │ ERROR: LoadError: syntax: misplaced assignment statement in "[libavcodec = library_dependency("libavcodec", aliases = [(["libavcodec-ffmpeg.so.", "libavcodec.", "libavcodec.so.", "libavcodec.ffmpeg.so.", "avcodec-"] . ["53" "54" "55" "56"])...], group = group); libavformat = library_dependency("libavformat", aliases = [(["libavformat-ffmpeg.so.", "libavformat.", "libavformat.so.", "libavformat.ffmpeg.so.", "avformat-"] . ["53" "54" "55" "56"])...], group = group); libavutil = library_dependency("libavutil", aliases = [(["libavutil-ffmpeg.so.", "libavutil.", "libavutil.so.", "libavutil.ffmpeg.so.", "avutil-"] . ["51" "52" "54"])...], group = group); libswscale = library_dependency("libswscale", aliases = [(["libswscale-ffmpeg.so.", "libswscale.", "libswscale.so.", "libswscale.ffmpeg.so.", "swscale-"] . ["2" "3"])...], group = group); libavfilter = library_dependency("libavfilter", aliases = [(["libavfilter-ffmpeg.so.", "libavfilter.", "libavfilter.so.", "libavfilter.ffmpeg.so.", "avfilter-"] . ["2" "3" "4" "5"])...], group = group); libavdevice = library_dependency("libavdevice", aliases = [(["libavdevice-ffmpeg.so.", "libavdevice.", "libavdevice.so.", "libavdevice.ffmpeg.so.", "avdevice-"] . ["53" "54" "55" "56"])...], group = group)]" │ Stacktrace: │ [1] include at .\boot.jl:317 [inlined] │ [2] include_relative(::Module, ::String) at .\loading.jl:1038 │ [3] include(::Module, ::String) at .\sysimg.jl:29 │ [4] include(::String) at .\client.jl:388 │ [5] top-level scope at none:0 │ in expression starting at C:\Users\hearn.julia\packages\VideoIO\wzTPi\deps\build.jl:7 └ @ Pkg.Operations C:\cygwin\home\Administrator\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.0\Pkg\src\Operations.jl:1068

(v1.0) pkg>

EMCP commented 6 years ago

it's not ready for the v0.6.x release

Observe

https://github.com/kmsquire/VideoIO.jl/issues/72

https://github.com/kmsquire/VideoIO.jl/issues/75

https://github.com/kmsquire/VideoIO.jl/issues/100

https://github.com/kmsquire/VideoIO.jl/issues/112

hearnsj commented 6 years ago

So what can I do to help? I have Fedora and Windows 10 available.

EMCP commented 6 years ago

I am unsure, but I think this entire project needs some help and it appears not anyone from the original team is working actively on it..

jpsamaroo commented 6 years ago

I think once #120 is completed, it'll be a lot easier to get this package in shape for 0.7/1.0 (at least compared to trying to fix it without an ffmpeg builder).

kmsquire commented 6 years ago

Hi there, (largely MIA) maintainer here. As @EMCP suggested, I haven't really been actively maintaining this project for a while now. There are a number of collaborators with push access, and sometimes they pitch in, but it's a pretty complex project, and pitching in means diving into some gnarly code.

Probably the best thing to help at this point would be to try to push on

The package could use a major refactor, but solving the first two issues should get VideoIO working on most platforms on v0.7 (and later v1.0), and the third issue would get it working with a more modern version of ffmpeg.

(Partially in response to this conversation, I've worked on #108 the last couple of days. I got the tests to pass once, and got excited, but it seems to have been a fluke--there's still a double free happening somewhere.)

kmsquire commented 6 years ago

it's not ready for the v0.6.x release

At least this isn't true anymore--v0.3.0 should install on v0.6 (assuming you have a sufficiently old version of ffmpeg installed/available--versions newer than 3.0 won't work).

124 will hopefully get us over the hump to getting installed on v0.7/v1.0 (with the same version restrictions). Waiting on an issue with ImageMagick.

hearnsj commented 6 years ago

Closing this issue. Time to move on!

kmsquire commented 5 years ago

With #125 and #132 merged, this should be good to go now. If someone finds out otherwise, please ping here.