Category: DirectShow

  • Szablony filtrów z okienkiem właściwości

    W archiwum DirectShow Filter Template – PropertyPage znajduje sie 5 szablonów filtrów z szablonem okienka właściwości:

    • Transform – Filtr przeznaczony do realizacji projektów z jednym wejściem i jednym wyjściem. Przykładem takiego projektu jest filtr konwersji RGB do YUV
    • DualInput – Filtr przeznaczony do realizacji projektów z dwoma wejściamy i jednym wyjściem. Przykładem takiego projektu jest filtr składający dwa obrazu do obrazu typu SideBySide.
    • DualOutput – Filtr przeznaczony do realizacji projektów z jednym wejściem i dwoma wyjściami. Przykładem takiego projektu jest filtr wyszukujący i śledzący twarz
    • Source – Filtr przeznaczony do realizacji projektów filtów źródłowych z jednym wyjściem. Przykładem takiego projektu jest filtr odczytujący pliki BMP z dysku
    • Sink – Filtr przeznaczony do realizacji projektów filtów docelowych z jednym wejściem. Przykładem takiego projektu jest filtr zapisujący pliki BMP z dysku

    Po rozpakowaniu archiwum w pierwszej kolejności nalezy przekompilować klasy bazowe znajdujące się w katalogu BaseClasses. W tym celu otwieramy plik projektu make.visual/baseclasses_vc2005.sln w środowisku Visual Studio 2005 lub odpowiednio nowszy projekt w nowszym środowisku. Z menu build wybieramy opcje Rebuild Solution. Nastepnie zamykamy projekt.

    Po przeanalizowaniu projektu który Państwo realizują należy wybrać odpowiedni szablon filtru.

    W zależności od wybranego typu projektu należy zmodyfikować następującą funkcję:

    • Transform – Transform
    • DualInput – ProcessSamples
    • DualOutput – Receive
    • Source – DeliverSample
    • Sink – Receive
  • Sekwencja testowa

    Podczas opracowywanie filtru DirectShow zdarzają sie różne problemy z odtwarzaniem sekwencji które nie mają przyczyny w opracowywanym kodzie filtru. W takich przypadkach zalecam wykorzystanie załaczonej prostej sekwencji testowej.

    Foreman – QCIF YUV 4:2:0 foreman_qcif.rar

  • Zmiana formatu pinu wyjściowego

    Podczas tworzenia filtru nieraz istnieje potrzeba zmiany formatu pinu wyjściowego. Zmianę formatu pinu wyjściowego rozważymy na przykładzie filtru Transform. Chcemy zmienić obraz wyjściowy w taki sposób aby był 2 razy wyższy.
    (więcej…)

  • Szablony filtrów

    W archiwum DirectShowLab.rar znajduje sie 5 szablonów filtrów:

    • Transform – Filtr przeznaczony do realizacji projektów z jednym wejściem i jednym wyjściem. Przykładem takiego projektu jest filtr konwersji RGB do YUV
    • DualInput – Filtr przeznaczony do realizacji projektów z dwoma wejściamy i jednym wyjściem. Przykładem takiego projektu jest filtr składający dwa obrazu do obrazu typu SideBySide.
    • DualOutput – Filtr przeznaczony do realizacji projektów z jednym wejściem i dwoma wyjściami. Przykładem takiego projektu jest filtr wyszukujący i śledzący twarz
    • Source – Filtr przeznaczony do realizacji projektów filtów źródłowych z jednym wyjściem. Przykładem takiego projektu jest filtr odczytujący pliki BMP z dysku
    • Sink – Filtr przeznaczony do realizacji projektów filtów docelowych z jednym wejściem. Przykładem takiego projektu jest filtr zapisujący pliki BMP z dysku

    Po rozpakowaniu archiwum w pierwszej kolejności nalezy przekompilować klasy bazowe znajdujące się w katalogu BaseClasses. W tym celu otwieramy plik projektu make.visual/baseclasses_vc2005.sln w środowisku Visual Studio 2005 lub odpowiednio nowszy projekt w nowszym środowisku. Z menu build wybieramy opcje Rebuild Solution. Nastepnie zamykamy projekt.

    Po przeanalizowaniu projektu który Państwo realizują należy wybrać odpowiedni szablon filtru.

    W zależności od wybranego typu projektu należy zmodyfikować następującą funkcję:

    • Transform – Transform
    • DualInput – ProcessSamples
    • DualOutput – Receive
    • Source – DeliverSample
    • Sink – Receive