问题标签 [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 回答
721 浏览

c - 从 MPV 获取原始视频帧(回调或渲染到特定内存地址)

mpv 播放器是旧 MPlayer 的一个分支。它可以构建为库,并具有将视频帧渲染到许多视频输出的 API,例如 OpenGL 表面、Direct3D、SDL 等。我正在尝试在我当前的项目中使用这个库来解码来自云的 flv 流。

但是我找不到将解码的视频帧直接渲染到用户空间分配的内存缓冲区的方法。出于特定原因,我需要此选项,并且上面列出的接口不适合我的任务。我还需要一个回调,它将在每一帧被解码并写入内存后调用。

有没有办法使用来自libmpv/client.h的标准 mpv API 来实现此功能?如果没有,如何编写简单的视频输出驱动程序并将指向自定义内存的指针传递给它?

我已经在我的任务中使用了 libVLC,它具有清晰的界面来为我的需要设置一些回调,但不幸的是,libVLC 2.x 包含在从云播放视频流期间出现灰帧伪影的错误。

0 投票
1 回答
976 浏览

docker - 运行 python-mpv 的 Docker 容器:无法打开共享对象文件 libmmal_core.so

在我的 Raspberry Pi 3 Model B 上,我想在 Docker 容器中运行python-mpv 。我的 Docker 版本是 18.02.0-ce,构建 fc4de44。Raspberry 和 Docker 容器都运行“Raspbian Stretch”。这是 Dockerfile:

尝试在我的 Raspberry 上运行此容器时(docker build -t mpv .; docker run -it mpv),我收到此错误:

由于主机上可以使用 libmmal_core.so,因此我尝试仅将主机文件夹用作 Docker 容器的卷,但没有成功:

如何修复我的 Docker 容器以便它找到 libmmal_core.so?

0 投票
0 回答
454 浏览

c# - libmpv 的自定义 GUI

我正在尝试为 libmpv 创建一个自定义 GUI(使用 mpv(。我将使用 C# 中的 libmpv。

任何指针/示例/教程如何创建一个?

mpv 有/我发现/的示例不包含任何相关内容。对于初学者,我要创建的是一个自定义“窗口”,当鼠标移到视频窗口/键被按下时会弹出。我希望这个窗口包含基本的搜索栏和播放控件。

干杯-k

0 投票
1 回答
646 浏览

windows - 在 Windows 上使用 mp.get_property("path") 空格从 MPV 播放器返回的路径错误

我的视频位于以下位置,Windows 上有空格。

"c:\GoogleDrive\CMD Scripts_video\test.mp4"

Lua 脚本中的 MPV 函数返回带有特殊字符 ~1 的剪切路径

video_path = mp.get_property("路径")

"c:\GOOGLE~1\CMDSCR~1_video\test.mp4"

如何获得 Windows 完整路径以在我的 LUA 脚本中将其用作 FFMPEG 的输入?

谢谢彼得

0 投票
3 回答
5145 浏览

milliseconds - MPV 播放器时间格式 HH:MM:SS 或 HH:MM:SS:mmm

有人知道,是否可以在 mpv.conf 中设置默认显示时间格式,包括毫秒?

现在我需要点击时间切换到毫秒,因为手动https://mpv.io/manual/master/中的选项 ,,timems''不起作用。

谢谢彼得的帮助

0 投票
0 回答
166 浏览

c++ - 使用 libmpv 播放 Qt 视频使 QtWebEngine jquery 内容不流畅 - Ubuntu

我有一个项目使用 libmpv 和 opengl 小部件(根据 libmpv 附带的示例)以及显示信息、图形和动画的 QtWebEngine 小部件(例如滚动代码)。

我发现在 Qt 的视频播放选项中,mpv 是最流畅和最可靠的。它可以完美流畅地播放任何高达 1080p 的视频。

然而,在播放视频时,QtWebEngine 中的任何动画都是不流畅和抖动的。当网页中有东西移动时,视频的流畅度也会稍差一些。

我正在测试的系统并没有为资源而苦苦挣扎(cpu 使用率约为 45%)。也没有任何视频解码,因为它正在播放原始视频(但在播放编码视频时,效果是相同的,无论是否启用硬件加速)。

我认为 mpv 小部件在处理帧时会中断 MainWindow 线程并导致它每隔几毫秒冻结一次。

据我所知,没有办法将 mpv 线程与 MainWindow 线程分开。

不知道能不能让mpv和webengine顺利协同工作。我觉得必须有某种方法可以在一个窗口中同时运行两个小部件,并且不会让它们相互混淆。

我正在使用 Ubuntu 18.04、QT 5.11 和来自 git 的最新 mpv 进行测试。

有没有人对首先尝试什么有任何建议或指示?我意识到这是一个有点宽泛的问题,但我对图形的了解是有限的。如果有人在概念层面上有建议(我不需要有人为我编写修复程序),我可以自己调查。

谢谢你。

0 投票
1 回答
593 浏览

i3 - i3:从不同工作区的游侠启动 mpv

我想配置我的 i3wm 和 ranger 文件管理器,这样当我在 ranger 中选择电影时,它会在工作区 10 上全屏打开 mpv 视频。--fs问题是没有(mpv 上的全屏选项)一切正常,但是当我添加--fs标志时,i3 不会将 mpv 移动到工作区 10,它会在 ranger 所在的任何地方打开。

.i3/config

.config/ranger/rifle.conf

为什么全屏这么有问题?有什么解决办法吗?

0 投票
0 回答
493 浏览

linux - MPV播放器长时间运行后自动暂停

我已经使用MPV 播放器 npm 包 mpv-co​​ntroller 实现了 Linux 播放器

我想循环播放视频很长时间。最初它可以正常工作长达 6 小时(大约)。然后视频自动暂停。

虽然我调查没有内存问题,但 MPV 播放器使用的内存量非常小。

请帮我解决这个问题。

上面的代码等价于

依赖

你需要先安装mpv播放器

谢谢你。

0 投票
1 回答
378 浏览

lua - Lua:一次结束 MPV

使用MPV我想要一个 Lua 脚本在节目结束时结束流的播放,但我的脚本在我设置它的时候什么都不做。

0 投票
1 回答
223 浏览

api - mpv API:如何转到播放列表中的第 n 个元素?

我通过socat在终端(bash脚本)上控制mpv,如下所示:

它有效,但我不知道要使用的语法playlist-pos

给出结果:

我如何使用这个特定的命令/属性,任何有助于理解正确使用的帮助都非常感谢。谢谢 。我想我没有得到man mpv manual 。