登录|注册
论坛 > 若闲小阁
发帖|看图模式| 收藏 |打赏
看558|回6|收藏|打赏
1# Haruite 只看他
2026-1-2 04:10:31 No. 77294779
其实之前发过一个贴,但是最近又添加了新的功能,也打算让更多人了解一下,所以重新发个帖子

之前的帖子见:https://www.tsdm39.com/forum.php?mod=viewthread&tid=1232398

这个工具现在有四个功能。

字幕合并的功能用法详情见github的readme:https://github.com/Haruite/BluraySubtitle/blob/main/README.md ,简单操作视频:https://sbx.mysmy.top/u2/videos/ ... %AD%97%E5%B9%95.mp4

mkv添加章节这个功能是这样的。因为有些BDrip不带章节信息,我就想着从原盘还原这些BDrip的章节。章节信息位于原盘的mpls文件中,只要下载非常小体积即可(真的没必要为了章节信息再下一个BDrip或者一整个原盘),有了mpls文件就可以还原了,操作上我也是尽可能使它简单。操作方法视频:https://sbx.mysmy.top/u2/videos/ ... %AB%A0%E8%8A%82.mp4

动漫原盘remux这个就是remux动漫原盘。用eac3to来remux动漫原盘的话,remux的是整个mpls,是几集连在一起的。我的这个工具没用eac3to,是直接用mkvtoolnix的。主要优化有:1.每集保留章节信息 2.保留特典文件 3.pcm转成flac 4.可以添加字幕 5.自动判断每集开始和结束时间并切割。这些优化的点如果手动来做是非常繁琐耗时的。操作视频:https://sbx.mysmy.top/u2/videos/ ... F%E7%9B%98remux.mp4

美剧原盘remux是从脚本https://github.com/Haruite/u2_scripts/blob/main/movie_remux.py 移植过来的(不过现在看很多美剧4k原盘都是一集一集播放的,这个脚本并不适用),和动漫原盘remux的区别主要在:1.remux整个mpls,不按集数切割 2.音轨只选取一条英语音轨和中文音轨,按truehd>dts_hd_ma>dts>lpcm>eac3>ac3>aac顺序 3.保留封面和文件名 4.不仅是pcm,其他无损音轨如dts、truehd也压缩成flac。其实日漫原盘也可以用这个来remux,只不过字幕要用功能一生成的字幕。

对原盘感兴趣的话可以私信我获取U2邀请,U2现在站免到1月6号。

可以提出优化建议或者新的功能需求,我会一一回复。

已有 1 人评分天然 腹黑 理由
touchtrack + 15 + 15 学废了

总评分: 天然 + 15  腹黑 + 15   查看全部评分

2# xiaoziyu9301 只看他
2026-1-2 08:52:55 No. 77295884
太专业了, 反正我是看不懂的 ^^
3# starsinin 只看他
2026-1-2 11:13:43 No. 77297001
请问下你电视多少寸啊,看原盘能提升效果吗?百寸以内原盘提升不大,下VCB的就够看了
4# Haruite 只看他
2026-1-2 11:58:08 No. 77297251
starsinin 发表于 2026-1-2 11:13 [查看图片]
请问下你电视多少寸啊,看原盘能提升效果吗?百寸以内原盘提升不大,下VCB的就够看了 ...

我是用显示器看的,这跟大小关系不大吧,也要看距离的。
其实压制组大部分都做得很好的,主要是一些噪点多和高动态的场景看起来区别才明显。
据我了解大家收藏原盘大多不是为了画质,而是为了收藏,看导航菜单吧。
已有 1 人评分天然 腹黑 理由
starsinin + 3 + 3 是这样啊

总评分: 天然 + 3  腹黑 + 3   查看全部评分

5# Bhanc 只看他
2026-1-9 09:24:33 No. 77345964
属实好东西,要是PC端有大佬做个类似infuse的软件就好了
6# qx006 只看他
2026-1-9 09:34:27 No. 77346036
多谢up主开源,实在是太厉害了~
7# Haruite 只看他
2026-1-11 21:23:00 No. 77364260
说一下怎么写的这个吧。

首先合并字幕的功能。注意到Potplayer播放原盘时会自动选择一条mpls播放,据我观察基本上是选取了时间最长的一条mpls,但有时候也会选错。针对其中的一些问题我设计了结合时长、章节数、文件体积等因素综合判断的算法,以提高选取的正确率。并且Potplayer播放原盘的mpls时,播放进度条上是有章节点的。这些章节点肯定是由原盘某些文件读取出来的。为此我查阅了相关资料,得知章节信息是在原盘mpls文件中。具体参考https://github.com/lw/BluRay/wiki/PlayList。实际上,mpls给的信息并没有直接告诉某个章节点的时间,时间需要自行计算。计算方式如注释中所写:
        # in_out_time 是一个列表,列表的每一项是一个元组,按照播放对应的顺序
        # 元组第一位为文件名,第二位是 in_time,第三位是 out_time
        # 对应 m2ts 文件的播放时长为 (out_time - in_time) / 45000
        # mark_info 是一个字典
        # 字典的键 ref_to_play_item_id 对应 in_out_time 的索引
        # 字典的值为由章节标记对应的时间戳 mark_timestamp 组成的列表
        # 那么时间戳对应在 mpls 的播放时间为 (mark_timestamp - in_time) / 45000
        # + (0 ~ ref_to_play_item_id 所有文件对应的播放时长之和)
。有了这些信息,就知道了mpls上每个章节点和对应的时间,但是还不够,还要确定哪些章节点是每集的开头。由in_out_time可知章节点对应的文件名,一般而言,每集的开头位于一个文件的起始位置,一个文件对应一集。然而并非总是如此,比如一些连体盘,某些集数的开头可能位于文件的中间;而某些肉酱盘一集可能对应多个文件。为了应对这些特殊情况,我在判断每集开头时会检查字幕的时间,一般而言每集的结束时间会比字幕最后一条对话的时间稍微长一点,这样一来判断的成功率就会高很多。但是,选取mpls和判断每集开头章节点的算法是有局限的,没办法能保证所有情况下都是正确的,所以我设计了这个GUI,特殊情况下可以依靠手动选择mpls/调整字幕顺序/手动选取字幕的章节点这些操作来纠正程序自动算法错误的情况。然后就是合并字幕,包括ass/ssa和srt字幕文件的合并,都是文本文件就不展开说了。

然后是mkv添加章节的功能。某些压制组比如Moozzi2/DBD-Raws/AI-Raws(24年12月之前)压制作品是不带章节信息的,还原章节信息的方式如一楼所说,就是从原盘的mpls文件中还原。首先要选择正确的mpls,然后要确定每集的起始点位于哪个时间点。有了压制的mkv文件,时间点偏移是很好确定的,就是之前mkv的时长之和。根据这些时间点偏移对mpls中的章节点做切割,就可以得到每集对应的章节信息。

动漫原盘remux,这个功能基于前面两个功能中的某些方法。步骤如下:1.选取正确的mpls 2.确定每集开头的章节点。如果有字幕文件,则根据字幕的结束时间判断,如果没有则根据每集大致为24分钟判断。 3.mkvtoolnix混流并按照章节点切割 4.为mkv重新添加章节(其实就是用到前一个功能) 5.抽取pcm压缩成flac并重新混流,如果有字幕也一并混流 6.搜索mpls,如果有mark数大于1的mpls则将此mpls混流到SPs文件夹 7.剩下的m2ts,如果时长大于30s则混流到SPs文件夹 8.将SPs文件夹中的mkv文件的pcm音轨替换成flac

美剧原盘remux,这个基于另外一个脚本就不说了,反正就是各种抽取与转换。

天使动漫论坛|手机版错误报错

字幕组★|手机客户端

Powered by Discuz! TSDM SP

首页|标准版|精简版|电脑版

Processed in 0.065132 second(s), 24 queries .