亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于MPEG-4視頻標(biāo)準(zhǔn)數(shù)字視頻錄像機(jī)的設(shè)計(jì)與實(shí)現(xiàn)

        2008-04-12 00:00:00齊曉龍鮑喜榮佘黎煌
        現(xiàn)代電子技術(shù) 2008年20期

        摘 要:國內(nèi)外許多公司都在開發(fā)有關(guān)MPEG-4視頻標(biāo)準(zhǔn)的產(chǎn)品,最具代表意義的即是數(shù)字視頻錄像機(jī)(DVR)。為了縮短開發(fā)周期,這里介紹基于嵌入式Linux操作系統(tǒng),應(yīng)用專用音視頻編解碼芯片AT2042實(shí)現(xiàn)數(shù)字視頻錄像機(jī)功能,該系統(tǒng)實(shí)現(xiàn)MPEG-4視頻標(biāo)準(zhǔn)高級框架的編解碼器,并在此基礎(chǔ)上添加數(shù)字硬盤的功能,例如編碼存儲(chǔ)、解碼播放、快進(jìn)、快退和暫停等功能。最后給出系統(tǒng)的實(shí)際運(yùn)行的測試結(jié)果。該系統(tǒng)已實(shí)現(xiàn)對視頻數(shù)據(jù)的編、解碼,且實(shí)現(xiàn)MPEG-4/MPEG-2/MPEG-1 H.263視頻標(biāo)準(zhǔn),并已成為成型產(chǎn)品推向市場。

        關(guān)鍵詞:MPEG-4;AT2042;Linux;DVR

        中圖分類號(hào):TP391文獻(xiàn)標(biāo)識(shí)碼:B文章編號(hào):1004373X(2008)2005104

        Design and Realization of Digital Video Recorder Based on MPEG-4 Video Standard

        ZHANG Shi,QI Xiaolong,BAO Xirong,SHE Lihuang

        (College of Information Science Engineering,Northeastern University,Shenyang,110004,China)

        Abstract:Many companies are developing products about MPEG-4 video standard,Digital Video Recorder(DVR) is the most.In order to cut dowm developmenttime,applying the special video CODE chip AT2042,which realizes function for digital video recorder based on embedded Linux operating system.The system has some functions such as play,pause,recorder and so on.The practical testing results of the system are given,the coding/decoding for video data and video standard such as MPEG-4/MPEG-2/MPEG-1 H.263.

        Keywords:MPEG-4;AT2042;Linux;DVR

        隨著視頻壓縮技術(shù)的迅猛發(fā)展,新的視頻壓縮標(biāo)準(zhǔn)不斷推出。MPEG-4是由國際運(yùn)動(dòng)圖像專

        家組(MPEG)在繼MPEG-1和MPEG-2之后,制訂的又一個(gè)ISO/IEC標(biāo)準(zhǔn),即ISO/IEC 14496。它能夠獲得更高的音/視頻壓縮率,具有基于內(nèi)容的交互能力。目前,國內(nèi)外許多公司都在開發(fā)有關(guān)MPEG-4視頻標(biāo)準(zhǔn)的產(chǎn)品,最具代表意義的即是數(shù)字視頻錄像機(jī)(DVR)。

        1 數(shù)字視頻錄像機(jī)的硬件設(shè)計(jì)

        在基于S3C2410與AT2042的數(shù)字視頻錄像機(jī)的設(shè)計(jì)和實(shí)現(xiàn)中,其終端設(shè)備以Samsung公司的32位處理器S3C2410為主控處理器,利用Pentamicro公司的AT2042芯片完成雙通道視頻編碼與解碼,其視頻錄像功能具有高分辨率和高質(zhì)量。本文將介紹此終端的系統(tǒng)整體設(shè)計(jì),并詳細(xì)分析系統(tǒng)軟硬件設(shè)計(jì),最后給出測試結(jié)果和結(jié)論。根據(jù)市場的需求,本系統(tǒng)預(yù)計(jì)實(shí)現(xiàn)下列幾項(xiàng)指標(biāo):

        (1) 實(shí)現(xiàn)對視頻數(shù)據(jù)的MPEG-4標(biāo)準(zhǔn)的編解碼;

        (2) 編解碼像素為720X576像素點(diǎn),實(shí)現(xiàn)25 f/s;

        (3) 實(shí)現(xiàn)JPEG編碼和解碼;

        (4) 實(shí)現(xiàn)USB/SD卡儲(chǔ)存。

        1.1 基于S3C2410與AT2042的數(shù)字視頻錄像機(jī)整體設(shè)計(jì)

        該系統(tǒng)主要依靠AT2042的編解碼功能,系統(tǒng)的硬件框圖如圖1所示,它主要由視頻編碼子系統(tǒng)、主控系統(tǒng)、數(shù)據(jù)處理子系統(tǒng)和視頻解碼子系統(tǒng)4大部分構(gòu)成。

        韓國Pentamicro公司生產(chǎn)的AT2042芯片的功能模塊如圖2所示, AT2042 是一個(gè)內(nèi)置微控制器ARM946E 的2 通道音視頻編解碼(A/VCODEC)芯片,主要完成對視頻和語音數(shù)據(jù)的編碼和解碼,支持多種音視頻編解碼標(biāo)準(zhǔn),可直接與IBM,Motorola,ARM,Xscale 和Axis 等多種CPU接口,無需其他附加電路。

        1.2 視頻編解碼電路設(shè)計(jì)

        視頻編解碼電路主要包括視頻編解碼電路和視頻壓縮/解壓芯片AT2042。其中,AT2042 主要負(fù)責(zé)對數(shù)字視頻數(shù)據(jù)進(jìn)行硬件壓縮和解壓縮,而視頻編解碼電路則是基帶模擬視頻信號(hào)和AT2042 之間的一個(gè)接口電路,它包括一個(gè)視頻編碼芯片和一個(gè)視頻解碼芯片,主要負(fù)責(zé)視頻數(shù)據(jù)的模/數(shù)和數(shù)/模轉(zhuǎn)換,以及數(shù)字視頻信號(hào)格式的轉(zhuǎn)換。在壓縮編碼過程中,輸入的NTSC/PAL/SECAM視頻信號(hào)先經(jīng)過視頻解碼芯片進(jìn)行前端處理,產(chǎn)生符合AT2042 視頻接口標(biāo)準(zhǔn)的8 b ITU-R BT.656數(shù)字視頻信號(hào)。在外部主CPU 的控制下,該數(shù)字視頻數(shù)據(jù)由壓縮/解壓芯片AT2042 進(jìn)行硬件壓縮編碼,產(chǎn)生的編碼數(shù)據(jù)流通過芯片內(nèi)部集成的Mux FIFO 接口輸出。網(wǎng)絡(luò)視頻服務(wù)器的解壓縮編碼是壓縮編碼的逆過程,需要解壓的數(shù)據(jù)流通過AT2042內(nèi)部集成的Demux FIFO 接口輸入。視頻采集接口框圖如圖3所示:

        攝像頭采集輸出信號(hào)為NTSC,PAL或SECAM制式的電視信號(hào),必須經(jīng)過視頻解碼處理才能轉(zhuǎn)化成適合AT2042進(jìn)行編碼的數(shù)字信號(hào)。TVP5150是TI公司生產(chǎn)的一款電視信號(hào)解碼專用芯片,它對輸入的模擬信號(hào)進(jìn)行A/D轉(zhuǎn)化,通過設(shè)置相應(yīng)的寄存器可以使輸出信號(hào)滿足RGB格式或YUV422格式。由于在本系統(tǒng)中AT2042視頻接口滿足ITU.RBT656標(biāo)準(zhǔn),故TVP5150輸出配置為8位YUV422格式。如圖4所示。

        現(xiàn)在的數(shù)字電視視頻接口還沒有實(shí)現(xiàn)統(tǒng)一的工業(yè)標(biāo)準(zhǔn),故在視頻輸出端設(shè)計(jì)時(shí),仍使用現(xiàn)在比較流行的A/V接口或S-video接口。由于上述2種接口傳輸?shù)臑槟M電視信號(hào),故在AT2042的視頻輸出端口需要增加一級處理,即將數(shù)字信號(hào)轉(zhuǎn)化為模擬電視信號(hào)。在后端設(shè)計(jì)中選用SAA7121,它是一款專用的電視信號(hào)編碼芯片,可以將輸入的數(shù)字信號(hào)經(jīng)過內(nèi)部的D/A轉(zhuǎn)化為適于傳輸?shù)哪M電視信號(hào),通過配置相應(yīng)的寄存器可以輸出滿足S-video接口或復(fù)用接口的信號(hào)。

        1.3 AT2042的主機(jī)接口

        主控CPU(S3C2410) 和AT2042 是數(shù)字視頻錄像機(jī)的核心處理芯片,S3C2410 控制整個(gè)數(shù)字視頻錄像機(jī)系統(tǒng)的運(yùn)行,AT2042 除完成對視頻信號(hào)的硬件壓縮編碼外,還可對壓縮后的視頻數(shù)據(jù)進(jìn)行硬件解壓縮。AT2042 壓縮編碼后的視頻數(shù)據(jù)通過芯片內(nèi)部集成的Mux FIFO接口輸出后,外部主CPU 負(fù)責(zé)對其進(jìn)行USB存儲(chǔ)器處理,處理后的視頻數(shù)據(jù)可以存儲(chǔ)在物理介質(zhì)上,以便在需要時(shí)通過鍵盤操作進(jìn)行回放。

        圖5為S3C2410與AT2042接口框圖。

        AT2042的CPU_SEL[2:0]是主控CPU選擇引腳,經(jīng)配置這幾個(gè)引腳的高低電平,使AT2042可選擇主控CPU,CPU_SEL[2:0]為010選擇ARM結(jié)構(gòu)芯片;

        nCS,nWAIT等為總線控制信號(hào)線;

        HCLK是AT2042主機(jī)接口的工作時(shí)鐘,一般要求工作在50 MHz,當(dāng)S3C2410 在復(fù)位后設(shè)置FCLK為200 MHz,HCLK為100 MHz,PCLK為50 MHz。故將S3C2410的PCLK引腳與AT2042的HCLK引腳相連。

        通過這種機(jī)制,S3C2410可以實(shí)現(xiàn)簡單的訪問AT2042。

        AT2042 與CPU的通信機(jī)制如圖6所示,CPU對AT2042的控制和訪問主要通過AT2042的2個(gè)寄存器(status register和command register) 和4個(gè)FIFO(Tx FIFO,Rx FIFO,Multiplex FIFO和De-Multiplex FIFO)完成。

        2 數(shù)字視頻錄像機(jī)的軟件實(shí)現(xiàn)

        數(shù)字視頻錄像機(jī)系統(tǒng)的軟件設(shè)計(jì)包括:Bootload 代碼的編寫、Linux 操作系統(tǒng)的內(nèi)核生成和Linux下驅(qū)動(dòng)程序和應(yīng)用程序的開發(fā)、文件系統(tǒng)的生成和配置以及用戶應(yīng)用程序4大塊。

        數(shù)字視頻錄像機(jī)軟件開發(fā)的整體架構(gòu)如圖7所示。

        2.1 系統(tǒng)啟動(dòng)Bootloader程序設(shè)計(jì)編寫

        Bootloader是系統(tǒng)啟動(dòng)時(shí)執(zhí)行的第一個(gè)程序,其主要完成對硬件系統(tǒng)的初始化。具體包括:S3C2410的初始化、TVP5150功能配置、SAA7121功能配置、加載AT2042固件、以太網(wǎng)及串口初始化。由于在開機(jī)時(shí)要顯示開機(jī)畫面,故除在Bootloader中初始化相應(yīng)硬件資源外,還應(yīng)將開機(jī)畫面的圖片數(shù)據(jù),傳送到AT2042 SDRAM中。Bootloader整體流程圖如圖8所示。

        顯示開機(jī)畫面,其主要通過AT2042的JPEG解碼功能來實(shí)現(xiàn)。首先配置AT2042的JPEG解碼功能,將要顯示圖像先以頭文件的形式添加到程序中,當(dāng)需要顯示時(shí)再將圖像數(shù)據(jù)發(fā)送給AT2042。

        2.2 Linux系統(tǒng)的配置及設(shè)備驅(qū)動(dòng)程序的編寫

        本系統(tǒng)使用的是Linux2.4.18內(nèi)核,在內(nèi)核配置中需增加以下幾個(gè)內(nèi)容:由于本系統(tǒng)中要實(shí)現(xiàn)對視頻編碼數(shù)據(jù)的存儲(chǔ),故要添加內(nèi)核配置中USB support選項(xiàng)中的USB Mass storage support;在調(diào)試時(shí)需要通過以太網(wǎng)來燒些程序,故內(nèi)核配置時(shí)需添加LAN91C111網(wǎng)卡驅(qū)動(dòng),方法為在NetWork device support選項(xiàng)下選擇SMC91111 support,同時(shí)內(nèi)核要支持各種文件系統(tǒng),需在File system選項(xiàng)下進(jìn)行相應(yīng)配置。

        系設(shè)備驅(qū)動(dòng)程序主要完成以下的功能:

        AT2042 設(shè)備驅(qū)動(dòng)子模塊系統(tǒng)調(diào)用是操作系統(tǒng)內(nèi)核和上層應(yīng)用程序之間的接口,AT2042 設(shè)備驅(qū)動(dòng)子模塊是操作系統(tǒng)內(nèi)核和AT2042 硬件設(shè)備之間的接口。操作系統(tǒng)內(nèi)核向AT2042設(shè)備驅(qū)動(dòng)子模塊提供內(nèi)核API 和其他的內(nèi)核支持。AT2042 設(shè)備驅(qū)動(dòng)子模塊為上層應(yīng)用程序屏蔽了AT2042硬件的細(xì)節(jié),這樣在應(yīng)用程序看來,AT2042 硬件設(shè)備只是一個(gè)設(shè)備文件,應(yīng)用程序可以像操作普通文件一樣對AT2042 硬件設(shè)備進(jìn)行操作。AT2042 設(shè)備驅(qū)動(dòng)子模塊作為系統(tǒng)內(nèi)核的一部分,主要完成對AT2042 的初始化、編解碼數(shù)據(jù)的讀寫、以及編解碼功能參數(shù)的設(shè)置。包含的功能函數(shù)主要有模塊入口函數(shù)、設(shè)備操作函數(shù)集合和中斷服務(wù)程序等。

        2.3 數(shù)字視頻錄像機(jī)應(yīng)用軟件的設(shè)計(jì)與實(shí)現(xiàn)

        (1) 界面顯示與菜單功能的設(shè)計(jì)與實(shí)現(xiàn)。

        界面和菜單的顯示是通過AT2042的OSD(on Screen Display)功能來實(shí)現(xiàn)的,AT2042共有3個(gè)顯示層面,分別為底層是背景層、中間是回放層,頂層是OSD層。

        OSD層支持16色的調(diào)色板。由于AT2042自身沒有相應(yīng)的ROM存儲(chǔ)OSD所要顯示的圖片及文字?jǐn)?shù)據(jù),故在利用OSD功能來顯示圖片或文字時(shí),首先要將需顯示的圖片或文字?jǐn)?shù)據(jù)加載到AT2042的SDRAM中,然后調(diào)用顯示功能將圖片或文字顯示在OSD層上。

        這個(gè)功能的實(shí)現(xiàn)過程中主要調(diào)用以下2個(gè)函數(shù):

        void at2042_load_font(uns8 *font_data,uns32 font_data_size)該函數(shù)的主要功能是把要顯示的數(shù)據(jù)加載到AT2042的SDRAM中,同時(shí)設(shè)置顯示位置,即垂直、水平像素點(diǎn)的位置。

        void osd_on_off(uns8 temp)該函數(shù)的功能是打開或關(guān)閉OSD模式。

        (2) MPEG-4視頻編碼實(shí)現(xiàn)。

        該功能主要利用AT2042來實(shí)現(xiàn)。首先,配置相應(yīng)的編碼寄存器,例如編碼模式、編碼像素點(diǎn)、編碼幀率及設(shè)置編碼流格式(PES,PS,TS)等。本系統(tǒng)中采用MPEG-4模式、720X576、每秒25幀及生成PES流來對視頻數(shù)據(jù)進(jìn)行編碼。

        AT2042視頻編碼的流程如圖9所示。

        實(shí)現(xiàn)這一功能主要通過對以下幾個(gè)函數(shù)的調(diào)用:

        void set_encoder_parameter(uns16 hsize,uns16 vsize,uns8 rate,uns8 mode)該函數(shù)用來設(shè)置編碼參數(shù);

        void video_encoder_start(uns8 mode)該函數(shù)用來啟動(dòng)AT2042的編碼功能;

        void video_encoder_stop(uns8 mode)該函數(shù)用來關(guān)閉AT2042的編碼功能;

        void encoding_stream_read(uns8 *data,uns32 data_size)該函數(shù)實(shí)現(xiàn)將編碼數(shù)據(jù)從MuxFIFO中讀出。

        (3) 解碼功能實(shí)現(xiàn)。

        實(shí)現(xiàn)的具體流程如圖10所示。

        實(shí)現(xiàn)這些功能主要通過對以下幾個(gè)函數(shù)的調(diào)用:

        void set_decoder_parameter(uns16 hsize,uns16 vsize,uns8 rate,uns8 mode)該函數(shù)用來設(shè)置解碼參數(shù);

        void video_decoder_start(uns8 mode)該函數(shù)用來啟動(dòng)AT2042的解碼功能;

        void video_decoder_stop(uns8 mode)該函數(shù)用來關(guān)閉AT2042的解碼功能;

        void get_file_length(const char *file_name)該函數(shù)用來獲取文件的長度;

        void video_replay(const char*file_name,uns8 mode)該函主要實(shí)現(xiàn)對視頻文件的播放控制,mode控制播放模式(暫停、快進(jìn)、快退)。

        3 測試結(jié)果

        實(shí)驗(yàn)結(jié)果進(jìn)行測試,可以采用2套方案來完成。

        (1) 使用自行設(shè)計(jì)的硬件平臺(tái),在該平臺(tái)上完成對視頻編解碼的測試。圖11為在本系統(tǒng)平臺(tái)上對編碼數(shù)據(jù)的解碼播放截圖。

        (2) 將編碼后的視頻文件拷貝到PC機(jī)上,應(yīng)用Media Player、暴風(fēng)音影和風(fēng)雷音影等視頻播放軟件對編碼結(jié)果進(jìn)行測試,同時(shí)可以對比解碼播放的效果。因?yàn)楸鞠到y(tǒng)中視頻文件是以PES流形式保存到儲(chǔ)存介質(zhì),PES滿足ISO13818標(biāo)準(zhǔn),所以PC平臺(tái)上的普通視頻播放器都能播放該文件。圖12是用風(fēng)雷音影播放器對編碼結(jié)果進(jìn)行解碼播放的截圖。

        由圖可以看出,解碼出的視頻文件是720X576像素點(diǎn),解碼播放的速率為25.59 f/s。畫面沒有出現(xiàn)失真現(xiàn)象,沒有明顯的塊效應(yīng)。由表1中的數(shù)據(jù)可得,在使用AT2042對靜止圖像編碼時(shí),可實(shí)現(xiàn)接近100∶1的壓縮比,在對動(dòng)態(tài)畫面進(jìn)行編碼時(shí),可以實(shí)現(xiàn)40∶1的壓縮比。

        4 結(jié) 語

        本文詳細(xì)介紹基于專用視頻編解碼芯片AT2042的數(shù)字視頻錄像機(jī)系統(tǒng)的硬件設(shè)計(jì)和軟件開發(fā)流程。該系統(tǒng)已實(shí)現(xiàn)對視頻數(shù)據(jù)的編碼和解碼,同時(shí)實(shí)現(xiàn)了MPEG-4/MPEG-2/MPEG-1 H.263視頻標(biāo)準(zhǔn),并已作為成型產(chǎn)品推向市場。

        參考文獻(xiàn)

        [1]王學(xué)龍.嵌入式Linux系統(tǒng)設(shè)計(jì)與應(yīng)用[M].北京:清華大學(xué)出版社,2001.

        [2]周立功.ARM嵌入式Linux系統(tǒng)構(gòu)建與驅(qū)動(dòng)開發(fā)范例[M].北京:北京航空航天大學(xué)出版社,2006.

        [3]Pentamicro.AT204x_DataSheet_v20(Eng)[EB/OL].www.pentamicro.com.

        [4]李嚴(yán).基于ARM7TDMI和μClinux的嵌入式MPEG4網(wǎng)絡(luò)視頻終端及服務(wù)器[D].浙江:浙江大學(xué),2006.

        [5]王卉,吳慶洪.MPEG-4嵌入式視頻解碼系統(tǒng)的研究與實(shí)現(xiàn)\\.現(xiàn)代電子技術(shù),2007,30(18):149-151,155.

        [6]于雪蓮,陳錢.基于MPEG-4網(wǎng)絡(luò)視頻服務(wù)器的研制\\.現(xiàn)代電子技術(shù),2007,30(16):122-123,127.

        作者簡介 張 石 1963年出生,博士,東北大學(xué)信息學(xué)院電子信息研究所所長。主要研究方向?yàn)榍度胧较到y(tǒng)開發(fā)。

        齊曉龍 1980年出生,東北大學(xué)在讀碩士研究生。研究方向?yàn)榍度胧较到y(tǒng)開發(fā)。

        鮑喜榮 1978年出生,博士,東北大學(xué)信息學(xué)院電子信息工程研究所助教。主要研究方向?yàn)榍度胧较到y(tǒng)開發(fā)。

        佘黎瑝 1980年出生,在讀博士,東北大學(xué)信息學(xué)院電子信息工程研究所助教。主要研究方向?yàn)榍度胧较到y(tǒng)開發(fā)。

        男女真实有遮挡xx00动态图| 日韩精品熟妇一区二区三区| 大学生粉嫩无套流白浆| 精品无码国产自产野外拍在线 | 青楼妓女禁脔道具调教sm| 国产精品刺激好大好爽视频| 亚洲二区三区四区太九| 亚洲精品一区二区三区52p| 97午夜理论片影院在线播放| 久久久窝窝午夜精品| av网站入口在线免费观看| 丰满的少妇av一区二区三区| 久久久无码精品亚洲日韩按摩| 亚洲AV电影天堂男人的天堂| 加勒比亚洲视频在线播放| 免费的小黄片在线观看视频| 久久超碰97人人做人人爱| 国产精品嫩草影院午夜| 久久亚洲精精品中文字幕早川悠里 | 国产精品538一区二区在线| 欧美真人性做爰一二区| 久久久精品国产亚洲麻色欲| 日本免费一二三区在线| 激情综合色综合久久综合| 试看男女炮交视频一区二区三区| 亚洲一区二区三区新视频| 无码专区人妻系列日韩精品| 在教室伦流澡到高潮hgl视频 | 午夜天堂精品一区二区| 中文有码人妻字幕在线| 欧美成人精品三级网站| 亚洲日韩AV秘 无码一区二区 | 亚洲一区二区三区四区精品在线| 真人作爱免费视频| 国产精品白浆无码流出| 激情亚洲不卡一区二区| 少妇扒开毛茸茸的b自慰| 欧美国产小视频| 人妻av中文字幕精品久久| 久久亚洲精品情侣| 欧美老妇与禽交|