Dopasowanie napisów
-
- Piegowaty Guziec
- Posty: 2
- Rejestracja: 24 kwie 2007, 21:05
- Płeć: Mężczyzna
- Wersja Ubuntu: 7.04
Dopasowanie napisów
Napisy do filmów w większości są robione dla filmów w wersji divix/xivid. Jak sie pobierze film w rmvb, to kicha. Pod windowsa jest świetny subeditplayer (kilkasz na pierwsza kwestie, na ostatnia i napisy sa dopasowane - jakieś 20 sekund pracy) - jak sobie ŁATWO radzić z dopasowaniem napisów pod linuksem? Nie chodzi mi o jakieś przesuniecie napisów o jakaś wartość czasu, tylko pełne dopasowanie. Próbowałem trochę cos zrobić gaupolem, opcjami w mlayerze, ale zawsze i tak się napisy rozjeżdżają.
Jakie sa wasze sposoby? Prosiłbym o krótki opis albo link do howto.
Jakie sa wasze sposoby? Prosiłbym o krótki opis albo link do howto.
Śmiech to zdolność człowieka do obrony przed światem, przed sobą."
Wiesław Myśliwski - Traktat o łuskaniu fasoli
Wiesław Myśliwski - Traktat o łuskaniu fasoli
-
- Wytworny Kaczor
- Posty: 330
- Rejestracja: 06 sty 2006, 00:03
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: GNOME
- Architektura: x86
- Kontakt:
Odp: Dopasowanie napisów
ja sobie radzę odpalając time adjuster pod wine...
nie znam lepszego sposobu. może subeditplayer też pod wine pójdzie?
w time adjusterze musisz podać ręcznie czas pojawienia się pierwszej kwestii, potem ostatniej... a pozostałe rozsuwane są proporcjonalnie.
ale jeśli problem wynika tylko z innej ilości klatek/sek w rmvb niż w divx (dotyczy przypadku z napisami w formacie microdvd, czyli z numerami klatek) to jest prosty skrypt, który zamienia ten format na format czasowy hh:min:ss, który MUSI działać prawidłowo.
jako parametr podać trzeba ilość klatek/s, dla której powstały oryginalne napisy (zwykle 25, dla PAL lub 29.97, jeśli ripowano z płyty NTSC) oraz ewentualne przesunięcie +/- w sekundach.
zapisz to w pliku tekstowym i nadaj mu prawa wykonywania:
zwróć uwagę na sposób użycia: robisz cat pliku z napisami przez rurkę do pliku ze skryptem. jeśli działa (wynik na ekranie) to wywołujesz jeszcze raz i tym razem kierujesz nowe napisy do pliku przez > nowy_plik.txt
nie znam lepszego sposobu. może subeditplayer też pod wine pójdzie?
w time adjusterze musisz podać ręcznie czas pojawienia się pierwszej kwestii, potem ostatniej... a pozostałe rozsuwane są proporcjonalnie.
ale jeśli problem wynika tylko z innej ilości klatek/sek w rmvb niż w divx (dotyczy przypadku z napisami w formacie microdvd, czyli z numerami klatek) to jest prosty skrypt, który zamienia ten format na format czasowy hh:min:ss, który MUSI działać prawidłowo.
jako parametr podać trzeba ilość klatek/s, dla której powstały oryginalne napisy (zwykle 25, dla PAL lub 29.97, jeśli ripowano z płyty NTSC) oraz ewentualne przesunięcie +/- w sekundach.
zapisz to w pliku tekstowym i nadaj mu prawa wykonywania:
Kod: Zaznacz cały
#!/bin/sh
# mdvdp 0.1
# Konwersja napisow z formatu mdvdp ({xxxx}{xxxx}) na zwykly (xx:xx:xx).
#
# Autor: Jacek Masiulaniec
# Licencja: GPL
# http://lubuska.zapto.org/~merlin/mdvdp-0.1.gz
echo $1|grep -q "^[0-9]*$"
if [ ! -z "$2" ] ; then
if ! `echo $2|grep -q "^[-+][0-9]*$"` ; then
badopt=1
fi
fi
if [ -z "$1" -o $? != 0 -o "$badopt" = "1" ] ; then
echo "Uzycie: cat napisy.txt | `basename $0` fps [shift]"
echo
echo " fps czestotliwosc filmu (podana jako liczba calkowita)"
echo " uzyskac mozna np. przez:"
echo " $ mplayer -identify film.avi | grep \"^ID_VIDEO_FPS\""
echo " shift przesuniecie filmu o ,,shift'' sekund (np. +3, -2)"
exit 1
fi
fps=$1
shift=$2
while read linia ; do
linia="`echo "$linia"|sed -e 's/{/ /g' -e 's/}/ /g'`"
txt="`echo "$linia"|cut -d' ' -f5-`"
time=`echo "$linia"|cut -d' ' -f2`
time=`echo $time / $fps $shift|bc` # czas w sek.
hours=`echo $time / 3600|bc`
mins=`echo "($time - $hours * 3600)" / 60|bc`
secs=`echo "$time - $hours * 3600 - $mins * 60"|bc`
for i in hours mins secs
do
eval test \$$i = 0
if [ $? = 0 ] ; then
eval $i="00"
fi
eval test \$$i -lt 10 -a \$$i -gt 0
if [ $? = 0 ] ; then
eval $i="0\$$i"
fi
done
echo $hours:$mins:$secs:$txt
done
zwróć uwagę na sposób użycia: robisz cat pliku z napisami przez rurkę do pliku ze skryptem. jeśli działa (wynik na ekranie) to wywołujesz jeszcze raz i tym razem kierujesz nowe napisy do pliku przez > nowy_plik.txt
-
- Piegowaty Guziec
- Posty: 2
- Rejestracja: 24 kwie 2007, 21:05
- Płeć: Mężczyzna
- Wersja Ubuntu: 7.04
Odp: Dopasowanie napisów
Nie wiem co mam napisać... może robię coś, źle, ale u mnie nic nie działa tak jak napisałeś:
$ mplayer -identify mójfilm.rmvb | grep "^ID_VIDEO_FPS" - nie działa
ale mplayer odtwarzający film powiedział, co trzeba: VIDEO: [RV40] 608x344 24bpp 30.000 fps
skrypt działa tylko przez: sh skrypt
przerobione napisy dla wartości fps z mplayera nadal nie są dopasowane.
$ mplayer -identify mójfilm.rmvb | grep "^ID_VIDEO_FPS" - nie działa
ale mplayer odtwarzający film powiedział, co trzeba: VIDEO: [RV40] 608x344 24bpp 30.000 fps
skrypt działa tylko przez: sh skrypt
przerobione napisy dla wartości fps z mplayera nadal nie są dopasowane.
Śmiech to zdolność człowieka do obrony przed światem, przed sobą."
Wiesław Myśliwski - Traktat o łuskaniu fasoli
Wiesław Myśliwski - Traktat o łuskaniu fasoli
- skoruppa
- Zakręcona Traszka
- Posty: 585
- Rejestracja: 25 kwie 2006, 20:33
- Płeć: Mężczyzna
- Wersja Ubuntu: 11.04
- Środowisko graficzne: GNOME
- Kontakt:
Odp: Dopasowanie napisów
Jak dla mnie jedyne godne polecenia edytory napisow dla Linuksa to Jubler (wygląda dosc skaplikowanie i jest na javie) i Subtitle Editor (ciagle rozwijany, w obecnej formie jest dosc pozyteczny). Gaupol jest zbyt "ograniczony" nawet nie mozna wpisac wlasnego fpsa.
Nie wiem za bardzo, co SubEdit robil ale po opisie mozna wywnioskowac, ze chodzi o zmiane fpsa. Zazwyczaj informacje o orginalnym fpsie (tym z divx/xvid jak ladnie to ujoles) mozna znalesc w napisach (jesli byly robione w SubEdicie - pierwsza linijka) lub na stronie, z ktorej sciagasz napisy. Jak juz wczytasz napisy ustawiajac ow fps zapisz do jakiegos nie klatkowego formatu (np .srt)
Nie wiem za bardzo, co SubEdit robil ale po opisie mozna wywnioskowac, ze chodzi o zmiane fpsa. Zazwyczaj informacje o orginalnym fpsie (tym z divx/xvid jak ladnie to ujoles) mozna znalesc w napisach (jesli byly robione w SubEdicie - pierwsza linijka) lub na stronie, z ktorej sciagasz napisy. Jak juz wczytasz napisy ustawiajac ow fps zapisz do jakiegos nie klatkowego formatu (np .srt)
- niggazzz
- Piegowaty Guziec
- Posty: 15
- Rejestracja: 05 sie 2006, 13:21
- Płeć: Mężczyzna
- Wersja Ubuntu: 7.10
- Środowisko graficzne: GNOME
Odp: Dopasowanie napisów
A ja uzywam na zmiane 3 programow: Subtitle Composer, Subtitle Editor oraz Gnome Subtitles. Nie ma z nimi najmniejszego problemu, kazdy ma podglad pliku wideo, chociaz przyznam ze nie udalo mi sie wlaczyc podgladu wideo w Subtitle Composer bo pewnie mi brakuje jakiegos komponentu.
Po prostu wlaczasz ktorys z tych programow, wczytujesz wideo, wybierasz odpowiednia ilosc klatek dla napisow, a reszta jak w poczciwym SubEdicie. Trzeba tylko uwazac z kodowaniem znakow i wybrac odpowiednie zeby pod windowsem, czy tez na stacjonarce ktos nie zobaczyl pozniej krzaczków zamiast liter.
DOBRA RADA:
Dla filmow RMVB (skonwertowanych z najpopularniejszych releasow scenowych) probuj znajdywac napisy w formacje TMplayer (00:00:00), poniewaz mniej problemow jest z nimi w czasie dopasowywania, niz z tymi w formacie klatkowym. Wynika to z tego ze jesli film byl robiony pod 25 fps i napisy w formacie klatkowym sa dla 25 fps,a po skonwertowaniu windowsowym Real Producerem lub innymi tego typu narzedziami zmieniono sztucznie ilosc klatek na sek do np 29,970 lub 30 to dopasowac pozniej napisy klatkowe do takiego wideo to prawdziwa syzyfowa praca.
Z napisami w formacie czasowym nie ma tego problemu. Po prostu przesuwasz o zadana ilosc sekund i jesli z filmu nie sa powycinane sceny to napisy powinny byc dobrze zsynchronizowane.
Po prostu wlaczasz ktorys z tych programow, wczytujesz wideo, wybierasz odpowiednia ilosc klatek dla napisow, a reszta jak w poczciwym SubEdicie. Trzeba tylko uwazac z kodowaniem znakow i wybrac odpowiednie zeby pod windowsem, czy tez na stacjonarce ktos nie zobaczyl pozniej krzaczków zamiast liter.
DOBRA RADA:
Dla filmow RMVB (skonwertowanych z najpopularniejszych releasow scenowych) probuj znajdywac napisy w formacje TMplayer (00:00:00), poniewaz mniej problemow jest z nimi w czasie dopasowywania, niz z tymi w formacie klatkowym. Wynika to z tego ze jesli film byl robiony pod 25 fps i napisy w formacie klatkowym sa dla 25 fps,a po skonwertowaniu windowsowym Real Producerem lub innymi tego typu narzedziami zmieniono sztucznie ilosc klatek na sek do np 29,970 lub 30 to dopasowac pozniej napisy klatkowe do takiego wideo to prawdziwa syzyfowa praca.
Z napisami w formacie czasowym nie ma tego problemu. Po prostu przesuwasz o zadana ilosc sekund i jesli z filmu nie sa powycinane sceny to napisy powinny byc dobrze zsynchronizowane.
-
- Wytworny Kaczor
- Posty: 330
- Rejestracja: 06 sty 2006, 00:03
- Płeć: Mężczyzna
- Wersja Ubuntu: 10.04
- Środowisko graficzne: GNOME
- Architektura: x86
- Kontakt:
Odp: Dopasowanie napisów
pewnie, że nie będą pasować.harlequin pisze:
przerobione napisy dla wartości fps z mplayera nadal nie są dopasowane.
bo masz wpisać nie wartość, którą zwraca ci mplayer (tego filmu, który masz), tylko taką, dla jakiej zrobiono napisy, które pobrałeś!
wartość klatek w pliku z filmem nie ma żadnego znaczenia!
w pliku skonwertowanym skryptem przecież nie ma w ogóle mowy o klatkach, tylko o sekundzie i minucie, w której ma się pojawić napis! taki plik jest kompletnie niezależny od formatu pliku, w jakim go oglądasz, tylko od czasu w minutach i sekundach od początku trwania filmu!
dla jakiej ilości klatek są napisy bardzo często jest podane wewnątrz pliku z napisami na początku, albo w serwisie, z którego pobierasz.
jak ściągnąłeś napisy dla 25 klatek/sek (PAL), to wpisz 25, jak NTSC, to wpisz 29.97. trzeciej alternatywy zasadniczo nie ma.
dodatkowo, możesz chcieć je przesunąć do przodu/tyłu, bo poszczególne ripy pliku różnią się np. obecnością czołówki wytwórni, logo dvd itp.
skrypt wywołujesz przez:
cat napisy.txt | konwertuj-napisy fps > napis-docelowy.txt
w ramach testu skuteczności konwersji spróbuj w mplayerze postukać w klawisze Y i G. przewijają one skokowo napisy o jeden do przodu/do tyłu. jak dopasujesz pierwszą kwestię, i napisy będą się "trzymać" do końca filmu, to klatki masz dobrze dobrane, tylko potrzebujesz przesunięcia w czasie (parametr shift ze skryptu). a jak będą odbiegać powoli coraz bardziej, to znaczy, że wpisałeś niewłaściwą liczbę klatek przy konwersji.
zauważ, że konwertować możesz tylko format klatkowy na minutowy, więc pliku wynikowego już nie przerobisz drugi raz, tylko musisz znowu zacząć od oryginalnego.
-
- Piegowaty Guziec
- Posty: 1
- Rejestracja: 17 wrz 2008, 13:10
- Płeć: Mężczyzna
- Środowisko graficzne: GNOME
Odp: Dopasowanie napisów
Ja pod Linuxem (zresztą pod Windowsami też) używam programiku Subtitles Scaler 4 DivX (zassanego ze stronki napisydivx.prv.pl). Odpalam go pod dosemu ale pewnie pod wine też zadziała. Prosty i jak dla mnie sprawdza się rewelacyjnie.
- skoruppa
- Zakręcona Traszka
- Posty: 585
- Rejestracja: 25 kwie 2006, 20:33
- Płeć: Mężczyzna
- Wersja Ubuntu: 11.04
- Środowisko graficzne: GNOME
- Kontakt:
Odp: Dopasowanie napisów
Just Sub Edit jest do pupy i po prostu nie działa
Ja od siebie mogę polecić Jubler, którego ostatnio używam.

Kto jest online
Użytkownicy przeglądający to forum: Bing [Bot] i 24 gości