跳到正文
发现
QMPlay2:Qt 跨平台影音播放器
桌面应用游戏娱乐

QMPlay2:Qt 跨平台影音播放器

基于 Qt 与 FFmpeg 的开源音视频播放器,支持几乎所有格式、硬件解码与 YouTube 浏览。

admin
发布于 2026-10-28
浏览
4
访问
0
下载
0
版本
v26.08.02
平台
Windows、macOS、Linux
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

QMPlay2 是一款基于 Qt 和 FFmpeg 的开源视频与音频播放器,可以播放 FFmpeg 支持的所有格式与编解码器。除常见音视频文件外,它还支持 Audio CD、raw 文件与 chiptune 音乐,并内置 YouTube 浏览器。项目采用 LGPL-3.0 许可证,可运行于 Windows、Linux/BSD 与 macOS。

主要功能

  • 广泛的格式支持:播放 FFmpeg 支持的全部格式与编解码器,并支持 Audio CD、raw 文件、chiptune。
  • YouTube 浏览:内置 YouTube 浏览器,可在搜索栏左侧的“Settings”图标中调整音频、视频质量优先级;若所选质量不存在,会按列表顺序尝试下一项。YouTube 播放依赖外部 yt-dlp,QMPlay2 会自动下载。
  • 硬件解码:支持 Vulkan Video、CUVID(仅 NVIDIA)、DXVA2(Windows)、D3D11VA、VA-API(仅 Linux/BSD)和 VideoToolBox(仅 macOS)。默认关闭,可在“Settings->Playback settings”中把硬件解码器移到解码器列表顶部后应用。
  • 球形视图:在 OpenGL 与 Vulkan 视频输出下支持球形视频,按 Ctrl+3 或从菜单“Playback->Video filters->Spherical view”开启。
  • 反交错:自动检测隔行视频,可在“Settings->Video filters”中设置;CPU 性能足够时可使用画质更好的“Yadif 2x”。Vulkan 渲染器自带 Yadif 滤镜,默认用于 CPU 解码视频。
  • Streamlink 集成:
streamlink -p QMPlay2 --player-http "URL" best
streamlink -p QMPlay2 -a /dev/stdin "URL" best
  • 隐藏功能:右键点击音量滑块选择“Split channels”可调节声道平衡;在“Options->Modules settings”的“Extensions”中配置 Last.fm scrobbling;在 share 目录(Windows 下为 QMPlay2.exe 所在目录)放置空文件 portable 可启用便携模式,放置 noautoupdates 可禁用首次运行时的自动更新;在选项设置中勾选“Read and display still images”可显示静态图片;可在 QMPlay2.ini 的 General 段设置 CustomUserAgent、NoCoversCache;在“Settings->General settings”中启用“Allow only one instance”实现单实例。
  • 多媒体键与 MPRIS2:多媒体键通常自动生效(Linux/BSD 视配置而定);Linux/BSD 下也可通过 MPRIS2 的 dbus 命令控制播放、上一首、下一首与停止。

安装与使用

Windows:从 Releases 页面下载 Windows 安装包。

Arch Linux:安装 AUR 客户端(如 yay)后执行:

yay -S qmplay2-git

openSUSE Tumbleweed(注意不要混用不同软件源的 FFmpeg):

sudo zypper ar https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Tumbleweed Packman
sudo zypper dup --allow-vendor-change --from "Packman"
sudo zypper in QMPlay2

Fedora:

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf groupupdate core
sudo dnf update
sudo dnf groupupdate multimedia --setop="install_weak_deps=False" --exclude=PackageKit-gstreamer-plugin
sudo dnf groupupdate sound-and-video
sudo dnf install qmplay2

Gentoo:

emerge --ask media-video/qmplay2

Slackware:

slpkg install QMPlay2

从源码构建:先更新子模块 git submodule update --init,需要 CMake 3.16 或更高版本。必要依赖包括 Qt5 >= 5.15.2(Qt5DBus 仅 Linux/BSD、Qt5Svg、Qt5Qml、Qt6 时需 Qt6Core5Compat)与 FFmpeg >= 4.0(libavformat、libavcodec、libswscale、libavutil、libswresample,FFmpeg >= 5.1 的 libavfilter 用于音频滤镜,libavdevice 可选),以及 glslc;重要依赖为 TagLib >= 1.11 与 libass。随后执行:

cmake -GNinja -B build -S .
ninja -C build
sudo ninja -C build install

Flatpak 构建:

flatpak install org.flatpak.Builder org.kde.Platform/$(uname -m)/6.11 org.kde.Sdk/$(uname -m)/6.11
flatpak run org.flatpak.Builder build/flatpak --force-clean --ccache --user --install io.github.zaps166.QMPlay2.Devel.json

注意事项

  • YouTube 播放必须依赖外部 yt-dlp;Windows 上需确保杀毒软件或防火墙不阻止 yt-dlp 及外部程序执行。部分配置或旧驱动下 Vulkan 可能无法切换到独占全屏。
  • 硬件加速与 CPU 滤镜互斥:CUVID、DXVA2、VA-API 使用 OpenGL 视频输出,VkVideo、CUVID、D3D11VA、VA-API 使用 Vulkan 视频输出,此时 CPU 滤镜不可用。DXVA2 需要 WGL_NV_DX_interop 扩展,且不能与 Vulkan 共用;VideoToolBox 不支持反交错。
  • VA-API + OpenGL 使用 EGL 创建上下文,自动检测失败时可尝试 export QT_XCB_GL_INTEGRATION=xcb_glx 或 export QMPLAY2_EGL_CARD_FILE_PATH=/dev/dri/card1 后从命令行启动。
  • 使用自定义 ALSA 配置 asound.conf 或 .asoundrc 时,应追加 defaults.namehint.!showall on,否则新增设备可能不可见。
  • 对非隔行视频手动开启反交错会降低画质与性能,切换到其他视频时请记得还原设置。

本作品整理自 GitHub 开源项目 zaps166/QMPlay2,原作者 @zaps166,许可证 LGPL-3.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v26.08.02当前版本

    修复全屏时鼠标在窗口内按下会关闭面板的回归问题;Vulkan 对 BT.2020 视频使用 BT.2020 surface(Wayland 默认开启);支持 BT.2020 TRC 转 sRGB、显示真实 gamma 校正值;可加载并显示 LRC 歌词;新增隐藏 QMPlay2 logo 选项;修复 HLG HDR 显示。

评论