[Seek Help] 编译FFmpeg出错
Tofloor
poster avatar
Gnu_rage
deepin
2022-08-29 23:25
Author

绝大部分采用官方配置选项,加入了vaapi支持

./configure --prefix=/usr --extra-version=1+dde --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdavs2 --enable-libxavs2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --pkg-config-flags="--static" --extra-libs="-lpthread -lm" --enable-vaapi --enable-nonfree

报错如下:

ERROR: avisynth/avisynth_c.h avisynth/avs/version.h not found

avisynth也编译安装了,但仍然如此报错。

求教。

Reply Favorite View the author
All Replies
SamLukeYes
deepin
2022-08-29 23:38
#1

可以用 nix 安装 ffmpeg,在 Linux 上应该是默认开启了 vaapi 支持的,如果不自定义编译选项的话有 binary cache 可以下载,不用自己编译

Reply View the author
squallliu
deepin
2022-08-29 23:48
#2

深度的ffmpeg启用了vaapi啊

ffmpeg -encoders | grep vaapi
image.png

Reply View the author
sukanka
deepin
2022-08-29 23:52
#3

把 avisynth 的头文件路径也 加到 --incdir 里面, 你的 avisynth 头文件应该不在 /usr/include/x86_64-linux-gnu 下面,也许在 /usr/local/include/x86_64-linux-gnu

Reply View the author
喵呢酱
deepin
2022-08-30 04:37
#4

试试通过docker编译

Reply View the author
Gnu_rage
deepin
2022-08-30 07:22
#5

是不是我把选项名称搞错了呢?我是想增加intel的qsv硬编

Reply View the author
SamLukeYes
deepin
2022-08-30 09:18
#6
Gnu_rage

是不是我把选项名称搞错了呢?我是想增加intel的qsv硬编

可以试一下 nixpkgs 上的 ffmpeg_5-full,有 binary cache,不用自己编译

图片.png

Reply View the author
Gnu_rage
deepin
2022-08-30 18:13
#7

是需要安装nix吧?

正在编译之中

截图_deepin-terminal_20220830101305.png

Reply View the author
Gnu_rage
deepin
2022-08-31 02:01
#8

安装了。仍然没有nix-shell。

另外,下载的nix包貌似没有用,./install也报错

"./install: 179: ./install: /nix/store/myr6fcqa9y4y2fb83zz73dck52vcn81z-nix-2.11.0/bin/nix-store: Exec format error
./install: unable to register valid paths"

Reply View the author
SamLukeYes
deepin
2022-08-31 02:28
#9
Gnu_rage

安装了。仍然没有nix-shell。

另外,下载的nix包貌似没有用,./install也报错

"./install: 179: ./install: /nix/store/myr6fcqa9y4y2fb83zz73dck52vcn81z-nix-2.11.0/bin/nix-store: Exec format error
./install: unable to register valid paths"

你确定安装成功了吗?如果安装成功了,重启一下试试看confused

另外,其实可以用镜像站tail

Reply View the author
Gnu_rage
deepin
2022-09-01 16:45
#10
SamLukeYes

可以试一下 nixpkgs 上的 ffmpeg_5-full,有 binary cache,不用自己编译

图片.png

ffmpeg_5-full的安装包名称是什么呢?

我直接“nix-env -i ffmpeg_5-full”,提示“'ffmpeg_5-full' matches no derivations”

于是用ffmpeg作为安装包名称,安装之后并没有包含qsv

截图_deepin-terminal_20220901083903ffmpeg.png

Reply View the author
Gnu_rage
deepin
2022-09-01 16:49
#11
SamLukeYes

你确定安装成功了吗?如果安装成功了,重启一下试试看confused

另外,其实可以用镜像站tail

安装成功了,但运行nix-shell会报错,从找不到default.nix(已解决)到现在的

提示“error: stack overflow (possible infinite recursion)”(尚未解决)

Reply View the author
SamLukeYes
deepin
2022-09-01 16:57
#12
Gnu_rage

ffmpeg_5-full的安装包名称是什么呢?

我直接“nix-env -i ffmpeg_5-full”,提示“'ffmpeg_5-full' matches no derivations”

于是用ffmpeg作为安装包名称,安装之后并没有包含qsv

截图_deepin-terminal_20220901083903ffmpeg.png

其实可以在 search.nixos.org 上搜索,上面有安装指引:

图片.png

Reply View the author
Gnu_rage
deepin
2022-09-01 17:10
#13

自己看了nix-env --help,使用“nix-env -i ffmpeg-full”安装了5.1版本,看了一下,qsv和NVENC都支持进去了。

学习了,再次感谢SamLukeYes大大kissing_heart

Reply View the author
Gnu_rage
deepin
2022-09-01 17:10
#14
It has been deleted!