Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Konwersja dowolnych napisów na srt
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Polskie forum (Polish)
View previous topic :: View next topic  
Author Message
Zwierzak
Veteran
Veteran


Joined: 19 Sep 2003
Posts: 1012
Location: /dev/null

PostPosted: Wed Oct 25, 2006 3:15 pm    Post subject: Konwersja dowolnych napisów na srt Reply with quote

Ostatnio bawię się w przerabianie 2 płytowych filmów DivX na DVD, wszystko ładnie idzie gdyby nie jeden szczegół, większość napisów jest w jakiś dziwnych formatach i trzeba je zamieniać na srt. Niestety nie znalazłem na linuksa żadnego porządnego programu do tego, a programy windowsowe często nie chcą się uruchomić pod Wine. Sytuację trochę ratuje sub2str, ale nie obsługuje on napisów w formacje TMPlayer (jakich mam w znacznej wielkości). Czy zna ktoś może jakieś programy godne polecenia?

Last edited by Zwierzak on Thu Oct 26, 2006 10:28 am; edited 1 time in total
Back to top
View user's profile Send private message
tokoloshe
Tux's lil' helper
Tux's lil' helper


Joined: 11 Jul 2003
Posts: 116

PostPosted: Wed Oct 25, 2006 3:22 pm    Post subject: Reply with quote

mplayer
Back to top
View user's profile Send private message
sebad
Tux's lil' helper
Tux's lil' helper


Joined: 06 Oct 2005
Posts: 130
Location: Poland

PostPosted: Thu Oct 26, 2006 2:45 am    Post subject: Reply with quote

Z nudow napisalem programik w pythonie. Mozesz go wyprobowac. Nie ma dopisanej obslugi bledow i obsluguje tylko format tmplayera, ale dziala prawidlowo (przynajmniej mi sie tak wydaje) Jako argument podajesz mu plik z napisami.
Code:

#!/usr/bin/python

import string, sys

sciezka = sys.argv[1]
f=open(sciezka, 'r')
nf=open(sciezka +'.srt', 'w')
nr = 0
for line in f:
    nr+=1
    if line.rfind('|') == -1:
      if int(line[6:8])+3 < 10:
        nf.write(`nr` + '\n' + line[:8] + ',000 --> ' + line[:6] + '0' + `int(line[6:8])+3` + ',000\n' + line[9:] + '\n')
      else:
        nf.write(`nr` + '\n' + line[:8] + ',000 --> ' + line[:6] + `int(line[6:8])+3` + ',000\n' + line[9:] + '\n')
    else:
      if int(line[6:8])+3 < 10:
        nf.write(`nr` + '\n' + line[:8] + ',000 --> ' + line[:6] + '0' + `int(line[6:8])+3` + ',000\n' + line[9:line.rfind('|')] + '\n')
        nf.write(line[int(line.rfind('|')+1):] + '\n')
      else:
        nf.write(`nr` + '\n' + line[:8] + ',000 --> ' + line[:6] + `int(line[6:8])+3` + ',000\n' + line[9:line.rfind('|')] + '\n')
        nf.write(line[int(line.rfind('|')+1):] + '\n')
f.close()
nf.close()
print 'Zrobione'


W formacie tmplayera nie ma podanego czasu wyswietlania napisow ,wiec ustawilem go na 3 sekundy.
PS: Nie sprawdzalem jak przerobione napisy sprawdzaja sie w praniu :p
_________________
Serwis komputerowy - Warszawa
Back to top
View user's profile Send private message
Zwierzak
Veteran
Veteran


Joined: 19 Sep 2003
Posts: 1012
Location: /dev/null

PostPosted: Thu Oct 26, 2006 10:06 am    Post subject: Reply with quote

tokoloshe wrote:
mplayer

W jaki sposób?

A za programik dziękuję, mam nadzieję, że się przyda. A długość wyświetlania powinna być generowana na podstawie długości napisu ;)
Back to top
View user's profile Send private message
szolek
Guru
Guru


Joined: 30 Mar 2005
Posts: 570
Location: Brzóza Królewska

PostPosted: Thu Oct 26, 2006 10:17 am    Post subject: Reply with quote

[OT] chyba w temacie za długo przytrzymałeś Alt ;) [/OT]
Back to top
View user's profile Send private message
Zwierzak
Veteran
Veteran


Joined: 19 Sep 2003
Posts: 1012
Location: /dev/null

PostPosted: Thu Oct 26, 2006 10:29 am    Post subject: Reply with quote

szolek wrote:
[OT] chyba w temacie za długo przytrzymałeś Alt ;) [/OT]

[OT]Minusy bardzo szybkiego pisania, kcikuk cvzasami nie nadąrza za resztą palcy przez co powstają takie szopki. Jak psałem wolniej to rzadziej mi się to zdarzało.[/OT]
Back to top
View user's profile Send private message
argasek
Bodhisattva
Bodhisattva


Joined: 06 May 2004
Posts: 1121
Location: Sol [0,0], Poland, Kraków

PostPosted: Thu Oct 26, 2006 11:39 am    Post subject: Reply with quote

Zwierzak wrote:
tokoloshe wrote:
mplayer

W jaki sposób?


man mplayer:
Code:

OPCJE OSD/NAPISÓW
INFORMACJA: Zobacz także -vf expand.

-dumpjacosub (tylko MPlayer)
 Konwertuje podane (przy pomocy opcji -sub) napisy na oparty na czasie format JACOsub.  Tworzy w bieżącym katalogu zbiór dumpsub.js.

-dumpmicrodvdsub (tylko MPlayer)
 Konwertuje podane (przy pomocy opcji -sub) napisy na format MicroDVD.  Tworzy w bieżącym katalogu zbiór dumpsub.sub.

-dumpmpsub (tylko MPlayer)
 Konwertuje podane (przy pomocy opcji -sub) napisy na format MPlayera - MPsub.  Tworzy w bieżącym katalogu zbiór dumpsub.mpsub.

-dumpsami (tylko MPlayer)
 Konwertuje podane (przy pomocy opcji -sub) napisy na oparty na czasie format SAMI.  Tworzy w bieżącym katalogu zbiór dumpsub.smi

-dumpsrtsub (tylko MPlayer)
 Konwertuje podane (przy pomocy opcji -sub) napisy na oparty na czasie format SubViewer (SRT).  Tworzy w bieżącym katalogu zbiór dumpsub.srt.

-dumpsub (tylko MPlayer) (KOD BETA)
 Zrzuca podstrumień napisów ze strumieni VOB Zobacz także -dump*sub i -vobsubout*.

_________________
RLU #137109 | http://soundcloud.com/argasek
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Polskie forum (Polish) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum