问题标签 [mpv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
295 浏览

android - mpv-android不能流畅播放4K电影

当我播放普通的 4k hdr 电影时,它无法流畅播放。所以我想知道现在是否有更好的配置继承我的配置

我必须使用 mpv,因为它是 android 上唯一支持自定义 http 标头(referer)的播放器。如果我使用第二种解码方法(我禁用的配置中的第二部分),它解码更流畅但视频纵横比错误(它只是拉伸以覆盖整个屏幕)

设备:Redmi K20 图片在这里

0 投票
0 回答
97 浏览

mpv - 当我按下空格键时,如何使 mpv 在暂停和播放之间切换、显示剩余时间并显示文件名?

在〜/input.conf我有以下行......

SPACE cycle pause; seek +0 exact; show-text "${filename}"

当我按下空格键时,会发生我想要的两件事:首先,mpv 在暂停和播放之间切换;其次,mpv 显示剩余时间。但是,当我按空格键时,mpv 不显示文件名。

另一方面,当我将上面的脚本替换为...

SPACE cycle pause; show-text "${filename}"

mpv 在暂停和播放之间切换并显示文件名,但是当我按下空格键时,mpv 当然不会显示剩余时间。

当我按下空格键时,如何使 mpv 在暂停和播放之间切换、显示剩余时间并显示文件名?

0 投票
1 回答
166 浏览

python - PySide 应用程序中嵌入的 MVP 播放器在 Windows 上没有收到鼠标点击

我正在构建一个具有视频播放功能的基于 PySide/Qt 的应用程序。我找到了mpv 播放器和有用的python-mpv库,可以将它放入我的基于 Python 的应用程序中。一切都很好。我遇到的问题是尝试在Windows机器上使用播放器(在 OS X 上没有问题):播放器渲染,视频开始播放,声音正常,但我无法点击屏幕控制。控件是可见的,但单击它们不会执行任何操作。就好像小部件没有收到鼠标点击,而只是在 Windows 上?

我在试图调试这个的互联网上没有找到太多其他东西。播放器不会抛出任何错误或警告,因此很难知道从哪里开始。我通常也不是 Windows 的老兄。这个人似乎有同样的问题,但我不确定他们是否解决了这个问题。

有没有其他人在让 mpv 播放器在基于 Qt 的应用程序中工作时遇到麻烦或成功?感谢任何见解!我在下面玩过的相同代码:

0 投票
1 回答
113 浏览

c++ - 如何从 mpv 电影中绘制到 OpenGL

我们可以使用 mpv 库在 OpenGL 窗口的左下角绘图。虽然 mpv 似乎能够绘制任意宽度和高度,但我们发现绘制到另一个位置的唯一方法是写入另一个帧缓冲区,但是我们必须将第二个帧缓冲区 blit 到第一个帧缓冲区上。

有没有办法告诉 mpv 将 OpenGL 绘制到 (x,y,w,h) 上?

此外,当我们复制它多次崩溃时,然后突然开始工作,这很奇怪。即使它有效,它也会显示两张我们完全不理解的图片。

在此处输入图像描述

要创建帧缓冲区:

要将电影帧缓冲区复制到常规帧缓冲区中:

0 投票
0 回答
23 浏览

windows - 如何使用 curl 或任何其他方法在 SF.net 下载最新版本的文件?

我正在创建一个批处理文件来下载我的所有程序,其中之一是MPV

Win x64 的 MPV 文件托管在 sf.net 上,地址为https://sourceforge.net/projects/mpv-player-windows/files/64bit/。我想获得最新版本并下载它。

这可以仅使用 curl 或批处理来实现吗?

0 投票
0 回答
84 浏览

compilation - 在 Windows 10 中使用 msys 编译 libmpv

我想通过 Windows 为 32 位 Windows 编译 libmpv。我使用了 github 上的 mpv 编译指南,但我得到的最终文件大小不超过 12 MB。当我查看 config.log 日志文件时,有很多关于在 pkg_config 中找不到 lua52、luajit、lua、mujs 等库的错误。此外,当我尝试通过 Python 运行编译文件时,我得到 OSError: [WinError 126] The specified module could not be found。请帮我为 windows 32 编译 mpv。我使用的是 windows 10 64 位 msys2。存储库链接:https ://github.com/mpv-player/mpv

0 投票
1 回答
329 浏览

linux - ffplay不能播放mp4视频,但是mpv可以

我想在 Debian 9 上播放 mp4 视频。

首先,我尝试使用 ffplay 播放视频。我使用该命令ffplay test.mp4,但它无法播放,并显示许多相同的错误Receive_frame and send_packet both returned EAGAIN, which is an API violation.。有详细的日志。

然后,我尝试使用 mpv 播放视频。我使用命令mpv test.mp4,它成功播放了视频。有详细的日志。

我对视频编码和解码了解不多。mpv 和 ffplay 都使用 ffmpeg 进行视频解码,但是为什么结果不一样呢?提前致谢。

有我系统的信息。

0 投票
1 回答
341 浏览

streaming - 如何让`mpv --stream-record`使用icecast标题作为文件名?

与icecast流一起使用时,是否可以mpv根据当前icy-title值将流转储到单独的文件中?--stream-record

man mpv仅提及使用带有--record-file,的固定文件名--stream-record --dump-cache

如果这不可能直接使用mpv什么可能的方法来为 icecast 播放列表中的每首歌曲保存单独的文件,而不是像这样保存一个巨大的连续文件--stream-record=mystream.mp3

0 投票
0 回答
32 浏览

python - 如何从多个流中连续加载同步视频?

我有 3 个具有以下结构的独立视频流:

每个流是一个视频文件列表,应该一个接一个地播放,即连续播放到列表的末尾。流总长度相等,每个文件按顺序播放,即一个gopro-1.mp4gopro-2.mp4一个播放的总长度与gps-1.mp4等相同。我想同步并同时播放叠加中的所有 3 个流。用例是同时播放来自自行车行车记录仪、头盔式 GoPro 和 GPS 的视频(最后一个流具有 alpha 通道,但没关系)。罪魁祸首是每个流中的单个文件的长度不同。我(到目前为止)在 shell 脚本中使用的 MPV API 可以轻松地将文件覆盖gps-1.mp4在上面gopro-1.mp4并将它们一起播放,但无法处理加载gopro-2.mp4gps-1.mp4还在玩,所以我需要一个不同的解决方案。

作为参考,一个 shellscript(在安装了 MPV 的 Windows 和 Linux 上运行)适用于 2 个流,其中两个流具有相同数量的视频并且视频具有相同的长度:

我考虑过实时修剪gps-1.mp4gps-1-1和,以便gps-1-2我可以叠加gps-1-1,但它似乎是 MPV API 的一个限制,即对视频进行分组(相当于 CLI 中的和)并修剪视频长度(在 CLI 中)可以'不能一起使用。因此,我决定切换到 Python 或 C++ 之类的东西,但我不知道如何处理这个任务。gopro-1gps-1-2gopro-2--{--}--start=$S --length=$L

Ps 有几个专用的行车记录仪播放器已经这样做了,但它们都不能在 Linux 上运行 - 理想情况下,该解决方案将独立于平台,例如我使用 MPV,因为它可以在许多平台上运行,但它不必是 MPV 或 shellscript/ C/Python。从字面上看,任何事情都会做。我当前的解决方案粘贴在上面只是为了帮助可视化问题。特定于 Windows 的 C++ 或 Python 解决方案很好,我很乐意让它在不同的平台上工作。我只是希望它不会因为个人原因而出现在 Java 中。

0 投票
1 回答
47 浏览

c# - 将面板句柄绘制到位图

我有一个托管 WinformsPanel 的 WPF 应用程序

然后我使用此面板显示视频。我正在使用Mpv.NET lib 来执行此操作。视频播放器已正确初始化:

现在,如果我尝试绘制面板内容,生成的图像仍然是空白的。绘制图像的代码如下:

为了清楚起见:视频被显示。我可以看到视频内容。当媒体正确加载时,我开始绘制图像。我什至将绘图命令卸载到单击按钮。因此,当视频运行时,我尝试进行“帧捕获”,可以这么说。但是图像仍然是空白的。

如何捕获面板内容?它与提供给视频播放器的本机句柄有关吗?提前致谢。