動影像數據的實時通信協議編碼方法
2023-05-20 09:00:06 4
專利名稱:動影像數據的實時通信協議編碼方法
技術領域:
本發明是有關動影像數據實時通信協議編碼方法的發明,特別是在把電視和外部圖像信號轉換為MPEG等數位訊號,以無線網絡傳送的設備,使其可以減少RTP編碼其圖像數據所需的系統資源的動影像數據的實時通信協議編碼方法相關的發明。
背景技術:
一般來說,無線電視機設備作為一種具備得到電視接收信號和外部圖像信號的輸入,轉換為MPEG等數位訊號,以無線網絡傳送的電視調諧器的啟動掃描轉換器(UP Scan Convertor),是無需電腦主機,也可以僅用可連接網絡的顯示器(如智能型顯示器)視聽電視機和有線電視之類外部圖像信號的設備。
現在開發的無線電視設備大致以編碼電視機之類的多媒體信號,以無線網絡傳送的設備(編解碼器(cradle)或電視盒)和解碼通過無線網絡接收的信號,傳送給畫面的設備(智能型顯示器)構成。
上述無線圖像傳送設備(編解碼器或電視盒)是利用調諧器接收電視信號,運行視頻和音頻解碼後,通過自身的CPU(中央處理器)以MPEG2形式運行圖像壓縮,通過無線網絡傳送給智能型顯示器,智能型顯示器是接收其壓縮圖像數據後,進行解析/還原,輸出給畫面。
這時,為了把上述無線圖像傳送設備壓縮的圖像數據通過無線網絡傳送,如圖l所示那樣,需要運行以MPEG形式壓縮的圖像數據前粘貼實時傳送協議頭(時間戳、序列號、有效載荷類型之類的對圖像數據的12位信息)的RTP編碼過程。
之後,如上述那樣運行RTP編碼的數據是通過UDP(用戶數據包協議)傳送,為了傳送用戶數據包協議,使用OS(作業系統)提供的數據傳送API(應用編程接口)(如sendto)。這時,在上述『sendto』,將要傳送的數據開始號(包括實時傳送協議頭在內的開始地址)進入第一個位置,將要傳送的數據大小(包括實時傳送協議頭和MPEG數據在內的大小)進入第二個位置。
此外,在上述無線圖像傳送設備壓縮為MPEG的數據如圖2所示那樣,內存上連續地存在,但根據RTP編碼時的傳送率,使用了把一定大小(如8KB)的MPEG數據(數據0、數據1~數據N)複製給緩衝器(沒有圖示)後,其前面粘貼實時傳送協議頭的方法。
這時,把上述內存的數據以一定大小複製給緩衝器的操作使用作業系統提供的數據複製API(如memcpy),上述『memcpy』是消耗中央處理器的較多資源。因此,如果把電視信號壓縮為MPEG2形式,每秒產生2Mbps以上的較多數據。為了RTP編碼,實時利用『memcpy』複製這些時,因中央處理器資源的缺陷,導致整個系統性能低下的問題。
發明內容於是,本發明是為解決上述現有問題而開發,其目的在於,如把電視和外部圖像信號轉換為MPEG之類的數位訊號,以無線網絡傳送的設備所述,提供使其可以減少其圖像數據的RTP編碼所需的系統資源的動影像數據的實時通信協議編碼方法。
為了實現上述目的,本發明是如把圖像信號轉換為MPEG之類的數位訊號,以無線網絡傳送的無線圖像傳送設備所述,以如下步驟構成為特點判斷上述無線圖像傳送設備需要傳送的壓縮圖像數據是否屬於儲存壓縮圖像數據內存的第一個數據的步驟、如果上述需要傳送的數據屬於內存的第一個數據,就把實時傳送協議頭填充在臨時緩衝器後,複製上述壓縮圖像數據,運行RTP編碼的步驟、根據上述判斷,如果不屬於內存的第一個數據,把下一個將要傳送數據的實時傳送協議頭覆蓋在已經傳送數據的內存領域,運行RTP編碼的步驟。
本發明是在無線圖像傳送設備,運行旨在傳送圖像的RTP編碼時,不是把內存儲存的圖像數據複製在緩衝器,而是把需要傳送的圖像數據的實時傳送協議頭覆蓋在此前傳送圖像數據的內存領域,使其傳送RTP編碼的圖像數據後,反覆運行對下次將要傳送給其領域圖像數據實時傳送協議頭的覆蓋過程,提供能夠減少RTP編碼操作所需的中央處理器資源的方法作為要點。
即,如果RTP編碼壓縮圖像數據(數據N),將要以用戶數據包協議傳送時,本發明把『數據N』的實時傳送協議頭覆蓋在此前傳送的圖像數據(數據N-1)的內存領域後,使其可以把實時傳送協議頭的開始號放在數據傳送API(sendto)的第一個位置傳送,以此無需把旨在RTP編碼的數據複製給內存上的其它緩衝器,也可以運行RTP編碼。
如上所述,本發明的動影像數據的實時通信協議編碼方法是,如把電視和外部圖像信號轉換為MPEG之類的數位訊號,以無線網絡輸出的設備所述,具有可以使其減少圖像數據的RTP編碼所需系統資源的效果。
圖1是為說明普通RTP編碼過程的示例圖。
圖2是在無線圖像傳送設備,儲存以MPEG形式壓縮的圖像數據的內存圖的示例圖。
圖3是為說明本發明的RTP編碼方法的內存圖的示例圖。
圖4是表示本發明的動影像數據的RTP編碼方法的順序圖。
具體實施方式下面將參照附圖對本發明的實施例進行詳細說明。
圖3是為說明本發明的RTP編碼方法的內存圖的示例圖。如圖3所示那樣,在無線圖像傳送設備以MPEG形式壓縮的數據是暫時儲存在內存(環緩衝區,100),根據數據傳送率,對將要首次傳送的一定大小(如8KB)的圖像數據(數據0),與現有方式一樣,複製給其它緩衝器後,運行RTP編碼。
即,首次傳送的圖像數據(數據0)因不存在能夠覆蓋實時傳送協議頭的內存空間,以現有方式把實時傳送協議頭填充給臨時緩衝器後,再次填充圖像數據,運行RTP編碼。
如上所述,如果傳送第一個圖像數據(數據0),就無需保存已經傳送的數據,因此,產生相當於傳送數據大小的內存空間。於是,從傳送下一個數據(數據1)開始,把下一個將要傳送的圖像數據(數據1)的實時傳送協議頭填充在此前數據的傳送而產生的內存空間,運行編碼。
之後,如果上述RTP編碼的圖像數據(數據1)的傳送結束,就無需保存『數據1』,因此,把其圖像數據(數據2)相應的實時傳送協議頭填充在下一個將要傳送的圖像數據(數據2)的前面,並運行編碼。
如上所述,因反覆RTP編碼和圖像數據的傳送,如果結束最後一個圖像數據(數據N)的傳送,就把相應數據(數據N+1)的實時傳送協議頭覆蓋在其內存領域(數據N)的下一個將要傳送的數據(數據N+1)之前。
之後,為了以用戶數據包協議傳送上述運行RTP編碼的圖像數據,需使用作業系統提供的『sendto』API,但把需要傳送數據的前面內存領域裡覆蓋的實時傳送協議頭開始號輸出給其API的第一個位置,把相當於上述實時傳送協議頭和將要傳送的壓縮圖像數據累計的大小輸入給第二個位置。
如上所述,現有方式是根據傳送率發生變化,但因把相應大小(如8KB)的圖像數據複製給其它緩衝器,需要中央處理器資源。但本發明是因把12位大小的實時傳送協議頭覆蓋在存有壓縮圖像數據的內存空閒領域,幾乎不需要中央處理器的資源。
圖4是表示本發明的動影像數據RTP編碼方法的順序圖。如圖所示,判斷需要傳送的數據是否屬於內存第一個數據(最下面領域的數據)。即,因為第一個傳送的數據不存在其之前填充實時傳送協議頭的空閒內存領域。
根據上述判斷,如果現在需要傳送的數據是屬於處在內存第一個位置的數據(第一個將要傳送的數據),就把實時傳送協議頭填充在臨時緩衝器後,複製壓縮圖像數據,運行RTP編碼。
如果不屬於首次傳送的數據,就把下一個將要傳送數據(數據N)的實時傳送協議頭覆蓋在已經傳送的數據(數據N-1)的內存領域末端,運行RTP編碼。即,即使不會把壓縮圖像數據複製給填充實時傳送協議頭的臨時緩衝器,也成為儲存實時傳送協議頭後,接著儲存下一個將要傳送數據的相同形式。
之後,上述運行RTP編碼的圖像數據使用『sendto』API以用戶數據包協議傳送。這時,如果把壓縮圖像數據複製在現有臨時緩衝器,運行RTP編碼,輸入到『sendto』API的第一個位置的開始地址就相同,但本發明因實時傳送協議頭的開始地址持續變化,將輸入其變化的開始地址。
如上所述,本發明是在已經傳送的壓縮圖像數據存有的內存領域,只覆蓋下一個將要傳送的壓縮圖像數據的實時傳送協議頭,因此,可以減少複製在現有臨時緩衝器的壓縮圖像數據的複製次數,以此實現中央處理器資源的節約,可以提高系統的穩定動作和性能。
權利要求
1.動影像數據的實時通信協議編碼方法,所述方法將圖像信號轉換為MPEG之類數位訊號,以無線網絡輸出的無線圖像傳送設備所述,包括判斷上述無線圖像傳送設備需要傳送的壓縮圖像數據是否屬於儲存壓縮圖像數據的內存第一個數據的步驟;如果上述需要傳送的數據屬於內存第一個數據,就把實時傳送協議頭填充在臨時緩衝器後,複製上述壓縮圖像數據,運行RTP編碼的步驟;上述判斷結果,如果不是屬於內存第一個數據,就把下一個將要傳送數據的實時傳送協議頭覆蓋在已經傳送的此前數據的內存領域,運行RTP編碼的步驟。
2.如權利要求項1所述的動影像數據的實時通信協議編碼方法,其特徵在於,以用戶數據包協議傳送上述RTP編碼的圖像數據時,把實時傳送協議頭的開始地址輸入給為傳送數據而使用的應用編程接口的第一個位置,並進行傳送。
3.如權利要求項1所述的動影像數據的實時通信協議編碼方法,其特徵在於,上述依次傳送的圖像數據是根據指定的傳送率設定的一定大小數據。
4.如權利要求項1所述的動影像數據的實時通信協議編碼方法,其特徵在於,上述首次傳送的數據是不存在其前面能夠填充實時傳送協議頭的空閒內存領域,並且儲存在最下面內存領域的數據。
全文摘要
本發明是有關在把電視和外部圖像信號轉換為動態圖像專家組壓縮標準等數位訊號,以無線網絡的輸出設備,使其可以減少實時傳送協議編碼其圖像數據所需的系統資源的動影像數據的實時通信協議編碼方法的發明。包括判斷上述無線圖像傳送設備需要傳送的壓縮圖像數據是否屬於儲存壓縮圖像數據的內存第一個數據的步驟、如果上述需要傳送的數據屬於內存第一個數據,就把實時傳送協議頭填充在臨時緩衝器後,複製上述壓縮圖像數據,運行RTP編碼的步驟、上述判斷結果,如果不是屬於內存第一個數據,就把下一個將要傳送數據的實時傳送協議頭覆蓋在已經傳送的此前數據的內存領域,運行RTP編碼的步驟。
文檔編號H04L29/06GK1812578SQ200510033069
公開日2006年8月2日 申請日期2005年1月28日 優先權日2005年1月28日
發明者權純鉉 申請人:樂金電子(惠州)有限公司