DirectShow - DirectShow

DirectShow
Logo of the DirectX Media SDK – the first time DirectShow was distributed under its current name.[citation needed]
DirectX Media SDK logotipi - DirectShow birinchi marta joriy nomi bilan tarqatildi.[iqtibos kerak ]
Boshqa ismlarDShow
Tuzuvchi (lar)Microsoft
Operatsion tizimMicrosoft Windows
O'tmishdoshActiveMovie
TuriMultimedia ramkasi va API
LitsenziyaMulkiy tijorat dasturlari
Veb-saythujjatlar.microsoft.com/ uz-biz/ Windows/ win32/ directshow/ directshow

DirectShow (ba'zan qisqartiriladi DS yoki DShow), kod nomi Kvarts, a multimedia ramkasi va API tomonidan ishlab chiqarilgan Microsoft uchun dasturiy ta'minot ishlab chiquvchilari media fayllari yoki oqimlari bilan turli xil operatsiyalarni bajarish. Bu Microsoft-ning oldingi versiyasini almashtirishdir Windows uchun video texnologiya.[1] Asosida Microsoft Windows Komponent ob'ekti modeli (MAQOMOTA) ramkasi, DirectShow turli xil ommaviy axborot vositalari uchun umumiy interfeysni taqdim etadi dasturlash tillari va kengaytiriladigan, filtr - foydalanuvchi yoki ishlab chiquvchining iltimosiga binoan media-fayllarni talabga binoan ko'rsatishi yoki yozishi mumkin bo'lgan asos. DirectShow ishlab chiqish vositalari va hujjatlari dastlab DirectX SDK.[2] Hozirda ular bir qismi sifatida tarqatilmoqda Windows SDK (ilgari Platforma SDK nomi bilan tanilgan).[3]

Microsoft DirectShow dasturini asta-sekin to'liq almashtirishni rejalashtirmoqda Media Foundation kelajakdagi Windows versiyalarida. Microsoft tomonidan keltirilgan sabablardan biri "tarkibni himoya qilish tizimlari uchun ancha ishonchli qo'llab-quvvatlash" dir.[4] (qarang raqamli huquqlarni boshqarish ). Microsoft-dan Bekki Vayss ham "Media Foundation bilan ishlash sizga DirectShow bilan ishlashga qaraganda bir oz pastroq darajada ishlashingizni talab qilishini sezasiz. Va Media Foundation-da (hali) bo'lmagan DirectShow xususiyatlari hali ham bor" .[5] Media Foundation maqolasida tasvirlanganidek, Windows Vista va Windows 7 dasturlar Media Foundation-dan DirectShow o'rniga Media-ga tegishli bir nechta vazifalar uchun foydalanadi.

Tarix

DirectShow to'g'ridan-to'g'ri salafi, ActiveMovie (Kvars kodli nomi), dastlab ta'minlash uchun ustavga olingan MPEG-1 Windows uchun faylni ijro etishni qo'llab-quvvatlash.[iqtibos kerak ] Bu, shuningdek, kelajakdagi ommaviy axborot vositalarini qayta ishlash ramkalarini almashtirish uchun mo'ljallangan edi Windows uchun video, hech qachon ishlov berish uchun mo'ljallanmagan kodeklar siqishni jarayonida video kadrlarni boshqacha tartibda joylashtiradigan va Media boshqaruv interfeysi, hech qachon 32-bitli muhitga to'liq ko'chirilmagan va COM-dan foydalanmagan.[1]

Kvarts jamoasi Clockwork deb nomlangan mavjud loyihani boshladi.[iqtibos kerak ] Clockwork modulli ommaviy axborot vositalarini qayta ishlash doirasi bo'lib, unda yarim mustaqil komponentlar raqamli media oqimlarini qayta ishlash uchun birgalikda ish olib borgan va bundan oldin bir nechta loyihalarda, jumladan Microsoft Interactive Television (MITV) loyihasida va Tiger nomli boshqa loyihada ishlatilgan.[6]

ActiveMovie 1996 yil mart oyida e'lon qilingan va 1996 yil may oyida chiqarilgan va beta-versiyasi bilan ta'minlangan Internet Explorer 3.0.[7][8] 1997 yil mart oyida Microsoft ActiveMovie-ning bir qismi bo'lishini e'lon qildi DirectX 5 ta texnologiya to'plami va iyul oyiga kelib, uni DirectShow deb atashni boshladi, bu Microsoft-ning umumiy nomlash sxemasi bo'yicha to'g'ridan-to'g'ri apparat bilan ishlaydigan texnologiyalarni birlashtirishga qaratilgan harakatlarini aks ettirdi.[9][10][11] DirectShow barcha Windows operatsion tizimlarining standart komponentiga aylandi Windows 98;[12] ammo u mavjud Windows 95 mavjud bo'lgan so'nggi DirectX-ni qayta taqsimlanadigan o'rnatish orqali.[13] DirectX 8.0 versiyasida DirectShow DirectX SDK-ning asosiy tarqatish qismiga aylandi va boshqa DirectX API-lar bilan bir qatorda joylashtirildi.[14]

2004 yil oktyabr oyida DirectShow asosiy DirectX tarqatilishidan olib tashlandi va DirectX Extras yuklab olish joyiga ko'chirildi.[iqtibos kerak ] 2005 yil aprel oyida DirectShow butunlay DirectX-dan o'chirildi va SDK-ning Windows Server 2003 SP1 versiyasidan boshlab Windows SDK-ga ko'chirildi.[3] Biroq, DirectX SDK ba'zi DirectShow namunalarini yaratishni talab qildi.[15]

2007 yil noyabr oyidan boshlab DirectShow API-lar Windows SDK. Bunga bir nechta yangi yaxshilanishlar, kodek va filtr yangilanishlari kiradi Kengaytirilgan video rendereri (EVR) va DXVA 2.0 (DirectX videoning tezlashishi ).[16]

Arxitektura

DirectShow murakkab multimedia vazifasini (masalan, videoni ijro etish) quyidagicha ma'lum bo'lgan asosiy ishlov berish bosqichlari ketma-ketligiga ajratadi filtrlar.[17][18] Ma'lumotlarni qayta ishlashning bir bosqichini ifodalovchi har bir filtr kirish va / yoki chiqishga ega pinalar filtrni boshqa filtrlarga ulash uchun ishlatilishi mumkin. Ushbu ulanish mexanizmining umumiy xususiyati turli xil murakkab funktsiyalarni amalga oshirish uchun filtrlarni har xil usulda ulashga imkon beradi.[19] Muayyan murakkab vazifani amalga oshirish uchun ishlab chiquvchi avval a ni yaratishi kerak filtr grafigi kerakli filtrlarning nusxalarini yaratish va keyin filtrlarni bir-biriga ulash orqali.[20]

Filtrlarning uchta asosiy turi mavjud:

Manba filtrlari
Bu ma'lumotlar manba oqimlarini ta'minlaydi. Masalan, har qanday media-fayldan xom baytlarni o'qish.
Transform filtrlari
Ushbu ma'lumotlar boshqa filtr natijalaridan olingan ma'lumotlarni o'zgartiradi. Masalan, videoning ustiga matn qo'shish yoki MPEG ramkasini siqib chiqarish kabi konvertatsiya qilish.
Renderer filtrlari
Ular ma'lumot beradi. Masalan, ovoz kartasiga audio yuborish, ekranda videoni chizish yoki faylga ma'lumotlarni yozish.

Ko'rsatish jarayonida filtr grafigi Windows ro'yxatga olish kitobi ro'yxatdan o'tgan filtrlar uchun va taqdim etilgan joylarga qarab filtrlar grafigini tuzadi. Shundan so'ng, u filtrlarni bir-biriga bog'laydi va ishlab chiquvchining iltimosiga binoan yaratilgan grafikani bajaradi (ya'ni o'ynaydi, pauza qiladi va hokazo).[iqtibos kerak ] DirectShow filtri grafikalari videoni ijro etishda (filtrlar fayllarni ajratish, video va audio demultiplekslash, dekompressiya va ko'rsatish kabi funktsiyalarni amalga oshiradigan), shuningdek video va audio yozuvlar, tahrirlash, kodlash, transkodlash yoki tarmoqni uzatish uchun keng qo'llaniladi. DVD-navigatsiya kabi interaktiv vazifalar DirectShow tomonidan ham boshqarilishi mumkin.[iqtibos kerak ]

Ning filtri grafigi mp3 DirectShow namunasi tomonidan taqdim etilgan fayl GraphEdit, a bilan ariza GUI DirectShow uchun filtr grafikalarini vizual ravishda yaratish va sinash uchun foydalanilgan.[21] Ushbu rasmda qutilar filtrlarni, filtrlarning yon tomonlarida paydo bo'lgan kulrang nuqta esa pinlarni aks ettiradi.

Yuqoridagi misolda chapdan o'ngga grafada a mavjud manba filtri MP3 faylini o'qish uchun, oqim audio ajratish va dekodlash uchun ajratuvchi va dekoder filtrlari va a render filtri xom audio namunalarini ijro etish. Har bir filtrda ushbu filtrni boshqa filtrlarga ulash uchun ishlatilishi mumkin bo'lgan bitta yoki bir nechta pin mavjud. Har qanday pin ma'lumotlar filtrdan boshqasiga o'tishi uchun chiqish yoki kirish manbai sifatida ishlaydi. Filtrga qarab, ma'lumotlar filtrlar o'rtasida ma'lumotlarni uzatish uchun kirish pinidan "tortib olinadi" yoki chiqish piniga "suriladi". Har bir pin faqat bitta pin bilan ulanishi mumkin va ular qanday ma'lumotlarni yuborayotganliklari to'g'risida kelishib olishlari kerak.[iqtibos kerak ]

Aksariyat filtrlar DirectShow Base Classes deb nomlangan DirectShow SDK-da taqdim etilgan C ++ sinflari to'plami yordamida quriladi.[iqtibos kerak ] Ular filtrni yaratish, ro'yxatdan o'tkazish va ulanish mantig'ining katta qismini boshqaradi.[22] Filtrlar grafigi avtomatik ravishda filtrlardan foydalanishi uchun ularni alohida DirectShow ro'yxatga olish kitobida ro'yxatdan o'tkazish va COM-da ro'yxatdan o'tkazish kerak. Ushbu ro'yxatdan o'tishni DirectShow Base Classes boshqarishi mumkin. Ammo, agar dastur filtrlarni qo'lda qo'shsa, ularni umuman ro'yxatdan o'tkazish shart emas.[iqtibos kerak ] Afsuski, allaqachon ishlayotgan grafikani o'zgartirish qiyin. Odatda grafikani to'xtatish va yangi grafikani noldan yaratish osonroq. DirectShow 8.0 dan boshlab, grafikani dinamik ravishda yaratish, dinamik qayta ulanish va filtr zanjirlari grafikani ishlash paytida o'zgartirishga yordam berdi.[23] Biroq, ko'plab filtr sotuvchilari ushbu funktsiyani e'tiborsiz qoldiradilar, grafik ishlov berishni boshlagandan so'ng grafika modifikatsiyasini muammoli qiladi.[iqtibos kerak ]

DirectShow ma'lum bir media turini ko'rsatish uchun grafikani dinamik ravishda yaratishga qodir bo'lsa-da, ba'zi hollarda ishlab chiquvchilar ushbu funktsiyaga tayanishi qiyin va natijada filtr grafigi o'zgaruvchan bo'lsa, ular filtr grafikalarini qo'lda yaratishga murojaat qilishlari kerak.[iqtibos kerak ] Kompyuterga yangi filtrlar o'rnatilgani sababli filtr grafikalari vaqt o'tishi bilan o'zgarishi mumkin.[iqtibos kerak ]

Xususiyatlari

Odatiy bo'lib, DirectShow ba'zi bir keng tarqalgan media fayl formatlarini dekodlash uchun bir qator filtrlarni o'z ichiga oladi MPEG-1, MP3, Windows Media Audio, Windows Media Video, MIDI, media konteynerlari kabi Ovi, ASF, WAV, ba'zi splitterlar / demultiplexerlar, multipleksorlar, manba va cho'kish filtrlar, ba'zi statik tasvir filtrlari va minimal raqamli huquqlarni boshqarish (DRM) yordami.[24][25] DirectShow-ning standart repertuarini turli xil filtrlar yordamida osongina kengaytirish mumkin, bu DirectShow-ga deyarli har qanday konteyner formatini va har qanday audio yoki video kodekni qo'llab-quvvatlashga imkon beradi. Masalan, uchun filtrlar ishlab chiqilgan Ogg Vorbis, Musepack va AC3 va shunga o'xshash ba'zi kodeklar MPEG-4 kengaytirilgan oddiy profil, AAC, H.264, Vorbis va konteynerlar MOV, MP4 kabi uchinchi tomonlardan foydalanish mumkin ffdshow, K-Lite va CCCP.[26][27][28] Bu kabi qo'shimcha kodeklarni qo'llab-quvvatlashni jalb qilish, ushbu kodek texnologiyasini ishlab chiqaruvchisi yoki patent egasiga litsenziyalash uchun to'lovlarni to'lashni o'z ichiga olishi mumkin.[iqtibos kerak ] Va nihoyat, bir vaqtning o'zida bir nechta formatlarni qo'llab-quvvatlaydigan "ko'prik" filtrlari, shuningdek quyida joylashgan multimedia API-larining funktsiyalarini ochib berish orqali oqimlarni ko'paytirish kabi funktsiyalar mavjud. VLC.[29]

Filtr grafigini amalga oshirish uchun zarur bo'lgan ish hajmi bir necha omillarga bog'liq. Oddiy holatda DirectShow fayl yoki URL kabi manbadan avtomatik ravishda filtr grafigini yaratishi mumkin.[30] Agar buning iloji bo'lmasa, ishlab chiquvchi manba faylidan filtr grafigini qo'lda yaratishi mumkin, ehtimol unga maxsus filtr qo'shilishi mumkin va keyin DirectShow-ga filtrlarni bir-biriga ulab filtr grafigini to'ldirishiga imkon bering. Keyingi darajada, ishlab chiquvchi har bir kerakli filtrni qo'lda qo'shish va ulash orqali filtr grafigini noldan tuzishi kerak. Va nihoyat, muhim filtr mavjud bo'lmagan hollarda, ishlab chiquvchi filtr grafigini tuzishdan oldin maxsus filtr yaratishi kerak.[iqtibos kerak ]

QuickTime-ning asosiy C API-sidan farqli o'laroq, media-faylni yuklash uchun MoviesTask-ni ko'chadan chaqirish zarur, bularning barchasi DirectShow bilan shaffof tarzda ishlaydi. Dasturchidan juda ko'p ish talab qilinmasdan, so'ralgan faylni yoki URL-ni muammosiz ravishda ijro etadigan bir nechta fon oqimlarini yaratadi.[iqtibos kerak ] Bundan tashqari, QuickTime-dan farqli o'laroq, diskdagi mahalliy fayl o'rniga URL-ni yuklash uchun hech qanday maxsus narsa talab qilinmaydi - DirectShow-ning filtri grafigi dasturchidan ushbu ma'lumotlarni qisqartiradi, ammo QuickTime-dagi so'nggi o'zgarishlar (shu jumladan ActiveX boshqaruvi ) bu nomutanosiblikni kamaytirdi.[iqtibos kerak ]

DirectShow tahrirlash xizmatlari

DirectShow tahrirlash xizmatlari (DES), DirectX 8.0 da kiritilgan /Windows XP bu videoni tahrirlash vazifalariga yo'naltirilgan va asosiy DirectShow arxitekturasi ustiga o'rnatilgan API. DirectShow tahrirlash xizmatlari Microsoft uchun taqdim etildi Windows Movie Maker.[1] U vaqt jadvallari va kommutatsiya xizmatlari, o'lchamlarini o'zgartirish, kesish, video va audio effektlar, shuningdek o'tish uchun API-larni o'z ichiga oladi, kalit, avtomatik kvadrat tezligi va namunaviy stavkani konvertatsiya qilish va boshqa boshqa xususiyatlar chiziqli bo'lmagan video tahrirlash bir qator manbali audio va video oqimlardan kompozit vositalarni yaratishga imkon beradi. DirectShow tahrirlash xizmatlari yuqori darajadagi ish vaqtini kompozitsiya qilishga, qo'llab-quvvatlashga va grafiklarni boshqarishga imkon beradi, shu bilan birga ilovalarga quyi darajadagi DirectShow funktsiyalariga ruxsat beradi.

Dastlabki API C ++ da bo'lsa, DirectShow Tahrirlash xizmatlariga har qanday Microsoft .NET mos tilida, shu jumladan Microsoft-da kirish mumkin Visual C # va Microsoft Visual Basic "DirectShowNet Library" deb nomlangan uchinchi tomon kod kutubxonasidan foydalanish orqali.[31] Shu bilan bir qatorda, DirectShow tahrirlash xizmatlarini o'z ichiga olgan DirectShow API-ga to'liq kirish mumkin Borland Delphi 5, 6 va 7, C ++ Builder 6 va undan keyingi versiyalarida "DSPack" deb nomlangan uchinchi tomon dasturiy ta'minot kutubxonasidan foydalangan holda bir nechta kichik modifikatsiyalari mavjud.[32]

2012 yil mart holatiga ko'ra[33] (va, ehtimol, 2009 yildayoq)[34]), Microsoft DirectShow Tahrirlash Xizmatlari "API qo'llab-quvvatlanmaydi va kelajakda o'zgartirilishi yoki mavjud bo'lmasligi mumkin."

Video ko'rsatish filtrlari

Dastlab, yilda Windows 9x, DirectShow ishlatilgan Video ko'rsatuvchi filtr. Bu yordamida rasmlarni tortdi DirectDraw 3, lekin yana qaytib tushishi mumkin GDI yoki qoplama ba'zi holatlarda rasm chizish rejimlari (video oynaning ko'rinishi va videokartaning imkoniyatlariga qarab).[13][35] Unda video oynaga kirish imkoniyati cheklangan edi.[iqtibos kerak ] Windows uchun video bilan azoblangan edi qulflar dasturlarning video oynalar bilan noto'g'ri ishlashidan kelib chiqqan, shuning uchun DirectShow-ning dastlabki versiyalarida ijro etish oynasining dastagi dasturlardan yashiringan. Shuningdek, videoning yuqori qismida taglavha matnini yoki grafikasini chizishning ishonchli usuli yo'q edi.[iqtibos kerak ]

Qismi sifatida chiqarilgan DirectShow 6.0 DirectX Media tanishtirdi Ustki mikser uchun yaratilgan renderer DVD ijro etish va translyatsiya bilan video oqimlari yopiq taglavha va subtitrlar.[iqtibos kerak ] The Ustki mikser ishlash uchun DirectDraw 5 dan foydalanadi.[13] Bilan pastga ulanish Video ko'rsatuvchi oynalarni boshqarish uchun talab qilinadi.[iqtibos kerak ] Ustki mikser shuningdek, analog port bilan ishlashga imkon beradigan Video Port Extensions (VPE) ni qo'llab-quvvatlaydi Televizor tyunerlari qo'shimcha imkoniyatga ega (videoni to'g'ridan-to'g'ri analog karta orqali emas, balki analog havola orqali video kartaga yuborish PCI avtobusi ). Ustki mikser shuningdek qo'llab-quvvatlaydi DXVA ulanishlar.[iqtibos kerak ] Chunki u har doim qoplama, to'liq ekranli video Televizordan chiqish har doim faollashtiriladi.

Bilan boshlanadi Windows XP, deb nomlangan yangi filtr Video aralashtirish Renderer 7 (VMR-7 yoki ba'zan shunchaki deb nomlanadi VMR) kiritildi. 7 raqami VMR-7 faqat ishlatilganligi sababli edi DirectDraw Videoni namoyish qilish uchun 7-versiyada va GDI chizmadan foydalanish imkoniyati yo'q edi. VMR-7-ning asosiy yangi xususiyati bir nechta oqim va grafikalarni alfa aralashtirish bilan aralashtirish qobiliyatidir, bu dasturlarga videoning ustiga matn va grafikalarni chizish va maxsus effektlarni qo'llab-quvvatlash imkonini beradi.[36] Bundan tashqari, u "derazasiz rejim" ni yaratdi (kompozitsiya qilingan tasvirga ko'rsatilishidan oldin unga kirish), bu deraza dastagiga kirish bilan bog'liq muammolarni hal qildi.[37]

DirectX 9 taqdim etildi VMR-9Windows XP SP2 va undan yangi versiyalariga kiritilgan.[38] Ushbu versiyada foydalaniladi Direct3D DirectDraw o'rniga 9, ishlab chiquvchilarga Direct3D pikselli shaderlar yordamida video tasvirlarni o'zgartirishga imkon beradi.[39] Bu DirectX 9-ning qayta tarqatiladigan qismi sifatida barcha Windows platformalarida mavjud.[iqtibos kerak ] Sifatida VMR-7 u derazasiz rejimni taqdim etadi. Biroq, farqli o'laroq Qatlamali mikser yoki VMR-7 u video portlarni qo'llab-quvvatlamaydi.[40] Dan foydalanish / 3GB yuklash opsiyasi VMR-9 ishlamay qolishiga olib kelishi mumkin.[41]

Windows Vista va Windows 7 ikkala sifatida mavjud bo'lgan yangi renderer bilan kema, a Media Foundation komponenti va DirectShow filtri, deb nomlangan Kengaytirilgan video rendereri (EVR).[42] EVR ishlash uchun mo'ljallangan Stol oynasi menejeri va qo'llab-quvvatlaydi DXVA 2.0, Windows Vista va Windows 7 da mavjud.[43][iqtibos kerak ] Bu Microsoft-ga ko'ra yaxshiroq ishlash va yuqori sifatni taklif etadi.[44]

Qabul qilish

Mukofotlar

2007 yil 8 yanvarda. Microsoft 58-yillik marosimida media arxitekturasi va tarkibiy qismlarini oqimlash uchun Emmy mukofotini oldi Technology & Engineering Emmy mukofotlari.[45]

Oddiylik

Faylni ijro etish uchun DirectShow-ga buyruq berish nisbatan oddiy vazifadir. Biroq, DirectShow-ga video oynadan ba'zi Windows xabarlarini ko'rsatishni buyurish yoki maxsus filtrlarni yaratish kabi yanada rivojlangan xususiylashtirishlarni dasturlash paytida, ko'plab ishlab chiquvchilar qiyinchiliklardan shikoyat qilmoqdalar.[46][47] U Microsoft-ning eng murakkab ishlab chiqish kutubxonalari / APIlaridan biri sifatida qaraladi.[48][iqtibos kerak ]

Dasturchilar kamdan-kam hollarda DirectShow filtrlarini noldan yaratadilar. Aksincha, ular DirectShow Base Classs-dan foydalanadilar.[iqtibos kerak ] Asosiy sinflar ko'pincha dasturni ishlab chiqishni soddalashtirishi mumkin, bu esa dasturchiga ma'lum vazifalarni chetlab o'tishga imkon beradi. Biroq, jarayon nisbatan murakkab bo'lib qolishi mumkin;[iqtibos kerak ] asosiy sinflarda joylashgan kod butun hajmning deyarli yarmiga teng MFC kutubxonasi.[iqtibos kerak ] Natijada, Base Classs bilan ham DirectShow tarkibidagi COM ob'ektlari soni ko'pincha ishlab chiquvchilarni bosib oladi.[iqtibos kerak ][kaltakesak so'zlar ] Ba'zi hollarda DirectShow APIsi an'anaviy MAQOMOTI qoidalaridan, xususan foydalanilgan parametrlarga nisbatan chetga chiqadi usullari.[iqtibos kerak ][kaltakesak so'zlar ] DirectShow-ning o'ziga xos MAQOMOTI qoidalari bilan o'z qiyinchiliklarini engish uchun ishlab chiquvchilar ko'pincha DirectShow-dan foydalanadigan yuqori darajadagi API-ga murojaat qilishadi, xususan, Windows Media Player SDK, API ishlab chiquvchi bilan ishlash uchun kamroq MAQOMOTI interfeysga ega bo'lgan ActiveX Control-ni taqdim etadi.[iqtibos kerak ][kaltakesak so'zlar ]

DirectShow ma'lum bir media turini ko'rsatish uchun grafikani dinamik ravishda yaratishga qodir bo'lsa-da, ba'zi hollarda ishlab chiquvchilar ushbu funktsiyaga tayanishi qiyin va natijada filtr grafigi o'zgaruvchan bo'lsa, ular filtr grafikalarini qo'lda yaratishga murojaat qilishlari kerak.[iqtibos kerak ] Kompyuterga yangi filtrlar o'rnatilgani sababli filtr grafikalari vaqt o'tishi bilan o'zgarishi mumkin.[iqtibos kerak ]

Kodek jahannam

Kodek jahannam (atama olingan DLL jahannam ) bir nechta DirectShow filtrlari bir xil vazifani bajarish uchun to'qnashganda. Hozirda ko'plab kompaniyalar DirectShow filtrlari shaklida kodeklarni ishlab chiqmoqdalar, natijada bir xil media turini dekodlashi mumkin bo'lgan bir nechta filtrlar mavjud.[49][50] Ushbu muammoni DirectShow-ning merit tizimi yanada kuchaytiradi, bu erda filtrlarni amalga oshirish o'zlarini tobora yuqori ustuvorlik bilan ro'yxatdan o'tkazish orqali o'zaro raqobatlashadi.[50]

Microsoft-dan Ted Youmans "DirectShow merit tizimiga asoslangan edi, chunki bu fikr filtrning afzalliklari kombinatsiyasidan foydalangan holda va ommaviy axborot vositalarining turi / pastki turi qanchalik aniq bo'lsa, har safar to'g'ri kodekni tanlashi mumkin edi. Haqiqatan ham raqobatdosh bo'lgan yadroviy qurollanish poygasi uchun mo'ljallangan. "[50]

Odatda "kodek jahannam" bilan bog'liq muammolarni bartaraf etishda yordam beradigan vosita GSpot Video fayllarini qanday kodekda ishlatilishini aniqlashda foydali bo'lishi mumkin bo'lgan Codec Information Appliance Ovi va boshqa idishlar.[51] GraphEdit shuningdek, DirectShow-ning media-faylni ko'rsatish uchun foydalanadigan filtrlari ketma-ketligini tushunishga yordam berishi mumkin. Kodek do'zaxni filtr grafikalarini qo'lda yaratish, filtrning afzalliklarini e'tiborsiz qoldirish yoki bekor qilishni qo'llab-quvvatlaydigan media pleer yordamida yoki filtrning afzalliklarini o'zgartiradigan filtr menejeri yordamida hal qilish mumkin. Windows ro'yxatga olish kitobi.[21]

Oxirgi foydalanuvchi vositalari

DirectShow, ishlab chiquvchiga asoslangan ramka va API bo'lib, to'g'ridan-to'g'ri oxirgi foydalanuvchini kodlash tarkibini boshqarishni taklif qilmaydi va o'rnatilgan kodeklardan foydalangan holda yoki turli formatlarga kodlash uchun foydalanuvchi interfeysini o'z ichiga olmaydi; buning o'rniga, API yordamida dasturiy ta'minot ishlab chiqishda ishlab chiquvchilarga ishonadi. Aksincha, kabi boshqa multimedia ramkalari QuickTime yoki Windows uchun video oxirgi foydalanuvchilarga boshqa kodek yordamida qayta kodlash va fayllar va oqimlarni tahrirlash kabi video bilan bog'liq asosiy vazifalarni bajarishga ruxsat berish.[iqtibos kerak ] Oxirgi foydalanuvchi GUI tomonidan taqdim etilayotgan qulaylik shundan beri ko'rinib turibdi Ovi tomonidan ishlatiladigan format va kodeklar Windows uchun video masalan, hali ham foydalanishda qolmoqda VirtualDub.

Shuningdek qarang

Adabiyotlar

  1. ^ a b v Blom, Maykl; Vasson, Mayk (2002 yil iyul). "Windows XP-dagi asosiy media texnologiyasi sizga maxsus audio / video ishlash qismlarini yaratishga imkon beradi". MSDN jurnali. Microsoft. Olingan 2007-04-02.
  2. ^ "DirectShow". MSDN. 2012-12-01. Olingan 2013-01-21.
  3. ^ a b "DirectShow hujjatlari". MSDN kutubxonasi. Microsoft. 2006-01-01. Olingan 2006-01-01.
  4. ^ http://social.msdn.microsoft.com/Forums/en-US/36661a0b-fefa-4719-8134-6956e505e6f7/is-the-new-media-foundation-a-replacement-of-direct-show?forum= mediafoydalanishni rivojlantirish MSFT Becky Vayss
  5. ^ "DirectShow-dan Media Foundation-ga o'tish". MSDN kutubxonasi. Microsoft. 2006 yil iyul. Olingan 2010-08-17.
  6. ^ B. Jons, Maykl (1997 yil iyul). "Microsoft interaktiv televizion tizimi: tajriba haqida hisobot". Microsoft tadqiqotlari. Microsoft. Arxivlandi asl nusxasi 2007-05-16. Olingan 2007-04-02.
  7. ^ "Microsoft ActiveMovie-ni e'lon qiladi" (Matbuot xabari). Microsoft. 1996-03-05. Arxivlandi asl nusxasi 2011-07-17. Olingan 2006-12-31.
  8. ^ "Microsoft Internet Explorer 3.0 Beta versiyasi endi mavjud" (Matbuot xabari). Microsoft. 1996-05-29. Arxivlandi asl nusxasi 2007-07-07 da. Olingan 2006-12-31.
  9. ^ "Microsoft birinchi yagona multimedia API strategiyasini taqdim etadi" (Matbuot xabari). Microsoft. 1997-03-31. Arxivlandi asl nusxasi 2007-10-24 kunlari. Olingan 2006-12-31.
  10. ^ "Microsoft va Progressive Networks Streaming Media-da hamkorlik qiladi" (Matbuot xabari). Microsoft. 1997-07-21. Arxivlandi asl nusxasi 2006-12-10 kunlari. Olingan 2006-12-31.
  11. ^ Eisler, Kreyg (2006-02-20). "DirectX Keyin va Hozir". Kreygning musiqasi. Arxivlandi asl nusxasi 2012-07-11. Olingan 2010-08-17.
  12. ^ "Microsoft DirectShow SDK-ni chiqaradi - DVD, raqamli video va audio va Internet uchun universal ijro" (Matbuot xabari). Microsoft. 1997-12-10. Arxivlandi asl nusxasi 2010-02-12. Olingan 2010-08-17.
  13. ^ a b v "DirectShow savollari". MSDN kutubxonasi. Microsoft. 2010-07-06. Olingan 2010-08-17.
  14. ^ "DirectShow va Windows Media SDK-lariga oid savollar". MSDN kutubxonasi. Microsoft. 2001 yil dekabr. Olingan 2010-08-17.
  15. ^ "DirectX namunalari". MSDN kutubxonasi. Microsoft. 2005-09-11. Olingan 2005-09-11.
  16. ^ "DirectShow Windows Vista-dagi yangiliklar". MSDN kutubxonasi. Microsoft. 2006-11-08. Olingan 2006-11-08.
  17. ^ DirectShow dasturiy ta'minotiga kirish
  18. ^ DirectShow tizimiga umumiy nuqtai
  19. ^ "DirectShow filtrlari to'g'risida". MSDN kutubxonasi. Microsoft. Olingan 2010-08-17.
  20. ^ "Grafika qurilishiga umumiy nuqtai". MSDN kutubxonasi. Microsoft. Olingan 2010-08-17.
  21. ^ a b "GraphEdit-ga umumiy nuqtai". MSDN kutubxonasi. Microsoft. Olingan 2010-08-17.
  22. ^ "DirectShow asosiy sinflari". MSDN kutubxonasi. Microsoft. Olingan 2010-08-17.
  23. ^ "Dinamik grafik bino". MSDN kutubxonasi. Microsoft. Olingan 2010-08-17.
  24. ^ "DirectShow-da sukut bo'yicha qo'llab-quvvatlanadigan formatlar". MSDN kutubxonasi. Microsoft. Olingan 2005-09-11.
  25. ^ "Microsoft-ning navbatdagi gunoh echkisi - DirectShow!". retrakker. 2007-01-13. Olingan 2010-08-18.
  26. ^ "Ogg Vorbis, Speex, Theora va FLAC uchun tasavvur qilib bo'lmaydigan Directshow filtrlari". Arxivlandi asl nusxasi 2006-02-24 da. Olingan 2006-03-11.
  27. ^ "Musepack, AAC va AMR uchun Monogram's DirectShow filtrlari". Arxivlandi asl nusxasi 2011-09-26. Olingan 2008-03-08.
  28. ^ "AC3Filter". Olingan 2010-08-13.
  29. ^ Anderson, dekan; Lamberson, Jim (2007). "DirectShow-da VideoLan VLC-dan foydalanish". VLC-dan DirectShow-ga ochiq manbali ko'prik. Olingan 2008-02-15.
  30. ^ Tompson, Kris (2000-09-13). "Windows-da media-ijro etish uchun DirectShow - III qism: Graflarni sozlash". FLIPCODE.COM. Olingan 2010-08-18.
  31. ^ "DirectShowNet kutubxonasi to'g'risida". DirectShowNet SourceForge veb-sayti. SourceForge. Olingan 2010-08-18.
  32. ^ "DSPack loyihasi". Olingan 2010-08-18.
  33. ^ "DirectShow tahrirlash xizmatlari". Olingan 2012-04-09.
  34. ^ "Videoni tahrirlash" DirectShow tahrirlash xizmatlari"". Arxivlandi asl nusxasi 2011-08-05 da. Olingan 2012-04-09.
  35. ^ "DirectShow video ko'rsatuvchi filtri". MSDN kutubxonasi. Microsoft. Olingan 2010-08-17.
  36. ^ "Video Mixing Renderer 7 (VMR-7)". Olingan 11 sentyabr, 2005.
  37. ^ "VMR oynasiz rejim". MSDN kutubxonasi. Microsoft. Olingan 2005-09-11.
  38. ^ https://web.archive.org/web/20101018035741/http://msdn.microsoft.com/en-gb/library/ee416979(VS.85).aspx
  39. ^ "Video Mixing Renderer 9 (VMR-9)". MSDN kutubxonasi. Microsoft. Olingan 2005-09-11.
  40. ^ "Video aralashtirish uchun renderer filtri 9". MSDN kutubxonasi. Microsoft. Olingan 2005-09-11.
  41. ^ http://forum.videohelp.com/threads/292160-Loss-of-DirectDraw-Overlay-and-VMR9-after-upgrade-update
  42. ^ "Kengaytirilgan video ko'rsatuvchi". MSDN kutubxonasi. Microsoft. Olingan 2007-02-28.
  43. ^ Turli xil. "DXVA 1.0 tarjimoni". MSDN Media Foundation forumi. Microsoft. Arxivlandi asl nusxasi 2009-01-13 kunlari. Olingan 2010-08-18.
  44. ^ "To'g'ri video ko'rsatuvchini tanlash". MSDN kutubxonasi. Microsoft. Olingan 2005-09-11.
  45. ^ "MILLIY TELEVISION AKADEMIYASI EMMY G'ALABA QILIShNI E'LON ETADI: 58-YILNING TEXNOLOGIYASI VA ENGINEERGY EMMY mukofotlariga berilgan sharaflar" (PDF). Emmi mukofoti. Milliy televideniye akademiyasi. Yanvar 2007. Arxivlangan asl nusxasi (pdf) 2010-09-22. Olingan 2007-01-08.
  46. ^ "DirectShow-dan Media Center Edition bilan foydalanish". / mceDirectShow. Arxivlandi asl nusxasi 2010-11-21 kunlari. Olingan 2010-08-18.
  47. ^ Roushu, Kurifu (2001-03-13). "DirectShow-dan foydalanish asoslari". Gamedev.net. Arxivlandi asl nusxasi 2012-02-08 da. Olingan 2010-08-18.
  48. ^ Richards, Mark (2008-08-26). "Umumiy ma'lumot: kengaytirilgan haqiqat uchun vositalar to'plami nima?". Arxivlandi asl nusxasi 2008-07-19. Olingan 2009-01-25.
  49. ^ "Kodek jahannam". HomeVideo101 blogi. 2007-06-22. Arxivlandi asl nusxasi 2012-02-11. Olingan 2010-08-18.
  50. ^ a b v Lanier, Kris (2005-01-27). "New Age DLL Jahannammi? Jahannam Ha". Kris Lanierning blogi. MSMVPS.COM. Arxivlandi asl nusxasi 2007-02-12. Olingan 2007-02-27.
  51. ^ "GSpot Codec Axborot Qurilmasi". Olingan 2010-08-18.
  • Pesce, Mark D. (2003). Microsoft DirectShow dasturini raqamli video va televidenie uchun dasturlash. Microsoft Press. ISBN  0-7356-1821-6.

Tashqi havolalar