1

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

4

2 回答 2

1

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

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

这不在 Ruby 中,但您应该能够从 Ruby 调用 Handbrake CLI 而不会出现任何问题。

于 2012-09-11T16:15:47.140 回答
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 ".不受欢迎的事情可能会发生。

于 2009-12-13T21:18:06.623 回答