В то время как go мне удалось взломать скрипт в ruby, который бы смотрел в папку и извлекал субтитры из всех файлов .mkv, содержащихся в.
Однако мой компьютер с тех пор потерпел крах, и я пришлось переустановить ruby, теперь я попробовал его снова, и он, кажется, не работает для меня, не уверен, если у меня была более старая версия моего скрипта или что.
вот код
path = ARGV[0]
Dir.chdir(path)
filename = "#{path}#{Dir.glob("*.mkv").first(1)[0]}"
puts filename
Dir.glob("#{path}*.mkv"). each do | mkv_path |
mkv_name = File.basename( mkv_path, ".*" )
extract_command = `mkvextract tracks #{mkv_path} #{2}:#{mkv_name}.srt`
puts "#{mkv_name}"
end
и у меня установлено ruby и mkvtoolnix, очевидно. не уверен насчет переменных среды для mkvextract, хотя, возможно, в этом проблема? Я нахожусь на windows 10.
В любом случае, я просто запускаю его, открывая командную строку, заходя в каталог и набирая:
ruby SRTextractor.rb {e:\test}
(проверить, является ли папка, в которой он находится, SRTextractor.rb является сценарием) Если мой mkv называется mov ie, он возвращает это в консоли
e:/testmovie.mkv
, но не создает файл SRT. Я не уверен, что это ошибка с именем файла или она должна выглядеть так. Если кто-то может помочь мне с тем, как это сделать, буду очень признателен, спасибо!