问题标签 [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 投票
1 回答
34 浏览

osc - MPV OSC 不能在带有 --wid 选项的附加窗口上工作

我运行 mpv.exe "video.mp4" --wid="hwnd of a notepad window" 并且在记事本窗口上播放的视频很好。但我注意到 OSC 不工作。我将鼠标光标移到窗口上并按下了一些键盘快捷键,但没有任何效果。如何在附加窗口上召唤和使用 osc..?我正在使用 mpv-0.33.0-x86_64。

0 投票
0 回答
57 浏览

lua - MPV:如何在给定的播放位置唤起 OSD 消息?

有人愿意帮忙吗?我不是程序员,但我想这很简单,所以我尝试从 MPV 手册中的代码示例中对一个小 LUA 脚本进行反向工程,最终得到以下代码,但它不起作用:

0 投票
0 回答
41 浏览

mpv - 如何安装或编译 Libass for Windows

这背后的原因是我使下面提到的 mpv 脚本工作。它需要 libass 才能工作,我不知道如何在 Windows 上安装它的便携版本。因此,我认为如果我可以让它使用 mpv 中内置的 libass 库来使其工作,那就太好了。

今年年初我从 PotPlayer 迁移到 mpv,但我错过了这个非常好的功能。但它困扰了我一段时间。请帮忙!

https://github.com/po5/libass_sub_selector

0 投票
0 回答
20 浏览

mpv - 如何为播放列表中的每个文件指定变量 A 到 B 部分?

我有三个文件...

  • foo_1.mp3
  • foo_2.mp3
  • foo_3.mp3

我添加了

loop-file=1

reset-on-next-file=loop

mpv.conf

结果,foo_1.mp3播放了两次,然后foo_2.mp3播放了两次,最后foo_3.mp3播放了两次。

我喜欢这样,但我想改进它以消除每个 mp3 文件开头和结尾处的大量无关信息。

例如,要播放 的 A 到 B 部分foo_1.mp3,我知道如何在终端中运行以下内容...

mpv --start=00:02:03 --end=00:37:24 ~/my_playlist/foo_1.mp3

foo_1.mp32 分 3 分到 37 分 24 秒。但我不知道如何在播放列表中播放 mp3 文件的 A 到 B 部分。

我希望能够在mpv.conf...中指出这样的事情

  • start=00:02:03 --end=00:37:24 ~/my_current_playlist/foo_1.mp3

  • start=00:01:56 --end=00:51:09 ~/my_current_playlist/foo_2.mp3

  • start=00:03:18 --end=00:42:57 ~/my_current_playlist/foo_3.mp3

这样,mpv 就不会完全播放每个 mp3 文件两次,而是将每个 mp3 的指定 A 到 B 部分播放两次。

作为一个假设案例,这里将是我的工作流程......

  • 下载foo_1.mp3,foo_2.mp3foo_3.mp3

  • 快速收听开头foo_1.mp3以确定无关信息何时结束。假设我要确定初始无关信息在 3 分 47 秒标记处结束foo_1.mp3

  • 同样,我会快速收听 end offoo_1.mp3以确定无关信息何时开始。假设我要确定最终的无关信息从foo_1.mp339 分 18 秒开始。

  • 编辑mpv.conf_start=00:03:47 --end=00:39:18 "~/my_current_playlist/foo_1.mp3"

  • 然后重复上面的 for foo_2.mp3andfoo_3.mp3

  • 最后,我会运行我的播放列表。我会听到两次音频的foo_1.mp3A 到 B 部分,然后是两次音频的 A 到 B 部分foo_2.mp3,最后是两次音频的 A 到 B 部分foo_3.mp3

如果您有一个“奇特的解决方案”,它允许我编辑一个单独的文件而不是mpv.conf那样会很好。但是,我计划保留一份副本,mpv_backup.conf以防万一我“搞砸” mpv.conf,恢复(“恢复正常”)对我来说是微不足道的。

0 投票
2 回答
245 浏览

linux - mpv 不将 ytdl_path 识别为键

由于 youtube-dl 的下载速度存在瓶颈,我正在尝试使用 yt-dlp 而不是 youtube-dl,但我无法让它工作。

我的 mpv.conf 文件如下所示:

script-opts=ytdl_hook-ytdl_path=/usr/local/bin/yt-dlp

当试图让 mpv 运行时,我收到以下警告:

[ytdl_hook] script-opts: unknown key ytdl_path, ignoring

有谁知道问题是什么?我已经阅读了 mpv 文档,它说这应该可行。

mpv 是版本 0.27.2

0 投票
1 回答
24 浏览

file - 使用 MPV 时如何使用 lua 为每个视频添加一行?

我正在记录我通过 MPV 播放的视频文件,并且在使用 io 时我希望它为每个视频创建一行。使用初始选项它会删除它,并且在转到下一个视频时,默认情况下它不会添加新行。

我认为脚本应该接近工作。但是,这个问题挡住了我的路:“'(for generator)' 的错误参数 #1(无效选项)。显然,for 循环有问题,但我无法查明它,希望能有双手解决这个问题,因为我还在学习lua。

这是到目前为止的代码:

0 投票
1 回答
31 浏览

file - 在 Lua 中写入文件时“无错误”是什么意思?

我正在编写一个脚本,以便在使用 MPV 时在每个视频的 .txt 中添加一行。

但是,我在第 68 行的 for 循环中遇到了一个奇怪的错误。它只是告诉我:没有错误。如果我向 file:write(message, error) 添加错误参数,它会给我另一条错误消息,说明:bad argument #2 to 'write' (string expected, got function). 任何帮助,将不胜感激。

0 投票
0 回答
20 浏览

linux - 无法从 mpv 中提取状态行(终端播放时间)

本质上,我只是想在视频上运行 mpv,退出后你会得到一些关于视频的信息。

例子:

我想找出 AV 线,但是这条线是在之前/之后添加的(我不太确定)。运行时mpv video_file | grep AV 视频会播放,终端会给出这个小状态行

(Paused) AV: 00:00:02 / 00:00:57 (5%) A-V: 0.000(随机示例视频,与第一个不同)

但是关闭mpv后没有输出,运行时进一步确认

mpv video_file >> test.txt

给出一个输出

建议它将 AV 线放在输出之外,在 VO 线和空格线之间。

太好了,我该如何解决这条线?

0 投票
1 回答
34 浏览

python - 与 pyside6 一起使用时,键绑定在 python-mpv 中不起作用

我使用库https://github.com/jaseg/python-mpv来控制 mpv 播放器,但是当它与 pyside6 一起使用时,键绑定不起作用(播放器不完全接受输入)。我究竟做错了什么?还是嵌入pyside6时无法使用它们?(如果我在没有嵌入的情况下使用相同的参数运行播放器,一切正常)