130 likes | 234 Views
Videó feldolgozás Microsoft Windows alatt. Oroszi Balázs. Miről lesz szó?. DirectShow Avisynth FFDShow Ezek kombinálása. DirectShow. Korábban ActiveMovie Részben a Video for Windows (VFW) rendszer lecserélésére 1998-tól a DirectX zászlaja alatt Alap része a Windows operációs rendszernek
E N D
Videó feldolgozás Microsoft Windows alatt Oroszi Balázs
Miről lesz szó? • DirectShow • Avisynth • FFDShow • Ezek kombinálása
DirectShow • Korábban ActiveMovie • Részben a Video for Windows (VFW) rendszer lecserélésére • 1998-tól a DirectX zászlaja alatt • Alap része a Windows operációs rendszernek • VFW - codec • DirectShow - filter
DirectShow filter graph • Filter graph koncepció - minden valamilyen szűrő 1 vagy több bemenettel ill. kimenettel. • Összeköttetés • Lejátszás: a gráf „futtatása” • Egyszerű példa:
Gráfok összeállítása • GraphEdit program - része a DirectShow SDK-nak • Gráf építés • Automatikusan URL-ből (A legtöbb media player (Windows Media Player, BSPlayer, Media Player Classic, stb.) mind ezt csinálja) • Kézzel a graphedit programmal
A szűrők • Kodek telepítése: valójában DShow filterek bejegyzése (kodek pakkok) • Minden szűrőnek van merit-je („érdeme”) • Problémák: ha valamely szűrő telepítéskor kiszed vagy lecserél egy másik szűrőt, és eltávolításkor nem teszi vissza
Felhasználás • Lejátszás • Felvétel • Tömörítés • Konvertálás
Avisynth • Avisynth is a scripting language and a collection of filters for simple (and not so simple!) non-linear video editing tasks. It frameserves video to applications. • Scriptek: .avs
Avisynth - egyszerű script AviSource("C:\video.avi") Trim(200,400) Crop(16,16,-16,-16) BicubicResize(640,480) • Avisynth telepítése után a fenti script (.avs) megnyitható bármely VFW-t támogató lejátszóban • Úgy tesz, mintha .avi fájl lenne • Nincs átmeneti videó fájl
Avisynth függvények • Beépített vagy plugin • Plugin (Windows DLL) betöltése függvényeket ad a nyelvhez. • Plugin írása: alapvetően C++ nyelven Microsoft fordítóval • C interfész (fordító-független) • Linux támogatás jövőben (3.0)
FFDShow • Univerzális DShow filter és VFW kodek a nyílt forrású libavcodec és egyéb könyvtárakon alapozva • Sok mindent tud… • Egyebek mellett Avisynth scriptet futtatni az éppen rajta „áthaladó” videón. Persze vannak korlátai: • Többnyire csak térbeli (spatial) feldolgozást enged
Az eddigiek együttes használata • GraphEdit programmal: • valamely video capture forrás (pl. videó kártya VideoIn) megnyitása • beirányítás ffdshow raw video filter-be • megjelenítés vagy fájlba írás (.avi)