diff --git a/README.md b/README.md index 4b9b433..979d259 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,40 @@ First install MSYS2, and then open the MINGW64 shell and run the following comma mingw-w64-x86_64-libsndfile \ mingw-w64-x86_64-glew +To build with FFmpeg support, you must compile FFmpeg as a static library: + + git clone https://github.com/FFmpeg/FFmpeg.git + cd FFmpeg + git checkout n6.0 + ./configure --disable-everything \ + --enable-decoder=mpegvideo \ + --enable-decoder=mpeg1video \ + --enable-decoder=mpeg2video \ + --enable-decoder=mp2 \ + --enable-parser=mpegaudio \ + --enable-parser=mpegvideo \ + --enable-demuxer=mpegps \ + --enable-demuxer=mpegts \ + --enable-demuxer=mpegtsraw \ + --enable-demuxer=mpegvideo \ + --enable-decoder=vc1 \ + --enable-decoder=wmapro \ + --enable-parser=vc1 \ + --enable-hwaccel=vc1_d3d11va \ + --enable-hwaccel=vc1_d3d11va2 \ + --enable-hwaccel=vc1_dxva2 \ + --enable-demuxer=asf \ + --enable-protocol=file \ + --enable-filter=scale \ + --enable-static \ + --disable-shared \ + --extra-libs=-static \ + --extra-cflags=--static + make + make install + cd .. + export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH" + Then build the xsystem4 executable with meson, mkdir build diff --git a/flake.nix b/flake.nix index b6ed589..d372622 100644 --- a/flake.nix +++ b/flake.nix @@ -36,6 +36,7 @@ chibi flex bison + ffmpeg ]; } ); @@ -65,6 +66,7 @@ chibi flex bison + ffmpeg ]; }; } diff --git a/meson.build b/meson.build index b43eb04..633080d 100644 --- a/meson.build +++ b/meson.build @@ -20,10 +20,10 @@ png = dependency('libpng', static : static_libs) cglm = dependency('cglm', version : '>=0.8.3', fallback : ['cglm', 'cglm_dep']) sndfile = dependency('sndfile', static : static_libs) -avcodec = dependency('libavcodec', required: false) -avformat = dependency('libavformat', required: false) -avutil = dependency('libavutil', required: false) -swscale = dependency('libswscale', required: false) +avcodec = dependency('libavcodec', required: false, static : static_libs) +avformat = dependency('libavformat', required: false, static : static_libs) +avutil = dependency('libavutil', required: false, static : static_libs) +swscale = dependency('libswscale', required: false, static : static_libs) gles = dependency('glesv2', version : '>=3', required: get_option('opengles')) if gles.found() diff --git a/subprojects/libsys4 b/subprojects/libsys4 index b5aaaff..fa66424 160000 --- a/subprojects/libsys4 +++ b/subprojects/libsys4 @@ -1 +1 @@ -Subproject commit b5aaaff8fe9dcc8e5c7179b37725c0607a8931da +Subproject commit fa6642492319d228a0a0e2abd6f07015d9306613