30
7月
2024
17:42

编译 dav1d 视频解码器

30 7月 2024 17:42

Dav1d 是适用于 Windows、Linux 和 MacOS 的最快 AV1 视频解码器。

简介

在运行 Linux LXLE、AMD E-350 处理器和 Radeon HD 6250 显卡的华硕“Eee PC”上网本上,我在播放视频时遇到问题:在 Google Chrome 浏览器中,视频被中断。 解决方案是首先下载视频,然后使用视频播放器从硬盘驱动器播放它 多用途车。 当然,mpv 足以完成许多任务,但 dav1d 更高级 - 用 C 编写。与其他播放器的比较 这里
对于那些不想编译的人,有一个现成的解决方案 见文章末尾- 部分 “使用 dav1d”

能够从 Linux 存储库安装 dav1d

编码器/解码器存在于 Ubuntu 存储库中

sudo apt update
sudo apt install dav1d

来自存储库的版本:

dav1d --version

1.2.1

展望未来,编译后的版本结果更新了很多:

dav1d --version

1.4.2-15-g2355eeb

dav1d 主页和源代码存储库

dav1d 主页 位于 VideoLAN.org

没有二进制文件,您需要通过编译源文本自行创建。
源代码存储库位于 GitHub 上。 要将存储库克隆到磁盘:

git clone https://github.com/videolan/dav1d

编译要求

需要以下包:

  • 构建必备
  • 叮当声
    *介子
  • 忍者

通过从命令行安装软件包可以满足前三个条件:

sudo apt install build-essential
sudo apt-get install clang
sudo apt-get install meson

至于 ninja,有两种方法 - 从存储库安装或下载最新版本。

sudo apt-get install ninja-build

或者您可以从 ninja 项目页面下载适用于 Linux-64 位的二进制文件:
*https://github.com/ninja-build/ninja/releases
我选择了第二种方法——二进制文件。

官方 dav1d 组装指南

*VideoLAN - dav1d

非官方的dav1d编译程序

1)从存储库克隆后,主目录中出现一个文件夹 ~/dav1d/。 让我们来看看吧。
2)从页面打开 https://github.com/ninja-build/ninja/releases 并在存档器中打开文件 ninja-linux.zip 并将 ninja 二进制文件提取到目录中 ~/dav1d/
3)选择默认编译器g+

sudo update-alternatives --config cc #选择g+
sudo update-alternatives --config c++ #选择g+

4)在dav1d文件夹中,创建一个“build”目录

mkdir build

5)编译

meson setup build

6) 从构建文件夹中的目标文件进行构建

cd build
../ninja

结果——编译后的输出文件位于目录中 "~/dav1d/build/tools",可执行文件“dav1d”。

7) 将二进制文件安装到系统目录中

../ninja -C build install

该程序将要求超级用户权限来安装二进制文件。 输入密码后,dav1d可执行文件将被写入/usr/local/bin目录:

Installing tools/dav1d to /usr/local/bin

其他编译说明

在克里斯蒂安·库尔克网站上

<a名称=“用法”>

使用 dav1d

解码器内置于播放器中 VLC从3.0.5版本开始 默认用于播放AV1格式的电影。 VLC 当前版本是 3.0.16。

sudo apt install vlc

并在命令行中启动vlc来播放视频

vlc video.mp4

额外的 vlc 键可以提高性能和播放质量(降低 CPU 使用率,减少帧丢失),如所写 这里

! dav1d 不直接播放视频。 用于VLC、MPV等外部视频播放程序。

用于MPV播放器

根据 多用途车文档 这些按键负责视频输出

--vo=<驱动程序>
Specify the video output backend to be used. See VIDEO OUTPUT DRIVERS for details and descriptions of available drivers.
--vd=<...>

  • 视频驱动程序以逗号分隔。

!!支持 dav1d 的最新版本 MPV 必须不是从 Linux 存储库安装,而是从 Flatpak 安装!

!! !安装播放器 多用途车 在帮助下 扁平封装

sudo add-apt-repository ppa:flatpak/stable

sudo apt update

sudo apt install flatpak

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

flatpak install flathub io.mpv.Mpv

flatpak run io.mpv.Mpv

来源: Reddit - AV1 视频疯狂滞后(帧丢失)

或者您可以从 FlatHub 页面下载该文件 mpv 的 flatpakref 或使用终端命令安装它:

wget https://dl.flathub.org/repo/appstream/io.mpv.Mpv.flatpakref
sudo flatpak install io.mpv.Mpv.flatpakref
flatpak 运行 io.mpv.Mpv

开始播放 MPV 中的文件

flatpak run io.mpv.Mpv video.mp4

如何从 YouTube 下载文件。

Mozilla FireFox 网络浏览器有一个扩展“简单的 YouTube 视频下载器”,添加了一个下载视频的按钮。 视频保存自 火狐浏览器 下载后,您可以在任何播放器中观看,包括在没有互联网的情况下(例如出差时)。



相关出版物