找回密码
 立即注册
楼主: b8b41e3c

mkvtool:一个ass字幕子集化/mkv文件处理一条龙工具

69

主题

1438

回帖

1万

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
3161197

卓越贡献

tonyhsie 发表于 2022-4-27 11:24:49 | 显示全部楼层
本帖最后由 tonyhsie 于 2022-4-27 13:17 编辑

幫頂一下


順便提一個範例來解釋
其它子集化工具 (AssFontSubset) 是怎麼錯誤的處理「粗體」、「斜體」的


今天有一個簡單的 ass 檔,指定使用「思源黑體」、「粗體」,顯示一段文字
  1. [V4+ Styles]
  2. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
  3. Style: Default,思源黑體,100,&H00FFFFFF,&H00000000,&H00000000,&H00000000,-1,0,0,0,100,100,0,0,1,0.7,0,2,15,15,14,1

  4. [Events]
  5. Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
  6. Dialogue: 0,0:00:00.00,1:01:04.59,Default,,0,0,0,,思源黑體 -1
复制代码


以下使用 MPC-HC & vsfilter 來做測試


當我使用影片+外掛字幕時,結果是這樣 (正確的結果
photo_2022-04-27_10-53-52.jpg

當我把粗體改為非粗體時,
Style: Default,思源黑體,100,&H00FFFFFF,&H00000000,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,0.7,0,2,15,15,14,1

結果是這樣 (非粗體,對照組
photo_2022-04-27_10-53-58.jpg


當我使用 AssFontSubset 把字幕的字型子集化
  1. [V4+ Styles]
  2. Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
  3. Style: Default,CHR48ML7,100,&H00FFFFFF,&H00000000,&H00000000,&H00000000,-1,0,0,0,100,100,0,0,1,0.7,0,2,15,15,14,1

  4. [Events]
  5. Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
  6. Dialogue: 0,0:00:00.00,1:01:04.59,Default,,0,0,0,,思源黑體 -1
复制代码


並內封進 mkv 時,結果是這樣 (錯誤結果
photo_2022-04-27_10-54-04.jpg



比較三張圖就能發現,在子集化之後,原本的「思源黑體」+「粗體
在子集化&內封後,變成了「非粗體


原因是因為,AssFontSubset 在子集化字型時,不會特別針對「粗體」或「斜體」挑選獨立字型
如果你輸入的字型資料夾裡,有「非粗體」的「思源黑體」在,那 AssFontSubset 就會把它子集化

這一步是有問題的(因為實際上應該被子集化的,是「粗體」的「思源黑體」)


樓主的程式理論上已解決這個錯誤了


順便附上我測試用的子集化後的內掛影片 & 外掛字幕
方便大家實測



001.rar

139.58 KB, 下载次数: 321

回复

使用道具 举报

49

主题

468

回帖

2581

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
1787471

崭露头角活跃达人新人登场渐入佳境

菜姬 发表于 2022-4-27 12:40:38 | 显示全部楼层
b8b41e3c 发表于 2022-4-27 09:45
除了支持linux之外和现用的spp2pgs有啥区别么,这种东西不太敢随意换,因为会影响成品效果。
...

基于libass(
回复

使用道具 举报

1

主题

102

回帖

0

VC币

高级会员

Rank: 4

积分
30552
b8b41e3c  楼主| 发表于 2022-4-27 13:09:50 | 显示全部楼层

关键是会不会丢特效,以及好像不支持2160p?

回复

使用道具 举报

49

主题

468

回帖

2581

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
1787471

崭露头角活跃达人新人登场渐入佳境

菜姬 发表于 2022-4-27 13:12:24 | 显示全部楼层
b8b41e3c 发表于 2022-4-27 13:09
关键是会不会丢特效,以及好像不支持2160p?

没加2160p的选项(
回复

使用道具 举报

49

主题

468

回帖

2581

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
1787471

崭露头角活跃达人新人登场渐入佳境

菜姬 发表于 2022-4-27 13:13:03 | 显示全部楼层
b8b41e3c 发表于 2022-4-27 13:09
关键是会不会丢特效,以及好像不支持2160p?

现在已经很少出现不兼容的情况了
回复

使用道具 举报

69

主题

1438

回帖

1万

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
3161197

卓越贡献

tonyhsie 发表于 2022-4-27 13:38:23 | 显示全部楼层

現在有些怪物級 ass 動輒幾十M
字幕特效太龐大,無法實時渲染

有在考慮把這種字幕轉為 .sup 方便播放


想請教一下 ass2bdnxml 跟 Spp2Pgs 相比
除了 libass vs. xy-VSFilter 的差異外,其它地方有什麼顯著差異嗎?

回复

使用道具 举报

49

主题

468

回帖

2581

VC币

星辰大海

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

积分
1787471

崭露头角活跃达人新人登场渐入佳境

菜姬 发表于 2022-4-27 13:41:13 | 显示全部楼层
tonyhsie 发表于 2022-4-27 13:38
現在有些怪物級 ass 動輒幾十M
字幕特效太龐大,無法實時渲染

没有仔细对比过建议实际用用试试

点评

建議加個直接輸出 sup 的選項,xml +png 另外再手動生成 sup,有點麻煩....  发表于 2022-4-27 15:25
沒事 我跑到另一個同名project了 (掩面  发表于 2022-4-27 14:00
才發現沒release binary executable....  发表于 2022-4-27 14:00
回复

使用道具 举报

1

主题

33

回帖

348

VC币

白金会员

Rank: 12Rank: 12Rank: 12

积分
76811
Keadovs 发表于 2022-4-27 13:44:49 | 显示全部楼层
回复

使用道具 举报

16

主题

293

回帖

504

VC币

白金会员

Rank: 12Rank: 12Rank: 12

积分
55631
StarRingChild 发表于 2022-4-27 14:18:40 | 显示全部楼层
Keadovs 发表于 2022-4-27 13:44
另一个子集化项目
https://github.com/DYY-Studio/AddSubFontMKV_py

这个不支持 Linux 哇,macOS 更是没希望了吧
回复

使用道具 举报

8

主题

130

回帖

0

VC币

中级会员

Rank: 3Rank: 3

积分
8153
fuyouquan 发表于 2022-4-27 14:55:18 来自手机 | 显示全部楼层
假设我的视频分辨率比是4:3,ass字幕脚本也是4:3,转成sup字幕会不会出现字幕定位超出画框的情况(ass字幕中定位靠左或靠右的字幕)?我用国语视界的工具就会出现这个情况
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表