如何同步播放多个视频
如题,我想同时播放数个视频,并可以同时控制&分别控制。这样我可以比较同一集番剧,不同字幕组的处理有什么不同。我已经试过了vlc的“同时播放其他媒体”,但没有效果。旧版vlc据说可以,但想要播放3个及以上视频还是有点麻烦。我下载了Gridplay这个软件,能满足我一些需求,但它的手感非常一般,用起来不是很流畅。它的快捷键我实在摸不清楚,已经发issue了。
如果有更好的实现方案,比如软件或者现成的ffplay系统啥的,那就再好不过了。
直接想到的方法是开多窗口,然后用鼠标宏 找个大佬写个简单的网页,放上四个<video>,用JavaScript实现同时播放、暂停等 同时控制太麻烦,不如抽帧对比。 不同字幕组的片源不一样的话时轴也不是同时播放就能对齐的吧 我有时想对比两个不同片源的画面差别的笨方法是两个视频都暂停,然后切换按相同次数的快进键定格相同画面。
—— 来自 HUAWEI SEA-AL10, Android 10上的 S1Next-鹅版 v2.5.4 若荼泱 发表于 2023-7-14 07:38
不同字幕组的片源不一样的话时轴也不是同时播放就能对齐的吧
观察各个字幕组对于同一句话如何处理(包括进出的时机),也是可能的运用场景之一 本帖最后由 screeper 于 2023-7-14 09:17 编辑
可以使用mpv (ffmpeg)的滤镜组合做到同时播放:
2个视频
mpv --lavfi-complex=' hstack ; amix ' <video1> --external-file=<video2>
3个视频
mpv --lavfi-complex=' hstack=inputs=3 ; amix=inputs=3 ' <video1> --external-files=<video2> --external-files=<video3>
4个视频
mpv --lavfi-complex=' hstack ; hstack ; vstack ; amix=inputs=4 ' <video1> --external-file=<video2> --external-files=<video3> --external-files=<video4>
播放效果:
2个视频
https://p.sda1.dev/12/81e2f3e11e28442221b38dcfcfa8326d/2x.jpg
4个视频
https://p.sda1.dev/12/18b5f6d01fa469de12777f9b2dfab0ec/4x.jpg
但是就如楼上所说的,根据字幕组用的源不同,时间轴也会有所不同(TV源手动剪掉广告后与Web源会有差异,除此之外TV和Web本身也可能存在差异;即使都是TV,不同字幕组处理时trim时间点也可能不同)。最方便的办法当然是直接拖进非编软件里对好轴直接看,折腾这些命令行本身对精神就是种折磨。 感觉还是你自己写个JS比较好,看起来你这需求还挺细,可能还需要逐帧对比
或者直接上adobe全家桶 本帖最后由 plazum 于 2023-8-23 16:14 编辑
搞定了,楼主你把以下内容保存为一个html文件,然后打开就能用了<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>同时播放四个视频</title>
</head>
<body style="text-align: center">
<div>
<button onclick="for (const v of ['v1', 'v2', 'v3', 'v4']) document.getElementById(v).play()">全部开始播放</button>
<button onclick="for (const v of ['v1', 'v2', 'v3', 'v4']) document.getElementById(v).pause()">全部暂停</button>
</div>
<table border="1" style="width: 100%">
<tr>
<td style="width: 50%">
<form onsubmit="return false;">
<input id="t1" style="width: 80%" placeholder="视频地址(本地路径和URL均可)">
<button type="submit" onclick="document.getElementById('v1').src = document.getElementById('t1').value">打开视频</button>
</form>
<video id="v1" style="width: 100%" controls></video>
</td>
<td style="width: 50%">
<form onsubmit="return false;">
<input id="t2" style="width: 80%" placeholder="视频地址(本地路径和URL均可)">
<button type="submit" onclick="document.getElementById('v2').src = document.getElementById('t2').value">打开视频</button>
</form>
<video id="v2" style="width: 100%" controls></video>
</td>
</tr>
<tr>
<td style="width: 50%">
<form onsubmit="return false;">
<input id="t3" style="width: 80%" placeholder="视频地址(本地路径和URL均可)">
<button type="submit" onclick="document.getElementById('v3').src = document.getElementById('t3').value">打开视频</button>
</form>
<video id="v3" style="width: 100%" controls></video>
</td>
<td style="width: 50%">
<form onsubmit="return false;">
<input id="t4" style="width: 80%" placeholder="视频地址(本地路径和URL均可)">
<button type="submit" onclick="document.getElementById('v4').src = document.getElementById('t4').value">打开视频</button>
</form>
<video id="v4" style="width: 100%" controls></video>
</td>
</tr>
</table>
</body>
</html> 下载字幕,下载打轴软件。同步播放比较的是视频,字幕主要跟的音频。 wlgdc 发表于 2023-7-14 10:32
下载字幕,下载打轴软件。同步播放比较的是视频,字幕主要跟的音频。
如果能下到.srt/.ass的话,我可以直接开aeg阅读……直接抽.mkv的轴也不是难事。对我个人来说,想要实现的这个东西主要还是针对内嵌字幕的mp4吧。
楼上老哥的实现非常有意思,既然能用<video>,那也许可以嵌入vlc或者别的什么播放器,增加功能;不过那应该我自己摸索,而非继续当伸手党了。 不如直接上pr(付费)或者达芬奇(免费)吧
以后有更复杂的需求也能满足 库德里尔 发表于 2023-7-14 10:43
如果能下到.srt/.ass的话,我可以直接开aeg阅读……直接抽.mkv的轴也不是难事。对我个人来说,想要实现的 ...
嵌入本地应用程序这种做法感觉有点像以前IE插件的玩法,现在支持这种技术的程序应该很少了吧
页:
[1]