VLC 媒体播放器
来自项目 主页
- VLC 是一个免费开源的跨平台多媒体播放器和框架,可播放大多数多媒体文件以及 DVD、音频 CD、VCD 和各种流媒体协议。
安装
安装 vlc 分拆包,它依赖于一小组最小的 VLC 插件。有关更多功能,请参阅可选依赖项。
可选依赖
某些编解码器需要额外的 VLC 插件(例如 H.264),因此建议安装 vlc-plugin-ffmpeg。这将使用可用的 libav (FFmpeg) 动态库进行解码;编解码器支持取决于 FFmpeg 的编译配置。
# pacman -S vlc-plugin-ffmpeg
vlc-plugins-all 包含所有 VLC 插件,但插件包可以单独安装(请参阅依赖项)。
语言
VLC 在其*首选项*菜单中不提供更改语言的选项。但您可以使用 LANGUAGE 环境变量。例如,修改 vlc.desktop 桌面条目以更改
Exec=/usr/bin/vlc %U
更改为
Exec=env LANGUAGE=fr /usr/bin/vlc %U
将 VLC 界面切换为法语。
皮肤
VLC 可以被“皮肤化”以获得不同的外观和感觉。您可以在 皮肤网站获取皮肤。
要安装皮肤,请下载它并将其移至 ~/.local/share/vlc/skins2/。
打开 VLC,点击*工具 > 首选项*。当首选项窗口打开时,您应该会看到“界面”选项卡
选择“使用自定义皮肤”单选按钮,然后选择下载的皮肤。
重新启动 VLC 使更改生效。
Web 界面
使用参数 --extraintf=http 运行 VLC 以使用桌面和 Web 界面。--http-host 参数指定绑定到的地址,默认为 localhost。要设置密码,请使用 --http-password,否则 VLC 将不允许您登录。
$ vlc --extraintf=http --http-host 0.0.0.0 --http-port 8080 --http-password yourpasswordhere
要从图形界面启用 Web 界面,请导航至*视图 > 添加界面 > Web 界面*。通过*工具 > 首选项 > 显示设置:全部 > 界面 > 主界面 > Lua > Lua HTTP > 密码*设置密码。
VLC 默认使用端口 8080:https://:8080
技巧与提示
通过 VLC 进行 Twitch.tv 直播
请参阅 Streamlink#Twitch。
播放本地 DLNA 服务器上的流媒体内容
如果您发现尝试播放 UPnP/DLNA 内容(通过*视图 > 播放列表 > 本地网络 > Universal Plug'n'Play*)时,vlc 在本地网络上找不到 DLNA 服务器,请确保防火墙没有阻止端口 1900 UDP。开放此端口对于播放本地 UPnP/DLNA 内容至关重要。
通过快捷键或命令行控制
安装 openbsd-netcat。
在 存档的 CrunchBang 论坛获取脚本。
遵循脚本中的说明为 VLC 设置套接字。
从命令行运行脚本,或通过桌面将脚本与键盘快捷键关联。
或者,您可以使用 MPRIS 与 VLC 进行交互。
也可以使用 ncurses 界面启动 vlc
$ vlc -I ncurses
有关更多信息,请参阅 文档
防止多实例运行
默认情况下,每次使用一个或多个文件启动 VLC 时,都会打开一个新的程序实例。如果您使用 VLC 播放音乐收藏等内容,这可能会令人烦恼。您可以一次打开多个文件(在文件管理器中选择它们),或从菜单禁用此行为:勾选*工具 > 首选项(将“显示设置”设置为“简单”) > 界面 > 播放列表和实例 > 仅允许一个实例*,并勾选*在单实例模式下将项目添加到播放列表*,它会保持当前文件播放并将任何新打开的文件添加到当前播放列表。
还有一个名为*从文件管理器启动时仅使用一个实例*的选项 — 启用此选项后,通过文件管理器打开的所有文件将在单个实例中播放。*在单实例模式下将项目添加到播放列表*选项仍然适用。
硬件视频加速
请参阅 硬件视频加速。
VLC 会自动尝试使用可用的 API,但您可以覆盖它:前往*工具 > 首选项 > 输入与编解码器*,然后在*硬件加速解码*下选择合适的选项,例如 VA-API 的 视频加速 (VA) API 或 VDPAU 的 视频解码和呈现 API for Unix (VDPAU)。
systemd 服务
VLC 的 Web 界面可以从 systemd 启动。首先,您需要创建一个默认用户
# useradd -c "VLC daemon" -d / -G audio -M -p \! -r -s /usr/bin/nologin -U vlcd
现在创建 systemd 服务文件
/etc/systemd/system/vlc.service
[Unit] Description=VideoOnLAN Service After=network.target [Service] Type=forking User=vlcd ExecStart=/usr/bin/vlc --daemon --syslog -I http --http-port 8090 --http-password password Restart=on-abort [Install] WantedBy=multi-user.target
启动并启用 vlc.service。使用无用户名和在服务文件中设置的密码登录 http://yourmachine:8090/。
Chromecast 支持
从 3.0 版本(Vetinari 分支)开始,VLC 可以向同一网络上的 Chromecast 设备进行流式传输。
安装软件包
- libmicrodns - VLC 可以找到 Chromecast 设备,它会显示在*播放 > 渲染器*菜单中
- protobuf - 使流式传输到*播放 > 渲染器*菜单中选定的设备成为可能
然后,编辑 /etc/nsswitch.conf 文件,并将 hosts 行修改为在 resolve 和 dns 之前包含 mdns_minimal [NOTFOUND=return]
hosts: ... mdns_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns ...
- 如果您在解析
.local主机时遇到速度变慢的问题,请尝试使用mdns4_minimal而不是mdns_minimal。 - 有关更多信息,请参阅 Avahi。
暂停点击插件
安装 vlc-pause-click-pluginAUR,它允许您点击 VLC 窗口内的视频,然后视频会暂停或恢复。这是常见的预期行为。
安装后不激活,您需要按 https://github.com/nurupo/vlc-pause-click-plugin#usage 中的说明手动启用它。
故障排除
升级后视频损坏或其他问题
VLC 偶尔会在次要版本中出现配置问题。在报告错误之前,请删除或重命名您位于 ~/.config/vlc 的配置,并确认问题是否仍然存在。
如果使用 AUR 中的 ffmpeg 变体,请确保您也已升级它。Pacman 在必要时不会升级它,不匹配会导致 VLC 损坏。
段错误
启动 VLC 时出错
启动 VLC 时可能会出现段错误,在排除 微码等通用因素后,可能的解决方法是运行以下命令
# /usr/lib/vlc/vlc-cache-gen /usr/lib/vlc/plugins
然后重新安装 VLC。
播放视频时出错
如果 VLC 可以打开并播放音频文件,但在播放带有段错误的视频时关闭,那么 硬件视频加速配置错误,导致 VLC 无法引用图形设备。当在一台计算机上使用不同的显卡时尤其会发生这种情况。
下拉菜单中缺少图标
这可能发生在 XFCE 下,下拉菜单中将不再有图标,例如 PCI 卡图标。
执行以下命令重新激活这些图标
$ gconftool-2 --type boolean --set /desktop/gnome/interface/buttons_have_icons true $ gconftool-2 --type boolean --set /desktop/gnome/interface/menus_have_icons true
未能打开 VDPAU 后端
请参阅 硬件视频加速#未能打开 VDPAU 后端。
由于您的系统可能不支持 VDPAU,您应该告诉 VLC 改用 VA-API,请参阅 #硬件视频加速。
VLC 关闭后第二次打开失败
在设置 -> 输入/编解码器中手动将 VLC 设置为使用 VA-API 加速后端。VLC 似乎默认选择 VDPAU,这对很多人来说是损坏的。
通过 SFTP 播放文件名包含空格的媒体文件失败
如果 VLC 无法通过 SFTP 播放任何视频或音频文件,请确保您已安装 sshfs。
如果它拒绝通过 SFTP 播放任何包含空格的媒体文件并总是要求身份验证,请更改 vlc.desktop 文件中的 Exec 行:
Exec=/usr/bin/vlc --started-from-file %F
请参阅 [1]。
iOS/tvOS 上的 VLC 无法通过 SFTP 连接到 Arch
由于应用商店许可限制,VLC 的 iOS 和 tvOS 应用使用不完整的 ssh 实现。需要对 openssh 进行配置更改才能兼容。创建一个文件 /etc/ssh/sshd_config.d/vlc.conf,内容如下:
HostKeyAlgorithms +ssh-rsa KexAlgorithms +diffie-hellman-group16-sha512
然后,运行 systemctl reload sshd。
无法打开 DVD
要能够通过*媒体 > 打开光盘*播放 DVD,需要安装 VLC 的可选依赖项 vlc-plugin-dvd 和 libdvdcss。
某些 DVD 可能需要其他插件,例如 vlc-plugin-dca。或者,安装 vlc-plugins-extra,它将安装上述两个插件以及其他插件。
如果您已安装所有上述软件包但仍无法打开 DVD,请尝试删除您的 ~/.dvdcss 文件夹。这将强制重新下载 CSS 密钥,这可能会解决问题。
无法打开蓝光/蓝光菜单未加载
请参阅 Blu-ray#VLC
媒体未加载
如果某些 RTP、RTSP、DVB-T 流或蓝光视频看起来一直在无休止地缓冲或无声地未加载,且日志中没有错误消息(例如来自法国 ISP Free 的 IPTV),请安装 vlc-plugin-aribb24。
Wayland 支持
vlc-gitAUR 默认情况下使用 Wayland 支持进行构建。设置 QT_QPA_PLATFORM=wayland 环境变量以启用 Wayland。有关更多信息,请参阅 Wayland#Qt。
请注意,尽管 vlc PKGBUILD 中使用了 --enable-wayland 构建标志(当前使用 VLC 版本 3.0),但仍然使用了 Xwayland,因为 VLC 3 的 Wayland 支持已损坏。除非安装了 xorg-xwayland,否则 VLC 的视频输出可能会被裁剪或格式不正确。
使用以下命令,VLC 3 将开始使用 Wayland
$ env -u DISPLAY vlc
这行得通,因为 VLC 3 在启动时会检查 DISPLAY 环境变量,如果未设置,则使用 Wayland。不建议全局从环境中删除 DISPLAY,因为某些旧应用程序仍然依赖此变量。
未能连接到 RTSP 流
当连接到 RTSP 流最终出现 failed to setup rtsp session 错误时,请安装 vlc-plugin-live555。
播放 Streamlink 流时出现随机颜色
安装可选依赖项 vlc-plugin-aribb24。
播放带 AMDGPU 的 HEVC 视频时系统无响应
播放 HEVC (H265) 编码的视频时,用户可能会遇到系统完全冻结,无法执行任何操作或关机。
这可以通过将*OpenGL/GLES 硬件转换器*的设置更改为*自动*以外的其他选项来修复(例如,*VDPAU OpenGL surface converter* 或 *VA-API OpenGL surface converter for Wayland*)。
请参阅 https://gitlab.freedesktop.org/drm/amd/-/issues/2113#note_1602599
更改播放进度后声音短暂消失
将*工具 > 首选项(使用“简单”视图) > 音频 > 输出模块*设置为当前使用的音频服务器。(对于 PipeWire,您需要安装 vlc-plugin-pipewireAUR,否则只能使用兼容层。)
VLC 未显示字幕和 OSD
即使您有解码字幕的插件,屏幕上也不会显示字幕(消息/控制台也不会有任何错误),如果您缺少 vlc-plugin-freetype,而它不包含在 vlc-plugins-base 中,但包含在 vlc-plugins-extra 中。
参见
- 维基百科文章
- 应用程序列表/多媒体
- VLC 主页
- playerctl: 用于控制媒体播放器的命令行实用程序和库
- 通过浏览器控制 VLC