终于有了BLF的官方字幕
NBC到底有没有外挂字幕,从我的观察看来是有的,而且那个外挂字幕好像是西班牙语(虽然他们写的是英语,骗谁呢!),但是怎么下载呢?用什么工具下载呢?能在线下载NBC的网站上去很少,就更加不用说下载NBC字幕的了,既然youtube-dl可以下载NBC的视频,为什么就不能下载它的字幕呢?为了这个东西,我研究了一番要怎么在youtube-dl上下载字幕。理论上视频和字幕可以分开下载,但现在人们的新玩法是下载视频的同时,而且把本来是外挂的字幕内嵌到视频里,这个想法很新颖,这样就可以一次性做完两件事了,但我感觉这种内嵌估计不是硬压,因为如果硬压的话,会需要比较多的时间。下载视频如果网速不好非常的耗时间,但下载字幕就只是个文本,相当简单的一件事。
对我来说,youtube-dl其实最大的障碍是不能直接使用,怎么才能使用呢?这又花了我一点时间。某个东西的技术我又不是很成熟,不确定一定可以,所以翻来覆去搞不清是下载不了字幕,还是说在下载之前的某个步骤做得不好。
最终我的确做到了下载NBC上面的BLF官方西班牙语tt字幕。tt字幕(全称SMPTE-TT,tt是它的文件后缀)是一个XML结构的东西,看上去很像网页文件,它的结构也的确跟网页文件没什么区别。也不管到底这个是什么东西,反正能下载回来,肯定有转换的方式,一开始我想到的是用Subtitle Edit, 结果发现我存的那个软件太久远,所以要使用那个软件的话,需要我装Net Framework 3.5,对老电脑来说,那显然是要安装的,但是对win10来说,这个是不一定安装的存在,我担心安装了这个东西会影响到我的office,因为office的power系列功能很大程度都依赖这个net framework,我一直都用的好好的,如果装了个低版本的导致我出状况,那就真的很郁闷了。所以我尝试过用其它字幕软件,接着发现我最常用的那个Aegisub不行。怎么才可以把tt文件转化为很大路的srt呢?其实当我看到那个tt文件的时候,我就意识到用普通的srt不能解决问题,因为字幕是西班牙语的,有非常多的特殊字符,必须用UTF-8才能解决问题,而srt字幕通常对应的是用ANSI。所以其实转换为ass文件会更好。不知道为什么,网上到处都是vtt或者webtt字幕,却几乎没有tt字幕。 vtt字幕是油管自带的,而webtt字幕是HTML5视频里面很流行的字幕。这两种字幕都可以在网上直接找到转换的地方,但是tt却不行。
纠结了一大轮以后,我甚至有想过要自己写python脚本转换。正在这个时候,网友给我发来好消息,他的Subtitle Edit可以转换这个字幕。之所以我的那个不行,是因为我不想安装框架,无法打开软件。我赶紧又下了一个最新版本的Subtitle Edit,非常快速高效地就把我想要的东西转换了出来了,但是,总感觉转换出来的时间轴怪怪的,tt格式的字幕的毫秒设定到底是什么规则呢?他们的时间表达居然是“00:00:00:00”,一般字幕文件的时间表达是“00:00:00.000”
知道如何从NBC下载BLF的外挂字幕,也知道了如何把下载回来的tt字幕转化为ass以后,所有痛点全部都打通了,最后的问题只是NBC最后会不会把这部电视剧全部都免费放出来。
youtube-dl单纯下载NBC网站视频外挂字幕的批处理脚本(复制下面的东西,做适量修改[比如文件路径],然后保存为.bat文件)
盘符
cd\改这里\改这里
youtube-dl –all-subs –skip-download NBC视频网址1(你得去播放页确定那个视频有外挂字幕哦)
youtube-dl –all-subs –skip-download NBC视频网址2(你得去播放页确定那个视频有外挂字幕哦)
困扰我的字幕问题终于有了一个非常完美的结局,实在让人喜出望外。