以编程方式提取DVD字幕

时间:2009-12-13 15:39:33

标签: ruby dvd subtitle

我正在尝试使用程序从未加密的DVD中提取字幕,因此我可以单独保存它们。我知道有些程序可以做到这一点(我发现这个页面例如:http://www.bunkus.org/dvdripping4linux/en/separate/subtitles.html),但我希望能够通过库调用或类似的东西(libdvdread或libdvdnav支持这个)来做到这一点,最好使用红宝石。

2 个答案:

答案 0 :(得分:1)

你可以看一下Handbrake,它可以让你提取视频,音频和字幕。

还有Handbrake手册here和字幕部分here,可以提供更多信息。

这不是Ruby,但你应该可以从Ruby调用Handbrake CLI而没有任何问题。

答案 1 :(得分:0)

我不知道任何能够做到这一点的图书馆。

在ruby中你可以调用程序。例如,要获取目录列表,您可以执行

files= `ls "#{dir}"`.to_a

反引号变体为你提供了calle程序的标准输出。

知道文件是否存在

system("ls \"#{file}\"")

system变体会告诉您被调用程序的返回值是否为0

使用这两种方法,您几乎可以使用非开发程序执行任何操作。 http://www.bunkus.org/dvdripping4linux/en/separate/subtitles.html中描述的程序适合于这种控制。

小心处理您提供给外部程序的参数。如果论证是"; rm -rf *; ls ".,可能会发生不良后果。