op200
发表于 2024-11-30 18:50:12
b8b41e3c 发表于 2024-11-30 17:13
听上去貌似是字体本身的问题,你可以试试看用自带的ass转pgs功能看看生成的pgs有没有正确地显示,因为也是基 ...
我刚才试了下,用自带的ass转pgs,pgs是正常的
b8b41e3c
发表于 2024-12-3 11:10:50
op200 发表于 2024-11-30 18:50
我刚才试了下,用自带的ass转pgs,pgs是正常的
那就是播放器有问题.
yaoxiaohua16
发表于 2024-12-3 20:02:26
打开mkvtool.exe跳出这个鼠标完全点不了
b8b41e3c
发表于 2024-12-3 20:18:36
yaoxiaohua16 发表于 2024-12-3 20:02
打开mkvtool.exe跳出这个鼠标完全点不了
这是个命令行工具,需要gui可以下载gui版本.
op200
发表于 2024-12-5 23:29:13
b8b41e3c 发表于 2024-12-3 11:10
那就是播放器有问题.
经过我的测试,大概率不是播放器的问题
potplayer、mpcbe、mpchc,在不使用libass时可以正常渲染内封的子集化的字体,使用libass时则不行
b8b41e3c
发表于 2024-12-6 10:44:40
op200 发表于 2024-12-5 23:29
经过我的测试,大概率不是播放器的问题
potplayer、mpcbe、mpchc,在不使用libass时可以正常渲染内封的 ...
哦我说错了,是ass渲染器的问题.但内置的ass转pgs也是基于libass的,却没有问题,这不是很奇怪吗?
op200
发表于 2024-12-6 13:54:03
b8b41e3c 发表于 2024-12-6 10:44
哦我说错了,是ass渲染器的问题.但内置的ass转pgs也是基于libass的,却没有问题,这不是很奇怪吗?
...
因为:
[*]不子集化直接封装是可以的
[*]所有ttf字幕是可以的
[*]我发现好几个otf字幕都有这个问题
[*]出问题的子集化otf字幕转ttf是可以的
总觉得子集化otf时会导致一些奇怪的问题
再结合你说的“内置的pgs渲染器也是libass的”,所以我觉得或许可以通过修改跟子集化相关的代码解决这个问题
还有一个不利于节省空间的解决方法:
在子集化时强制将所有otf转为ttf
b8b41e3c
发表于 2024-12-6 19:21:23
op200 发表于 2024-12-6 13:54
因为:
[*]不子集化直接封装是可以的
在子集化时强制将所有otf转为ttf
不能无损转换且要借助外部工具(既然如此,那你何不事先预处理一下?)
至于内置的ass转pgs没有问题的根本原因应该是libass的版本比较新吧?
op200
发表于 2024-12-6 22:18:55
本帖最后由 op200 于 2024-12-6 22:25 编辑
b8b41e3c 发表于 2024-12-6 19:21
在子集化时强制将所有otf转为ttf
不能无损转换且要借助外部工具(既然如此,那你何不事先预处理一下?)
mpchc内置的libass是最新版本的,也是存在这个问题
其他播放器的libass我用的是XySubFilter with libass version 20240526
b8b41e3c
发表于 2024-12-7 00:26:30
op200 发表于 2024-12-6 22:18
mpchc内置的libass是最新版本的,也是存在这个问题
总之内置otf转ttf貌似不现实,其次好像也不是所有的otf都会出问题吧?
目前的方案如果你已经确定只要是ttf格式的就不会有问题的话,你可以考虑重新收集ttf的字体,或者自己预先把otf转换成ttf再子集化.
注意otf转ttf不是无损的,关于这点我很早就考虑过要不要做输出格式的一致性,但也是因为这个原因放弃了.