Wykorzystanie MakeAVIS w konwersji AVI na DVD z napisami w NeroVision Express Wstęp Wielu z was zapewne stanęło przed problemem konwertowania plików avi zawierających oryginalną ścieżkę dźwiękową oraz osobny plik z napisami do formatu DVD. Obecnie pojawia się coraz więcej pakietów umożliwiających konwersję tego typu plików, chociażby DVD2SVCD, Avi2Dvd itp. Stają się one coraz popularniejsze właśnie dzięki możliwości dodania napisów. Osłabiają one pozycję programów pozbawionych tej funkcji spychając je na dalsze tło. Obsługa tych pakietów niejednemu początkującemu potrafi sprawić ogromne trudności, o czym świadczy ilość zapytań na naszym forum. Inaczej sytuacja wygląda w odniesieniu do programów nie obsługujących napisów. Ich obsługa jest najczęściej bardzo prosta i intuicyjna, poza nielicznymi wyjątkami. Przykładem może tu być, np. NeroVision Express. Posiada on jednak poważną wadę: nie potrafi mianowicie dodać napisów do konwertowanego materiału, co z góry go dyskwalifikuje. W niniejszym artykule pokażemy jak rozwiązać ten problem. Utworzymy skrypt avs, który pozwoli nam dodać napisy w formacie ssa (SubStation Alpha) oraz specjalny przejściowy plik avi, który "oszuka" NeroVision Express. Taki "fałszywy" plik avi ma zastosowanie wtedy, kiedy nasza aplikacja nie potrafi bezpośrednio obsługiwać skryptów avs. Rozwiązanie takie przynosi wiele korzyści: różnorodność stosowania wielu filtrów, możliwość otwarcia formatów, których aplikacja nie obsługuje, zniesienie ograniczeń nałożonych na aplikację (np. obsługa plików nie przekraczających 2GB) itp. Potrzebne programy: - ffdshow - pakiet filtrów umożliwiających odtwarzanie filmów zakodowanych w popularnych formatach DivX, XviD, MPEG-1 oraz MPEG-2, bez konieczności instalowania kodeków dostępny na stronie http://www.free-codecs.com/download/ffdshow.htm - AviSynth - aplikacja umożliwiająca frameserving, czyli transfer danych video z jednego programu do drugiego, nie tworząca przy tym żadnych plików tymczasowych. Zawarta jest ona w większości pakietów do konwersji pomiędzy różnymi formatami, np. DVD2SVCD, DVD2AVI, Diko. Można ją także pobrać ze strony http://sourceforge.net/projects/avisynth2/ - VSFilter.dll - zewnętrzny filtr do frameservera Avisynth dostarczany w pakietach do konwersji pomiędzy formatami video takich jak: GordianKnot, Diko, Avi2Dvd lub do pobrania ze strony tutaj - dowolna aplikacja konwertująca pliki avi do formatu DVD bez możliwości dodawania napisów, np. NeroVision Express - napisy w formacie SubStation Alpha (.ssa); sposób konwersji do tego formatu przedstawiony został w dziale Artykuły/Opisy związane z obróbką oraz konwersją napisów 1. Plik VSFilter.dll VSFilter.dll jest biblioteką będącą zewnętrznym filtrem używanym przez frameserver Avisynth. Mówiąc inaczej jest to plugin umożliwiający dodawanie napisów. Obsługuje on kilka formatów napisów: SSA (Sub Station Alpha), SRT (SubRip), SUB (MicroDVD), PSB (PowerDivx), SMI (SAMI), ASS (Advanced Substation Alpha). W związku z tym, iż jest to zewnętrzny plugin, nie jest on instalowany wraz z aplikacją Avisynth. Należy go pobrać z internetu, a ściągnięte archiwum rozpakować na dysk twardy komputera. 2. Tworzymy skrypt Avisynth. Otwieramy systemowy Notatnik (Start > Wszystkie programy > Akcesoria > Notatnik). Wpisujemy 3 wersy, tak jak jest to pokazane na obrazku. Uwaga: podajemy własne ścieżki dostępu!!! (1) ścieżka do pluginu VSFilter (do folderu, do którego rozpakowaliśmy archiwum ściągnięte z internetu) (2) ścieżka do pliku avi, który będziemy konwertować (3) ścieżka do napisów w formacie ssa
Z menu Plik wybieramy Zapisz jako. W polu Zapisz jako typ z rozwijanej listy wybieramy Wszystkie pliki (1). W polu Nazwa pliku (2) podajemy nazwę naszego skryptu, pamiętając, aby nadać mu rozszerzenie avs. Klikamy na Zapisz. Zamykamy Notatnik. Mamy już gotowy skrypt, który wykorzystamy podczas konwersji. Aby uniknąć późniejszych problemów, możemy otworzyć skrypt za pomocą, np. Media Player Classic. W ten sposób sprawdzimy czy utworzyliśmy poprawny skrypt oraz czy napisy wyświetlane będą poprawnie. 3. Tworzymy "fałszywy" plik avi. NeroVision Express nie jest w stanie otworzyć skryptu avs. Związane jest to z tym, iż nie obsługuje tego formatu, zaś z plikami avi radzi sobie znakomicie. Sytuacja ta pozbawia nas zatem możliwości dodania napisów, aczkolwiek byłoby to możliwe gdybyśmy raz jeszcze przekonwertowali plik avi na avi wklejając napisy na stałe, np. za pomocą VirtualDuba. Wiąże się to jednak ze stratą czasu oraz dodatkowym pogorszeniem jakości filmu. Co można zatem zrobić? Z pomocą przychodzi nam aplikacja MakeAVIS, dołączana do pakaietu ffdshow. Pozwala ona na stworzenie "fałszywego" pliku avi, bezpośrednio powiązanego ze skryptem avs. Można powiedzieć, iż jest on rodzajem frameservera, którego konstrukcja powoduje, że widziany on jest jako zwykły plik avi. W związku z tym, że bezpośrednio odnosi on się do skryptu avs, daje nam to możliwość bogatej ingerencji we właściwości pliku wejściowego. Konstrukcja skryptu avs nie musi kończyć się jedynie na dodawaniu napisów. Jest to jedno z wielu zastosowań, gdyż bogata biblioteka filtrów daje nam praktycznie nieograniczone możliwości. Jedną z najciekawszych zalet jest bezapelacyjnie możliwość obsługi formatów, z którymi
aplikacja w ogóle sobie nie radzi. Można utworzyć skrypt avs otwierający np. plik z rozszerzeniem.mpg, utworzyć "fałszywy" plik avi i otworzyć go w aplikacji, która nie obsługuje formatu mpg, a świetnie radzi sobie z plikami avi. Przechodzimy do konkretów. Otwieramy program MakeAVIS. W tym celu klikamy kolejno: Start > Wszystkie programy > ffdshow > makeavis. W przypadku, gdy nie możemy zlokalizować aplikacji makeavis, świadczy to o tym, iż posiadamy starszą wersję ffdshow. Warto zatem odświeżyć pakiet filtrów instalując nowszą wersję. W oknie programu makeavis w polu AviSynth script otwieramy plik skryptu, który utworzyliśmy w 2. punkcie tego artykułu. W polu Output file pojawia się domyślna lokalizacja oraz nazwa pliku wyjściowego lecz bez rozszerzenia. Zaznaczamy opcję (1) po czym naciskamy przycisk z trzema kropkami (2).
W polu Zapisz jako typ wybieramy Avi files (1) i nadajemy nazwę naszemu plikowi (2) po czym klikamy na Zapisz (3). Sekcja Video (1) podaje nam podstawowe informacje o strumieniu wideo. Dodatkowo możemy wybrać konwersję do innej przestrzeni kolorów (2) oraz określić, czy plik wynikowy ma być z przeplotem czy bez (3). Gdy opcje te nie są zaznaczone przyjmowane są właściwości z pliku źródłowego. Sekcja Audio (4) niesie podstawowe informacje o dźwięku. Dodatkowa opcja (5) pozwala na zapisanie dźwięku w poctaci nieskompresowanej (PCM, najczęściej format wav). Natomiast opcje (6) pozwalają określić w jaki sposób odnosić ma się plik wynikowy do skryptu avs. W przypadku Store script file name in output file w pliku wynikowym umieszczana jest ścieżka dostępu do skryptu avs (wymagana obecność skryptu avs), natomiast zaznaczenie Store script in output file spowoduje zapisanie skryptu w pliku wynikowym (obecność skryptu avs nie jest wymagana). Po skonfigurowaniu programu klikamy przycisk Ctreate (7).
Postęp procesu obrazuje pasek stanu. Po utworzeniu pliku wynikowego pojawi się komunikat o zakończeniu procesu. Potwierdzamy klikając na OK. Zamykamy makeavis przyciskiem Close. "Fałszywy" plik został utworzony. Dla pewności otwieramy go np. w Media Player Classic, by sprawdzić, czy po drodze nie powstały jakieś błędy.
4. Konwersja do formatu DVD. Pozostaje już tylko przekonwertowanie naszego pliku do formatu DVD. Jak tego dokonać w NeroVision Express opisano w dziale Artykuły/Toworzenie i modyfikacja DVD-Video (artykuł: DVD Authoring w NeroVision Express). Pamiętajmy, aby jako plik źródłowy podać ten utworzony przez MakeAVIS.