s3c6410中MFC的研究與應(yīng)用
前言
本文引用地址:http://www.ex-cimer.com/article/127430.htms3c6410是三星電子(Samsung Electronics)公司生產(chǎn)的一款基于ARM 1176JZF-S核的微處理器,其內(nèi)核在1.2 V供電時主頻可達(dá)667MHz。s3c6410具有適合于多媒體處理器應(yīng)用的特性,內(nèi)集成一個硬件多格式編解碼器MFC(Multi-Format Codec ),支持30fps標(biāo)清H.264、MPEG4、H.263格式視頻的編碼和解碼,支持JPEG格式圖片的編碼和解碼,也支持30fps標(biāo)清VC-1格式視頻的解碼,這個硬件編解碼器還支持實時的視頻會議以及 NTSC 和 PAL 制式的 TV 輸出。
s3c6410配合適當(dāng)?shù)囊曨l采集設(shè)備、顯示設(shè)備驅(qū)動程序和相應(yīng)的應(yīng)用程序,可以實現(xiàn)圖片、視頻等的處理,本文著重介紹其獨特的硬件MFC的原理及應(yīng)用。
MFC的軟件結(jié)構(gòu)
在基于s3c6410的多媒體應(yīng)用中,MFC軟件的層次結(jié)構(gòu)如圖1所示,多媒體應(yīng)用程序調(diào)用MFC的API,API調(diào)用MFC驅(qū)動提供的I/OCTROL,I/OCTROL通過MFC設(shè)備驅(qū)動,完成視頻、圖片的編碼或解碼。
多媒體應(yīng)用程序有兩種方式使用s3c6410的硬件編解碼器MFC。
方式1:多媒體應(yīng)用程序調(diào)用MFC的編碼或解碼API函數(shù),這些API函數(shù)實際是驅(qū)動I/OCTROL接口的一個封裝,便于應(yīng)用程序調(diào)用。
方式2:多媒體應(yīng)用程序可直接調(diào)用MFC驅(qū)動的I/OCTROL函數(shù),繞過API、不用API。
本文主要探討方式1的使用。實際上,方式1是將方式2的驅(qū)動I/O CTROL調(diào)用封裝成更簡捷、方便的API函數(shù)。
MFC編解碼器的原理和API
MFC的解碼器
MFC解碼支持兩種輸入視頻流的解碼方式,分別為LINE_BUF方式和RING_BUF方式,兩種解碼方式使用于不同的場合,前者常用于視頻文件數(shù)據(jù)的解碼,后者一般用于連續(xù)視頻流數(shù)據(jù)的解碼,如表1所示。
評論