前言
众所周知,DaVinci Resolve 是一个基于 Qt5 的,一个跨平台的,极为好用易用的 AIO 非线性编辑软件。
可惜 Linux 版本,对比 Windows 和 Mac 来说,功能存在缺失,限制也颇大。虽然作为专用软件拖拉机的达芬奇,在 Linux 上有一定的水土不服,但也毫无疑问,达芬奇确实是 Linux 最 AIO,功能最全的非线性编辑软件。
不过最好的办法是换 Kdenlive,然后配上 Natron 或者 Blender 做特效处理,但感觉不如直接用 Fusion 来着。
安装/安装后无法打开
安装前,请先安装 apr、apr-util、zlib-ng、libxcrypt-compat
sudo dnf in apr apr-util zlib-ng libxcrypt-compat前面几项是安装依赖,最后一个不装会导致静默崩溃,而如果安装了这三个还是没法安装,请使用终端运行如下指令:
SKIP_PACKAGE_CHECK=1 /path/to/DaVinci_Resolve_VERSION_Linux.run安装完后,如果出现了类似 libpango、glib、libgmodule 的报错,如这俩:
/opt/resolve/bin/resolve: symbol lookup error: /usr/lib64/libpango-1.0.so.0: undefined symbol: g_string_free_and_steal/opt/resolve/bin/resolve: symbol lookup error: /usr/lib/libgdk_pixbuf-2.0.so.0: undefined symbol: g_task_set_static_name新建一个专门放用不到的 libpango、glib、libgmodule 的文件夹,然后移动到禁用库文件夹里面,让达芬奇自己调用系统的即可。
sudo mkdir /opt/resolve/libs/disabled-libraries/cd /opt/resolve/libs/sudo mv libglib* disabled-librariessudo mv libgio* disabled-librariessudo mv libgmodule* disabled-libraries无标题栏
KWin 魅力时刻来了🤓!
首先新建一个.kwinrule 文件,这里叫davincibar.kwinrule。
[达芬奇标题栏]Description=达芬奇标题栏noborderrule=2types=1wmclass=resolvewmclassmatch=1然后 系统设置 - 窗口管理 - 窗口规则 导入即可。
也可以先打开达芬奇,手动添加规则,使用检测窗口属性按照如下方式修改。

编解码器支持
标准支持
DaVinci Resolve 分为两个版本,一个是免费版 DaVinci Resolve,一个是付费版 DaVinci Resolve Studio。以下是 Linux 下达芬奇编解码标准支持情况。1
| 版本 | MP4(其他视频编码) | AVC(H264) | HEVC(H265) | AAC | 备注 |
|---|---|---|---|---|---|
| DaVinci Resolve | 支持 | 不支持 | 不支持 | 不支持 | MP4 支持 AV1,但只支持 NVIDIA 环境。 |
| DaVinci Resolve Studio | 支持 | 支持 | 支持 | 不支持 |
如果免费版不支持这些编解码器怎么办?而如果 Studio 版不支持 AAC 怎么办?
家中常备 Handbrake 罢。出现问题直接转码!
如果是 Studio,只需要解决音频,可以使用这个脚本里面的 mp4 audio compounder.py
但请注意,这个脚本只支持英语环境下的 DaVinci Resolve Studio。
脚本目录在 ~/.local/share/DaVinciResolve/Fusion/Scripts/Utility/ 下。
DaVinci Resolve Studio 启用 VAAPI 硬件编码
前往下面这个仓库下载 Release,然后解压到 /opt/resolve/IOPlugins 即可。
之前用过 Voukoder 的达芬奇 Bridge 的用户也许都不陌生了(RIP Voukoder 免费版 😭)
输入法支持2
参照了群友 Alynx Zhou 的方式,也感谢依云姐将这个文章分享给我。
但我不用 RedHat Inhuman Desktop 和 RedHat Inhuman Bus(每日 IGTV 大学习 1/1,事先声明,仅针对濒临破产的 GNOME 基金会,不针对任何 GNOME 用户和尽力为了 GNOME 易用性做贡献的贡献者,扩展作者。我一个用 RedHat Fedora 骂 RedHat GNOME 和 RedHat iBus 的说是。),所以这篇文章将会使用 Fcitx5 作为演示。
本操作在如下发行版测试过,但是本文将以 IBM | RedHat Fedora GNU/systemd-linuxd-rs 43 KDE Plasma Desktop Edition 作为演示。
IBM | RedHat Fedora GNU/systemd-linuxd-rs 43 KDE Plasma Desktop Edition- openSUSE Tumbleweed - Slowroll(不知道为啥失效)
- CachyOS based by Arch Linux
首先检查以下 Qt5 基础包版本
dnf info qt5-qtbase输出结果如下
仓库更新和加载中:仓库加载完成。已安装的软件包Name : qt5-qtbaseEpoch : 0Version : 5.15.18Release : 1.fc43Architecture : x86_64Installed size : 9.8 MiBSource : qt5-qtbase-5.15.18-1.fc43.src.rpmFrom repository : updatesSummary : Qt5 - QtBase componentsURL : http://qt-project.org/License : LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0Description : Qt is a software toolkit for developing applications. : : This package contains base tools, like string, xml, and network : handling.Vendor : Fedora Project
可安装的软件包Name : qt5-qtbaseEpoch : 0Version : 5.15.18Release : 1.fc43Architecture : i686Download size : 3.7 MiBInstalled size : 10.3 MiBSource : qt5-qtbase-5.15.18-1.fc43.src.rpmRepository : updatesSummary : Qt5 - QtBase componentsURL : http://qt-project.org/License : LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0Description : Qt is a software toolkit for developing applications. : : This package contains base tools, like string, xml, and network : handling.Vendor : Fedora ProjectOK,祖传的 5.15.x。众所周知m是基于 5.15.2 构建的,而且 Alynx Zhou 也实践了,只要 5.X 不变,5.X.Y 的 Y 怎么变都无所谓。
> strings /opt/resolve/libs/libQt5Core.so.5 | rg 'Qt 5'Qt 5.15.2 (x86_64-little_endian-lp64 shared (dynamic) release build; by Clang 12.0.1 )This is the QtCore library version Qt 5.15.2 (x86_64-little_endian-lp64 shared (dynamic) release build; by Clang 12.0.1 )If that is not possible, in Qt 5 you must at least reimplement保守起见,检查一下是否安装了 Qt5 Fcitx5 的插件:
ls /usr/lib64/qt5/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so如果输出了如下结果:
/usr/lib64/qt5/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so则说明插件存在。
反之如果出现:
ls: 无法访问 '/usr/lib64/qt5/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so': 没有那个文件或目录则需要确保你是否安装 Qt5 的包,或输入法的 Qt5 模块。
OK,我们假设你输出了文件目录,我们就开始动手!
首先新建文件夹:
sudo mkdir /opt/resolve/libs/plugins/platforminputcontexts/然后复制和链接都可以,为了保守起见,我这里是使用的是复制:
sudo cp /usr/lib64/qt5/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so /opt/resolve/libs/plugins/platforminputcontexts/如果无效,我推荐去Arch 偷一下 fcitx5-qt 的包。
使用 KIO 导入文件
使用这个脚本里面的 import media via dolphin.py 即可
脚本目录在 ~/.local/share/DaVinciResolve/Fusion/Scripts/Utility/ 下。