TWI819455B - 視訊處理系統以及方法 - Google Patents

視訊處理系統以及方法 Download PDF

Info

Publication number
TWI819455B
TWI819455B TW111100141A TW111100141A TWI819455B TW I819455 B TWI819455 B TW I819455B TW 111100141 A TW111100141 A TW 111100141A TW 111100141 A TW111100141 A TW 111100141A TW I819455 B TWI819455 B TW I819455B
Authority
TW
Taiwan
Prior art keywords
data
video
processing circuit
video processing
circuit
Prior art date
Application number
TW111100141A
Other languages
English (en)
Other versions
TW202309828A (zh
Inventor
馬冀
Original Assignee
瑞昱半導體股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 瑞昱半導體股份有限公司 filed Critical 瑞昱半導體股份有限公司
Publication of TW202309828A publication Critical patent/TW202309828A/zh
Application granted granted Critical
Publication of TWI819455B publication Critical patent/TWI819455B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements

Abstract

一種視訊處理系統包含一系統處理電路以及一視訊處理電路。系統處理電路包含一圖像緩衝區以及一開放多媒體加速層。圖像緩衝區用以儲存來自一攝影機的一視訊資料。開放多媒體加速層用以擷取相關於視訊資料的至少一資料參數。視訊處理電路用以接收至少一資料參數,依據至少一資料參數自圖像緩衝區接收視訊資料,依據至少一資料參數對視訊資料進行編碼以產生一編碼資料,且將編碼資料傳輸至系統處理電路。

Description

視訊處理系統以及方法
本揭示中所述實施例內容是有關於一種視訊處理系統以及方法,特別關於一種可減輕系統處理電路工作量(loading)的視訊處理系統以及方法。
隨著技術的發展,越來越多電子裝置會搭載攝影機以供使用者進行拍照或錄影等功能。以錄影為例,在現有技術中,當視訊資料的解析度越高,這些電子裝置中的系統處理器的工作量將會越大。這會造成由系統處理器所運行的作業系統運作緩慢,甚至發生當機的問題。
本揭示之一些實施方式是關於一種視訊處理系統。視訊處理系統包含一系統處理電路以及一視訊處理電路。系統處理電路包含一圖像緩衝區以及一開放多媒體加速層。圖像緩衝區用以儲存來自一攝影機的一視訊資料。開放多媒體加速層用以擷取相關於視訊資料的至少一資料參數。視訊處理電路用以接收至少一資料參數,依據至少一資料參數自圖像緩衝區接收視訊資料,依據至少一資料參數對視訊資料進行編碼以產生一編碼資料,且將編碼資料傳輸至系統處理電路。
本揭示之一些實施方式是關於一種視訊處理方法。視訊處理方法包含以下運作:藉由一系統處理電路的一圖像緩衝區儲存來自一攝影機的一視訊資料;藉由系統處理電路的一開放多媒體加速層擷取相關於視訊資料的至少一資料參數;藉由一視訊處理電路接收至少一資料參數;藉由視訊處理電路依據至少一資料參數自圖像緩衝區接收視訊資料;藉由視訊處理電路依據至少一資料參數對視訊資料進行編碼以產生一編碼資料;以及藉由視訊處理電路將編碼資料傳輸至系統處理電路。
綜上所述,在本揭示中,系統處理電路可擷取視訊資料的資料參數且將資料參數傳輸至視訊處理電路。接著,視訊處理電路可依據資料參數直接自圖像緩衝區接收視訊資料以進行後續的編碼。據此,系統處理電路毋需對視訊資料進行多次拷貝,因此可降低系統處理電路的工作量,進而使得作業系統可運作順暢。
在本文中所使用的用詞『耦接』亦可指『電性耦接』,且用詞『連接』亦可指『電性連接』。『耦接』及『連接』亦可指二個或多個元件相互配合或相互互動。
參考第1圖。第1圖是依照本揭示一些實施例所繪示的視訊處理系統100的示意圖。
以第1圖示例而言,視訊處理系統100包含系統處理電路110以及視訊處理電路120。系統處理電路110耦接視訊處理電路120以及攝影機CM。
視訊處理系統100可設置於一電子裝置的系統晶片(system on chip,SoC)上。在一些實施例中,若上述電子裝置為智慧電視,則攝影機CM可設置於智慧電視的系統晶片的外部。在一些其他的實施例中,若上述電子裝置為智慧型手機,則攝影機CM可與視訊處理系統100整合且設置於智慧型手機的內部。
攝影機CM可用以進行拍照或錄影等功能。以下將以錄影功能為例進行說明。
在功能上,系統處理電路110主要運行與電子裝置的作業系統相關的應用程序。舉例而言,若此電子裝置搭載安卓(Android)作業系統,系統處理電路110可運行與安卓作業系統相關的應用程序。而視訊處理電路120主要用以處理來自攝影機CM的視訊資料VD。舉例而言,當攝影機CM執行錄影功能時,攝影機CM會產生視訊資料VD。而視訊處理電路120可對來自攝影機CM的視訊資料VD進行編碼且將編碼後的資料回傳至系統處理電路110。
以第1圖示例而言,系統處理電路110包含幀緩衝區(frame buffer)111、圖像緩衝區(graphic buffer)112、系統框架(frame work)113、開放多媒體加速(open media acceleration,OpenMax)層114以及解碼電路115。在一些實施例中,系統框架113以及開放多媒體加速層114是以軟體實現且儲存於系統處理電路110的儲存元件中。
幀緩衝區111耦接攝影機CM以及圖像緩衝區112。圖像緩衝區112耦接系統框架113。開放多媒體加速層114耦接於系統框架113與視訊處理電路120之間。系統框架113更耦接解碼電路115。
以第1圖示例而言,視訊處理電路120包含環形緩衝區(ring buffer)121、讀取電路122、記憶體123、編碼電路124以及環形緩衝區125。
環形緩衝區121耦接開放多媒體加速層114以及讀取電路122。讀取電路122耦接記憶體123以及編碼電路124。編碼電路124耦接記憶體123以及環形緩衝區125。環形緩衝區125耦接開放多媒體加速層114。
以下將以視訊處理系統100設置於搭載安卓作業系統的智慧電視為例進行說明,但本揭示不以此為限。
在運作上,當攝影機CM執行錄影功能時,攝影機CM會產生原始的視訊資料VD。視訊資料VD會傳輸至幀緩衝區111。舉例而言,在幀緩衝區111中的視訊資料VD會以一幀一幀的形式儲存。接著,視訊資料VD可透過一應用程式介面(例如:CameraHal)被轉化且儲存至圖像緩衝區112。此應用程式介面可利用軟體實現。舉例而言,視訊資料VD會依據作業系統(例如:安卓作業系統)的規範儲存於圖像緩衝區112中。在一些實施例中,圖像緩衝區112可配置於系統處理電路110的動態隨機存取記憶體(dynamic random-access memory,DRAM)中。
視訊資料VD可透過作業系統的系統框架113傳輸至開放多媒體加速層114。而開放多媒體加速層114可擷取相關於視訊資料VD的至少一資料參數P。接著,開放多媒體加速層114可將資料參數P傳輸至視訊處理電路120。在一些實施例中,資料參數P可包含視訊資料VD於圖像緩衝區112中的實體位址(physical address)、視訊資料VD的資料尺寸(size)以及視訊資料VD的編碼格式中的至少一者。資料尺寸例如是資料長度。編碼格式例如是YUV或RGB。在一些實施例中,前述實體位址、資料尺寸以及編碼格式可封裝於一資料結構中,以傳輸至視訊處理電路120。
視訊處理電路120可自系統處理電路110接收資料參數P,且依據資料參數P自圖像緩衝區112接收視訊資料VD。具體而言,環形緩衝區121可自開放多媒體加速層114接收資料參數P,且將資料參數P傳輸至讀取電路122。而讀取電路122可接收資料參數P,且依據資料參數P向記憶體123要求視訊處理緩衝區1231。另一方面,讀取電路122可依據資料參數P將儲存於圖像緩衝區112中的視訊資料VD讀取出來。舉例而言,讀取電路122可依據資料參數P所攜帶的實體位址判斷欲讀取的視訊資料VD被儲存於圖像緩衝區112中的對應位置,且可依據資料參數P所攜帶的資料尺寸判斷欲讀取的視訊資料VD的資料量。據此,讀取電路122可依據上述的實體位址以及資料尺寸將儲存於圖像緩衝區112中的視訊資料VD讀取出來。接著,讀取電路122可將讀取出來的視訊資料VD存入視訊處理緩衝區1231。視訊處理緩衝區1231的容量則可依據自圖像緩衝區112讀取出來的視訊資料VD的資料量而決定。
編碼電路124可接收來自讀取電路122的資料參數P且接收來自視訊處理緩衝區1231的視訊資料VD。如前所述,資料參數P可更包含視訊資料VD的編碼格式。也就是說,編碼電路124可依據資料參數P中的編碼格式(例如:YUV或RGB)對視訊資料VD進行編碼以產生編碼資料ED。
接著,開放多媒體加速層114可接收來自環形緩衝區125的編碼資料ED。開放多媒體加速層114可將編碼資料ED傳送至系統框架113。而系統框架113可將編碼資料ED傳輸至解碼電路115。而解碼電路115可對編碼資料ED進行解碼以產生解碼資料DD。
在一些實施例中,解碼資料DD可供一顯示器顯示出對應的影像。在一些其他的實施例中,解碼資料DD亦可被儲存起來。
在一些相關技術中,攝影機所產生的視訊資料會先被拷貝至開放多媒體加速層的緩衝區。接著,再從開放多媒體加速層的緩衝區拷貝至視訊處理電路中的共享記憶體中。換句話說,視訊資料在系統處理電路中會被多次拷貝。然而,多次的拷貝將會增加系統處理電路的工作量。尤其,編碼前的視訊資料的資料量非常龐大且隨著視訊資料的解析度越高,系統處理電路的工作量將會越大。這會造成由系統處理器所運行的作業系統運作緩慢,甚至發生當機的問題。
相較於上述該些相關技術,在本揭示中,系統處理電路110可擷取視訊資料VD的資料參數P且將資料參數P傳輸至視訊處理電路120。接著,視訊處理電路120可依據資料參數P直接自圖像緩衝區112接收(拷貝)視訊資料VD以進行後續的編碼。據此,視訊資料VD毋需在系統處理電路110中進行多次拷貝,因此可降低系統處理電路110的工作量,進而使得作業系統可運作順暢。
另外,視訊處理電路120主要是以硬體實現。據此,相較於上述該些相關技術利用軟體(系統框架113、開放多媒體加速層114)進行資料拷貝,以硬體實現的視訊處理電路120的資料拷貝速度較快,因此本揭示可提高對視訊資料VD的處理效率。
再者,藉由本揭示的作法,毋需降低視訊資料VD的解析度或幀率,也毋需關閉其他由系統處理電路110所運行的應用程序。
參考第2圖。第2圖是依照本揭示一些實施例所繪示的視訊處理方法200的流程圖。以第2圖示例而言,視訊處理方法200包含操作S210、操作S220、操作S230、操作S240、操作S250以及操作S260。應瞭解到,在本實施方法中所提及的操作,除特別敘明其順序者外,均可依實際需要調整其前後順序,甚至可同時或部分同時執行。
在一些實施例中,視訊處理方法200可應用於第1圖中的視訊處理系統100中,但本揭示不以此為限。為易於理解,以下段落將搭配第1圖的視訊處理系統100進行描述。
在操作S210中,藉由系統處理電路110的圖像緩衝區112儲存來自攝影機CM的視訊資料VD。在一些實施例中,攝影機CM可設置於電子裝置的系統晶片外部。在一些實施例中,攝影機CM可設置於電子裝置的系統晶片上。
在操作S220中,藉由系統處理電路110的開放多媒體加速層114擷取相關於視訊資料VD的資料參數P。在一些實施例中,資料參數P包含視訊資料VD於圖像緩衝區112的實體位址、視訊資料VD的資料尺寸以及視訊資料VD的編碼格式中的至少一者。
在操作S230中,藉由視訊處理電路120接收資料參數P。在一些實施例中,資料參數P可自開放多媒體加速層114傳輸至環形緩衝區121。
在操作S240中,藉由視訊處理電路120依據資料參數P自圖像緩衝區112接收視訊資料VD。在一些實施例中,讀取電路122可依據上述的實體位址以及資料尺寸將儲存於圖像緩衝區112中的視訊資料VD讀取出來。
在操作S250中,藉由視訊處理電路120依據資料參數P對視訊資料VD進行編碼以產生編碼資料ED。在一些實施例中,編碼電路124可依據資料參數P中的編碼格式(例如:YUV或RGB)對視訊資料VD進行編碼以產生編碼資料ED。
在操作S260中,藉由視訊處理電路120將編碼資料ED傳輸至系統處理電路110。在一些實施例中,編碼資料ED可自環形緩衝區125傳輸至開放多媒體加速層114,且透過系統框架113傳輸至解碼電路115。
綜上所述,在本揭示中,系統處理電路可擷取視訊資料的資料參數且將資料參數傳輸至視訊處理電路。接著,視訊處理電路可依據資料參數直接自圖像緩衝區接收視訊資料以進行後續的編碼。據此,系統處理電路毋需對視訊資料進行多次拷貝,因此可降低系統處理電路的工作量,進而使得作業系統可運作順暢。
各種功能性元件和方塊已於此公開。對於本技術領域具通常知識者而言,功能方塊可由電路(不論是專用電路,或是於一或多個處理器及編碼指令控制下操作的通用電路)實現,其一般而言包含用以相應於此處描述的功能及操作對電氣迴路的操作進行控制之電晶體或其他電路元件。進一步地理解,一般而言電路元件的具體結構與互連,可由編譯器(compiler),例如暫存器傳遞語言(Register Transfer Language, RTL)編譯器決定。暫存器傳遞語言編譯器對與組合語言代碼(assembly language code)相當相似的指令碼(script)進行操作,將指令碼編譯為用於佈局或製作最終電路的形式。確實地,暫存器傳遞語言以其促進電子和數位系統設計過程中的所扮演的角色和用途而聞名。
雖然本揭示已以實施方式揭示如上,然其並非用以限定本揭示,任何本領域具通常知識者,在不脫離本揭示之精神和範圍內,當可作各種之更動與潤飾,因此本揭示之保護範圍當視後附之申請專利範圍所界定者為準。
100:視訊處理系統 110:系統處理電路 111:幀緩衝區 112:圖像緩衝區 113:系統框架 114:開放多媒體加速層 115:解碼電路 120:視訊處理電路 121:環形緩衝區 122:讀取電路 123:記憶體 1231:視訊處理緩衝區 124:編碼電路 125:環形緩衝區 200:視訊處理方法 CM:攝影機 VD:視訊資料 ED:編碼資料 DD:解碼資料 P:資料參數 S210,S220,S230,S240,S250,S260:操作
為讓本揭示之上述和其他目的、特徵、優點與實施例能夠更明顯易懂,所附圖式之說明如下: 第1圖是依照本揭示一些實施例所繪示的一視訊處理系統的示意圖;以及 第2圖是依照本揭示一些實施例所繪示的一視訊處理方法的流程圖。
100:視訊處理系統
110:系統處理電路
111:幀緩衝區
112:圖像緩衝區
113:系統框架
114:開放多媒體加速層
115:解碼電路
120:視訊處理電路
121:環形緩衝區
122:讀取電路
123:記憶體
1231:視訊處理緩衝區
124:編碼電路
125:環形緩衝區
CM:攝影機
VD:視訊資料
ED:編碼資料
DD:解碼資料
P:資料參數

Claims (9)

  1. 一種視訊處理系統,包含:一系統處理電路,包含:一圖像緩衝區,用以儲存來自一攝影機的一視訊資料;一開放多媒體加速層,用以擷取相關於該視訊資料的至少一資料參數;以及一系統框架;以及一視訊處理電路,用以接收來自該開放多媒體加速層的該至少一資料參數,依據該至少一資料參數自該圖像緩衝區接收該視訊資料,依據該至少一資料參數對該視訊資料進行編碼以產生一編碼資料,且將該編碼資料傳輸至該系統處理電路,其中該系統框架用以接收來自該視訊處理電路的該編碼資料。
  2. 如請求項1所述的視訊處理系統,其中該視訊處理電路包含:一第一環形緩衝區,用以接收該至少一資料參數。
  3. 如請求項2所述的視訊處理系統,其中該視訊處理電路更包含:一讀取電路,用以讀取該第一環形緩衝區所接收到的該至少一資料參數,且依據該至少一資料參數要求一視訊 處理緩衝區。
  4. 如請求項3所述的視訊處理系統,其中該讀取電路更用以依據該至少一資料參數讀取該圖像緩衝區中的該視訊資料,且將該視訊資料存入該視訊處理緩衝區。
  5. 如請求項3所述的視訊處理系統,其中該至少一資料參數包含一實體位址以及一資料尺寸,其中該讀取電路更用以依據該實體位址以及該資料尺寸讀取該圖像緩衝區中的該視訊資料。
  6. 如請求項5所述的視訊處理系統,其中該視訊處理電路更包含:一編碼電路,其中該至少一資料參數包含一編碼格式,且該編碼電路用以依據該編碼格式對該視訊資料進行編碼以產生該編碼資料。
  7. 如請求項6所述的視訊處理系統,其中該視訊處理電路更包含:一第二環形緩衝區,用以接收該編碼資料,其中該開放多媒體加速層更用以接收該編碼資料。
  8. 如請求項1所述的視訊處理系統,其中該系統處理電路更包含: 一解碼電路,用以對該編碼資料進行解碼以產生一解碼資料,其中該解碼資料供一顯示器進行顯示。
  9. 一種視訊處理方法,包含:藉由一系統處理電路的一圖像緩衝區儲存來自一攝影機的一視訊資料;藉由該系統處理電路的一開放多媒體加速層擷取相關於該視訊資料的至少一資料參數;藉由一視訊處理電路接收來自該開放多媒體加速層的該至少一資料參數;藉由該視訊處理電路依據該至少一資料參數自該圖像緩衝區接收該視訊資料;藉由該視訊處理電路依據該至少一資料參數對該視訊資料進行編碼以產生一編碼資料;藉由該視訊處理電路將該編碼資料傳輸至該系統處理電路;以及藉由該系統處理電路的一系統框架接收來自該視訊處理電路的該編碼資料。
TW111100141A 2021-08-30 2022-01-03 視訊處理系統以及方法 TWI819455B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111002006.9A CN115767245A (zh) 2021-08-30 2021-08-30 视频处理系统以及方法
CN202111002006.9 2021-08-30

Publications (2)

Publication Number Publication Date
TW202309828A TW202309828A (zh) 2023-03-01
TWI819455B true TWI819455B (zh) 2023-10-21

Family

ID=85286780

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111100141A TWI819455B (zh) 2021-08-30 2022-01-03 視訊處理系統以及方法

Country Status (3)

Country Link
US (1) US20230065053A1 (zh)
CN (1) CN115767245A (zh)
TW (1) TWI819455B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104023260A (zh) * 2013-02-28 2014-09-03 腾讯科技(深圳)有限公司 硬件解码实现方法、装置及播放器
CN109168085A (zh) * 2018-08-08 2019-01-08 福州瑞芯微电子股份有限公司 一种设备客户端视频流硬件保护方法
TW201918070A (zh) * 2017-10-16 2019-05-01 南韓商三星電子股份有限公司 視訊編碼器件以及編碼器
CN106993220B (zh) * 2017-04-18 2020-05-01 北京元心科技有限公司 调整多媒体解码信息缓冲区的方法和装置
US20200314440A1 (en) * 2013-12-16 2020-10-01 Imagination Technologies Limited Data Stream Encoder Configuration

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102376700B1 (ko) * 2015-08-12 2022-03-22 삼성전자주식회사 비디오 컨텐츠 생성 방법 및 그 장치
US11153603B2 (en) * 2019-06-10 2021-10-19 Intel Corporation Volumetric video visibility encoding mechanism
US11833419B2 (en) * 2020-03-16 2023-12-05 Tencent America LLC Method and apparatus for cloud gaming

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104023260A (zh) * 2013-02-28 2014-09-03 腾讯科技(深圳)有限公司 硬件解码实现方法、装置及播放器
US20200314440A1 (en) * 2013-12-16 2020-10-01 Imagination Technologies Limited Data Stream Encoder Configuration
CN106993220B (zh) * 2017-04-18 2020-05-01 北京元心科技有限公司 调整多媒体解码信息缓冲区的方法和装置
TW201918070A (zh) * 2017-10-16 2019-05-01 南韓商三星電子股份有限公司 視訊編碼器件以及編碼器
CN109168085A (zh) * 2018-08-08 2019-01-08 福州瑞芯微电子股份有限公司 一种设备客户端视频流硬件保护方法

Also Published As

Publication number Publication date
US20230065053A1 (en) 2023-03-02
TW202309828A (zh) 2023-03-01
CN115767245A (zh) 2023-03-07

Similar Documents

Publication Publication Date Title
US10070134B2 (en) Analytics assisted encoding
JPWO2005109205A1 (ja) 情報処理装置およびデータアクセス方法
TWI819455B (zh) 視訊處理系統以及方法
US20130322552A1 (en) Capturing Multiple Video Channels for Video Analytics and Encoding
TWI423682B (zh) 影像處理方法
KR20170069074A (ko) 디코더의 동작 방법, 및 상기 디코더를 포함하는 어플리케이션 프로세서의 동작 방법
US10448020B2 (en) Intelligent MSI-X interrupts for video analytics and encoding
US20130278775A1 (en) Multiple Stream Processing for Video Analytics and Encoding
US20070162940A1 (en) Portable electronic device and a method of playing images on the portable electronic device
US20130329137A1 (en) Video Encoding in Video Analytics
EP2798468A1 (en) Accessing configuration and status registers for a configuration space
US20060098730A1 (en) Video codec
US9179156B2 (en) Memory controller for video analytics and encoding
CN117435532B (zh) 基于视频硬件加速接口的拷贝方法、装置及存储介质
TWI614765B (zh) 包括在不同電壓域被驅動的電路之積體電路
WO2023087827A1 (zh) 渲染方法及装置
CN109089120B (zh) 分析辅助编码
US20130322551A1 (en) Memory Look Ahead Engine for Video Analytics
KR20140126841A (ko) 메모리 장치 및 이를 포함하는 이미지 신호 처리 시스템