Opis okna VirtualDub wg



Pobieranie 119.91 Kb.
Data03.05.2016
Rozmiar119.91 Kb.
Opis okna VirtualDub wg http://voidon.republika.pl/virtualdub (Krzysztof Wojdon)

Opis przycisków:



Stop - działa jak pauza. Jeżeli wykonujemy jakieś zadanie (podgląd, kodowanie), to przycisk ten wyłącza je.

Play input playback - odtwarzaj materiał (plik) wejściowy.

Play output playback - odtwarzaj materiał (plik) wyjściowy.

Start - przewiń materiał do pierwszej klatki.

Backward - przeskocz o jedną klatkę do tyłu.

Forward - przeskocz o jedną klatkę do przodu.

End - przewiń materiał do ostatniej klatki.

Key previous - przeskocz do poprzedniej klatki kluczowej/typu I.

Key next - przeskocz do następnej klatki kluczowej/typu I.

Scene reverse - przeskocz do poprzedniej zmiany scen.

Scene forward - przeskocz do następnej zmiany scen.

Przeskakiwanie między scenami to dość umowna funkcja, bo program sam definiuje kolejne sceny. Mamy jednak możliwość dokonania zmiany ustawień - czułości i innych Options -> Preferences -> Scene.



Mark in

Mark out

Przyciski służą do zaznaczania fragmentów klipa (do usunięcia, wycięcia itp.).

Po najechaniu kursorem na przycisk po kilku sekundach wyświetla się jego nazwa i opis polecenia.

Po prawej stronie znajduje się natomiast niewielkie okienko, w którym wyświetlane są informacje o aktualnej klatce (ramce) obrazu.

Wyświetlane są tam kolejno:


  • Numer

  • Czas (godzina: minuta: sekunda)

  • Typ [I/B/P]

Na samym dole pod przyciskami znajduje się pole informacyjne, gdzie po najechaniu kursorem na jakieś polecenie z menu, wyświetlany jest jego krótki opis.

Należy również wspomnieć, że możliwa jest również obsługa programu z linii poleceń.

FILE



  • Open video file - otwiera (ładuje) plik wideo.

Większość poniższych poleceń pozostanie nieaktywna do czasu załadowania pliku wideo.

  • Append AVI segment - dokleja segment (fragment) pliku.

Służy do łączenia dwóch lub więcej plików AVI w jeden, czyli przede wszystkim do montowania przygotowanego materiału w ostateczny film. Pliki muszą mieć tą samą rozdzielczość. Podczas procesu łączone pliki ulegają przekodowaniu, więc należy dokonać wszystkich ustawień jak przy kodowaniu (w następnym dziale).

  • Preview - szybki podgląd pliku.

Opcja ta służy przede wszystkim do przeprowadzania próby kodowania, bo podgląd następuje z poleceniami i ustawieniami, jakie wprowadziliśmy przed wydaniem tego polecenia. Pozwala np. określić szybkość kodowania pliku, czy jego jakość po zastosowaniu określonych filtrów, a przy tym nie wymaga zapisu materiału na dysku.

  • Save as AVI - zapisz jako AVI.

Zatwierdzenie wszystkich ustawień, wskazanie folderu dla pliku wyjściowego (output) i przystąpienie do procesu kodowania, łączenia plików i każdej innej operacji.

  • Save old formt AVI

Jeżeli zapisujemy plik do DivX'a czy innego "współczesnego" formatu, to polecenie to działa identycznie jak poprzednie.

Polecenie to jest pozostałością z czasów, gdy pojawił się format AVI 2.0 (VirtualDub służył wówczas prawie wyłącznie do zapisywania plików w formatach AVI i ASF), który rozszerzał możliwości wersji 1.0, niestosowanej raczej już dziś. Jedną z głównych innowacji nowego kodeka było przekroczenie granicy rozmiaru pliku równej 1 GB. Jednak nie wszystkie ówczesne odtwarzacze radziły sobie z większymi plikami i nowym formatem. Zachodziła więc sytuacja niekompatybilności, a z co za tym idzie konieczność wyboru między formatami. Powyższe polecenie służyło do zapisywania plików w starszym formacie 1.0, natomiast nowy format wymagał użycia polecenia Save as AVI.

Jeżeli nie stosujemy starszego kodeka to proponuję dla ścisłości (i bezpieczeństwa materiału) używanie poprzedniego polecenia.


  • Save segment AVI - zapisz (wraz z kodowaniem) wybrany fragment materiału.

Zaznaczenia fragmentu dokonujemy za pomocą suwaka i przycisków Mark in/out lub poleceń Set selection start/end.

  • Close video file - zamknij aktualnie otwarty (załadowany) plik.



  • File Information - wyświetl informacje o otwartym pliku.

Po wybraniu tego polecenia wyświetla się okno z dwiema ramkami, przy czym informacje tam zawarte mogą się różnić, w zależności od formatu pliku.
Oto najczęstsze:

    • Video track - informacje dotyczące strumienia video:
      Frame size, fps - rozdzielczość (w pikselach), ilość klatek na sekundę, czas wyświetlania klatki (w mikrosekundach na klatkę).

    • # of frames (time) - całkowita ilość klatek i czas materiału

    • Decompressor - nazwa zastosowanej kompresji wideo

    • Number of keyframes - liczba klatek kluczowych

    • Number of I, P and B frmes - ilość klatek poszczególnego typu

    • x-frame min/avg/max/total frame size - informacje o klatkach poszczególnego typu (I, P, B)/(key frames, delta frames). Są to kolejno: wielkość minimalna , średnia, maksymalna oraz całkowita (wielkość wszystkich klatek danego typu).

    • Average bitrat - średnia prędkość bitowa (w nawiasie podana w kilobajtach)

    • Audio track - informacje dotyczące strumienia audio

    • Format - częstotliwość próbkowania, tryb (mono/stereo), nazwa zastosowanego kodeka audio (często z podaną prędkością bitową)

    • # of frames - liczba kaltek

    • Total size - całkowity rozmiar strumienia audio



  • Save striped AVI/Save stripe master

Obie opcje dotyczą dość złożonego zagadnienia, a sama użyteczność tego narzędzia dziś jest już niewielka. Opiszę tylko pokrótce, czego dotyczą powyższe opcje, nie zagłębiając się nadto w szczegóły. Jeśli jednak kogoś bardziej to zainteresuje, lub może wyda się mu przydatne, to odsyłam go do help'a programu. Muszę jednak od razu coś zaznaczyć że, po pierwsze sami autorzy programu nie zalecają stosowania tej funkcji, a po drugie według help'a, opcja ta znajduje się wciąż w fazie beta, choć słowa te (ze względu na słabą aktualność dokumentacji) mogły być pisane dawno temu. Nic nie wiadomo mi jednak o jakości tego narzędzia.

Funkcja Stripe AVI przypomina swoją koncepcją działanie macierzy RAID. Jest ona użyteczna, gdy posiadamy dwa dyski twarde i chcemy zgrywać materiał wideo w czasie rzeczywistym, pochodzący np. z tunera TV. Wolny podsystem dyskowy może być przyczyną dużej ilości gubionych klatek, uniemożliwiając wręcz cały proces. Wtedy właśnie z pomocą przyjść nam może opisywana funkcja. Jej działałanie polega na takim skonfigurowaniu programu, by dzielił on przetwarzane przez niego informacje na dwa pliki, znajdujące się na osobnych dyskach. Spowoduje to jakby dwukrotne przyspieszenie podsystemu dyskowego, czyniąc proces bezproblemowym. VirtualDub dysponuje tu jednak dość prymitywnym rozwiązaniem, tworzy te pliki tylko przez rozdzielenie strumieni audio i wideo, nie pozwala natomiast na dalszy rozkład samego strumienia wideo. Jeżeli więc zgrywamy jedynie obraz , bez dźwięku, funkcja ta na niewiele nam się przyda. Zresztą strumień wideo stanowi zazwyczaj kilkakrotnie większe obciążenie dla systemu dyskowego niż strumień wideo.

Obsługa tej funkcji wymaga utworzenia specjalnych plików konfiguracyjnych, zawierający m.in. położenie (na dyskach) i nazwę plików docelowych, typ podziału i inne. Pliki te posiadają rozszerzenie .stripe i edytuje się je przy pomocy zwykłego notatnika. Do wczytywania tych plików konfiguracyjnych służy polecenie Save stripe master, natomiast do łączenia obu plików Save striped AVI.

Używanie tej funkcji nie ma już dziś jednak większego sensu. Produkowane dziś dyski (nawet te najwolniejsze) mają bardzo dużą wydajność i przy odpowiedniej (właœciwej) konfiguracji powinny poradzić sobie ze zgraniem każdego strumienia.



  • Save image sequence - zapisuje serię kolejnych klatek do plików BMP.

Najpierw należy zaznaczyć początek i koniec interesującej nas serii przy pomocy suwaka i poleceń Set selection start/end (nie należy używać przycisków Mark in/out, bo wówczas zostaną zapisane klatki od początku strumienia wideo, do końca zaznaczonego fragmentu, czyli dosyć dziwnie... ). Jeżeli nie dokonamy żadnego zaznaczenia, to wszystkie klatki w materiale zostaną zapisane jako pliki BMP.

Po wybraniu tej funkcji pojawi się okienko z kilkoma opcjami:



    • Filename prefix - dodaje wybrany przez nas przedrostek do zrzucanych plików.
      Przydaje się, gdy np. wykonujemy drugą (czy jeszcze następną) serię zrzutów do tego samego katalogu.

    • Filename suffix, including extension - pozwala zmienić rozszerzenie pliku, ze standartowego .bmp na inne. Uwaga! Zmiana na .gif, czy .jpg nie spowoduje zapisaniu zrzutów do takich właśnie formatów, ciągle będzie to BMP.

    • Minimum numbers of digits in name - definiuje minimalną liczbę cyfr dla nazw plików.
      Bardzo przydatna opcja szczególnie, gdy później będziemy przeglądać serię plików przy pomocy np. ACDSee, która szereguje pliki w taki sposób, że plik o nazwie (numerze) "2" wyświetlony będzie między 19 i 20, zamiast 1 i 3. Jeżeli zamierzamy zapisać do 99 klatek to wartość powinniśmy ustawić na 2, jeżeli do 999, to 3 itd.

    • Directory to hold of digits in name - wybieramy katalog, gdzie mają zostać zapisane obrazki. Uwaga! Z poziomu programu nie można tworzyć katalogów, więc przed przystąpieniem do zrzutu należy stworzyć odpowiedni katalog przy pomocy eksploratora (tak fachowo należy nazwać okienka w Windows;-)). Należy również pamiętać, że format BMP nie posiada kompresji, więc pliki takie zajmują bardzo dużo miejsca na dysku, dlatego należy wygospodarować go odpowiednio dużo przed przystąpieniem do zrzutu.

    • First/Last frame filename - okienka te nie maja żadnego znaczenia; informują jedynie o ilości klatek w materiale.



  • Save WAV - zapisuje strumień dźwięku do pliku wave.



  • Load processing settings - ładuje plik (skrypt) z ustawieniami.

  • Save processing settings - zapisuje ustawienia programu w pliku (rozszerzenie .vcf).

Opcja bardzo się przydaje, gdy często korzystamy z tych samych ustawień programu, skracając do minimum czas potrzebny na konfigurację programu.



  • Start frame server/Capture AVI

Opcje te uruchamiają tryb przechwytywania strumienia wideo z zewnętrznego źródła np. tunera TV.

Niestety z braku odpowiednich urządzeń nie miałem jak na razie okazji zapoznania się z tą funkcją, więc nie podejmuję się jej opisu. Mam jednak nadzieję, że wkrótce uzupełnię te informację.



  • Run script uruchamia dowolny skrypt wykonywany przez VirtualDub'a.

Może to być:
VirtualDub configuration file (*.vcf)
Sylia script for VirtualDub (*.syl)
VirtualDub job queue (*.jobs)

  • Job control

To bardzo ciekawa i przydatna funkcja w programie. Jej działanie można by w dużym uproszczeniu porównać do Harmonogramu zadań znanego z Windows. Otóż pozwala on tworzyć "kolejkę" zadań, które program będzie sam kolejno wykonywał. Ich ustawienia zapisywane są w specjalnych skryptach o rozszerzeniu .jobs. Jeśli podczas wykonywania działania wystąpią jakieś błędy, program je opisze i przejdzie do następnego zadania.

Przed przystąpieniem do tworzenia skryptu należy dokonać wszystkich niezbędnych ustawień konfiguracyjnych programu, czyli przede wszystkim ustalenia szczegółów kodowania strumieni audio i wideo.


Należy wybrać opcję Edit->Process directory. Program poprosi nas o wskazanie katalogu z plikami wideo (Select source directory), z którego zostaną załadowane wszystkie klipy. Następnie poprosi nas o wskazanie katalogu, gdzie będą zapisywane pliki wyjściowe (Select destination directory). Przypominam o wygospodarowaniu odpowiedniej ilości miejsca na dysku twardym!

Oto reszta poleceń występujących w menu:



    • Save/Load job list - zapisanie/załadowanie skryptu.

    • Set job list filename - nadaje nazwę skryptowi

    • Clear list - usuwa wszystkie zadania

    • Delete done jobs - usuwa wykonane zadania z listy

    • Dalej występują polecenia do grupowej zmiany statusów:
      All Waiting => Postponed
      All Postponed => Waiting
      All Done => Waiting
      All Failed => Waiting

Opis statusów zamieszczony jest dalej.

Okno zadań podzielone jest na kilka kolumn:



    • Name - nazwa zadania.
      Automatycznie nadawana jest nazwa "Job+kolejny_numer", ale można nadać dowolną własną, by to uczynić należy trzykrotnie kliknąć na pliku.

    • Source/Dest - wyświetla katalogi wejścia/wyjścia

    • Start/End - pokazuje godzinę rozpoczęcia i zakończenia zadania, a jeśli wykonywane było innego dnia, to również datę.

    • Status - stan zadania.

Możliwe są następujące:

      1. Waiting - proces gotowy do wykonania (oczekujący). Podwójne kliknięcie spowoduje zmianę na Postpone.

      2. In progress - proces aktualnie wykonywany

      3. Done - proces zakończony sukcesem. Podwójne kliknięcie spowoduje zmianę na Waiting i powtórne wykonanie.

      4. Aborted - proces przerwany w czasie wykonywania. Mógł go przerwać sam użytkownik, bądź VirtualDub został to tego zmuszony, zawieszeniem się systemu, czy restartem. Podwójne kliknięcie zmienia status na Waiting.

      5. Error - proces przerwany w trakcie wykonywania go, na skutek jakichś błędów. W takim przypadku program przystępuje do następnego procesu. Podwójne kliknięcie spowoduje wyświetlenie informacji o błędzie i zmianę statusu na Waiting.

      6. Postponed - status ten może wybrać tylko użytkownik, przez podwójne kliknięcie na zadaniu jeśli posiada status Waiting, albo przez kliknięcie przycisku po prawej stronie (Postpone). Po wybraniu tej opcji zadanie zostanie pominięte w kolejce, choć nieusunięte z niej.

Po prawej stronie znajduje się jeszcze kilka przycisków, z których część wyjaśniłem już wyżej.

Oto reszta:



      • OK - zamyka okienko

      • Move up/down - przesuwa zadania w kolejce na wyższą lub niższą pozycję.

      • Delete - usuwa zadanie z listy

      • Start - rozpoczyna proces

      • Abort - przerywa proces

Na samym dole znajduje się jeszcze pasek zaawansowania procesu - Current job.

  • Dalej podane są nazwy czterech ostatnio otwieranych plików. Kliknięcie na któryś z nich spowoduje jego załadowanie, o ile nie zmieniła się jego nazwa i ścieżka dostępu.

  • Quit

Tak dla formalności napiszę, że "opcja" ta powoduje zamknięcie programu;-).

Edit




  • Beginning - przewija plik do pierwszej klatki.

  • End - przewija plik do ostatniej klatki.

  • Previous frame - przeskakuje o jedną klatkę do tyłu.

  • Next frame - przeskakuje o jedną klatkę do przodu.

  • Previous keyframe - przeskakuje do poprzedniej klatki kluczowej/typu I.

  • Next keyframe - przeskakuje do następnej klatki kluczowej/typu I.

  • Back 50 frames - przeskakuje 50 klatek do tyłu.

  • Forward 50 frames - przeskakuje 50 klatek do przodu.

  • Previous drop frame - przeskakuje do poprzedniej utraconej klatki.

  • Next drop frame - przeskakuje do następnej utraconej klatki.

Klatki utracone to tzw. null frames. Powstają podczas zgrywania materiału wideo ze źródła zewnętrznego (kamera, tuner TV itp.) w czasie rzeczywistym. Jeżeli nie dysponujemy wystarczająco szybkim sprzętem (a przede wszystkim podsystemem dyskowym) to część klatek ulega zgubieniu i to właśnie są null frames, czyli klatki zerowe (puste).

  • Previous range - przeskocz do poprzedniego strumienia.

  • Next range - przeskocz do następnego strumienia.

Opcje te pozwalają poruszać się między miejscami gdzie usunięto klatki ze strumienia lub miejscem, gdzie łączą się dwa pliki. Są to więc miejsca, gdzie łączą się strumienie wideo lub jest w nich przerwa.

  • Move to selection start - przeskocz do początku zaznaczonego fragmentu.

  • Move to selection end - przeskocz do końca zaznaczonego fragmentu.

W poleceniach tych chodzi o fragmenty zdefiniowane (zaznaczone) przy pomocy przycisków Mark in/Mark out.

  • Go to - Idź do...

Pozwala przeskoczyć do wybranej klatki, według:

    • jej numeru (Jump to the frame number).

    • jej czasu (Jump to the frame at number).



  • Delete selection - usuwa zaznaczony fragment pliku.

W poleceniu tym chodzi o fragmenty zdefiniowane (zaznaczone) przy pomocy przycisków Mark in/Mark out.

  • Set selection start/end - polecenia służą do zaznaczania fragmentu pliku (podobnie jak przyciski Mark in/out, tylko w nieco inny sposób).

  • Mask selected frames - ciekawe polecenie, zamrażające obraz, wymaga najpierw zaznaczenia fragmentu materiału. Jego działanie polega na tym, że pierwsza klatka z zaznaczonego fragmentu zastępuje wszystkie pozostałe (w obrębie tego fragmentu), przy czym strumień audio nie ulega żadnym zmianom. Funkcja może posłużyć np. do przedłużania wyświetlania tablicy z napisami itp. niestety kosztem następujących po niej klatek.

  • Unmask selected frames - polecenie cofające wcześniejszą komendę.

By ją użyć należy najpierw zaznaczyć wybrane klatki z "zamrożonego" obrazu. Uwaga! Należy robić to dokładni, nie zaznaczając tych "niezamrożonych", w przeciwnym wypadku program może zadziałać dosyć dziwnie, wprowadzając różne, nieprzewidywalne zmiany w strumieniu wideo, a nawet audio.

  • Reset frame subset - resetuje wszystkie wykonane przez nas operacje edycyjne pliku (usunięte/wstawione klatki itp.).

Video

  • Filters - funkcja ta pozwala stosować różne filtry podczas kodowania (przekodowywania) materiału filmowego (np. usuwające tzw. śnieżenie).

W program wbudowanych jest kilkanaście gotowych filtrów, dodatkowe znaleźć można w sieci. Ich instalacja ogranicza się do skopiowania plików o rozszerzeniu .vdf (VirtualDubs Filter) do katalogu Plugins; od tego momentu dostępne są w programie.

Po wybraniu tej opcji, ukazuje się okno z kilkoma przyciskami:



    • Add - dodaje nowy filtr.

Otwiera się nowe okienko z listą dostępnych w programie filtrów. Te wbudowane oznaczone są jako [internal], natomiast zewnętrzne opatrzone są notką o ich autorze. Przycisk Load służy do ładowania zewnętrznych filtrów nie zainstalowanych w programie.
Pod listą znajduje się obszar gdzie wyświetlane są podstawowe informacje o filtrze - przeznaczenie, sposób działania, rodzaj optymalizacji (zazwyczaj tylko MMX) i inne. Większość filtrów po wybraniu wyświetla dodatkowe okno konfiguracyjne, dające możliwość regulacji ich działania.

    • Delete - usuwa wybrany filtr.

    • Move up/down - reguluje kolejność, w jakiej stosowane są przez program filtry, oczywiście, jeśli używamy więcej niż jednego. Parametr ten może być niekiedy dość ważny, wpływając na jakość pliku wyjściowego lub czas (długość) procesu.

    • Cropping - pozwala przycinać krawędzie materiału wideo, o zadaną przez nas szerokość. Po wybraniu ukazuje się okienko do regulacji działania. Jest tam ekran podglądu pliku, podstawowy zestaw przycisków do poruszania się po materiale (w tym suwak) oraz cztery przyciski:

      1. X1 offset - reguluje cięcie z lewej strony

      2. X2 offset - reguluje cięcie z prawej strony

      3. Y1 offset - reguluje cięcie z góry

      4. Y2 offset - reguluje cięcie z dołu

Podczas używania przycisków wszystkie zmiany widoczne będą na ekranie podglądu. Wartości cięcia podawane są w pikselach.

    • Configure - otwiera okienko konfiguracyjne filtra (jeśli tylko jest on konfigurowalny); to samo, które pojawiało się po wybraniu filtru (za pomocą przycisku Add).

  • Frame rate - to podmenu zawiera różne ustawienia dotyczące klatek materiału wyjściowego. Po wybraniu tej opcji ukazuje się okienko z trzema ramkami:

    • Source rate adjustment - pozwala na regulację ilości klatek na sekundę, czyli frame rate lub inaczej fps (frames per second).

    • No change - pozostawia wartość z materiału wejściowego, która wyświetlana jest w nawiasie po prawej stronie.

    • Change to - zmienia wartość na wskazaną.

Przydaje się, gdy film ma fps większe niż 25, wówczas pozwala to na zmniejszenie jego rozmiaru. Odwrotna zmiana (z wartości mniejszej na większą) nie żadnego sensu.Zmiana frame rate powoduje desynchronizację strumieni audio i wideo.

Opcja ta synchronizuje, ścieżki audio i wideo (oczywiście tyko wtedy, gdy nie są zsynchronizowane).

    • Frame rate decimation - nazwa tej funkcji w wolnym tłumaczeniu oznacza "dziesiątkowanie klatek".

Funkcja ta pozwala usuwać wybrane klatki ze strumienia wideo, zostawiając na przykład tylko co trzecią czy siódmą, przy czym strumień dźwięku nie ulega zniekształceniu i odtwarzany jest prawidłowo. W ramce dostępne są następujące opcje:

      • Process all frames - pozostawia klatki bez zmian (funkcja nieuaktywniona).

      • Process every other frame (decimate by 2) - zostawia co drugą klatkę.

      • Process every third frame (decimate by 3) - zostawia co trzecią klatkę.

      • Decimate by - pozwala samemu wybrać krotność zostawianych klatek.



  • Inverse telecine (3:2 pulldown removal) - odwrócenie procesu telecine.

Proces ten jest związany z kodowaniem obrazu w systemie NTSC. Nie będę więc go opisywał, jak i funkcji dotyczących tego zagadnienie w VirtualDub'ie, bo w Polsce nie występuje ten system w żadnej formie.

  • Color depth - opcja zawiera ustawienia głębi (ilości) kolorów.

Po jej wybraniu ukazuje się okienko z dwoma ramkami:

    • Decompression format - dla wewnątrz programowej dekompresji materiału wejściowego.

    • Output format to compressor/display - dla pliku wyjściowego, czyli kompresowanego.

W pierwszym wypadku dostępne są tryby:

      1. 16-bitowy, tzw. HiColor (High color), czyli 65 536 kolorów (z nieznanych mi powodów widnieje tam wartość 32K czyli jak się domyślam 32 000, ale 16-bitowy kolor to jednak 65K ;-))

      2. 24-bitowy, tzw. TrueColor, czyli 16 777 216 kolorów (tu już jest wszystko O.K. - 16M)

W przypadku pliku wyjściowego występuje jeszcze jeden tryb:
32-bitowy, czyli TrueColor z dodatkowymi ośmioma bitami na kanał alpha (tzw. przezroczystość), to już chyba kilka miliardów...

Domyślnie dla obu strumieni wybrany jest 24-bitowy kolor i takie właśnie ustawienie jest dziś najczęściej wykorzystywane np. przy kompresji MPEG1 do DivX'a. Większość kodeków posiada jednak różne ograniczenia palety barw, akceptując tylko wybrane wartości, w szczególności dotyczy to starszych formatów.



  • Compression - to jedna z najważniejszych opcji w programie, służąca do wyboru formatu kompresji wideo.

Po jej wybraniu ukazuje się okienko, w którym zasadniczą część zajmuje lista kodeków dostępnych (zainstalowanych) w systemie.
Po prawej stronie znajduje się pole z informacjami o kodeku, jest tam m.in. nazwa biblioteki (Driver name) zainstalowanej w systemie, a w polu Format restrictions najważniejsze ograniczenia jakie narzuca format (najczęściej dokładny opis tych ograniczeń znajduje się dopiero w specyfikacji kodeka dostępnej na stronie producenta; rzadko dostarczana jest z nim dokumentacja, wyjątek stanowią te najnowsze np. DivX i profesjonalne).

W zależności od wybranego kodeka niektóre przyciski poniżej pozostają aktywne lub też nie.


Najprostsze mają zazwyczaj uaktywniony suwak Quality, służący do regulacji jakości obrazu (oczywiście lepsza jakość narzuca wyższe wymagania i większy rozmiar pliku) oraz następujące przyciski:

    • Use target data rate of - opcja pozwala na przybliżone zdefiniowanie tzw. bitrate, czyli wielkości w której ma się zmieścić kompresowany strumień, wartość tą podaj się tu w kilobajtach na sekundę (KB/s), a nie w bitach.

    • Force key - opcja ta wymusza tworzenie klatek kluczowych (keyframes) w wyznaczonych odstępach. Odstępy te definiowane są w klatkach (nie w sekundach). Włączenie tej opcji polepsza jakość, ale zwiększa rozmiar pliku, gwarantuje również, że pierwsza klatka strumienia będzie właśnie klatką kluczową.

Bardziej zawansowane kodeki mają uaktywniony przycisk Configure dający dodatkowe opcje. Najbardziej zawansowane i profesjonalne kodeki (np. DivX 5) konfiguruje się tylko pod tym przyciskiem.

Praktycznie w przypadku każdego kodeka dostępny jest przycisk About, wyświetlający najważniejsze informacje o kodeku - jego pełną nazwę, wersję, producenta itp. W niektórych przypadkach np. kodeki PICVideo informacje tam zawarte będą identyczne jak pod przyciskiem Configure.



  • Select range - opcja ta stanowi w zasadzie uzupełnienie funkcji Mark in/out oraz Set selection start/end, bo również służy do zaznaczania fragmentu materiału wideo, działa jednak inaczej, ma również inne przeznaczenie.

Pozwala użytkownikowi z góry (od samego początku) zdefiniować, na którym fragmencie materiału będzie on pracował. Na ekranach podglądu widoczny będzie co prawda cały materiał, ale po wprowadzeniu pożądanych ustawień (kodowania, użycia filtrów itd.) i przystąpienia do procesu, w pliku wyjściowym zapisany zostanie tylko wybrany wcześniej przez nas fragment (oczywiście z wprowadzonymi już wszelkimi zmianami). Narzędzie ta działa również w trybie podglądu (Preview).

Po jego wybraniu otworzy się okno z następującymi ustawieniami:



    • Start offset - służy do określenia granicy początkowej fragmentu.

    • Length - podaje długość fragmentu i jednocześnie służy do jej regulacji.

    • End offset - służy do określania granicy końcowej fragmentu.

Uwaga! Granicę tą nie określa się od początku materiału, tylko od jego końca. Na przykład, jeżeli mamy klip o długości 100 klatek i chcemy zachować fragment od klatki 10 do 70 to w polu Start offset podajemy wartość 10 natomiast w polu End offset wartość 30 (100-70=30).

Osobiście uważam, że lepszy byłby sposób ustawienia granicy końcowej również w stosunku do początku klipu, żądaną wartość łatwo byłoby wówczas odczytać z pola Frame indicator, tak obsługa tej funkcji wymaga użycia kalkulatora.

Jeszcze jeden przykład. Jeżeli w klipie od długości 100 klatek będziemy chcieli zaznaczyć fragment od 10 klatki, trwający kolejnych 50 klatek, to w polu Length należy podać po prostu wartość 50.

Pola Start/End offset oraz Lenght są ze sobą "powiązane" i zmiana wartości w jednym polu spowoduje automatyczne przeliczeni i zmianę wartości w polu drugim. Również wpisanie wartości tylko w pola Start offset i End offset lub Start offset i Lenght spowoduje autoupełnienie wartości w polu trzecim, co z pewnością bardzo poprawia wygodę użytkowania programu.



Wartości możemy podawać w dwóch jednostkach:

      1. milisekundach (jedna tysięczna sekundy); pole Time (ms).

      2. klatkach; pole Frames (to chyba wygodniejsza metoda).

W okienku dostępne są jeszcze dwie opcje:

      • Offset audio to maintain a/v sync - włącz/wyłącz synchronizację dźwięku.

Wyłączenie tej opcji spowoduje, że początek strumienia dźwięku zostanie ustawiony na początku klipu (chodzi o materiał wejściowy), a nie w punkcie Start offset. Efektem tego będzie opóźnienie strumienia wideo w stosunku do strumienia audio o wartość z pola Start offset (w milisekundach).

      • Cut off audio when video stream ends - obcina "nadmiarowy" strumień audio.

Przydaje się, gdy strumień audio jest dłuższy od strumienia wideo. Większość odtwarzaczy radzi sobie co prawda z taką sytuacją, przez wyświetlanie ostatniej klatki wideo, tak długo aż nie skończy się strumień audio. Jeżeli jednak, dźwięk jest już bardzo cichy (lub strumień audio jest w ogóle pusty) mija się to z celem, a efekt nie wygląda najlepiej... wówczas warto użyć tej opcji.



  • Następne cztery pozycje to tryby, w jakich pracować może program. Oto ich opisy:

    1. Direct stream copy - bezpośrednie kopiowanie strumienia. W tym trybie odbywa się kopiowanie strumienia wideo z pliku źródłowego do pliku docelowego metodą "bajt po bajcie", bez jakiegokolwiek przetwarzania. Ten tryb należy stosować w przypadku, gdy chcemy tylko manipulować dźwiękiem (tzn. dodać lub usunąć ścieżkę albo zmienić parametry aktualnego strumienia audio np. przez kompresję z WAV do MP3, zmianę szybkości próbkowania itp.). Jeśli edytujemy gotowy plik AVI, wycinając z niego pewne fragmenty lub wstawiając nowe, używajmy raczej trybu Direct stream copy. Uzyskamy dzięki niemu dużą prędkość tworzenia wynikowego filmu AVI oraz nic nie stracimy na jego jakości. bezpośrednie

    2. Fast recompress - szybka rekompresja. Szybka rekompresja polega na bezpośrednim kopiowaniu danych uzyskanych z wyjścia kodeka dekompresującego do wejścia kodeka kompresującego. W ten sposób VirtualDub może spróbować tak zgrać użyte kodeki, aby dane między nimi przepływały w formacie zapewniającym jak najszybszą rekompresję - zamiast wymieniać informacje w formacie RGB, stosuje się np. YUV (co eliminuje niepotrzebne konwersje RGB-YUV wewnątrz samych kodeków). Niestety, niektóre kodeki nie potrafią uzgodnić wspólnego formatu różnego od RGB, tym samym opcja szybkiej rekompresji nie zadziała.

    3. Normal recompress - standardowa rekompresja. Działa podobnie jak szybka rekompresja, tylko że dane zawsze są konwertowane do i z RGB, pozwalając na wybór praktycznie dowolnych kombinacji kodeków źródłowych (dekompresja) i docelowych (kompresja). Czasami ten tryb również może nie zadziałać. Zdarza się to, gdy np. kodek dekompresuje dane wideo tylko do formatu 16-bitowego RGB, a kodek kompresujący obsługuje wyłącznie format 24-bitowy RGB.

    4. Full processing mode - tryb pełnego przetwarzania strumienia. W tym trybie dekompresja i kompresja wykonują się bez żadnych ograniczeń narzucanych przez kodeki. Dane wideo są zawsze konwertowane do 32-bitowego RGB (i z powrotem) oraz przechodzą przez zestaw wybranych filtrów. Ten tryb zapewnia, że procedura rekompresji zakończy się powodzeniem. Jednocześnie jest on najwolniejszy oraz ma największe wymagania co do zajętości pamięci operacyjnej.



  • Copy source frame to clipboard - kopiuje klatkę z pliku wejściowego do schowka.

  • Copy output frame to clipboard - kopiuje klatkę z pliku wyjściowego do schowka.

  • Scan video stream for errors - skanuje strumień wideo w poszukiwaniu błędów. Rezultaty wyświetlane są na dole.

Audio

Audio Conversion - opcje zawarte w tym podmenu właściwie można pominąć, gdyż ustawień tych dokonać można przy wyborze kodeka, mając bezpośrednio podgląd jakią cześtotliwość próbkowania czy bitrate on akceptuje, a często nawet opis jakości jakiej możemy się spodziewać po wybranych ustawieniach (np. CD quality, radio... czy po prostu high, medium, low itd.). Natomiast obróbka dźwięku jak choćby redukcja trzasków, skłania raczej do ekstrakcji ścieżki i użyciaj jakiegoś edytora audio (do większości zastosowań wystarczy bardzo dobry Wave Editor, rozprowadzany razem z Nero Burning Rom).

Dla ścisłości opiszę jednak funkcje tu zawarte.


  • Sampling rate - zmienia próbkowanie dźwięku.

Należy zaznaczyć, że podnoszenie próbkowania materiału wyjściowego nie polepsza jakości dźwięku, a tylko zwiększa rozmiar pliku. W niektórych przypadkach może być jednak koniczne, gdyż np. wymaga tego kodek dźwięku.

No change - bez zmiany; w nawiasie podane jest aktualne próbkowanie pliku wejściowego (jeśli załadowany jest jakiś plik oczywiście).

Custom - umożliwia wybranie własnej częstotliwości próbkowania.

Integral conversion - opcja ta wymusza takie próbkowanie pliku wyjściowego, by było ono równe dokładnie połowie, ćwiartce itd. próbkowania pliku wejściowego. Na przykład, jeśli próbkowanie materiału wejściowego wynosi 22 047 Hz (co jest wartością niestandardową), to wybranie wartości 11 025 Hz w polu Sampling rate z opcją Integral conversion spowoduje konwersję do wartości 11 023,5 Hz (czyli dokładnie połowie próbkowania materiału wejściowego), zamiast do 11 025 Hz.

High quality - opcja ta uaktywnia filtr o nazwie triangular Tent (trójkątny namiot?) dla pliku wyjściowego. Kiedy podnosimy próbkowanie materiału wyjściowego w stosunku do wejściowego filtr ten redukuje powstające w tej operacji trzaski i inne zakłócenia. W przypadku obniżania próbkowania, filtr tłumi wysokie częstotliwości. W materiale obfitującym w wysokie częstotliwości np. wysoki kobiecy głos, mogą powstawać trzaski i inne zakłócenia brzmiące jak syk. Filtr ten odnajduje takie miejsce i usuwa wady. Lepszym rozwiązaniem jest ekstrakcja ścieżki i użycie zaawansowanego edytora audio do konwersji próbkowania lub użycie specjalistycznych filtrów.

  • Precision - opcja ta pozwala ustalać rozdzielczość próbkowania strumienia audio.

No change - pozostawia ją bez zmiany, przy czym w nawiasie podana jest aktualna wartość. Poniżej dostępny jest wybór między rozdzielczościami 8 i 16 bitów.
Jeżeli plik posiada 16-bitową rozdzielczość próbkowania i ma dobrą jakość oraz dobrze wyregulowaną głośność dźwięku, to możliwe jest zmniejszenie wartości do 8 bitów, z tylko nieznacznym pogorszeniem jakości, a dwukrotnym zmniejszeniem jego rozmiarów.

  • Channels - opcja ta pozwala wybrać typ dźwięku dla pliku wyjściowego.

No change - pozostawia go bez zmian; w nawiasie podany jest typ dźwięku w pliku wejściowym.

Pozostałe typy:



    • Mono - tworzony jest przez uśrednienie kanałów dźwięku stereo

    • Stereo - jeżeli tworzony jest z dźwięku mono, umieszcza ten sam dźwięk w obu kanałach. Zastosowanie tej opcji zwiększa dwukrotnie rozmiar strumienia.

    • Left - zostawia kanał lewy.

    • Right - zostawia kanał prawy.

Na samym dole znajduje się jeszcze okienko Bandwidth requried (wymagana szerokość pasma), daje ono podgląd na bitrate strumienia, ale nie w bitach tylko w bajtach (powinienem więc napisać byterate;-)).

Interleaving - opcje te dotyczą ustawień przeplotu strumieni audio i wideo w plikach. Na pewno ustawień tych wymaga kodowanie plików do formatu AVI, jak jednak wygląda ta sprawa w przypadku innych formatów, z DivX'em w szczególności niestety mi nie wiadomo. Zalecam więc pozostawieni ustawień domyślnych.



  • Enable audio/video interleaving - włącza/wyłącza przeplot (zalecane Enable).

  • Audio block placement - szczegółowe ustawienia dotyczące przeplotu.

  • Preload audio before video starts - opcja ta ustawia czas, w jakim zostanie uruchomiony strumień audio przed strumieniem wideo (zalecane 500 ms).

  • Interleave audio etery frames/ms - ustawia długość przeplotu strumieni audio i wideo w klatkach lub milisekundach (zalecane 1 frame).

Opcja Audio skew correction pozwala zsynchronizować strumienie audio i wideo, jeśli takiej synchronizacji nie posiadają.

Deley audio track by - wpisanie tam wartości dodatniej spowoduje opóźnienie (przesunięcie do przodu) strumienia audio o wskazaną wartość (w milisekundach) w stosunku do strumienia wideo. Należy to zrobić, gdy ścieżka dźwiękowa grana jest zbyt wcześnie.
Jeżeli podamy tam wartość ujemną (z minusem) to spowoduje to przyspieszenie (przesunięcie do tyłu) strumienia audio o wskazaną wartość. Należy to zrobić, gdy ścieżka dźwiękowa grana jest zbyt późno.

Compresion - to najważniejsza opcja dotycząca strumienia audio, tu dokonujemy ustawień jego kompresji.

Po wybraniu tej opcji ukazuje się nam okienko podzielone na dwie części. Po lewej stronie znajdują się kodeki dźwięku dostępne (zainstalowane) w systemie. Po wybraniu odpowiedniego, po prawej stronie ukazuje się lista dostępnych trybów pracy danego kodeka, według częstotliwości próbkowania, bitrate oraz typu (mono/stereo) dźwięku.

By wyświetlić wszystkie tryby pracy kodeków należy zaznaczyć opcję Show all formats.

Volume - pozwala zmniejszyć lub zwiększyć siłę głosu strumienia audio w przedziale od 11 do 985 procent mocy wejściowej. By odblokować suwak służący do zmiany, należy najpierw zaznaczyć opcję Adjust volume of audio channels.


No audio - powoduje, że plik wyjściowy (klip) nie będzie posiadał strumienia audio.

AVI audio - powoduje, że plik wyjściowy (klip) będzie posiadał ścieżkę dźwiękową z pliku wejściowego (tak jak obraz), oczywiście ze wszystkimi wprowadzonymi przez nas ustawieniami - rodzajem kompresji, próbkowaniem itd.

WAV audio - powoduje, że plik wyjściowy będzie posiadał za ścieżkę dźwiękową wskazany przez nas plik.

Może to być tylko plik w formacie wave (.wav), jeśli więc posiadamy go w mp3 czy innym formacie konieczne będzie najpierw jego przekonwertowanie. Oczywiście strumień audio w pliku wyjściowym będzie utworzony zgodnie ze wszystkimi ustawieniami, które wprowadziliśmy - kompresją, próbkowaniem itd.

 Poniżej przedstawione są tryby audio, w jakich może pracować program. Są one analogiczne, do tych występujących w ustawieniach strumienia wideo.




  1. Direct stream copy - powoduje dokładne przekopiowanie strumienia audio z pliku wejściowego do pliku wyjściowego. W trybie tym większość opcji konfiguracyjnych dźwięku pozostaje nieaktywna, dostępna jest tylko opcja Interleaving.

  2. Full processing mode - tryb ten daje pełne możliwości konfiguracji dźwięku, czyli przede wszystkim jego rekompresję.

OPTION

W tym menu znajduje się szereg opcji konfiguracyjnych samego programu, wpływających przede wszystkim na jego wydajność oraz wygląd interfejsu.



  • Performance - to podmenu zawiera ustawienia dotyczące wydajności.

Po jego wybraniu ukazuje się okienko zawierające trzy suwaki:

    • AVI Output buffering - kontroluje rozmiar pamięci, jaką VirtualDub wykorzysta na bufor wyjścia.

Bufor pozwala przechowywać strumień wideo w momencie, gdy dysk nie może go przyjąć; daje to możliwość kontynuowania procesu zgrywania/kodowania przez program. Na wykorzystanie tej funkcji decydujące znaczenie ma wydajność naszego podsystemu dyskowego (parametry techniczne dysku oraz stopień jego fragmentacji) oraz materiał, jaki edytujemy (jego rozdzielczość, stopień kompresji).

Jeżeli podczas zgrywania materiału wideo występują liczne utraty klatek, należy zwiększyć ten parametr. Powinno się jednak robić to stopniowo, aż uzyskamy zadowalający efekt. Nie należy jednak zbytnio zwiększać tego parametru, bo może grozić to spadkiem wydajności lub zachwianiem stabilności systemu. Generalnie, jeśli wszystko działa dobre, to najlepiej zostawić wielkość bufora na wartości 2 MB.



    • Wave input buffering - opcja ta pełni bardzo podobną funkcję do poprzedniej, dotyczy jednak strumienia wejścia dźwięku.

Ma niewielkie znaczenie dla wydajności; najczęściej zupełnie wystarczy 64 KB.

    • Stream data pipelining - opcja ta kontroluje liczbę buforów audio i wideo, stanowiąc uzupełnienie opcji AVI output buffering.

Również ta opcja ma niewielkie znaczenie dla wydajności i szybkości kodowania. Nie należy zwiększać wartości tej opcji, bo na przykład ustawienie liczy buforów na 256 przy materiale o rozdzielczości 640x480 z 24 bitowym nieskompresowanym kolorem RGB spowoduje zajęcie 235 MB pamięci! Opcja ta może przyspieszyć nieco działanie programu, gdy ten pracuje w trybie Direct stream copy i materiał wejściowy poddany jest wysokiej kompresji, ale wystarczy tu już ustawienie domyślne i takie proponuję pozostawić.

  • Dynamic Compilation Options - zawiera ustawienia dotyczące dynamicznej kompilacji.

Po jej wybraniu ukazuje się okienko z dwoma ustawieniami:

    • Enable dynamic compilation - włącza/wyłącza dynamiczną kompilację dla filtrów wykorzystujących takę funkcję. Włączenie może spowodować pewien wzrost szybkości, dlatego zalecam takie właśnie ustawienie.

    • Display generated code - włącza/wyłącza wyświetlanie okna zawierającego kod programu filtra. Okienko to wyświetla się tuż przed przystąpieniem do kodowania lub podglądu materiału. Dla większości użytkowników jest zupełnie zbędna. Zalecam wyłączenie.



  • Preferences - to podmenu daje dostęp do niektórych ustawień programu.

Po jego wybraniu ukazuje się okienko z pięcioma zakładkami:

    1. Main

      • Quick preview defaults - ramka ta zawiera ustawinia dotyczące funkcji Preview.

      • Output color depth - pozwala zdefiniować, jaką głębię kolorów będzie miał obraz w oknie podglądu.

Dostępne są następujące tryby:

16-bit (Fastest) - daje najgorszą jakość obrazu (16 bitową), ale wymaga od karty graficznej najmniejszej mocy.
Use output settings - ustawia rzeczywistą głębię kolorów (taką, którą posiadać będzie plik wyjściowy).
Match display depth - dopasowuje głębię, do aktualnych ustawień karty graficznej; pozwala uzyskać najlepszą jakość.
16-bit (HiColor)/24-bit (TrueColor) - odpowiednio 16 i 24 bitów na kolor.

Jeżeli dysponujemy kartą graficzną (akceleratorem) drugiej generacji (Riva TNT, Rage 128 itd.) lub lepszym, różnice w szybkości między najszybszym (16-bit), a najwolniejszym trybem (Match... 32-bit) będą niezauważalne (równe setnym procenta). Jedynie w przypadku bardzo, bardzo starych kart mogą być jakieś różnice (takie karty będą posiłkowały się mocą CPU).

Jeżeli chcemy by obraz w okienku Preview był wyświetlany z głębią kolorów 24 i więcej bitów, i chcemy widzieć różnicę w stosunku do 16 bitów, to należy również zmienić głębię kolorów ekranu (w właściwościach ekranu, w panelu sterowania) na 24 lub 32 bity.


      • Process priority - opcja ta decyduje o tym ile czasu procesora otrzymuje VirtualDub, gdy na komputerze działają równocześnie inne programy. Dzięki temu nie jest on "zapchany" tylko kodowaniem.

Opcja ta przyda się szczególnie na systemach ze "słabą" wielozadaniowością - Windows 9x/Me, te oparte na jądrze NT same już całkiem dobrze radzą sobie z pracą z wieloma aplikacjami (i funkcja ta jest wówczas właściwie zbędna).
Szczególnie przydatne może się to okazać, gdy przeprowadzimy czasochłonne kodowanie i chcemy by przebiegało on "w tle", wówczas możemy dosyć wygodnie i bezproblemowo pracować na innych aplikacjach (oczywiście nie przesadzając z ich wymaganiami!). Należy jednak zaznaczyć, że czas procesora przydzielony pozostałym aplikacją, lecz przez nie niewykorzystywany jest automatycznie kierowany na potrzeby VirtualDub'u! Jeśli więc nie ustawimy przydział mocy procesora na najniższy, a w systemie nie będą działały inne programy to i tak będzie on działał "pełną parą".

Oto poszczególne stopnie podziału:



Default (odpowiada poziomowi Higher pod Windows 9x i Normal pod Windows NT)
Idle - przydział najniższy
Lowest
Even lower
Lower
Normal
Higher
Even higher
Highest - przydział najwyższy

      • Dub defaults - w ramce tej dostępna jest tylko jedna opcja Process priority, która jest analogiczna do Proces priority z ramki Preview.

Poszczególne stopnie podziału są również identyczne, z jednym wyjątkiem - Default odpowiada poziomowi Normal.

      • File options - w ramce tej znajdują się dodatkowe opcje dotyczące plików (na razie jest tylko jedna).

Automatically add extension to filenames when saving - dodaje automatycznie rozszerzenie do pliku (.avi).

    1. Display

W zakładce tej dostępna jest tylko jedna opcja (objęta w ramkę Display options).
Enable 16-bit dithering - usuwa artefakty występujące podczas odtwarzania wideo z kolorem 16 RGB. Opcja ta dotyczy tylko trybu Preview.

    1. Scene

W zakładce tej znajdują się ustawienia dotyczące przycisków poruszania się po scenach. Opcje tu zawarte pozwalają dość dokładnie zdefiniować ich czułość i działanie.

W ramce Scene change thresholds znajdują się dwa suwaki:



Interframe (cut) - kontrlouje jak duża różnica między kolejnymi klatkami stanowi o zmianie scen.
Obniżając tą wartość program stanie się bardziej czuły. Zbyt mała wartość może doprowadzić jednak do tego, że program będzie definiował kolejne sceny zbyt często i bez wyraźnej przyczyny. Z kolei wartość zbyt duża spowoduje, że część miejsc, gdzie następuje rzeczywista zmiana scen zostanie zignorowana.
Definiowanie scen odbywa się tylko na podstawie analizy luminancji (jasności) kolejnych klatek, pomijana jest natomiast chrominancja (odcień i nasycenie barw).

Interframe (fade) - opcja ta dotyczy nieco innego sposobu odnajdywania granic między scenami.
Metoda ta opiera się na odnajdywaniu miejsc gdzie klatki stopniowi stają się ciemniejsze, aż do zupełnie czarnego ekranu (przejście takie jest dosyć często stosowane w wielu filmach). Zwiększanie tej wartości powoduje, że program staje się wrażliwy na detale obrazu, przydaje się to szczególnie przy pracy z materiałem pełnym "zgiłku" (np. ujęcia w dyskotece, sztormu czy burzy).

    1. CPU - zakładka ta zawiera opcje użycia różnych optymalizacji dla procesorów, chodzi tu głównie o wewnętrzne listy rozkazów. Znajdują się tam dwie ramki:

      • Use default optimizations for current CPU FPU routines enabled for 486 and higher systems. MMX, SSE, 3DNow!, and Integer SSE enabled if available - włącza optymalizację dla danego zestawu instrukcji, jeśli wykryje, że procesor go obsługuje.

Niestety nie wiadomo mi, w jaki sposób program dokonuje tego - czy posługuje się wewnętrzną listą przygotowaną przez autorów, czy też przy uruchomieniu przeprowadza odpowiednie sprawdzenie (test), a może robi to jeszcze w inny sposób. Dlatego opcja ta niesie ryzyko, że nie wszystkie zestawy instrukcji dostępne w procesorze mogą zostać użyte. Szczególnie może taka sytuacja zaistnieć w przypadku najnowszych procesorów (oczywiście ze znanymi już wcześniej listami rozkazów).

      • Force optimizations - opcja ta wymusza wykorzystywanie przez program wybranych list rozkazów.

Sama optymalizacja w VirtualDub'ie jest lekko kontrowersyjna... Poniżej przedstawiam krótki opis problemu.

Jeśli chodzi o optymalizację dla różnych list rozkazów, to sprawa wygląda dosyć dziwnie. Program z pewnością posiada optymalizację dla MMX, co potwierdziły przeprowadzone przeze mnie testy. Jak dobra jest to jednak optymalizacja, trudno niestety odpowiedzieć, choć twórcy programu zalecają używania jej zawsze (o ile to tylko możliwe), gdyż w niektórych (szczególnych) operacjach może to skrócić cały proces o 1/3 czy nawet połowę.

Faktycznie w przypadku stosowania filtrów zysk z MMX jest większy. Zakładać można, że procentowy zysk jest większy w przypadku słabszych procesorów - Pentium MMX, czy K6-2/III, jednak ich udział w rynku jest już dziś bardzo mały, a ich wydajność nadaje się tylko do kodowania w najprostszych formatach.

Twórcy programu deklarują również stosowanie optymalizacji dla instrukcji Integer SSE (MMX-2) wprowadzonych po raz pierwszy w procesorach Pentium II. Tu jednak zysk wydaje się już całkowicie znikomy. Być może wynika to z samej listy rozkazów niemającej większego zastosowania w kodowaniu audio/wideo, bo ukierunkowanej na inną grupę aplikacji, a być może powodem jest po prostu ich słaba implementacja przez twórców...

Dla reszty instrukcji (SSE, SSE2, 3DNow!, 3DNow!2) program nie posiada niestety optymalizacji, pomimo że opcje interfejsu wskazują na to. Według autorów jedynie kilka pojedynczych instrukcji z grupy tych czterech zestawów może być zaimplementowana, co praktycznie nie daje jakiegokolwiek wzrostu wydajności. Powodem takiego potraktowania reszty instrukcji przez autorów VirtualDub'a, jest według ich samych, ich niewielkie przydatność do tej klasy zastosowań. W przypadku instrukcji 3DNow! i 3DNow! 2 w grę mogła wchodzić również trudność wprowadzania tych zestawów, powodowana m.in. brakiem dobrych narzędzi oferowanych przez AMD.
Jedynie SSE2 stwarza pewne nadzieje na powstanie optymalizacji pod ten właśnie zestaw instrukcji, co najprawdopodobniej mogłoby zaowocować znaczącym zyskiem. Inlel bardzo promuje ten zestaw instrukcji wśród producentów oprogramowania i wygląda na to, że pokłada w nim duże nadzieje... ale jaka jest ich rzeczywista wydajność o tym przekonamy się za pewne już nie długo.

Poza samym VirtualDub'em odpowiednie implementacje posiadają również filtry, zarówno te wbudowane w program, jak i te zewnętrzne. Wśród tych pierwszych około połowa według zapewnień ich twórców posiada optymalizację dla MMX i wydaje się, że przynosi ona rzeczywisty wzrost wydajności.

Niektóre z kodeków audio i wideo również posiadają implementację różnych list rozkazów. Kompresor wideo Indeo, będący produktem Intel'a, zapewnia optymalizację dla procesorów i ich instrukcji pochodzących oczywiście z tej właśnie firmy. Ukazywanie się kolejnych wersji tego kodeka zbiega się najczęściej z wprowadzeniem na rynek nowego procesora, co pozwala przypuszczać, że dostaje on optymalizację właśnie dla nowego modelu.

Twórcy innych niezależnych kodeków również deklarują odpowiednie optymalizacje w swoich produktach. Na przykład najnowsza, piąta wersja kodeku DivX nastawiona jest przede wszystkim na architekturę procesorów Athlon i Athlon XP.



    1. AVI - zakładka ta zawiera dwa (pomocnicze) ustawienia.

      • Restrict legancy AVI support to 1 gigabyte (instead of 2GB) - opcja ta ogranicza maksymalny rozmiar plików AVI (nie dotyczy plików MPEG4 i DivX, chociaż mają rozszerzenie .avi) do 1 GB zamiast 2GB.

Opcja ta nie ma już dziś właściwie żadnej użyteczności. Ograniczenie rozmiaru plików AVI 2.0 miało zapewnić ich zgodność ze starymi odtwarzaczami wideo (wszystkie współczesne programy mają dawano rozwiązany ten problem).

      • Do not correct MPEG Layer III audio streams - opcja ta wyłącza automatyczną korekcję przez program złych wartości bitrate, co doprowadza do desynchronizacji obrazu i dźwięku.

Przyczyną tego są pewne błędy w kodeku Fraunhofer'a, który niekiedy niepoprawnie oblicza wartości czasu i położenia bajtów. Na szczęście VirtualDub potrafi to korygować. Opcję tą można włączyć jedynie, gdy zamierzamy dokonań synchronizacji (oczywiście, gdy jest potrzeba;-) ręcznie przy użyciu odpowiednich programów.
Ostrzeżenie dla posiadaczy wolniejszego (mniej niż 400 MHz) sprzętu. Niktóre filmy w DivX (szczególnie te kodowane starszymi wersjami kodeka) mogą sprawiać wrażenie braku synchronizacji obrazu i dźwięku. Przed jakimikolwiek próbami naprawy radzę się upewnić na szybszym komputerze, czy rzeczywiście jest to potrzebne...



  • Display input video - włącza/wyłącza okienko z materiałem wejściowym.

  • Display output video - włącza/wyłącza okienko z materiałem wyjściowym.

  • Display decompressed output - włącza/wyłącza wyświetalanie obrazu poddanego kompresji w okienku z materiałem wyjściowym.

Po włączeniu tej opcji widoczne będą zmiany w jakości obrazu jakie wprowadza kompresja (czyli głównie jej pogorszenie). Opcja ta nie ma wpływu na wyświetlanie działania filtrów, czy przycinania obrazu. Nie działa w trybie Preview, a tylko podczas rzeczywistego procesu kompresji.

  • Show status window - włącza/wyłącza okno stanu.

  • Swap input/output panes - zamienia okna z meteriałem wejściowym i wyjściowym.



  • Synchronous blit

Jeśli jesteś posiadaczem dwuprocesorowego sytemu, lub używasz systemu opartego na jądrze NT (lub jakiegoś UNIX'a), mogą wówczas wystąpić różne problemy z dźwiękiem w programie - przede wszystkim może się "zamrażać", należy wtedy włączyć tą opcję.

Błąd ten został wyeliminowany w wersji 1.4.12 (14303) programu.



  • Vertical display - powduje wyświetlenie okienek w pozycji pionowej, zamist poziomej.

  • Histograms - włącza/wyłącza wyświetlanie wyksresów.

Pojawiają się one pod okienkami podglądu materiału. Niestety nie wiadomo mi, co przedstawiają (zresztą ich czytelność nie jest zbyt duża). Kliknięcie na którymś powoduje zmianę jego koloru.

  • Sync to audio - funkcja ta spina wyświetlanie strumienia wideo w ciągłości ze strumieniem audio, kosztem gubienia klatek.

Opcja ta działa tylko w trybie podglądu (Preview).

  • Drop frames when behind - opcja ta zezwal VirtualDub'owi pominąć klatki, jeśli program nie nadąrza z ich wyświetlaniem w czasie rzeczywistym.

Działa również tylko w trybie podglądu.

Przyspiesza to wyświetlanie strumienia wideo przez kartę graficzną, jednak zysk ten jest praktycznie niezauważalny. Jeżeli w programie występują jakieś problemy z wyświetlaniem obrazu (przkłamania, zmiana kolorów itd.) należy wyłączyć tą opcję lub spróbować zainstalować najnowsze sterowniki do karty graficznej. Używanie tej opcji nie ma praktycznie zadnego znaczenia.


©absta.pl 2016
wyślij wiadomość

    Strona główna