Dinamikus formázási módosítások
[A laphoz társított funkció, DirectShowegy régi funkció. MediaPlayer, IMFMediaEngineés Audio/Video Capture a Media Foundation. Ezek a funkciók Windows 10-hez és Windows 11-hez lettek optimalizálva. A Microsoft határozottan javasolja, hogy az új kód MediaPlayer, IMFMediaEngine és Audio/Video Capture eszközt használja a Media FoundationDirectShowhelyett, ha lehetséges. A Microsoft javasolja, hogy az örökölt API-kat használó meglévő kódot át kell írni az új API-k használatára, ha lehetséges.]
Amikor két szűrő csatlakozik, megállapodnak egy médiatípusban, amely leírja a felsőbb rétegbeli szűrő által szolgáltatandó adatok formátumát. A legtöbb esetben az adathordozó típusa a kapcsolat időtartamára van rögzítve. A DirectShow azonban korlátozott támogatást nyújt a szűrők számára a médiatípus módosításához. Amikor egy szűrő átállítja a médiatípusokat, dinamikus formátumváltozásnak nevezzük. Ha DirectShow-szűrőt ír, tisztában kell lennie a dinamikus formátumváltozások mechanizmusával. Még ha a szűrő nem is támogatja az ilyen módosításokat, helyesen kell válaszolnia, ha egy másik szűrő új formátumot kér.
A DirectShow számos különböző mechanizmust határoz meg a dinamikus formátumváltozásokhoz a szűrőgráf állapotától és a szükséges változás típusától függően.
- Ha a gráf le van állítva, a csapok újracsatlakoztathatják és újratárgyahatják a médiatípust. További információ: Tűk újracsatlakoztatása.
- Egyes szűrők akkor is újra csatlakoztathatják a tűket, ha a gráf aktív (fut vagy szüneteltetve van). Erről a mechanizmusról további információt Dinamikus újracsatlakozáscímű témakörben talál.
Ellenkező esetben, ha a gráf aktív, de a szóban forgó szűrők nem támogatják a dinamikus tűk újracsatlakoztatását, a formátum módosításának három lehetséges mechanizmusa van:
- QueryAccept (Downstream) akkor használatos, ha egy kimeneti pin formátumváltást javasol az alsóbb rétegbeli társra, de csak akkor, ha az új formátum nem igényel nagyobb puffert.
- QueryAccept (upstream) akkor használatos, ha egy bemeneti pin formátummódosítást javasol a felsőbb rétegbeli társra. Az új formátum lehet azonos méretű, vagy nagyobb is lehet.
- ReceiveConnection akkor használatos, ha egy kimeneti pin formátummódosítást javasol az alsóbb rétegbeli társra, és az új formátum nagyobb puffert igényel.
Kapcsolódó témakörök
-
A videoképkészítő formátumváltozásainak kezelése