一種基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)方法、系統(tǒng)及移動(dòng)終端的制作方法
【專利摘要】本發(fā)明適用于移動(dòng)終端【技術(shù)領(lǐng)域】,尤其涉及一種基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)方法、系統(tǒng)及移動(dòng)終端。本發(fā)明通過應(yīng)用層接收畫質(zhì)調(diào)節(jié)請求,并將所述請求中包含的畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層;框架層接收所述畫質(zhì)屬性以及調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽象層;硬件抽象層接收框架層傳輸?shù)漠嬞|(zhì)屬性以及調(diào)節(jié)參數(shù)值,并將其傳輸給驅(qū)動(dòng)層;驅(qū)動(dòng)層接收硬件抽象層傳輸?shù)漠嬞|(zhì)屬性以及調(diào)節(jié)參數(shù)值,并將硬件攝像頭的所述畫質(zhì)屬性調(diào)節(jié)為所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,從而實(shí)現(xiàn)了對攝像頭畫質(zhì)屬性的調(diào)節(jié),完善了現(xiàn)有的基于android系統(tǒng)開發(fā)的相機(jī)應(yīng)用功能,提高了用戶體驗(yàn)效果。
【專利說明】—種基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)方法、系統(tǒng)及移動(dòng)終端
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于移動(dòng)終端【技術(shù)領(lǐng)域】,尤其涉及一種基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)方法、系統(tǒng)及移動(dòng)終端。
【背景技術(shù)】
[0002]Android平臺(tái)是google公司開發(fā)的基于Linux平臺(tái)的開源移動(dòng)終端操作系統(tǒng)。它包括操作系統(tǒng)、用戶界面和應(yīng)用程序等移動(dòng)終端工作所需的全部軟件。Google公司通過與運(yùn)營商、設(shè)備制造商、開發(fā)商等各方面結(jié)成深層次的合作伙伴關(guān)系,希望借助建立標(biāo)準(zhǔn)化、開放式的移動(dòng)終端軟件平臺(tái),在移動(dòng)產(chǎn)業(yè)內(nèi)形成一個(gè)開放式的生態(tài)系統(tǒng)。
[0003]現(xiàn)在基于android系統(tǒng)上面開發(fā)的相機(jī)應(yīng)用功能已經(jīng)變的越來越豐富,但是由于android系統(tǒng)本身框架的限制,開發(fā)的相機(jī)應(yīng)用程序沒有實(shí)現(xiàn)對攝像頭獲得的畫質(zhì)界面的屬性進(jìn)行調(diào)節(jié)的功能,比如不能很方便地對攝像頭獲取的對比度,亮度,飽和度等參數(shù)進(jìn)行調(diào)整,需要開發(fā)商自行完善該攝像頭參數(shù)的調(diào)整,相機(jī)應(yīng)用功能不夠完善,用戶體驗(yàn)效果不夠好。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種通過獲取畫質(zhì)屬性信息,根據(jù)獲取的屬性信息調(diào)節(jié)攝像頭屬性的基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)方法,旨在解決現(xiàn)有的基于android系統(tǒng)上面開發(fā)的相機(jī)應(yīng)用功能不夠完善,用戶體驗(yàn)效果不夠好的問題。
[0005]本發(fā)明提供了一種基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)方法,包括:
[0006]應(yīng)用層接收畫質(zhì)調(diào)節(jié)請求,并將所述請求中包含的畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層;
[0007]框架層接收所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽
象層;
[0008]硬件抽象層接收框架層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給驅(qū)動(dòng)層;
[0009]驅(qū)動(dòng)層接收硬件抽象層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將硬件攝像頭的所述畫質(zhì)屬性調(diào)節(jié)為所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值。
[0010]本發(fā)明另一目的在于提供一種基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)系統(tǒng),包括:
[0011]第一接收發(fā)送模塊,第一接口模塊,第二接收發(fā)送模塊,調(diào)節(jié)模塊34 ;
[0012]所述第一接收發(fā)送模塊,用于應(yīng)用層接收畫質(zhì)調(diào)節(jié)請求,并將所述請求中包含的畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層;
[0013]所述第一接口模塊,用于框架層接收所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽象層;
[0014]所述第二接收發(fā)送模塊,用于硬件抽象層接收框架層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給驅(qū)動(dòng)層;
[0015]所述調(diào)節(jié)模塊,用于驅(qū)動(dòng)層接收硬件抽象層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將硬件攝像頭的所述畫質(zhì)屬性調(diào)節(jié)為所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值。
[0016]本發(fā)明還提供了一種基于android平臺(tái)的移動(dòng)終端,所述終端包括相機(jī)畫質(zhì)調(diào)節(jié)系統(tǒng)。
[0017]在本發(fā)明實(shí)施例中,通過應(yīng)用層接收畫質(zhì)調(diào)節(jié)請求,并將所述請求中包含的畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層;框架層接收所述畫質(zhì)屬性以及調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽象層;硬件抽象層接收框架層傳輸?shù)漠嬞|(zhì)屬性以及與調(diào)節(jié)參數(shù)值,并將其傳輸給驅(qū)動(dòng)層;驅(qū)動(dòng)層接收硬件抽象層傳輸?shù)漠嬞|(zhì)屬性以及調(diào)節(jié)參數(shù)值,并將硬件攝像頭的所述畫質(zhì)屬性調(diào)節(jié)為所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,完善了現(xiàn)有的基于android系統(tǒng)上面開發(fā)的相機(jī)應(yīng)用功能,提高了用戶體驗(yàn)效果。
【專利附圖】
【附圖說明】
[0018]圖1是Android系統(tǒng)原生camera攝像框架結(jié)構(gòu)圖;
[0019]圖2是本發(fā)明實(shí)施例提供的基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)方法的實(shí)現(xiàn)流程圖;
[0020]圖3是本發(fā)明實(shí)施例提供的從硬件攝像頭獲取攝像頭屬性信息方法的實(shí)現(xiàn)流程圖;
[0021]圖4是本發(fā)明實(shí)施例提供的基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)系統(tǒng)的結(jié)構(gòu)框圖?!揪唧w實(shí)施方式】
[0022]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0023]圖1為Android系統(tǒng)原生camera攝像框架,自上而下分為:應(yīng)用層11、框架層12、硬件抽象層13、以及驅(qū)動(dòng)層14,層與層之間通常通過Binder、回調(diào)函數(shù)或者系統(tǒng)調(diào)用聯(lián)系,所述驅(qū)動(dòng)層14通過1/0控制命令與硬件設(shè)備聯(lián)系。所述框架層12包括ParameteK參數(shù))函數(shù)模塊121,所述硬件抽象層中包括Camera Parameter模塊(攝像參數(shù))131以及CameraHal接口 132。
[0024]本發(fā)明是在如圖一所示的現(xiàn)有的Android系統(tǒng)原生camera攝像框架下,做出改進(jìn),實(shí)現(xiàn)對畫質(zhì)屬性的調(diào)節(jié)。
[0025]圖2示出了本發(fā)明實(shí)施例1提供的一種基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)方法的實(shí)現(xiàn)流程,詳述如下:
[0026]步驟201、應(yīng)用層接收畫質(zhì)調(diào)節(jié)請求,并將所述請求中包含的畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層。
[0027]具體的,應(yīng)用層接收用戶畫質(zhì)調(diào)節(jié)請求,所述請求包含畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述畫質(zhì)屬性包括對比度、亮度、飽和度等,所述調(diào)節(jié)參數(shù)值包括用戶通過應(yīng)用程序調(diào)節(jié)設(shè)置的確定數(shù)值。
[0028]應(yīng)用層接收用戶畫質(zhì)調(diào)節(jié)請求后,將所述請求中包含的畫質(zhì)屬性以及畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層。
[0029]步驟202、框架層接收所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽象層。
[0030]優(yōu)選的,在框架層的Parameter模塊(參數(shù)模塊)121中,創(chuàng)建第一接口模塊,所述第一接口模塊為接口函數(shù)模塊(比如setControlParamete函數(shù)模塊),所述接口函數(shù)模塊傳遞兩個(gè)參數(shù),一個(gè)是畫質(zhì)屬性,一個(gè)是用戶設(shè)置的調(diào)節(jié)參數(shù)值。所述接口函數(shù)接收所述畫質(zhì)屬性以及畫質(zhì)屬性的調(diào)節(jié)參數(shù)值。擴(kuò)展硬件抽象層中CameraHal接口中的設(shè)置參數(shù)setParameters模塊,把需要調(diào)節(jié)的硬件攝像頭的屬性信息加入這函數(shù)中。所述第一接口模塊通過調(diào)用所述擴(kuò)展的設(shè)置參數(shù)模塊,將所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值傳輸給硬件抽象層。
[0031]步驟203、硬件抽象層接收框架層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給驅(qū)動(dòng)層。
[0032]優(yōu)選的,在camera硬件抽象層的攝像參數(shù)Camera Parameter模塊中,創(chuàng)建第一標(biāo)識(shí)(比如KEY_XXX_VALUE標(biāo)識(shí))以及第一模塊(比如getControlParameterValue函數(shù)模塊)。通過所述第一標(biāo)識(shí)標(biāo)記框架層傳輸給硬件抽象層的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述第一標(biāo)識(shí)是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的。所述擴(kuò)展的設(shè)置參數(shù)模塊通過調(diào)用第所述第一模塊獲取所述第一標(biāo)識(shí)所標(biāo)記的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值。在驅(qū)動(dòng)層創(chuàng)建第二模塊(比如v412SetC0ntr0l函數(shù)模塊),所述擴(kuò)展的設(shè)置參數(shù)模塊再通過調(diào)用驅(qū)動(dòng)層的第二模塊,將獲取的所述第一標(biāo)識(shí)所標(biāo)記的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值傳輸給驅(qū)動(dòng)層。
[0033]步驟204、驅(qū)動(dòng)層接收硬件抽象層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將硬件攝像頭的所述畫質(zhì)屬性調(diào)節(jié)為所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值。
[0034]驅(qū)動(dòng)層通過第二模塊接收硬件抽象層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將硬件攝像頭的所述畫質(zhì)屬性調(diào)節(jié)為所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,從而完成對攝像頭獲得的畫質(zhì)屬性的調(diào)節(jié)。
[0035]通過上述步驟就實(shí)現(xiàn)了對攝像頭畫質(zhì)屬性的調(diào)節(jié),提高了相機(jī)的應(yīng)用功能,增加了用戶體驗(yàn)效果。
[0036]進(jìn)一步的在所述步驟201之前還包括從硬件攝像頭獲取硬件攝像頭的畫質(zhì)屬性信息,包括畫質(zhì)屬性以及硬件攝像頭所支持的所述畫質(zhì)屬性對應(yīng)的參數(shù)值。所述參數(shù)值包括當(dāng)前值、最大值、最小值、步長、及默認(rèn)值,為了詳細(xì)描述該獲取過程,本發(fā)明實(shí)施例二結(jié)合附圖3做以下詳細(xì)描述:
[0037]步驟301、驅(qū)動(dòng)層獲取硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值。
[0038]優(yōu)選的,在驅(qū)動(dòng)層創(chuàng)建第三模塊(比如v412GetC0ntr0l函數(shù)模塊),通過所述第三模塊與視頻驅(qū)動(dòng)層定義好的標(biāo)準(zhǔn)接口 V412_C0ntr0l,以及I/O接口控制命令獲得獲取當(dāng)前攝像頭畫質(zhì)屬性,以及與所述畫質(zhì)屬性對應(yīng)的當(dāng)前值。所述v412_control是原有系統(tǒng)接口定義好的標(biāo)準(zhǔn)結(jié)構(gòu)體,里面包括id (屬性的標(biāo)識(shí))和value (該屬性的當(dāng)前值)。所述標(biāo)識(shí)與屬性(比如對比度、飽和度、亮度)相對應(yīng)。第三模塊傳遞兩個(gè)參數(shù),一個(gè)參數(shù)表示設(shè)置畫質(zhì)屬性的標(biāo)識(shí),另一個(gè)參數(shù)為當(dāng)前值。進(jìn)一步的,在驅(qū)動(dòng)層創(chuàng)建第四模塊(比如v412QueryControl函數(shù)模塊),所述第四模塊用于獲取與所述畫質(zhì)屬性對應(yīng)的最大值、最小值、步長以及默認(rèn)值等。通過所述第四模塊(比如v412QueryControl函數(shù)模塊)與視頻驅(qū)動(dòng)層定義好的標(biāo)準(zhǔn)接口 v412_queryctrl,以及I/O接口控制命令獲得當(dāng)前硬件攝像頭某一個(gè)畫質(zhì)屬性的所有相關(guān)標(biāo)準(zhǔn)。所述相關(guān)標(biāo)準(zhǔn)指的是硬件攝像頭所支持的屬性的最大值、最小值、默認(rèn)值、步長等。所述第四模塊需要傳遞的參數(shù)是兩個(gè),一個(gè)是屬性標(biāo)識(shí),另一個(gè)是v412_queryctrl的一個(gè)指針,用來存儲(chǔ)獲得硬件屬性之后的對象。比如:v412QueryControl (int contrast, v412_queryctrl*queryctrl)然后調(diào)用 I/O 接 口控制命令之后,queryctrl中將會(huì)獲得contrast屬性的最大值、最小值、默認(rèn)值以及步長,關(guān)鍵字contrast代表對比度。
[0039]步驟302、硬件抽象層獲取驅(qū)動(dòng)層獲取的所述硬件攝像頭畫質(zhì)屬以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值,并將其其寫入到硬件抽象層的攝像參數(shù)屬性列表中。
[0040]優(yōu)選的,在硬件抽象層攝像參數(shù)Camera Parameter模塊中,倉ij建第二標(biāo)識(shí)(比如KEY_XXX_SC0PE關(guān)鍵字)以及第五模塊(比如setControlParameterScope函數(shù)模塊)。通過第二標(biāo)識(shí)標(biāo)記驅(qū)動(dòng)層獲取的畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值,所述第二標(biāo)識(shí)是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的。擴(kuò)展硬件抽象層中CameraHal接口中的獲取參數(shù)getParameters模塊,所述擴(kuò)展的獲取參數(shù)getParameters模塊調(diào)用所述第模五塊,以及所述的第三模塊和第四模塊,所述第五模塊傳遞6個(gè)參數(shù),一個(gè)就是上述中的第二標(biāo)識(shí)KEY_XXX_SC0PE標(biāo)識(shí),其他5個(gè)值是通過步驟201中的第三模塊和第四模塊獲得與第二標(biāo)識(shí)對應(yīng)的屬性的當(dāng)前值,最大值,最小值,步長,以及默認(rèn)值。這樣就獲取所述當(dāng)前攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值。獲取成功之后這些值就會(huì)寫入到硬件抽象層的攝像模塊cameraParamerters的屬性列表當(dāng)中。這樣并沒有對原生的框架做邏輯層面的修改,只是添加了需要添加的屬性信息。
[0041]步驟303、框架層獲取所述硬件抽象層屬性列表中的硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值。
[0042]優(yōu)選的,在框架層Parameter模塊中,創(chuàng)建一個(gè)類(比如ControlParameterScope類),所述類用于定義畫質(zhì)屬性參數(shù),其中主要包括最大值,最小值,默認(rèn)值,當(dāng)前值,步長。定義類的實(shí)例,并在框架層中創(chuàng)建第二接口模塊(比如getControlParameterScope接口模塊),通過所述第二接口模塊調(diào)用所述擴(kuò)展的獲取參數(shù)模塊獲取所述硬件抽象層屬性列表中的硬件攝像頭畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,并根據(jù)所述參數(shù)值設(shè)置所述畫質(zhì)屬性對應(yīng)的可供調(diào)節(jié)的最大值、最小值、默認(rèn)值、步長,并將所述的可供調(diào)節(jié)的最大值、最小值、默認(rèn)值、步長作為實(shí)例屬性。這樣就實(shí)現(xiàn)了從硬件攝像頭獲取畫質(zhì)屬性及其對應(yīng)的參數(shù)值,并根據(jù)所述獲取的畫質(zhì)屬性及其參數(shù)值設(shè)置可供用于調(diào)節(jié)的畫質(zhì)屬性的最大值、最小值、默認(rèn)值、步長等。
[0043]圖4示出了本發(fā)明實(shí)施例三提供的一種基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)系統(tǒng)的結(jié)構(gòu)框圖,該系統(tǒng)可以運(yùn)行于基于android平臺(tái)的各種終端,包括但不限于移動(dòng)電話、口袋計(jì)算機(jī)(Pocket Personal Computer, PPC)、掌上電腦、計(jì)算機(jī)、筆記本電腦、個(gè)人數(shù)字助理(Personal Digital Assistant, PDA)等。為了便于說明,僅示出了與本實(shí)施例相關(guān)的部分。
[0044]參照圖4,該相機(jī)畫質(zhì)調(diào)節(jié)系統(tǒng)包括:第一接收發(fā)送模塊41,第一接口模塊42,第二接收發(fā)送模塊43,調(diào)節(jié)模塊44。
[0045]所述第一接收發(fā)送模塊41,用于應(yīng)用層接收畫質(zhì)調(diào)節(jié)請求,并將所述請求中包含的畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層。具體的,應(yīng)用層接收用戶畫質(zhì)調(diào)節(jié)請求,所述請求包含畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述畫質(zhì)屬性包括對比度、亮度、飽和度等,所述調(diào)節(jié)參數(shù)值包括確定值或者調(diào)節(jié)的步長值。應(yīng)用層接收用戶畫質(zhì)調(diào)節(jié)請求后,將所述請求中包含的畫質(zhì)屬性以及畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層。
[0046]所述第一接口模塊42,用于框架層接收所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽象層。所述第一接口模塊42為接口函數(shù)模塊(比如setControlParamete函數(shù)模塊),所述第一接口模塊42傳遞兩個(gè)參數(shù),一個(gè)是畫質(zhì)屬性,一個(gè)是用戶設(shè)置的調(diào)節(jié)參數(shù)值。所述第一接口模塊接收所述畫質(zhì)屬性以及畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽象層。
[0047]所述第二接收發(fā)送模塊43,用于硬件抽象層接收框架層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給驅(qū)動(dòng)層。
[0048]所述調(diào)節(jié)模塊44,用于驅(qū)動(dòng)層接收硬件抽象層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將硬件攝像頭的所述畫質(zhì)屬性調(diào)節(jié)為所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值。
[0049]進(jìn)一步的,所述第二接收發(fā)送模塊43還包括:第一標(biāo)識(shí)431,第一模塊432,第一擴(kuò)展模塊433 ;所述調(diào)節(jié)模塊44還包括第二模塊441。所述第一標(biāo)識(shí)431 (比如KEY_XXX_VALUE標(biāo)識(shí)),用于標(biāo)記框架層傳輸給硬件抽象層的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述第一標(biāo)識(shí)是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的;所述擴(kuò)展模塊433,用于擴(kuò)展硬件抽象層的CameraHal接口中的設(shè)置參數(shù)setParameters模塊,把需要調(diào)節(jié)的硬件攝像頭的屬性信息加入這函數(shù)中。所述第一接口模塊42通過調(diào)用所述擴(kuò)展的設(shè)置參數(shù)模塊,將所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值傳輸給硬件抽象層。所述擴(kuò)展的設(shè)置參數(shù)模塊通過調(diào)用第一模塊432,獲取所述第一標(biāo)識(shí)所標(biāo)記的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述第一模塊是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的;所述擴(kuò)展的設(shè)置參數(shù)模塊通過調(diào)用驅(qū)動(dòng)層的調(diào)節(jié)模塊44中的第二模塊441,將獲取的所述第一標(biāo)識(shí)431所標(biāo)記的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值傳輸給驅(qū)動(dòng)層,所述第二模塊441是在驅(qū)動(dòng)層創(chuàng)建的。
[0050]進(jìn)一步的,所述系統(tǒng)還包括:第一獲取模塊45,第二獲取模塊46,第三獲取模塊47。
[0051]所述第一獲取模塊45,用于驅(qū)動(dòng)層獲取硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值。進(jìn)一步的,所述第一獲取模塊45還包括:第三模塊451,第四模塊452 ;所述第三模塊與視頻驅(qū)動(dòng)層定義好的標(biāo)準(zhǔn)接口 V412_C0ntr0l,以及I/O接口控制命令獲得獲取當(dāng)前攝像頭畫質(zhì)屬性,以及與所述畫質(zhì)屬性對應(yīng)的當(dāng)前值。所述v412_control是原有系統(tǒng)接口定義好的標(biāo)準(zhǔn)結(jié)構(gòu)體,里面包括id (屬性的標(biāo)識(shí))和value (該屬性的當(dāng)前值)。所述標(biāo)識(shí)與屬性(比如對比度、飽和度、亮度)相對應(yīng)。v412GetControl模塊傳遞兩個(gè)參數(shù),一個(gè)參數(shù)表示設(shè)置畫質(zhì)屬性的標(biāo)識(shí),另一個(gè)參數(shù)為當(dāng)前值。進(jìn)一步的,在驅(qū)動(dòng)層創(chuàng)建第四模塊(比如v412QueryControl函數(shù)模塊),所述第四模塊用于獲取與所述畫質(zhì)屬性對應(yīng)的最大值、最小值、步長以及默認(rèn)值等。通過所述第四模塊(比如v412QueryControl函數(shù)模塊)與視頻驅(qū)動(dòng)層定義好的標(biāo)準(zhǔn)接口 v412_queryctrl,以及I/O接口控制命令獲得當(dāng)前硬件攝像頭某一個(gè)畫質(zhì)屬性的所有相關(guān)標(biāo)準(zhǔn)。所述相關(guān)標(biāo)準(zhǔn)指的是硬件攝像頭所支持的屬性的最大值、最小值、默認(rèn)值等。所述第四模塊需要傳遞兩個(gè)參數(shù),一個(gè)是屬性標(biāo)識(shí),另一個(gè)是v412_queryctrl的一個(gè)指針,用來存儲(chǔ)獲得硬件屬性之后的對象。比如:v412QueryControl(intcontrast, v412_queryctrl*queryctrl)然后調(diào)用 I/O 接口控制命令之后,queryctrl 中將會(huì)獲得contrast屬性的最大值、最小值、默認(rèn)值以及可供調(diào)節(jié)的步長,關(guān)鍵字contrast代表對比度。
[0052]所述第二獲取模塊46,用于硬件抽象層獲取驅(qū)動(dòng)層獲取的所述硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值,并將其寫入到硬件抽象層的攝像參數(shù)屬性列表中。進(jìn)一步的,所述第二獲取模塊46還包括:第二標(biāo)識(shí)461,第五模塊462,第二擴(kuò)展模塊463。具體的,所述第二標(biāo)識(shí)461 (比如KEY_XXX_SC0PE標(biāo)識(shí)),用于標(biāo)記驅(qū)動(dòng)層獲取的畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值,所述第二標(biāo)識(shí)是在硬件抽象層的攝像參數(shù)CameraParameter模塊中創(chuàng)建的。所述第二擴(kuò)展模塊463,用于擴(kuò)展硬件抽象層中CameraHal接口中的獲取參數(shù)getParameters模塊,所述擴(kuò)展的獲取參數(shù)getParameters模塊調(diào)用所述第五模塊462,以及所述的第三模塊451和第四模塊452,所述第五模塊462傳遞6個(gè)參數(shù),一個(gè)就是上述中的第二標(biāo)識(shí)KEY_XXX_SC0PE標(biāo)識(shí),其他5個(gè)值是第三模塊和第四模塊獲得與第二標(biāo)識(shí)對應(yīng)的屬性的當(dāng)前值,最大值,最小值,步長,以及默認(rèn)值。這樣就獲取所述當(dāng)前攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值。獲取成功之后這些值就會(huì)寫入到硬件抽象層的相機(jī)模塊cameraParamerters的屬性列表當(dāng)中。
[0053]所述第三獲取模塊47,用于框架層獲取所述硬件抽象層屬性列表中的硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值。進(jìn)一步的,所述第三獲取模塊47還包括--類471,定義設(shè)置模塊472,第二接口模塊473。所述類471 (比如ControlParameterScope類)用于定義畫質(zhì)屬性參數(shù), 其中主要包括最大值,最小值,默認(rèn)值,當(dāng)前值。所述類是在框架層Parameter函數(shù)中創(chuàng)建的。所述定義設(shè)置模塊472,用于定義類的實(shí)例。所述第二接口模塊473,用于調(diào)用所述擴(kuò)展的獲取參數(shù)模塊獲取所述硬件抽象層屬性列表中的硬件攝像頭畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,并根據(jù)所述參數(shù)值設(shè)置所述畫質(zhì)屬性對應(yīng)的可供調(diào)節(jié)的最大值、最小值、默認(rèn)值、步長,并將所述的可供調(diào)節(jié)的最大值、最小值、默認(rèn)值、步長作為實(shí)例屬性。這樣就實(shí)現(xiàn)了從硬件攝像頭獲取畫質(zhì)屬性及其對應(yīng)的參數(shù)值,并根據(jù)所述獲取的畫質(zhì)屬性及其參數(shù)值設(shè)置可供用于調(diào)節(jié)的畫質(zhì)屬性的最大值、最小值、默認(rèn)值、步長等,進(jìn)而用戶可以根據(jù)這些可供調(diào)節(jié)的畫質(zhì)屬性的最大值、最小值、默認(rèn)值、步長設(shè)置屬性調(diào)節(jié)參數(shù)值對屬性進(jìn)行調(diào)節(jié)。
[0054]本發(fā)明還提供一種基于android平臺(tái)的移動(dòng)終端,所述終端包括實(shí)施例三所述的系統(tǒng)。
[0055]本發(fā)明實(shí)施例不改變Android系統(tǒng)原生camera攝像總體框架,只是對其應(yīng)用層、框架層、硬件抽象層以及驅(qū)動(dòng)層做相應(yīng)的改進(jìn),從而實(shí)現(xiàn)對硬件攝像頭畫質(zhì)屬性進(jìn)行調(diào)節(jié),提高了用戶體驗(yàn),實(shí)現(xiàn)簡單,成本低廉。
[0056]需要說明的是,對于前述的各方法實(shí)施例,為了簡單描述,故將其都表述為一系列的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本發(fā)明,某些步驟可以采用其他順序或者同時(shí)進(jìn)行。
[0057]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種基于android平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)方法,其特征在于,包括以下步驟: 應(yīng)用層接收畫質(zhì)調(diào)節(jié)請求,并將所述請求中包含的畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層; 框架層接收所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽象層; 硬件抽象層接收框架層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給驅(qū)動(dòng)層; 驅(qū)動(dòng)層接收硬件抽象層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將硬件攝像頭的所述畫質(zhì)屬性調(diào)節(jié)為所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值。
2.如權(quán)利要求1所述的方法,其特征在于,所述框架層接收所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽象層,包括: 框架層通過第一接口模塊接收所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述第一接口模塊是在框架層創(chuàng)建的; 擴(kuò)展硬件抽象層的CameraHal接口中的設(shè)置參數(shù)模塊; 所述第一接口模塊通過調(diào)用所述擴(kuò)展的設(shè)置參數(shù)模塊,將所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值傳輸給硬件抽象層。
3.如權(quán)利要求1所述的方法,其特征在于,所述硬件抽象層接收框架層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給驅(qū)動(dòng)層,包括: 通過第一標(biāo)識(shí)標(biāo)記框架層傳輸給硬件抽象層的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述第一標(biāo)識(shí)是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的; 所述擴(kuò)展的設(shè)置參數(shù)模塊通過調(diào)用第一模塊,獲取所述第一標(biāo)識(shí)所標(biāo)記的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述第一模塊是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的; 所述擴(kuò)展的設(shè)置參數(shù)模塊通過調(diào)用驅(qū)動(dòng)層的第二模塊,將獲取的所述第一標(biāo)識(shí)所標(biāo)記的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值傳輸給驅(qū)動(dòng)層,所述第二模塊是在驅(qū)動(dòng)層創(chuàng)建的。
4.如權(quán)利要求1所述的方法,其特征在于,所述步驟之前還包括: 驅(qū)動(dòng)層獲取硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值; 硬件抽象層獲取驅(qū)動(dòng)層獲取的所述硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值,并將其其寫入到硬件抽象層的攝像參數(shù)屬性列表中; 框架層獲取所述硬件抽象層屬性列表中的硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值。
5.如權(quán)利要求4所述的方法,其特征在于,所述驅(qū)動(dòng)層通過獲取硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值,包括: 通過第三模塊獲取硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的當(dāng)前值,所述第三模塊是在驅(qū)動(dòng)層創(chuàng)建的; 通過第四模塊獲取與所述畫質(zhì)屬性對應(yīng)的最大值、最小值、步長、默認(rèn)值,所述第四模塊是在驅(qū)動(dòng)層創(chuàng)建的。
6.如權(quán)利要求4所述的方法,其特征在于,在硬件抽象層中獲取驅(qū)動(dòng)層獲取的所述硬件攝像頭畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,并將其寫入到硬件抽象層的攝像參數(shù)屬性列表中,包括: 通過第二標(biāo)識(shí)標(biāo)記驅(qū)動(dòng)層獲取的所述硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值,所述第二標(biāo)識(shí)是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的;擴(kuò)展硬件抽象層中CameraHal接口中的獲取參數(shù)模塊,所述擴(kuò)展的獲取參數(shù)模塊通過調(diào)用第五模塊以及所述的第三模塊、第四模塊獲取所述第二標(biāo)識(shí)標(biāo)記的驅(qū)動(dòng)層獲取的畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,并其寫入到硬件抽象層的攝像參數(shù)屬性列表中,所述第五模塊是在硬件抽象層創(chuàng)建的。
7.如權(quán)利要求4-6之一所述的方法,其特征在于,所述框架層獲取所述硬件抽象層屬性列表中的攝像頭畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,包括: 通過類定義調(diào)節(jié)畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,所述類是在框架層Parameter函數(shù)中創(chuàng)建的; 定義類的實(shí)例; 通過第二接口模塊調(diào)用所述擴(kuò)展的獲取參數(shù)模塊獲取所述硬件抽象層屬性列表中的硬件攝像頭畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,并根據(jù)所述參數(shù)值設(shè)置所述畫質(zhì)屬性對應(yīng)的可供調(diào)節(jié)的最大值、最小值、默認(rèn)值、步長,并將所述的可供調(diào)節(jié)的最大值、最小值、默認(rèn)值、步長作為實(shí)例屬性,所述第二接口模塊是在框架層創(chuàng)建的。
8.—種基于andr oid平臺(tái)的相機(jī)畫質(zhì)調(diào)節(jié)系統(tǒng),其特征在于,包括: 第一接收發(fā)送模塊,第一接口模塊,第二接收發(fā)送模塊,調(diào)節(jié)模塊; 所述第一接收發(fā)送模塊,用于應(yīng)用層接收畫質(zhì)調(diào)節(jié)請求,并將所述請求中包含的畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值發(fā)送給框架層; 所述第一接口模塊,用于框架層接收所述畫質(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給硬件抽象層; 所述第二接收發(fā)送模塊,用于硬件抽象層接收框架層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將其傳輸給驅(qū)動(dòng)層; 所述調(diào)節(jié)模塊,用于驅(qū)動(dòng)層接收硬件抽象層傳輸?shù)乃霎嬞|(zhì)屬性以及所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,并將硬件攝像頭的所述畫質(zhì)屬性調(diào)節(jié)為所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值。
9.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述第二接收發(fā)送模塊還包括:第一標(biāo)識(shí),第一模塊,第一擴(kuò)展模塊;所述調(diào)節(jié)模塊還包括:第二模塊; 所述第一標(biāo)識(shí),用于標(biāo)記框架層傳輸給硬件抽象層的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述第一標(biāo)識(shí)是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的; 所述第一擴(kuò)展模塊,用于擴(kuò)展硬件抽象層的CameraHal接口中的設(shè)置參數(shù)模塊,所述擴(kuò)展的設(shè)置參數(shù)模塊通過調(diào)用第一模塊,獲取所述第一標(biāo)識(shí)所標(biāo)記的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值,所述第一模塊是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的;所述擴(kuò)展的設(shè)置參數(shù)模塊通過所述調(diào)用模塊中的第二模塊,將獲取的所述第一標(biāo)識(shí)所標(biāo)記的畫質(zhì)屬性和所述畫質(zhì)屬性的調(diào)節(jié)參數(shù)值傳輸給驅(qū)動(dòng)層,所述第二模塊是在驅(qū)動(dòng)層創(chuàng)建的。
10.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括: 第一獲取模塊,第二獲取模塊,第三獲取模塊;所述第一獲取模塊,用于驅(qū)動(dòng)層獲取硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值; 所述第二獲取模塊,用于硬件抽象層獲取驅(qū)動(dòng)層獲取的所述硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值,并將其寫入到硬件抽象層的攝像參數(shù)屬性列表中; 所述第三獲取模塊,用于框架層獲取所述硬件抽象層屬性列表中的硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值。
11.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述第一獲取模塊還包括: 第三模塊,第四模塊; 所述第三模塊,用于獲取硬件攝像頭畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的當(dāng)前值,所述第三模塊是在驅(qū)動(dòng)層創(chuàng)建的; 所述第四模塊,用于獲取與所述畫質(zhì)屬性對應(yīng)的最大值、最小值、步長、默認(rèn)值,所述第四模塊是在驅(qū)動(dòng)層創(chuàng)建的。
12.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述第二獲取模塊還包括: 第二標(biāo)識(shí),第五模塊,第二擴(kuò)展模塊; 所述第二標(biāo)識(shí),用于標(biāo)記驅(qū)動(dòng)層獲取的畫質(zhì)屬性以及與所述畫質(zhì)屬性對應(yīng)的參數(shù)值,所述第二標(biāo)識(shí)是在硬件抽象層的攝像參數(shù)Camera Parameter模塊中創(chuàng)建的; 所述第二擴(kuò)展模塊,用于擴(kuò)展硬件抽象層中CameraHal接口中的獲取參數(shù)模塊,所述擴(kuò)展的獲取參數(shù)模塊通過調(diào)用所述的第五模塊以及所述的第三模塊、第四模塊獲取所述第二標(biāo)識(shí)標(biāo)記的畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,并其寫入到硬件抽象層的攝像參數(shù)屬性列表中,所述第五模 塊是在硬件抽象層創(chuàng)建的。
13.如權(quán)利要求10-12之一所述的系統(tǒng),其特征在于,所述第三獲取模塊還包括:類,定義設(shè)置模塊,第二接口模塊; 所述類,用于定義畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,所述類是在框架層Parameter函數(shù)中創(chuàng)建的; 所述定義設(shè)置模塊,用于定義類的實(shí)例; 所述第二接口模塊,用于調(diào)用所述擴(kuò)展的獲取參數(shù)模塊獲取所述硬件抽象層屬性列表中的硬件攝像頭畫質(zhì)屬性以及與所述屬性對應(yīng)的參數(shù)值,并根據(jù)所述參數(shù)值設(shè)置所述畫質(zhì)屬性對應(yīng)的可供調(diào)節(jié)的最大值、最小值、默認(rèn)值、步長,并將所述的可供調(diào)節(jié)的最大值、最小值、默認(rèn)值、步長作為實(shí)例屬性。
14.一種基于android平臺(tái)的包含權(quán)利要求8_13之一系統(tǒng)的移動(dòng)終端。
【文檔編號(hào)】H04N5/232GK103442172SQ201310357198
【公開日】2013年12月11日 申請日期:2013年8月15日 優(yōu)先權(quán)日:2013年8月15日
【發(fā)明者】郝占峰 申請人:Tcl集團(tuán)股份有限公司