两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種在安卓系統(tǒng)中支持外部移動(dòng)攝像頭和移動(dòng)設(shè)備上內(nèi)置攝像頭的兼容方法

文檔序號(hào):7820537閱讀:308來源:國(guó)知局
一種在安卓系統(tǒng)中支持外部移動(dòng)攝像頭和移動(dòng)設(shè)備上內(nèi)置攝像頭的兼容方法
【專利摘要】本發(fā)明涉及到移動(dòng)設(shè)備上的攝像頭【技術(shù)領(lǐng)域】尤其是一種在安卓系統(tǒng)中支持外部移動(dòng)攝像頭和移動(dòng)設(shè)備上內(nèi)置攝像頭的兼容方法該方法包括:(1)在沒有前置攝像頭或沒有攝像頭的移動(dòng)設(shè)備上,即攝像頭數(shù)目不滿2個(gè),在攝像頭服務(wù)獲取攝像頭數(shù)目時(shí)預(yù)先增加 1個(gè)虛擬的攝像頭,當(dāng)插入外部移動(dòng)攝像頭時(shí),預(yù)先增加的虛擬攝像頭可以轉(zhuǎn)換為實(shí)際攝像頭,并當(dāng)作前置攝像頭使用;(2)在有前置攝像頭的移動(dòng)設(shè)備上,即攝像頭數(shù)目不少于2個(gè),數(shù)目上不用增加虛擬攝像頭,當(dāng)插入外部移動(dòng)攝像頭時(shí),用外部移動(dòng)攝像頭替換原來內(nèi)置的前置攝像頭來使用。
【專利說明】一種在安卓系統(tǒng)中支持外部移動(dòng)攝像頭和移動(dòng)設(shè)備上內(nèi)置攝像頭的兼容方法

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及到移動(dòng)設(shè)備上的攝像頭【技術(shù)領(lǐng)域】,更具體的說,是一種基于安卓系統(tǒng)的移動(dòng)設(shè)備上支持外部移動(dòng)攝像頭和移動(dòng)設(shè)備上內(nèi)置攝像頭兼容使用的方法。

【背景技術(shù)】
[0002]移動(dòng)設(shè)備包括智能手機(jī)、平板電腦等。當(dāng)下移動(dòng)設(shè)備在日常生活中的使用愈發(fā)頻繁,用戶對(duì)移動(dòng)設(shè)備功能的需求也越來越高。攝像功能就是移動(dòng)設(shè)備上一項(xiàng)重要的功能,用戶可以用來攝像、拍照、視頻通話等。
[0003]通常移動(dòng)設(shè)備上會(huì)有內(nèi)置攝像頭,內(nèi)置攝像頭通常包括前置攝像頭和后置攝像頭。后置攝像頭,又稱主攝像頭,支持?jǐn)z像功能的移動(dòng)設(shè)備通常會(huì)有后置攝像頭。前置攝像頭,又稱副攝像頭,多用于視頻通話。
[0004]對(duì)于一些移動(dòng)設(shè)備上只有后置攝像頭,沒有前置攝像頭,或者兩者都沒有。兩者都有的移動(dòng)設(shè)備上,通常前置攝像頭的性能參數(shù)比后置攝像頭要低。帶來問題就是,沒有前置攝像頭的移動(dòng)設(shè)備無法使用視頻通話功能,而性能參數(shù)較低的前置攝像頭帶來的視頻通話效果可能令用戶不滿意。
[0005]如圖1所示,是基于安卓系統(tǒng)的攝像頭整體框架圖,自上而下分別為攝像頭應(yīng)用、攝像頭服務(wù)、攝像頭硬件虛擬層(簡(jiǎn)稱攝像頭HAL)、攝像頭驅(qū)動(dòng)和攝像頭硬件。本發(fā)明主要涉及到攝像頭服務(wù)和攝像頭HAL。
[0006]安卓系統(tǒng)啟動(dòng)時(shí)會(huì)開啟攝像頭服務(wù),攝像頭服務(wù)為攝像頭應(yīng)用提供了功能接口,攝像頭服務(wù)并與攝像頭HAL交互?,F(xiàn)有安卓系統(tǒng)的攝像頭識(shí)別流程圖和使用流程圖分別如圖2和圖3所述。現(xiàn)有的識(shí)別流程具體描述如下:
步驟S21、攝像頭服務(wù)啟動(dòng)時(shí),會(huì)調(diào)用攝像頭HAL來獲取移動(dòng)設(shè)備上的內(nèi)置攝像頭數(shù)目(簡(jiǎn)稱數(shù)目);
步驟S22、攝像頭HAL會(huì)掃描移動(dòng)設(shè)備上的攝像頭硬件而從計(jì)算出攝像頭的數(shù)目,然后反饋給攝像頭服務(wù);
步驟S23、攝像頭服務(wù)獲取到數(shù)目后,保存數(shù)目,該數(shù)目只在攝像頭服務(wù)啟動(dòng)時(shí)獲取一次,之后就不再更新。
[0007]現(xiàn)有的使用流程具體描述如下:
步驟31、攝像頭應(yīng)用啟動(dòng)后,攝像頭應(yīng)用向攝像頭服務(wù)獲取數(shù)目;
步驟32、攝像頭服務(wù)返回?cái)?shù)目;
步驟33、攝像頭應(yīng)用根據(jù)數(shù)目,向攝像頭服務(wù)依次獲取每個(gè)攝像頭的信息(攝像頭服務(wù)會(huì)調(diào)用攝像頭HAL來完成獲取攝像頭信息的任務(wù));
步驟34、攝像頭HAL根據(jù)查詢請(qǐng)求查詢攝像頭信息,并反饋;
步驟35、攝像頭應(yīng)用依次獲取到每個(gè)攝像頭的信息,從而進(jìn)一步使用每個(gè)攝像頭。
[0008]可見,當(dāng)外部移動(dòng)攝像頭插入移動(dòng)設(shè)備時(shí),攝像頭服務(wù)不能實(shí)時(shí)更新數(shù)目,也就無法識(shí)別出剛剛插入的外部移動(dòng)攝像頭,攝像頭應(yīng)用也就不能夠使用該外部移動(dòng)攝像頭。
[0009]


【發(fā)明內(nèi)容】

[0010]本發(fā)明提供了一種基于安卓系統(tǒng)的移動(dòng)設(shè)備上支持外部移動(dòng)攝像頭(即USB接口的移動(dòng)攝像頭)和移動(dòng)設(shè)備上內(nèi)置攝像頭兼容使用的方法。在沒有前置攝像頭的移動(dòng)設(shè)備上,插入的外部移動(dòng)攝像頭可以當(dāng)作前置攝像頭使用;在有前置攝像頭的移動(dòng)設(shè)備上,插入的外部移動(dòng)攝像頭替換原來內(nèi)置的前置攝像頭來使用。而且用戶在使用上述功能的過程中,不需要安裝任何特定的額外的應(yīng)用軟件。
[0011]本發(fā)明的具體技術(shù)方案如下:
一種在安卓系統(tǒng)中支持外部移動(dòng)攝像頭和移動(dòng)設(shè)備上內(nèi)置攝像頭的兼容方法,在攝像頭服務(wù)啟動(dòng),向攝像頭硬件虛擬層獲取數(shù)目時(shí),攝像頭服務(wù)和攝像頭硬件虛擬層需要修改,修改分兩種情況:
(1)在數(shù)目不足兩個(gè)時(shí),即只有一個(gè)后置攝像頭或者沒有攝像頭,在數(shù)目上預(yù)先增加I個(gè)虛擬的攝像頭;當(dāng)移動(dòng)攝像頭沒有插入時(shí),該增加的虛擬攝像頭沒有作用,攝像頭應(yīng)用不去獲取該虛擬攝像頭信息;當(dāng)移動(dòng)攝像頭插入時(shí),該虛擬攝像頭就可以轉(zhuǎn)換為實(shí)際攝像頭,攝像頭應(yīng)用就去獲取其信息并使用;
(2)在攝像頭數(shù)目不少于兩個(gè)時(shí),即前置攝像頭和后置攝像頭都存在,數(shù)目上不用增加虛擬攝像頭,當(dāng)外部移動(dòng)攝像頭插入設(shè)備后,攝像頭應(yīng)用通過攝像頭服務(wù)從攝像頭硬件虛擬層獲取前置攝像頭的信息時(shí),攝像頭硬件虛擬層用外部移動(dòng)攝像頭的信息替換原本的前置攝像頭的信息,并反饋;這樣,攝像頭應(yīng)用實(shí)際使用的就是外部移動(dòng)攝像頭。
[0012]由于攝像頭應(yīng)用從攝像頭服務(wù)獲取數(shù)目,攝像頭服務(wù)也要修改,以保證在添加了虛擬攝像頭的情況下,但是外部移動(dòng)攝像頭沒有插入設(shè)備時(shí),反饋給攝像頭應(yīng)用的數(shù)目是設(shè)備上實(shí)際的真實(shí)存在的數(shù)目(即沒有加I);在外部移動(dòng)攝像頭插入設(shè)備后,反饋的數(shù)目則包括了虛擬攝像頭(即有加I)。
[0013]有益效果
該發(fā)明讓用戶可以利用外部移動(dòng)攝像頭,在那些沒有前置攝像頭的移動(dòng)設(shè)備上,完成視頻通話功能;在那些沒有內(nèi)置攝像頭的移動(dòng)設(shè)備上,完成攝像、拍照、視頻通話功能;在那些前置攝像頭性能參數(shù)較低的移動(dòng)設(shè)備上,用戶可以利用性能參數(shù)較高的外部移動(dòng)攝像頭來提高視頻通話功能的效果。這些都已經(jīng)在平板電腦產(chǎn)品上成功實(shí)施。

【專利附圖】

【附圖說明】
[0014]圖1基于安卓系統(tǒng)的攝像頭整體框架圖。
[0015]圖2現(xiàn)有的攝像頭識(shí)別流程圖。
[0016]圖3現(xiàn)有的攝像頭使用流程圖。
[0017]圖4本發(fā)明的攝像頭識(shí)別流程圖。
[0018]圖5本發(fā)明的攝像頭使用流程圖。

【具體實(shí)施方式】
[0019]下面結(jié)合附圖進(jìn)一步闡述本發(fā)明:
圖4為修改后的攝像頭識(shí)別流程。
[0020]步驟41、攝像頭服務(wù)啟動(dòng)時(shí),會(huì)調(diào)用攝像頭硬件虛擬層(簡(jiǎn)稱攝像頭HAL)來獲取移動(dòng)設(shè)備上的內(nèi)置攝像頭數(shù)目(簡(jiǎn)稱數(shù)目);
步驟42、攝像頭HAL計(jì)算數(shù)目并反饋,具體如下:
步驟421、攝像頭HAL對(duì)設(shè)備硬件經(jīng)過掃描后得到實(shí)際的數(shù)目;
步驟422、不能直接將該數(shù)目反饋給攝像頭服務(wù),而是對(duì)實(shí)際的數(shù)目進(jìn)行判斷是否需要添加I個(gè)虛擬攝像頭;
步驟423、如果實(shí)際的數(shù)目為I或0,表示需要添加I個(gè)虛擬攝像頭(供將來插入的外部移動(dòng)攝像頭使用),添加在已有的攝像頭列表的最后,數(shù)目加I,設(shè)置虛擬攝像頭存在標(biāo)志為真;
步驟424、如果實(shí)際的數(shù)目不少于2個(gè),說明不需要添加(將來插入的外部移動(dòng)攝像頭會(huì)直接替換設(shè)備上的前置攝像頭,所以數(shù)目不需要額外添加),并設(shè)置虛擬攝像頭存在標(biāo)志為假;
步驟425、將數(shù)目反饋給攝像頭服務(wù)。
[0021]步驟43、攝像頭服務(wù)獲取到數(shù)目后,保存數(shù)目。添加了虛擬攝像頭的情況下,數(shù)目是經(jīng)過加I的;沒有添加的情況下,數(shù)目是沒有加I的。
[0022]圖5為修改后的攝像頭使用流程。
[0023]步驟51、使用攝像頭應(yīng)用時(shí),攝像頭應(yīng)用會(huì)從攝像頭服務(wù)獲取的攝像頭數(shù)目;
步驟52、攝像頭服務(wù)反饋合適的數(shù)目給到攝像頭應(yīng)用,具體如下:
步驟521、攝像頭服務(wù)反饋數(shù)目給攝像頭應(yīng)用時(shí)不能直接反饋之前保存的數(shù)目,需要進(jìn)一步向攝像頭HAL確認(rèn)虛擬攝像頭的狀態(tài)。因?yàn)樵摂?shù)目可能是添加了虛擬攝像頭(即加I)的結(jié)果。如果數(shù)目包括了虛擬攝像頭,而此時(shí)外部移動(dòng)攝像頭沒有插入,攝像頭應(yīng)用此時(shí)獲取虛擬攝像頭的信息是不成功的。
[0024]步驟522、攝像頭HAL查詢虛擬攝像頭的狀態(tài),包括查詢虛擬攝像頭存在標(biāo)志和當(dāng)前是否有外部移動(dòng)攝像頭插入。根據(jù)查詢結(jié)果分為四種情況:
(1)有移動(dòng)攝像頭插入,且標(biāo)志為真;
(2)有移動(dòng)攝像頭插入,且標(biāo)志為假;
(3)無移動(dòng)攝像頭插入,且標(biāo)志為真;
(4)無移動(dòng)攝像頭插入,且標(biāo)志為假;
步驟523、分別判斷4種情況;
步驟524、第3種情況時(shí),就是屬于數(shù)目加1,但移動(dòng)攝像頭沒有插入的情況,此時(shí)攝像頭服務(wù)反饋給攝像頭應(yīng)用的數(shù)目需要減I處理。
[0025]步驟525、第2、4種情況,由于數(shù)目沒有加1,無需減I處理;而第I種情況,屬于數(shù)目加I,但有移動(dòng)攝像頭插入,多出來的虛擬攝像頭就剛好給移動(dòng)攝像頭使用(稱為虛擬攝像頭轉(zhuǎn)換為實(shí)際攝像頭),所以也無需減I處理。
[0026]步驟53、攝像頭應(yīng)用根據(jù)數(shù)目,向攝像頭服務(wù)依次獲取每個(gè)攝像頭的信息(攝像頭服務(wù)會(huì)調(diào)用攝像頭HAL來完成獲取攝像頭信息的任務(wù))。
[0027]步驟54、攝像頭HAL根據(jù)查詢請(qǐng)求查詢攝像頭信息,并反饋合適的攝像頭信息。具體如下:
步驟541、攝像頭HAL根據(jù)查詢請(qǐng)求查詢攝像頭信息,但不能直接反饋,需要進(jìn)一步的判斷;
步驟542、根據(jù)攝像頭信息判斷是否為前置攝像頭;
步驟543、查詢當(dāng)前是否有外部移動(dòng)攝像頭插入;
步驟544、如果當(dāng)前攝像頭信息表明是后置攝像頭,直接反饋攝像頭信息;如果當(dāng)前不是后置攝像頭,但外部移動(dòng)攝像頭沒有插入,也直接反饋攝像頭信息;
步驟545、如果當(dāng)前攝像頭信息表明不是后置攝像頭,并且當(dāng)前有外部移動(dòng)攝像頭插入,則使用外部移動(dòng)攝像頭信息來替換當(dāng)前攝像頭信息,并反饋??梢钥闯觯藭r(shí)被替換的當(dāng)前攝像頭可能是設(shè)備原有的前置攝像頭,也可能是預(yù)先添加的那個(gè)虛擬攝像頭。
[0028]步驟55、攝像頭應(yīng)用依次獲取到每個(gè)攝像頭的信息,從而進(jìn)一步使用每個(gè)攝像頭。
[0029]經(jīng)過上述步驟后,外部移動(dòng)攝像頭就可以與內(nèi)置攝像頭兼容使用了。具體實(shí)施結(jié)果就是:
(1)在沒有攝像頭的移動(dòng)設(shè)備上,外部移動(dòng)攝像頭插入后,可以當(dāng)作前置攝像頭使用;
(2)在只有后置攝像頭的移動(dòng)設(shè)備上,外部移動(dòng)攝像頭插入后,可以當(dāng)作前置攝像頭使用;
(3)在前置后置攝像頭都有的移動(dòng)設(shè)備上,外部移動(dòng)攝像頭插入后,可以代替原先前置攝像頭使用。
[0030]以上是對(duì)本發(fā)明的實(shí)施例進(jìn)行的詳細(xì)描述,但本領(lǐng)域的普通技術(shù)人員應(yīng)該意識(shí)至IJ,在本發(fā)明的范圍內(nèi)和精神指導(dǎo)下,各種改進(jìn)、添加和替換都是可能的,例如調(diào)整外部攝像頭替換后置攝像頭、調(diào)整接口調(diào)用順序、改變消息格式和內(nèi)容、使用不同的編程語(yǔ)言(如C、C++、Java等)實(shí)現(xiàn)等。這些都在本發(fā)明的權(quán)利要求所限定的保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種在安卓系統(tǒng)中支持外部移動(dòng)攝像頭和移動(dòng)設(shè)備上內(nèi)置攝像頭的兼容方法,其特征在于,所述方法包括: 在攝像頭服務(wù)啟動(dòng),向攝像頭攝像頭硬件虛擬層獲取數(shù)目時(shí),攝像頭服務(wù)和攝像頭硬件虛擬層需要修改,修改分兩種情況: (1)在數(shù)目不足兩個(gè)時(shí),即只有一個(gè)后置攝像頭或者沒有攝像頭,在數(shù)目上預(yù)先增加1個(gè)虛擬的攝像頭;當(dāng)移動(dòng)攝像頭沒有插入時(shí),該增加的虛擬攝像頭沒有作用,攝像頭應(yīng)用不去獲取該虛擬攝像頭信息;當(dāng)移動(dòng)攝像頭插入時(shí),該虛擬攝像頭就可以轉(zhuǎn)換為實(shí)際攝像頭,攝像頭應(yīng)用就去獲取其信息并使用; (2)在攝像頭數(shù)目不少于兩個(gè)時(shí),即前置攝像頭和后置攝像頭都存在,數(shù)目上不用增加虛擬攝像頭,當(dāng)外部移動(dòng)攝像頭插入設(shè)備后,攝像頭應(yīng)用通過攝像頭服務(wù)從攝像頭硬件虛擬層獲取前置攝像頭的信息時(shí),攝像頭硬件虛擬層用外部移動(dòng)攝像頭的信息替換原本的前置攝像頭的信息,并反饋;這樣攝像頭應(yīng)用實(shí)際使用的就是外部移動(dòng)攝像頭; 攝像頭應(yīng)用從攝像頭服務(wù)獲取數(shù)目,攝像頭服務(wù)的修改如下:當(dāng)在外部移動(dòng)攝像頭沒有插入設(shè)備時(shí),反饋給攝像頭應(yīng)用的數(shù)目是設(shè)備上實(shí)際的真實(shí)存在的數(shù)目;當(dāng)在外部移動(dòng)攝像頭插入設(shè)備后,反饋的數(shù)目則包括了虛擬攝像頭。
【文檔編號(hào)】H04N5/225GK104394305SQ201410677884
【公開日】2015年3月4日 申請(qǐng)日期:2014年11月24日 優(yōu)先權(quán)日:2014年11月24日
【發(fā)明者】包喬晉, 林廷輝, 周暢, 王海波 申請(qǐng)人:上海盈方微電子有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
合水县| 万山特区| 木兰县| 原阳县| 雅江县| 凤冈县| 梅州市| 密山市| 香格里拉县| 邯郸市| 罗定市| 沂水县| 抚松县| 武威市| 汉阴县| 灌南县| 民县| 凤凰县| 耿马| 万安县| 桐城市| 佛冈县| 利辛县| 永吉县| 乌拉特后旗| 凤山县| 西和县| 海兴县| 桦甸市| 淮北市| 永泰县| 文登市| 六安市| 南通市| 寻乌县| 额尔古纳市| 古交市| 长垣县| 米林县| 满洲里市| 通城县|