Line 5: |
Line 5: |
| == on Debian Jessie using "pkg -forge" == | | == on Debian Jessie using "pkg -forge" == |
| | | |
− | <code>
| + | sudo apt-get install libavutil-dev libavformat-dev libswscale-dev libavcodec-dev |
− | sudo apt-get install libavutil-dev libavformat-dev libswscale-dev libavcodec-dev | |
− | </code>
| |
| | | |
| On the Octave prompt: | | On the Octave prompt: |
| | | |
− | <code>
| + | >> pkg install -forge video |
− | >> pkg install -forge video | |
− | </code>
| |
| | | |
− | == On Windows == | + | == on CentOS Linux release 7.2.1511 (Core) with GNU Octave Version 3.8.2 == |
| | | |
− | === using official mxe-build and ffmpeg binaries ===
| + | yum install octave-devel |
| + | yum install libvorbis yasm freetype zlib bzip2 faac lame speex libvpx libogg libtheora x264 XviD openjpeg15 opencore-amr |
| + | wget https://libav.org/releases/libav-11.4.tar.gz |
| + | tar xzf libav-11.4.tar.gz |
| + | cd libav-11.4 |
| + | ./configure --enable-pic |
| + | make -j 4 |
| | | |
− | This is at the moment the preferred way for windows users and assumes that you've installed Octave from the official MXE build from https://ftp.gnu.org/gnu/octave/windows/ to the default path.
| + | as root: |
| | | |
− | Download the ffmpeg binaries for windows from https://ffmpeg.zeranoe.com/builds/. You need the "32-bit Dev" and "32-bit Shared" archive. These instructions were tested with
| + | make install |
| | | |
− | * ffmpeg-20160105-git-68eb208-win32-shared.7z
| + | On the Octave prompt: |
− | * ffmpeg-20160105-git-68eb208-win32-dev.7z
| |
| | | |
− | Now
| + | >> pkg install -forge video |
| | | |
− | * Extract the bin/*.dll from ffmpeg-20160105-git-68eb208-win32-shared.7z to C:\Octave\Octave-4.0.0\bin
| + | == On Windows == |
− | * Extract include/* from ffmpeg-20160105-git-68eb208-win32-dev.7z to C:\Octave\Octave-4.0.0\include (You should now, for example, see C:\Octave\Octave-4.0.0\include\libavutil\version.h)
| |
− | * Extract lib/* from ffmpeg-20160105-git-68eb208-win32-dev.7z to C:\Octave\Octave-4.0.0\lib
| |
− | | |
− | Download a patched version (no pkg_config check for ffmpeg and PixelFormat -> AVPixelFormat) from [http://www.tech-chat.de/files/video-1.2.1_win_ffmpeg.tar.gz video-1.2.1_win_ffmpeg.tar.gz (sha1sum 3ef5b0dca471175daf769bd813b6de7fa85759df)]
| |
− | or grab the source and apply [http://www.tech-chat.de/files/video-1.2.1_win_ffmpeg.patch this patch]
| |
− | | |
− | Compile and install from Octave with
| |
− | <code>
| |
− | pkg -verbose install video-1.2.1_win_ffmpeg.tar.gz
| |
− | </code>
| |
− | | |
− | Load it before any usage:
| |
− | <code>
| |
− | pkg load video
| |
− | </code>
| |
− | | |
− | === mxe-octave ===
| |
− | You can also use mxe-octave to include ffmpeg, there is already a target for it.
| |
− | | |
− | = Known bugs = | |
− | * On MXE-Octave with ffmpeg crosscompiled "clear all" after using "addframe" causes a segmentation fault
| |
| | | |
− | <code>
| + | The MXE builds >= 4.0.1-rc3 already includes the ffmpeg libs so video should run out of the box. |
− | Program received signal SIGSEGV, Segmentation fault.
| |
− | [Switching to Thread 1956.0xdd4]
| |
− | 0x77d6e3c6 in ntdll!RtlInitUnicodeString () from C:\Windows\SysWOW64\ntdll.dll
| |
− | (gdb) bt
| |
− | #0 0x77d6e3c6 in ntdll!RtlInitUnicodeString ()
| |
− | from C:\Windows\SysWOW64\ntdll.dll
| |
− | #1 0x19380000 in ?? ()
| |
− | #2 0x77d6e013 in ntdll!RtlFreeHeap () from C:\Windows\SysWOW64\ntdll.dll
| |
− | #3 0x778698cd in msvcrt!free () from C:\Windows\syswow64\msvcrt.dll
| |
− | #4 0x19380000 in ?? ()
| |
− | #5 0x1dc016c6 in AVHandler::~AVHandler (this=0x1da579a8,
| |
− | __in_chrg=<optimized out>) at AVHandler.cc:99
| |
− | #6 0x1dc0384a in Avifile::~Avifile (this=0x1dac8570,
| |
− | __in_chrg=<optimized out>) at oct-avifile.cc:149
| |
− | </code>
| |
| | | |
− | [[Category:Octave-Forge]] | + | [[Category:Octave Forge]] |