欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種處理器間編解碼數(shù)據(jù)的傳輸方法、系統(tǒng)及可視電話的制作方法

文檔序號(hào):7743425閱讀:191來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種處理器間編解碼數(shù)據(jù)的傳輸方法、系統(tǒng)及可視電話的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于移動(dòng)通信技術(shù)領(lǐng)域,尤其涉及一種處理器間編解碼數(shù)據(jù)的傳輸方法、 系統(tǒng)及可視電話。
背景技術(shù)
隨著通訊技術(shù)的發(fā)展,我們已經(jīng)步入了 3G、4G時(shí)代,在移動(dòng)通信中,一個(gè)非常重要 的業(yè)務(wù)就是可視電話,在可視電話通話中,視頻的流暢、清晰直接關(guān)系到用戶的體驗(yàn),視頻 的流暢清晰是由視頻流數(shù)據(jù)的可靠傳輸作保證的,視頻數(shù)據(jù)的編解碼數(shù)據(jù)的傳輸是非常重 要的一環(huán),關(guān)系到系統(tǒng)的穩(wěn)定和用戶的直接體驗(yàn)。然而,現(xiàn)有的視頻數(shù)據(jù)的編解碼數(shù)據(jù)的傳輸將處理流程和控制流程放在一起,沒(méi) 有分別處理,使處理邏輯比較復(fù)雜,影響數(shù)據(jù)傳輸?shù)男?,另外,?shù)據(jù)幀的丟失和數(shù)據(jù)幀溢 出沒(méi)有充分的考慮和容錯(cuò),導(dǎo)致數(shù)據(jù)幀丟幀。總之,現(xiàn)有的視頻數(shù)據(jù)的編解碼數(shù)據(jù)的傳輸方法由于處理邏輯復(fù)雜,效率不高,并 且數(shù)據(jù)容易丟幀和溢出,會(huì)造成馬賽克現(xiàn)象,圖像失真等。

發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種處理器間編解碼數(shù)據(jù)的傳輸方法,旨在解決現(xiàn) 有技術(shù)提供的視頻數(shù)據(jù)的編解碼數(shù)據(jù)的傳輸方法效率不高,并且數(shù)據(jù)容易丟幀和溢出,會(huì) 造成馬賽克現(xiàn)象,圖像失真的問(wèn)題。本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種處理器間編解碼數(shù)據(jù)的傳輸方法,所述方法包 括下述步驟對(duì)于下行數(shù)據(jù)當(dāng)寫(xiě)解碼數(shù)據(jù)引擎檢測(cè)到通過(guò)協(xié)議棧軟解碼的數(shù)據(jù)幀是第一幀時(shí),配置協(xié)處理器 解碼設(shè)置,啟動(dòng)應(yīng)用處理器的解碼線程存儲(chǔ)軟解碼后的數(shù)據(jù)幀至循環(huán)緩沖池中;應(yīng)用處理器的解碼線程將協(xié)議棧軟解碼后的數(shù)據(jù)幀傳送至協(xié)處理器;協(xié)處理器對(duì)接收到的數(shù)據(jù)幀進(jìn)行硬解碼,并顯示解碼后的視頻通話數(shù)據(jù)至顯示屏 上;對(duì)于上行數(shù)據(jù)協(xié)處理器硬編碼攝像頭攝取的視頻通話數(shù)據(jù);協(xié)處理器完成視頻通話數(shù)據(jù)的硬編碼后,發(fā)送編碼后的數(shù)據(jù)至應(yīng)用處理器;應(yīng)用處理器的編碼線程將接收到的編碼后的數(shù)據(jù)發(fā)送給協(xié)議棧進(jìn)行軟編碼后通 過(guò)通訊協(xié)議棧發(fā)送給空中接口。本發(fā)明的另一目的在于提供一種處理器間編解碼數(shù)據(jù)的傳輸系統(tǒng),所述系統(tǒng)包 括應(yīng)用處理器解碼線程啟動(dòng)單元,用于當(dāng)寫(xiě)解碼數(shù)據(jù)引擎檢測(cè)到通過(guò)協(xié)議棧軟解碼 的數(shù)據(jù)幀是第一幀時(shí),配置協(xié)處理器解碼設(shè)置,啟動(dòng)應(yīng)用處理器的解碼線程存儲(chǔ)軟解碼后
5的數(shù)據(jù)幀至循環(huán)緩沖池中;應(yīng)用處理器軟解碼數(shù)據(jù)幀傳輸單元,用于應(yīng)用處理器的解碼線程將協(xié)議棧軟解碼 后的數(shù)據(jù)幀傳送至協(xié)處理器;協(xié)處理器解碼單元,用于協(xié)處理器對(duì)接收到的數(shù)據(jù)幀進(jìn)行硬解碼,并顯示解碼后 的視頻通話數(shù)據(jù)至顯示屏上;協(xié)處理器硬編碼單元,用于協(xié)處理器硬編碼攝像頭攝取的視頻通話數(shù)據(jù);協(xié)處理器編碼數(shù)據(jù)發(fā)送單元,用于協(xié)處理器完成視頻通話數(shù)據(jù)的硬編碼后,發(fā)送 編碼后的數(shù)據(jù)至應(yīng)用處理器;應(yīng)用處理器編碼數(shù)據(jù)接收單元,用于應(yīng)用處理器的編碼線程將接收到的編碼后的 數(shù)據(jù)發(fā)送給協(xié)議棧進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口。本發(fā)明的另一目的在于提供一種可視電話,所述可視電話包括如上所述的處理器 間編解碼數(shù)據(jù)的傳輸系統(tǒng)。在本發(fā)明實(shí)施例中,對(duì)于上行視頻通話數(shù)據(jù),首先由空中接口的視頻通話數(shù)據(jù)通 過(guò)通訊協(xié)議棧發(fā)給協(xié)議棧軟解碼,再由應(yīng)用處理器的解碼線程發(fā)給協(xié)處理器,協(xié)處理器硬 解碼后將接收到的視頻通話數(shù)據(jù)顯示到IXD上;對(duì)于上行視頻通話數(shù)據(jù),首先將攝像頭攝 取的視頻通話數(shù)據(jù)經(jīng)過(guò)協(xié)處理器硬編碼后,再通過(guò)應(yīng)用處理器的編碼線程,發(fā)送給協(xié)議棧 軟編碼后,通過(guò)通訊協(xié)議棧發(fā)送給空中接口。在其中,將編解碼的處理流程和控制流程分別 處理,處理邏輯簡(jiǎn)單,效率高,數(shù)據(jù)也不容易丟幀和溢出,不會(huì)造成馬賽克現(xiàn)象、圖像失真, 可以更加安全可靠的實(shí)現(xiàn)視頻通話過(guò)程中應(yīng)用處理器和協(xié)處理器之間編碼數(shù)據(jù)和解碼數(shù) 據(jù)的傳輸。


圖1是本發(fā)明實(shí)施例提供的處理器間解碼數(shù)據(jù)的傳輸方法的實(shí)現(xiàn)流程圖;圖2是本發(fā)明實(shí)施例提供的處理器間編碼數(shù)據(jù)的傳輸方法的實(shí)現(xiàn)流程圖;圖3是本發(fā)明實(shí)施例提供的處理器間編解碼數(shù)據(jù)的傳輸系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。在本發(fā)明實(shí)施例中,對(duì)于上行視頻通話數(shù)據(jù),首先由空中接口的視頻通話數(shù)據(jù)通 過(guò)通訊協(xié)議棧發(fā)給協(xié)議棧軟解碼,再由應(yīng)用處理器的解碼線程發(fā)給協(xié)處理器,協(xié)處理器硬 解碼后將接收到的視頻通話數(shù)據(jù)顯示到IXD上;對(duì)于上行視頻通話數(shù)據(jù),首先將攝像頭攝 取的視頻通話數(shù)據(jù)經(jīng)過(guò)協(xié)處理器硬編碼后,再通過(guò)應(yīng)用處理器的編碼線程,發(fā)送給協(xié)議棧 軟編碼后,通過(guò)通訊協(xié)議棧發(fā)送給空中接口。在其中,將編解碼的處理流程和控制流程分別 處理,處理邏輯簡(jiǎn)單,效率高,數(shù)據(jù)也不容易丟幀和溢出,不會(huì)造成馬賽克現(xiàn)象、圖像失真, 可以更加安全可靠的實(shí)現(xiàn)視頻通話過(guò)程中應(yīng)用處理器和協(xié)處理器之間編碼數(shù)據(jù)和解碼數(shù) 據(jù)的傳輸。圖1示出了本發(fā)明實(shí)施例提供的處理器間解碼數(shù)據(jù)的傳輸方法的實(shí)現(xiàn)流程圖,詳述如下在步驟S101中,當(dāng)寫(xiě)解碼數(shù)據(jù)引擎檢測(cè)到通過(guò)協(xié)議棧軟解碼的數(shù)據(jù)幀是第一幀 時(shí),配置協(xié)處理器解碼設(shè)置,啟動(dòng)應(yīng)用處理器的解碼線程存儲(chǔ)軟解碼后的數(shù)據(jù)幀至循環(huán)緩 沖池中。視頻通話分為上行數(shù)據(jù)和下行數(shù)據(jù),下行數(shù)據(jù)的接收主要完成數(shù)據(jù)的解碼,上行 數(shù)據(jù)主要完成數(shù)據(jù)的編碼。作為本發(fā)明的一個(gè)實(shí)施例,空中接口接收下行視頻通話數(shù)據(jù)并傳輸給通信協(xié)議棧 進(jìn)行處理后發(fā)給協(xié)議棧,在本實(shí)施例中,該協(xié)議棧是H. 263協(xié)議棧,H. 263協(xié)議棧對(duì)通過(guò)通 信協(xié)議棧接收到的數(shù)據(jù)進(jìn)行軟解碼,當(dāng)寫(xiě)解碼數(shù)據(jù)引擎檢測(cè)到通過(guò)H. 263協(xié)議棧軟解碼的 數(shù)據(jù)幀是第一幀時(shí),配置協(xié)處理器解碼設(shè)置,啟動(dòng)應(yīng)用處理器的解碼線程。在步驟S102中,應(yīng)用處理器的解碼線程將協(xié)議棧軟解碼后的數(shù)據(jù)幀傳送至協(xié)處 理器。作為本發(fā)明的一個(gè)實(shí)施例,當(dāng)寫(xiě)解碼數(shù)據(jù)引擎接收到H. 263協(xié)議棧發(fā)送的軟解碼 數(shù)據(jù)后,檢測(cè)接收到的數(shù)據(jù)幀是否是第一幀數(shù)據(jù),當(dāng)是第一幀數(shù)據(jù)時(shí),配置協(xié)處理器的解碼 設(shè)置,啟動(dòng)應(yīng)用處理器的解碼線程,當(dāng)解碼線程檢測(cè)到該第一幀解碼數(shù)據(jù)的長(zhǎng)度在要求的 范圍內(nèi)時(shí),將數(shù)據(jù)存入循環(huán)緩沖池中,緩沖池的寫(xiě)指針循環(huán)遞增,未讀數(shù)據(jù)幀數(shù)遞增,當(dāng)緩 沖池中存在未讀數(shù)據(jù)幀且未讀數(shù)據(jù)幀的長(zhǎng)度不為零時(shí),解碼線程將接收到并存入緩沖池中 的數(shù)據(jù)幀傳送至協(xié)處理器,協(xié)處理器對(duì)接收到的數(shù)據(jù)幀進(jìn)行硬解碼;當(dāng)檢測(cè)接收到的數(shù)據(jù) 幀不是第一幀數(shù)據(jù)時(shí),判斷該數(shù)據(jù)幀的長(zhǎng)度是否在要求范圍內(nèi),當(dāng)在數(shù)據(jù)幀的長(zhǎng)度要求的 范圍內(nèi)時(shí),判斷緩沖池中未讀數(shù)據(jù)幀數(shù)是否大于等于緩沖池的大小,如果是,則等待解碼線 程解碼,如果否,則將接收到的數(shù)據(jù)幀存入循環(huán)緩沖池中,緩沖池的寫(xiě)指針循環(huán)遞增,緩沖 池中未讀數(shù)據(jù)幀數(shù)遞增,直至緩沖池中未讀數(shù)據(jù)幀的幀數(shù)大于等于緩沖池的大小時(shí),等待 解碼線程解碼。作為本發(fā)明的一個(gè)優(yōu)選實(shí)施例,當(dāng)解碼線程接收到第一幀數(shù)據(jù)幀后,判斷緩沖池 中是否有未讀的數(shù)據(jù)幀,當(dāng)緩沖池中沒(méi)有未讀的數(shù)據(jù)幀,解碼線程一直處于等待狀態(tài),等待 緩沖池中有未讀數(shù)據(jù)幀且數(shù)據(jù)幀長(zhǎng)度不為零時(shí)才傳送數(shù)據(jù)幀至協(xié)處理器。作為本發(fā)明的另一個(gè)優(yōu)選實(shí)施例,當(dāng)解碼線程接收到第一幀數(shù)據(jù)幀后,判斷緩沖 池中是否有未讀的數(shù)據(jù)幀,當(dāng)緩沖池中有未讀的數(shù)據(jù)幀,但該數(shù)據(jù)幀的長(zhǎng)度為零時(shí),解碼線 程一直檢測(cè)檢測(cè)緩沖池中未讀數(shù)據(jù)幀的長(zhǎng)度,當(dāng)檢測(cè)到未讀數(shù)據(jù)幀長(zhǎng)度不為零時(shí)才傳送數(shù) 據(jù)幀至協(xié)處理器。在步驟S103中,協(xié)處理器對(duì)接收到的數(shù)據(jù)幀進(jìn)行硬解碼,并顯示解碼后的視頻通 話數(shù)據(jù)至顯示屏上。作為本發(fā)明的一個(gè)實(shí)施例,協(xié)處理器對(duì)接收到的數(shù)據(jù)進(jìn)行硬解碼時(shí),不斷讀取緩 沖池中的數(shù)據(jù)幀,緩沖池的讀指針循環(huán)遞增,未讀數(shù)據(jù)幀數(shù)遞減,協(xié)處理器解碼一直讀取緩 沖池中的數(shù)據(jù)解碼并在顯示屏IXD上顯示。圖2示出了本發(fā)明實(shí)施例提供的處理器間編碼數(shù)據(jù)的傳輸方法的實(shí)現(xiàn)流程圖,詳 述如下在步驟S201中,通過(guò)協(xié)處理器硬編碼攝像頭攝取的視頻通話數(shù)據(jù)。視頻通話數(shù)據(jù)分為上行數(shù)據(jù)和下行數(shù)據(jù),下行數(shù)據(jù)的接收主要完成數(shù)據(jù)的解碼,上行數(shù)據(jù)主要完成數(shù)據(jù)的編碼。作為本發(fā)明的一個(gè)實(shí)施例,開(kāi)始視頻通話后,編碼數(shù)據(jù)引擎開(kāi)始讀取數(shù)據(jù),判斷讀 取到的數(shù)據(jù)幀是否是第一幀數(shù)據(jù),當(dāng)檢測(cè)到讀取的數(shù)據(jù)幀是第一數(shù)據(jù)幀時(shí),判斷是否成功 打開(kāi)攝像頭,若攝像頭已經(jīng)成功打開(kāi),則協(xié)處理器進(jìn)行編碼配置,對(duì)接收到的數(shù)據(jù)幀進(jìn)行編 碼,當(dāng)檢測(cè)到讀取的數(shù)據(jù)幀不是第一數(shù)據(jù)幀時(shí),判斷編碼緩沖池中是否有數(shù)據(jù),當(dāng)沒(méi)有數(shù)據(jù) 時(shí),等待并檢測(cè)直到編碼緩沖池中存在數(shù)據(jù),當(dāng)編碼緩沖池中存在數(shù)據(jù)時(shí),按照一定的步長(zhǎng) 將緩沖區(qū)中的數(shù)據(jù)上傳,緩沖池讀指針循環(huán)遞增,未取走數(shù)據(jù)幀數(shù)遞減。在步驟S202中,協(xié)處理器完成視頻通話數(shù)據(jù)的硬編碼后,發(fā)送編碼后的數(shù)據(jù)至應(yīng) 用處理器。作為本發(fā)明的一個(gè)實(shí)施例,協(xié)處理器完成視頻通話數(shù)據(jù)的硬編碼后,應(yīng)用處理器 從協(xié)處理器讀取數(shù)據(jù)到編碼數(shù)據(jù)緩沖池,緩沖池寫(xiě)指針循環(huán)遞增,未取走數(shù)據(jù)幀數(shù)遞增,啟 動(dòng)應(yīng)用處理器的編碼線程。在步驟S203中,應(yīng)用處理器的編碼線程將接收到的編碼后的數(shù)據(jù)發(fā)送給協(xié)議棧 進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口。作為本發(fā)明的一個(gè)實(shí)施例,應(yīng)用處理器的編碼線程啟動(dòng)后,檢測(cè)總的編碼數(shù)據(jù)長(zhǎng) 度和幀數(shù)是否小于規(guī)定的值,如果是,則通知協(xié)處理器取數(shù)據(jù),再判斷協(xié)處理器獲取數(shù)據(jù)是 否成功,當(dāng)協(xié)處理器成功獲取數(shù)據(jù)后,應(yīng)用處理器的編碼線程從協(xié)處理器中取數(shù)據(jù)到緩沖 池中,數(shù)據(jù)幀數(shù)遞增,緩沖池寫(xiě)指針循環(huán)遞增,應(yīng)用處理器的編碼線程將緩沖池中存儲(chǔ)的編 碼后的數(shù)據(jù)發(fā)送給H. 263協(xié)議棧進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口。圖3示出了本發(fā)明實(shí)施例提供的處理器間編解碼數(shù)據(jù)的傳輸系統(tǒng)的具體結(jié)構(gòu)框 圖,為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。該處理器間編解碼數(shù)據(jù)的傳輸 系統(tǒng)可以是內(nèi)置于可視電話的軟件單元、硬件單元或者軟硬件相結(jié)合的單元,或者作為獨(dú) 立的掛件集成到可視電話的應(yīng)用系統(tǒng)中。其中該系統(tǒng)包括應(yīng)用處理器解碼線程啟動(dòng)單 元31、應(yīng)用處理器軟解碼數(shù)據(jù)幀傳輸單元32、協(xié)處理器解碼單元33和協(xié)處理器硬編碼單元 34、協(xié)處理器編碼數(shù)據(jù)發(fā)送單元35、應(yīng)用處理器編碼數(shù)據(jù)接收單元36。其中,應(yīng)用處理器解碼線程啟動(dòng)單元31、應(yīng)用處理器軟解碼數(shù)據(jù)幀傳輸單元32、 協(xié)處理器解碼單元33用于下行數(shù)據(jù)的解碼數(shù)據(jù)傳輸,協(xié)處理器硬編碼單元34、協(xié)處理器編 碼數(shù)據(jù)發(fā)送單元35、應(yīng)用處理器編碼數(shù)據(jù)接收單元36用于上行數(shù)據(jù)的編碼數(shù)據(jù)傳輸。下面分別描述用于下行數(shù)據(jù)的解碼數(shù)據(jù)傳輸?shù)膯卧渲?,?yīng)用處理器解碼線程啟動(dòng)單元31用于當(dāng)寫(xiě)解碼數(shù)據(jù)引擎檢測(cè)到通過(guò)協(xié)議 棧軟解碼的數(shù)據(jù)幀是第一幀時(shí),配置協(xié)處理器解碼設(shè)置,啟動(dòng)應(yīng)用處理器的解碼線程;應(yīng)用處理器軟解碼數(shù)據(jù)幀傳輸單元32用于應(yīng)用處理器的解碼線程將協(xié)議棧軟解 碼后的數(shù)據(jù)幀傳送至協(xié)處理器;協(xié)處理器解碼單元33用于協(xié)處理器對(duì)接收到的數(shù)據(jù)幀進(jìn)行硬解碼,并顯示解碼 后的視頻通話數(shù)據(jù)至顯示屏上。另外,進(jìn)行下行數(shù)據(jù)的傳輸時(shí),該系統(tǒng)還包括未讀數(shù)據(jù)幀數(shù)判斷單元、第一等待 解碼單元和第二等待解碼單元。其中,未讀數(shù)據(jù)幀數(shù)判斷單元用于當(dāng)檢測(cè)接收到的數(shù)據(jù)幀不是第一幀數(shù)據(jù)時(shí),且 數(shù)據(jù)幀的長(zhǎng)度要求的范圍內(nèi)時(shí),判斷緩沖池中未讀數(shù)據(jù)幀數(shù)是否大于等于緩沖池的大??;
8
第一等待解碼單元用于如果緩沖池中未讀數(shù)據(jù)幀數(shù)大于等于緩沖池的大小則等 待解碼線程解碼;第二等待解碼單元用于如果緩沖池中未讀數(shù)據(jù)幀數(shù)小于緩沖池的大小,則將接收 到的數(shù)據(jù)幀存入循環(huán)緩沖池中,直至緩沖池中未讀數(shù)據(jù)幀的幀數(shù)大于等于緩沖池的大小 時(shí),等待解碼線程解碼。另外,應(yīng)用處理器軟解碼數(shù)據(jù)幀傳輸單元32包括數(shù)據(jù)寫(xiě)入子單元和數(shù)據(jù)幀傳輸 子單元。其中,數(shù)據(jù)寫(xiě)入子單元用于當(dāng)解碼線程檢測(cè)到第一幀數(shù)據(jù)的長(zhǎng)度在要求的范圍內(nèi) 時(shí),將數(shù)據(jù)存入循環(huán)緩沖池中;數(shù)據(jù)幀傳輸子單元用于當(dāng)緩沖池中存在未讀數(shù)據(jù)幀且未讀數(shù)據(jù)幀的長(zhǎng)度不為零 時(shí),解碼線程將接收到并存入緩沖池中的數(shù)據(jù)幀傳送至協(xié)處理器。其中,數(shù)據(jù)幀傳輸子單元還包括未讀數(shù)據(jù)幀檢測(cè)模塊和未讀數(shù)據(jù)幀長(zhǎng)度檢測(cè)模 塊。未讀數(shù)據(jù)幀檢測(cè)模塊用于當(dāng)緩沖池中沒(méi)有未讀的數(shù)據(jù)幀,解碼線程一直處于等待 狀態(tài),等待緩沖池中有未讀數(shù)據(jù)幀且數(shù)據(jù)幀長(zhǎng)度不為零時(shí)傳送數(shù)據(jù)幀至協(xié)處理器;未讀數(shù)據(jù)幀長(zhǎng)度檢測(cè)模塊用于當(dāng)緩沖池中有未讀的數(shù)據(jù)幀,但該數(shù)據(jù)幀的長(zhǎng)度為 零時(shí),解碼線程一直檢測(cè)檢測(cè)緩沖池中的未讀數(shù)據(jù)幀,當(dāng)檢測(cè)到未讀數(shù)據(jù)幀長(zhǎng)度不為零時(shí) 傳送數(shù)據(jù)幀至協(xié)處理器。下面分別描述用于上行數(shù)據(jù)的編碼數(shù)據(jù)傳輸?shù)膯卧渲校瑓f(xié)處理器硬編碼單元34用于協(xié)處理器硬編碼攝像頭攝取的視頻通話數(shù)據(jù);協(xié)處理器編碼數(shù)據(jù)發(fā)送單元35用于協(xié)處理器完成視頻通話數(shù)據(jù)的硬編碼后,發(fā) 送編碼后的數(shù)據(jù)至應(yīng)用處理器;應(yīng)用處理器編碼數(shù)據(jù)接收單元36用于應(yīng)用處理器的編碼線程將接收到的編碼后 的數(shù)據(jù)發(fā)送給協(xié)議棧進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口。其中協(xié)處理器硬編碼單元34包括編碼子單元和數(shù)據(jù)上傳子單元。編碼子單元用于當(dāng)編碼數(shù)據(jù)引擎檢測(cè)到讀取的數(shù)據(jù)幀是第一數(shù)據(jù)幀時(shí),并且攝像 頭已經(jīng)成功打開(kāi),則協(xié)處理器進(jìn)行編碼配置,對(duì)接收到的數(shù)據(jù)幀進(jìn)行編碼;數(shù)據(jù)上傳子單元用于當(dāng)編碼數(shù)據(jù)引擎檢測(cè)到讀取的數(shù)據(jù)幀不是第一數(shù)據(jù)幀時(shí),并 且編碼緩沖池中沒(méi)有數(shù)據(jù)時(shí),等待并檢測(cè)直到編碼緩沖池中存在數(shù)據(jù)時(shí),按照一定的步長(zhǎng) 將緩沖區(qū)中的數(shù)據(jù)上傳。其中,應(yīng)用處理器編碼數(shù)據(jù)接收單元36包括數(shù)據(jù)長(zhǎng)度和幀數(shù)檢測(cè)子單元、協(xié)處 理器取數(shù)據(jù)通知子單元、應(yīng)用處理器的編碼線程取數(shù)據(jù)子單元和數(shù)據(jù)發(fā)送子單元。數(shù)據(jù)長(zhǎng)度和幀數(shù)檢測(cè)子單元用于應(yīng)用處理器的編碼線程啟動(dòng)后,檢測(cè)總的編碼數(shù) 據(jù)長(zhǎng)度和幀數(shù)是否小于規(guī)定的值;協(xié)處理器取數(shù)據(jù)通知子單元用于如果總的編碼數(shù)據(jù)長(zhǎng)度和幀數(shù)小于規(guī)定的值,則 通知協(xié)處理器取數(shù)據(jù);應(yīng)用處理器的編碼線程取數(shù)據(jù)子單元用于當(dāng)協(xié)處理器成功獲取數(shù)據(jù)后,應(yīng)用處理 器的編碼線程從協(xié)處理器中取數(shù)據(jù)到緩沖池中;數(shù)據(jù)發(fā)送子單元用于應(yīng)用處理器的編碼線程將緩沖池中存儲(chǔ)的編碼后的數(shù)據(jù)發(fā)送給協(xié)議棧進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口。具體情況如上所述,在此不再 贅述。在本發(fā)明實(shí)施例中,對(duì)于上行視頻通話數(shù)據(jù),首先由空中接口的視頻通話數(shù)據(jù)通 過(guò)通訊協(xié)議棧發(fā)給協(xié)議棧軟解碼,再由應(yīng)用處理器的解碼線程發(fā)給協(xié)處理器,協(xié)處理器硬 解碼后將接收到的視頻通話數(shù)據(jù)顯示到IXD上;對(duì)于上行視頻通話數(shù)據(jù),首先將攝像頭攝 取的視頻通話數(shù)據(jù)經(jīng)過(guò)協(xié)處理器硬編碼后,再通過(guò)應(yīng)用處理器的編碼線程,發(fā)送給協(xié)議棧 軟編碼后,通過(guò)通訊協(xié)議棧發(fā)送給空中接口。在其中,將編解碼的處理流程和控制流程分別 處理,處理邏輯簡(jiǎn)單,效率高,數(shù)據(jù)也不容易丟幀和溢出,不會(huì)造成馬賽克現(xiàn)象、圖像失真, 可以更加安全可靠的實(shí)現(xiàn)視頻通話過(guò)程中應(yīng)用處理器和協(xié)處理器之間編碼數(shù)據(jù)和解碼數(shù) 據(jù)的傳輸。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
一種處理器間編解碼數(shù)據(jù)的傳輸方法,其特征在于,所述方法包括下述步驟對(duì)于下行數(shù)據(jù)當(dāng)寫(xiě)解碼數(shù)據(jù)引擎檢測(cè)到通過(guò)協(xié)議棧軟解碼的數(shù)據(jù)幀是第一幀時(shí),配置協(xié)處理器解碼設(shè)置,啟動(dòng)應(yīng)用處理器的解碼線程存儲(chǔ)軟解碼后的數(shù)據(jù)幀至循環(huán)緩沖池中;應(yīng)用處理器的解碼線程將協(xié)議棧軟解碼后的數(shù)據(jù)幀傳送至協(xié)處理器;協(xié)處理器對(duì)接收到的數(shù)據(jù)幀進(jìn)行硬解碼,并顯示解碼后的視頻通話數(shù)據(jù)至顯示屏上;對(duì)于上行數(shù)據(jù)協(xié)處理器硬編碼攝像頭攝取的視頻通話數(shù)據(jù);協(xié)處理器完成視頻通話數(shù)據(jù)的硬編碼后,發(fā)送編碼后的數(shù)據(jù)至應(yīng)用處理器;應(yīng)用處理器的編碼線程將接收到的編碼后的數(shù)據(jù)發(fā)送給協(xié)議棧進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口。
2.如權(quán)利要求1所述的方法,其特征在于,在所述應(yīng)用處理器的解碼線程將協(xié)議棧軟 解碼后的數(shù)據(jù)幀傳送至協(xié)處理器的步驟之前,所述方法還包括下述步驟當(dāng)檢測(cè)接收到的數(shù)據(jù)幀不是第一幀數(shù)據(jù)時(shí),且數(shù)據(jù)幀的長(zhǎng)度要求的范圍內(nèi)時(shí),判斷緩 沖池中未讀數(shù)據(jù)幀數(shù)是否大于等于緩沖池的大??;如果緩沖池中未讀數(shù)據(jù)幀數(shù)大于等于緩沖池的大小則等待解碼線程解碼; 如果緩沖池中未讀數(shù)據(jù)幀數(shù)小于緩沖池的大小,則將接收到的數(shù)據(jù)幀存入循環(huán)緩沖池 中,直至緩沖池中未讀數(shù)據(jù)幀的幀數(shù)大于等于緩沖池的大小時(shí),等待解碼線程解碼。
3.如權(quán)利要求1所述的方法,其特征在于,所述應(yīng)用處理器的解碼線程將協(xié)議棧軟解 碼后的數(shù)據(jù)幀傳送至協(xié)處理器的步驟具體為當(dāng)解碼線程檢測(cè)到第一幀數(shù)據(jù)的長(zhǎng)度在要求的范圍內(nèi)時(shí),將數(shù)據(jù)存入循環(huán)緩沖池中; 當(dāng)緩沖池中存在未讀數(shù)據(jù)幀且未讀數(shù)據(jù)幀的長(zhǎng)度不為零時(shí),解碼線程將接收到并存入 緩沖池中的數(shù)據(jù)幀傳送至協(xié)處理器。
4.如權(quán)利要求3所述的方法,其特征在于,在所述解碼線程將接收到并存入緩沖池中 的數(shù)據(jù)幀傳送至協(xié)處理器的步驟之前,所述方法還包括下述步驟當(dāng)緩沖池中沒(méi)有未讀的數(shù)據(jù)幀,解碼線程一直處于等待狀態(tài),等待緩沖池中有未讀數(shù) 據(jù)幀且數(shù)據(jù)幀長(zhǎng)度不為零時(shí)傳送數(shù)據(jù)幀至協(xié)處理器。
5.如權(quán)利要求3所述的方法,其特征在于,在所述解碼線程將接收到并存入緩沖池中 的數(shù)據(jù)幀傳送至協(xié)處理器的步驟之前,所述方法還包括下述步驟當(dāng)緩沖池中有未讀的數(shù)據(jù)幀,但該數(shù)據(jù)幀的長(zhǎng)度為零時(shí),解碼線程一直檢測(cè)檢測(cè)緩沖 池中的未讀數(shù)據(jù)幀,當(dāng)檢測(cè)到未讀數(shù)據(jù)幀長(zhǎng)度不為零時(shí)傳送數(shù)據(jù)幀至協(xié)處理器。
6.如權(quán)利要求1所述的方法,其特征在于,所述通過(guò)協(xié)處理器硬編碼攝像頭攝取的視 頻通話數(shù)據(jù)的步驟具體為當(dāng)編碼數(shù)據(jù)引擎檢測(cè)到讀取的數(shù)據(jù)幀是第一數(shù)據(jù)幀時(shí),并且攝像頭已經(jīng)成功打開(kāi),則 協(xié)處理器進(jìn)行編碼配置,對(duì)接收到的數(shù)據(jù)幀進(jìn)行編碼;當(dāng)編碼數(shù)據(jù)引擎檢測(cè)到讀取的數(shù)據(jù)幀不是第一數(shù)據(jù)幀時(shí),并且編碼緩沖池中沒(méi)有數(shù)據(jù) 時(shí),等待并檢測(cè)直到編碼緩沖池中存在數(shù)據(jù)時(shí),按照一定的步長(zhǎng)將緩沖區(qū)中的數(shù)據(jù)上傳。
7.如權(quán)利要求1所述的方法,其特征在于,所述應(yīng)用處理器的編碼線程將接收到的編 碼后的數(shù)據(jù)發(fā)送給協(xié)議棧進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口的步驟具體為應(yīng)用處理器的編碼線程啟動(dòng)后,檢測(cè)總的編碼數(shù)據(jù)長(zhǎng)度和幀數(shù)是否小于規(guī)定的值;如果總的編碼數(shù)據(jù)長(zhǎng)度和幀數(shù)小于規(guī)定的值,則通知協(xié)處理器取數(shù)據(jù);當(dāng)協(xié)處理器成功獲取數(shù)據(jù)后,應(yīng)用處理器的編碼線程從協(xié)處理器中取數(shù)據(jù)到緩沖池中;應(yīng)用處理器的編碼線程將緩沖池中存儲(chǔ)的編碼后的數(shù)據(jù)發(fā)送給協(xié)議棧進(jìn)行軟編碼后 通過(guò)通訊協(xié)議棧發(fā)送給空中接口。
8.—種處理器間編解碼數(shù)據(jù)的傳輸系統(tǒng),其特征在于,所述系統(tǒng)包括應(yīng)用處理器解碼線程啟動(dòng)單元,用于當(dāng)寫(xiě)解碼數(shù)據(jù)引擎檢測(cè)到通過(guò)協(xié)議棧軟解碼的數(shù) 據(jù)幀是第一幀時(shí),配置協(xié)處理器解碼設(shè)置,啟動(dòng)應(yīng)用處理器的解碼線程存儲(chǔ)軟解碼后的數(shù) 據(jù)幀至循環(huán)緩沖池中;應(yīng)用處理器軟解碼數(shù)據(jù)幀傳輸單元,用于應(yīng)用處理器的解碼線程將協(xié)議棧軟解碼后的 數(shù)據(jù)幀傳送至協(xié)處理器;協(xié)處理器解碼單元,用于協(xié)處理器對(duì)接收到的數(shù)據(jù)幀進(jìn)行硬解碼,并顯示解碼后的視 頻通話數(shù)據(jù)至顯示屏上;協(xié)處理器硬編碼單元,用于協(xié)處理器硬編碼攝像頭攝取的視頻通話數(shù)據(jù); 協(xié)處理器編碼數(shù)據(jù)發(fā)送單元,用于協(xié)處理器完成視頻通話數(shù)據(jù)的硬編碼后,發(fā)送編碼 后的數(shù)據(jù)至應(yīng)用處理器;應(yīng)用處理器編碼數(shù)據(jù)接收單元,用于應(yīng)用處理器的編碼線程將接收到的編碼后的數(shù)據(jù) 發(fā)送給協(xié)議棧進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口。
9.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括未讀數(shù)據(jù)幀數(shù)判斷單元,用于當(dāng)檢測(cè)接收到的數(shù)據(jù)幀不是第一幀數(shù)據(jù)時(shí),且數(shù)據(jù)幀的 長(zhǎng)度要求的范圍內(nèi)時(shí),判斷緩沖池中未讀數(shù)據(jù)幀數(shù)是否大于等于緩沖池的大??;第一等待解碼單元,用于如果緩沖池中未讀數(shù)據(jù)幀數(shù)大于等于緩沖池的大小則等待解 碼線程解碼;第二等待解碼單元,用于如果緩沖池中未讀數(shù)據(jù)幀數(shù)小于緩沖池的大小,則將接收到 的數(shù)據(jù)幀存入循環(huán)緩沖池中,直至緩沖池中未讀數(shù)據(jù)幀的幀數(shù)大于等于緩沖池的大小時(shí), 等待解碼線程解碼。
10.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述應(yīng)用處理器軟解碼數(shù)據(jù)幀傳輸單元包括數(shù)據(jù)寫(xiě)入子單元,用于當(dāng)解碼線程檢測(cè)到第一幀數(shù)據(jù)的長(zhǎng)度在要求的范圍內(nèi)時(shí),將數(shù) 據(jù)存入循環(huán)緩沖池中;數(shù)據(jù)幀傳輸子單元,用于當(dāng)緩沖池中存在未讀數(shù)據(jù)幀且未讀數(shù)據(jù)幀的長(zhǎng)度不為零時(shí), 解碼線程將接收到并存入緩沖池中的數(shù)據(jù)幀傳送至協(xié)處理器。
11.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述數(shù)據(jù)幀傳輸子單元還包括未讀數(shù)據(jù)幀檢測(cè)模塊,用于當(dāng)緩沖池中沒(méi)有未讀的數(shù)據(jù)幀,解碼線程一直處于等待狀 態(tài),等待緩沖池中有未讀數(shù)據(jù)幀且數(shù)據(jù)幀長(zhǎng)度不為零時(shí)傳送數(shù)據(jù)幀至協(xié)處理器。
12.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述數(shù)據(jù)幀傳輸子單元還包括未讀數(shù)據(jù)幀長(zhǎng)度檢測(cè)模塊,用于當(dāng)緩沖池中有未讀的數(shù)據(jù)幀,但該數(shù)據(jù)幀的長(zhǎng)度為零 時(shí),解碼線程一直檢測(cè)檢測(cè)緩沖池中的未讀數(shù)據(jù)幀,當(dāng)檢測(cè)到未讀數(shù)據(jù)幀長(zhǎng)度不為零時(shí)傳送數(shù)據(jù)幀至協(xié)處理器。
13.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述協(xié)處理器硬編碼單元包括編碼子單元,用于當(dāng)編碼數(shù)據(jù)引擎檢測(cè)到讀取的數(shù)據(jù)幀是第一數(shù)據(jù)幀時(shí),并且攝像頭 已經(jīng)成功打開(kāi),則協(xié)處理器進(jìn)行編碼配置,對(duì)接收到的數(shù)據(jù)幀進(jìn)行編碼;數(shù)據(jù)上傳子單元,用于當(dāng)編碼數(shù)據(jù)引擎檢測(cè)到讀取的數(shù)據(jù)幀不是第一數(shù)據(jù)幀時(shí),并且 編碼緩沖池中沒(méi)有數(shù)據(jù)時(shí),等待并檢測(cè)直到編碼緩沖池中存在數(shù)據(jù)時(shí),按照一定的步長(zhǎng)將 緩沖區(qū)中的數(shù)據(jù)上傳。
14.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述應(yīng)用處理器編碼數(shù)據(jù)接收單元包括 數(shù)據(jù)長(zhǎng)度和幀數(shù)檢測(cè)子單元,用于應(yīng)用處理器的編碼線程啟動(dòng)后,檢測(cè)總的編碼數(shù)據(jù)長(zhǎng)度和幀數(shù)是否小于規(guī)定的值;協(xié)處理器取數(shù)據(jù)通知子單元,用于如果總的編碼數(shù)據(jù)長(zhǎng)度和幀數(shù)小于規(guī)定的值,則通 知協(xié)處理器取數(shù)據(jù);應(yīng)用處理器的編碼線程取數(shù)據(jù)子單元,用于當(dāng)協(xié)處理器成功獲取數(shù)據(jù)后,應(yīng)用處理器 的編碼線程從協(xié)處理器中取數(shù)據(jù)到緩沖池中;數(shù)據(jù)發(fā)送子單元,用于應(yīng)用處理器的編碼線程將緩沖池中存儲(chǔ)的編碼后的數(shù)據(jù)發(fā)送給 協(xié)議棧進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口。
15.一種可視電話,其特征在于,所述可視電話包括權(quán)利要求8至14任一權(quán)利要求所述 的處理器間編解碼數(shù)據(jù)的傳輸系統(tǒng)。
全文摘要
本發(fā)明適用于移動(dòng)通信技術(shù)領(lǐng)域,提供了一種處理器間編解碼數(shù)據(jù)的傳輸方法、系統(tǒng)及可視電話,所述方法包括下述步驟當(dāng)寫(xiě)解碼數(shù)據(jù)引擎檢測(cè)到通過(guò)協(xié)議棧軟解碼的數(shù)據(jù)幀是第一幀時(shí),配置協(xié)處理器解碼設(shè)置,啟動(dòng)應(yīng)用處理器的解碼線程;應(yīng)用處理器的解碼線程將協(xié)議棧軟解碼后的數(shù)據(jù)幀傳送至協(xié)處理器;協(xié)處理器對(duì)數(shù)據(jù)幀進(jìn)行硬解碼,并顯示解碼后的視頻通話數(shù)據(jù)至顯示屏上;協(xié)處理器硬編碼攝像頭攝取的視頻通話數(shù)據(jù);協(xié)處理器發(fā)送編碼后的數(shù)據(jù)至應(yīng)用處理器;應(yīng)用處理器的編碼線程將編碼后的數(shù)據(jù)發(fā)送給協(xié)議棧進(jìn)行軟編碼后通過(guò)通訊協(xié)議棧發(fā)送給空中接口。在本發(fā)明,可以更加安全可靠的實(shí)現(xiàn)視頻通話過(guò)程中編解碼數(shù)據(jù)的傳輸。
文檔編號(hào)H04N7/26GK101895743SQ20101012258
公開(kāi)日2010年11月24日 申請(qǐng)日期2010年3月11日 優(yōu)先權(quán)日2010年3月11日
發(fā)明者郝國(guó)棟 申請(qǐng)人:宇龍計(jì)算機(jī)通信科技(深圳)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
左云县| 柯坪县| 景宁| 天气| 祁连县| 监利县| 济阳县| 平乡县| 华容县| 壶关县| 越西县| 牡丹江市| 铜鼓县| 新宁县| 竹山县| 霍城县| 常宁市| 鄂伦春自治旗| 西吉县| 巧家县| 宜春市| 正宁县| 长乐市| 河间市| 眉山市| 辽中县| 宜春市| 泉州市| 徐水县| 新巴尔虎右旗| 镇巴县| 东阳市| 济阳县| 太仓市| 昌邑市| 赤水市| 和林格尔县| 滁州市| 洛隆县| 天祝| 平遥县|