一、背景介紹

    虛擬攝像頭,顧名思義,就是利用軟件技術(shù)虛擬出一個(gè)攝像頭硬件設(shè)備供用戶(hù)使用。當(dāng)我們需要對(duì)視頻圖像進(jìn)行處理再輸出時(shí),虛擬攝像頭就具備非常大的價(jià)值了。關(guān)于如何在Windwos上實(shí)現(xiàn)一個(gè)虛擬設(shè)備的資料已經(jīng)非常豐富了,Windows Driver Kit里面也有非常多的幫助文檔。這篇博文主要總結(jié)了在Mac下開(kāi)發(fā)虛擬攝像頭的一些經(jīng)驗(yàn)。Mac下的虛擬攝像頭產(chǎn)品其實(shí)也有不少,例如CamTwist, CamMask, CamWiz, ManyCam等。但是關(guān)于如何在Mac下開(kāi)發(fā)虛擬攝像頭設(shè)備的資料卻是異常匱乏。通過(guò)一番搜索后才找到一個(gè)關(guān)鍵字:CoreMediaIO. 經(jīng)過(guò)了解,CoreMediaIO是Mac下的一個(gè)framework,主要用于對(duì)視頻圖像進(jìn)行處理。而CoreMediaIO framework有一個(gè)Device Abstraction Layer(DAL),它類(lèi)似與Mac下CoreAudio的Hardware Abstraction Layer(HAL)。HAL主要是用來(lái)處理音頻硬件發(fā)送的音頻流的,而DAL則是用來(lái)處理視頻設(shè)備的視頻流的。因此,利用DAL插件框架,可以模擬出一個(gè)攝像頭設(shè)備供上層用戶(hù)使用。

    CoreMediaIO DAL有一個(gè)示例項(xiàng)目,這個(gè)項(xiàng)目模擬出了一個(gè)名為“Sample”的設(shè)備,通過(guò)底層kext模塊提供的模擬數(shù)據(jù)實(shí)現(xiàn)視頻幀的傳遞。這個(gè)DEMO要真正使用起來(lái)的話(huà),有一些需要注意的地方。在Demo中的README文件中推薦使用如下命令安裝預(yù)編譯好的程序:

  • <cite id="pa4wv"><listing id="pa4wv"></listing></cite>

    延伸閱讀

    學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式

    我想了解如何學(xué)習(xí)

    姓名:
    手機(jī):
    留言: