Yanıtlar:
Altyazılar İsviçre çakısı perl (sayfa sonuna kadar kaydırın).
Burada daha fazla seçenek bulabilirsiniz.
Ayrıca, mplayer / mencoder'ın çalışabileceği bazı dumpXXXsub seçenekleri vardır. Bunu hiç denemedim, ama adamı okumak işe yaramalı. Misal:
-dumpmpsub (MPlayer only)
Convert the given subtitle (specified with the -sub option) to MPlayer's subtitle format, MPsub. Creates a dump.mpsub file in the current directory.
Açık kaynak programı Altyazı Düzenleme bir komut satırı dönüştürücüsüne sahiptir ve hem Windows hem de Linux için kullanılabilir.
Sözdizimi :
SubtitleEdit /convert "pattern" "name-of-format-without-spaces"
Örnek 1 :
SubtitleEdit /convert sub1.srt sami
Sonuç : sub1.srt öğesini sub1.sub dosyasına SAMI biçimine dönüştürürÖrnek 2 :
SubtitleEdit /convert *.srt adobeencore
Sonuç : Tüm .srt dosyalarını Adobe Encore biçimine dönüştürür
For Linux komut satırı biraz daha uzun olması gerekir ...
Sözdizimi :
mono SubtitleEdit.exe /convert "pattern" "name-of-format-without-spaces"
… Ama kolayca bir senaryoya sarılabilir.
libmono-winforms
GUI'nin çalışması için yüklemem gerekiyordu (README'de belirtildiği gibi) ... Belki CLI'nin çalışması için gerekli olan ekstra bir şey var ... bir AttachConsole...
hata alıyorum. Ubuntu 10.04 kullanıyor ...
.ass
SubRip (.srt) dönüştürdü ... Ben fark sadece bir şey: \r\n
(CRLF) satır sonları, kaynak satır sonu olsa bile üretir \n
... ama bu nadiren bir sorun olurdu ve sed
eğer kolayca düzeltilebilir gerek.
Tam olarak dönüştürmek istediğiniz nedir? Altyazı formatları arasındaysa, hangi formatlardan bahsettiğinize bağlıdır. Bitmap tabanlı olanlar, metin biçimine dönüştürmek için OCR gerektirir ve genellikle OCR'nin doğruluğunu onaylamak için her zaman kullanıcı girişi gerektirir
Tüm metin biçimleri ise, Jubler veya Aegisub kullanımda olabilir
Bazı oyuncuların (ör. Google Drive video oynatıcısı), .srt adlı videonun oluşturduğu dosyaları beğenmediğini fark ettim:
ffmpeg -i subtitles.ass <blah>.srt
veya:
SubtitleEdit /convert subtitles.ass subrip
fakat:
ffmpeg -i subtitles.ass -codec:s text subtitles.srt
... benim için hile yaptı.
sed kullanarak dosya adını yeniden adlandırın
for i in ./*.ass ; do ffmpeg -i "$i" "$( echo "$i"|sed 's/\.ass//g' ).srt" ; done
.srt
dönüştürme işleminden sonra dosyayı silmek istiyorsanız , daha sonra bir rm komutu eklemeniz yeterlidir.
for i in ./*.ass ; do ffmpeg -i "$i" "$( echo "$i"|sed 's/\.ass//g' ).srt" && rm -f "$i" ; done
big.assassins.assured
(artı uzantı) ise ne olur ? Sizin sed
şeklinde adlandırır bigassinsured
. Without sed
ve bu kusur olmadan: "${i%.ass}.srt"
.
#!/bin/bash
file="*.srt" # Find file
ffmpeg -i "$file" "${file%.*}.vtt" # Convert file
rm "$file" # Remove file .srt from your dir