Skip to content
Tags

Łatwa konwersja napisów

by Tomek on July 13th, 2008

Popularny komponent Quicktime - Perian - ma możliwość automatycznego wyświetlania napisów razem z filmem. Warunek jest tylko jeden - napisy muszą być w formacie bardzo rzadko spotykanym, czyli SRT.

Aby ułatwić życie użytkownikom, w ramach poznawania środowiska Cocoa postanowiłem napisać prosty konwerter napisów, który ochrzciłem niezwykle oryginalnie:

SRTool

Program ten ma całą masę ograniczeń (które traktuję jako "to-do"), ale w podstawowym zakresie działa. Krótka charakterystyka:

  • wymagany Mac OS X 10.5 "Leopard" lub nowszy
  • tłumaczone są tylko napisy w formacie mDvd ("microDVD")
  • napisy wejściowe muszą być zapisane w stronie kodowej CP-1250 (czyli polskie znaki w Windows)
  • plik wynikowy w formacie SRT jest zakodowany w standardzie UTF-8
  • możliwe jest konwertowanie wielu plików z napisami jednocześnie
  • tylko angielska wersja językowa - po dopracowaniu szczegółów interfejsu, zostanie dodana polska lokalizacja (i inne wedle potrzeb)
Do konwersji niezbędna jest znajomość szybkości odtwarzania filmu (w klatkach na sekundę). Program SRTool sam potrafi tą wartość ustalić, o ile znajdzie plik AVI o takiej samej nazwie jak napisy. Jeśli będzie kłopot z ustaleniem prędkości odtwarzania, program sam spyta użytkownika o podanie wartości.
Obsługa jest - mam nadzieję - całkowicie intuicyjna. Jako wskazówkę podpowiem tylko, że pliki za napisami można przeciągnąć na okno programu, lub otworzyć opcją "Open" z menu.
Plany na przyszłość
  • Konwersja napisów w formacie MPL2
  • Rozpoznawanie FPS nie tylko z plików AVI
  • Wybór strony kodowej
Zapraszam do pobrania wersji 0.9. Czekam na komentarze, propozycje oraz motywacje do rozszerzania możliwości :-)
Aktualizacja: jest wersja 0.9.1, która tłumaczy również napisy MPL2. Zapraszam.

From → Cocoa

14 Comments
  1. Piotrek Sokolinski permalink

    Akurat nie mam teraz jak przetestować, bo chwilowo mam panterkę, więc może zamieść jakieś zrzuty ekranowe tego programiku. Szukam jakiegoś ultra-hiper-super-duper….prostego konwertera napisów txt na srt.

    PS
    Używasz chyba periana więc może wykombinowałeś coś w leopardzie z napisami w frontrow.

  2. Tomek permalink

    Z napisami we Front Row faktycznie są problemy, w moim przypadku sens konwersji napisów polega na tym, że mogę sobie oglądać filmy z użyciem tylko QuickTime’a.

  3. marek permalink

    niestety u mnie źle działa automatyczne wykrywanie fps filmu, dla wszystkich z 23,98. Gdy fps podam ręcznie pliki wyjściowe są ok

  4. Tomek permalink

    Może się tak zdarzyć w wyjątkowych sytuacjach, mogę zbadać temat – ale bez pliku z filmem może być ciężko. Kontakt do mnie jest pod linkiem “o tej stronie”.

  5. gekon permalink

    nie da sie zrobic tak ze jak otworze napisy odrazu w programie otworz -> srtool to zeby odrazu tworzyl napisy ? bez otwierania okana programu? cos jak w unarchiver.

    thx za program ;)

  6. eh ja ja polecam przekonwertować napisy do srt online http://www.przepisywanie.pl/konwersja_napisow/

  7. Ściągnąłem nową wersję i działą! 0.9.1 niestety coraz częściej dawała ciała i musiałem używać Jublera który jest o wiele wolniejszy… Pozostaje tylko jeden nierozwiązywany na Maku problem – polskie znaki. Jedyna opcja na ich usunięcie (ja oglądam filmy na Popcorn Hour i nie mam PL znaków) to Gżegżółka odpalana na Wine, a to upierdliwe… Gdyby tak SRTool miał możliwość konwertowania tekstu do ASCII byłoby pięknie :) Gratuluję!

  8. Natknąłem się na pewien upierdliwy problem na macu korzystając z Plexa, mianowicie przy niektórych filmach nie radzi sobie z napisami z .txt – po ich konwersji na .str jest ok. Jednak plex łyka dobrze tylko napisy w kodowaniu windows cp1250. Byłaby opcja, żeby SRTool pozostawiał kodowanie takie jakie jest w napisach (w większości naszych napisów to właśnie cp1250)?

  9. Zapraszam na http://konwerternapisow.pl – konwersja online napisów filmowych, również może usunąć polskie litery.

  10. scorpion_1982 permalink

    Program ma problem z napisami w formacie kmplayer, lub jak ktoś woli czasowe.

    Prosił bym o dorobienie tego formatu.
    Pozdrawiam.

  11. Tomek permalink

    @scorpion_1982 zapewne chodzi o napisy z czasem zakodowanym jako HH:MM:SS.
    Ten format napisów niestety jest jakąś pomyłką ludzkości (brak czasu końca napisu i dokładność wynosząca 1 sekundę) i sam unikam takich jak ognia. Ale jak widać, zdarzają się takie – postaram się obsługę tego nieszczęsnego formatu dodać.

  12. scorpion_1982 permalink

    Było by bardzo miło, ostatnio chciałem oglądnąć głupi film, jedyne napisy dostępne niestety, próba konwersji programem twojego autorstwa i jeszcze innym okazała się nie skuteczna.

    Jakoś z przyzwyczajenia wolę mięć srt niż txt. ustawione mam kodowanie na utf8, a wszystko co z txt jest w cp1250(czyli pod windowsem kodowane) i mam krzaczki..

    Tomek ty to piszesz w objective-c ? czy QT ??

  13. Tomek permalink

    Jeśli są problemy z przetworzeniem napisów, można podesłać mi plik emailem. Być może znajdzie się powód niedziałania.

    Tak, SRTool jest napisany w Objective-C (i Cocoa). :)

  14. qbasinski permalink

    Też mam niestety problem z kodowaniem z każdego txt pobranego QNAPI po przerobieniu przez SRT wychodzą krzaki :( jakas wskazowka co z tym zrobic ?

Leave a Reply

Note: XHTML is allowed. Your email address will never be published.

Subscribe to this comment feed via RSS

Comment spam protected by SpamBam