[ANN] FFmpegPipe

FFmpegPipe

FFmpegPipe.jl lets you read/write video files (mp4, wmv, avi, mov…) from Julia by piping images from/to an FFmpeg process.

This is neither as efficient nor as versatile as calling lower-level routines from libav/ffmpeg directly, like VideoIO.jl does, but that package does not yet support video output nor is it v1 ready.

Anything that Julia can show as a MIME("image/png") can be sent as a video frame, in particular Plot objects from Plots.jl and Array{T,2} where T<:Colorant from Images.jl have been tested to work. (Yes, it is unnecessary to compress/decompress a PNG image only to pass it form one process to another, but at least it is lossless.)

Background

@Per wrote FFmpegPipe back in late 2017. He never got it registered. I took over maintenance and got it registered now. All help is welcomed! As it says, VideoIO is a better solution than this one, but this works well and works now (as long as you have FFmpeg installed).

6 Likes

I have been trying to get VideoIO.jl working in Windows 10. It downloads the wrong file for ffmpeg, which is a 7z file rathe than a zip file which is currently on the ffmpeg website.

Sorry to say it but the test fails on Windows 10. I do have ffmepg installed an it is in my PATH
Love to work with you on getting this installed in Windows

Yea, I know, no idea why. I was thinking it might only be a “CI thing”, but I see I was wrong. Please, gladly, let’s fix this :slight_smile: