AVI 文件格式 圖解

整理:
AVI 是一種容器,里面放什么格式的數據都可以
視頻編碼:格式可以是 H264, MPEG-4, MJPEG ,因為 MJPEG 比較簡單,所以僅支持 MJPEG 的 avi 視頻。
音頻編碼:PCM16, mp3 因為 PCM 編碼,文件實在過大,所以僅支持 mp3 編碼。
難點:
1, 由于ARM 內存比較小,不能使用 mmap ,不能一次性全部讀進 內存。
2,mp3 音頻解碼,暫不支持。
使用 貍窩全能視頻轉換器進行格式轉換

數據塊說明

movi 中是保存有,視頻,音頻數據。
00dc 表示是 視頻數據,然后是4個字節的長度
全部 avi 文件中只有一個 movi LIST 里面就是數據流,視頻流、音頻流。
音頻編碼 PCM 導致文件過大,解碼倒是很方便,暫不支持,Mp3 ACC 比較不錯,后期添加。
MJPEG 不是 JPEG 圖片,但都可以使用 libjpeg 解碼。
關鍵字:ARM AVI 視頻播放 繪制
引用地址:
ARM AVI 視頻播放 基于 2440 freambuffer 繪制
推薦閱讀最新更新時間:2025-05-20 20:19
以s3c2440為例的arm芯片的啟動過程
arm 嵌入式芯片的啟動過程對于嵌入式菜鳥來說其實是很復雜的,很多人都是一知半解,存在很多誤區。在筆者看來,要想真正了解這一啟動過程必須要首先了解存儲器的區別與聯系,參考文章:各種主流半導體存儲器的區別與聯系。還需要了解程序是如何編譯鏈接和執行的。 本文將以s3c2440為例詳細講述 arm 芯片的啟動過程。s3c2440支持兩種啟動模式:NAND FLASH 啟動和非 NAND FLASH 啟動(一般是NOR FLASH 啟動,并且可以配置數據寬度),通過 OM1、OM0 兩個管腳來控制。 NAND FLASH啟動過程 當 OM1、OM0 兩個管腳都為低電平時,CPU 就被配置成了 NAND FLASH 啟動。此時 CP
[單片機]
[ARM裸機程序][2]TQ2440、ADS1.2、JLINK建立集成開發環境
簡介 基本原理 通過JLINK將程序下載到SDRAM(0x30000000)中運行。 硬件環境 TQ2440通過JLINK鏈接到計算機上; NOR FLASH/NAND FLASH啟動模式隨意。 軟件環境 建議使用WIN XP系統,可以使用vmware安裝虛擬機; 安裝ADS1.2集成開發環境; 安裝JINK驅動; 需要將TQ2440所帶的Flash.csv文件拷貝到JLINK安裝目錄下。 C:Program Files (x86)SEGGERJLinkARM_V408iETCJFlash 匯編程序模板 先使用一個HELLO WROLD程序,測試該環境的有效性: AREA ARM,COD
[單片機]
S3c2440ARM異常與中斷體系詳解6---按鍵中斷程序示例概述與初始
在前面的視頻里我們舉了一個例子,母親看書被聲音打斷,遠處的聲音來源有多種多樣,聲音傳入耳朵,再由耳朵傳入大腦,整個過程涉及聲音來源耳朵大腦,為了確保這個母親看書的過程能夠被聲音打斷,我們必須保證聲音來源可以發出聲音,耳朵沒有聾,腦袋沒有傻。 中斷處理流程 1、中斷初始化: ①我們需要設置中斷源,讓它能夠發出中斷 ②設置中斷控制器,讓它能發出中斷給CPU ③設置CPU,CPSR有I位,是總開關 2、處理完之后清理中斷 3、處理時,要分辨中斷源,對于不同的中斷源要執行不同的處理函數 下面開始寫代碼 打開start.S 先做初始化工作,先做第 3 設置CPU,CPSR有I位,是總開關 我們需要把CPSR寄存器 b
[單片機]
全球戰略本土化 博世助力中國繪制未來智能交通藍圖
2016年4月25日,全球領先的技術與服務供應商博世攜一系列互聯化、自動化、電氣化的智能交通技術亮相2016北京車展。通過這些創新技術與解決方案,博世致力于打造更安全便捷、清潔經濟、舒適愉悅的駕乘體驗,同時助力中國汽車產業轉型升級。 盡管2015年中國汽車行業銷量增長減緩、進入新常態,但新一輪技術革新、層出不窮的新型交通和商業模式,無不給中國汽車市場注入新的活力, 博世集團董事會成員、汽車與智能交通技術業務部門主席Rolf Bulander博士表示, 博世 互聯化、自動化、電氣化 的發展戰略正符合中國汽車行業在升級轉型期的市場需求。打造安全、清潔、互聯的汽車,不僅僅是中國汽車產業發展的目標,也是博世所努力的方向。 Rol
[物聯網]
MINI2440從SD卡更新NK及nboot(一)
買了友善 MINI2440 開發板, SuperVivi 不開源,自己的板子又沒有 NOR Flash ,燒入系統帶來很大的困擾,無奈之下,只能自己做燒入工具來解決。大致思路,先從 SD 卡啟動 WINCE ,再用工具格式化 Flash 及分區,將 Nboot 及 NK 寫入相應的塊。 應用程序操作 Flash ,無非就是 Read/Write/Earse Flash , CSDN 上有一牛人寫 在 WinCE 下,應用程序直接讀 / 寫 / 擦除 flash 設備的方法 。 下面是我的部分代碼: 1 BOOL FMD_OEMIoControl(DWORD dwIoControlCode, PBYTE pInBu
[單片機]
TQ2440觸摸屏
s3c2440集成了4線制電阻式的觸摸屏接口,觸點坐標的檢測是通過A/D轉換來實現的。 s3c2440一共有4種觸摸屏接口模式: (1)等待中斷模式 設置ADCTSC寄存器為0xD3即可令觸摸屏控制器處于這種模式。這時它等待觸摸屏被按下,當觸摸屏被按下時,觸摸屏控制器將發出INT_TC(INT_ADC的子中斷)中斷信號,這時觸摸屏控制器要轉入自動(連續)x/y軸坐標轉換模式(或者轉入分離的x/y軸坐標轉換模式),以讀取x、y坐標。 注:對于TQ2440,可以設置ADCTSC寄存器的位 為0或1,來決定是在按下時產生中斷,還是松開時中斷。 (2)分離的x/y軸坐標轉換模式 設置ADCTSC寄存器為0x69進入x軸坐標轉換模式,x軸
[單片機]
S3C2440時鐘設置
S3C2440時鐘設置 #define MDIV_405 0x7f 12 #define PSDIV_405 0x21 #define LOCKTIME_OFFSET 0x00 #define MPLLCON_OFFSET 0x04 #define CLKCON_OFFSET 0x0c #define CLKDIVN_OFFSET 0x14 #define CAMDIVN_OFFSET 0x18 /******************************************************************************************* * Referenc
[單片機]
s3c2440裸機-電阻觸摸屏編程(3.觸摸屏TSC的初始化和中斷服務程序框架)
1. ADC中斷產生流程 中斷源: 這里是ADC和TSC共用一個中斷源。 SRCPND表示哪個中斷源產生了中斷請求。 INTMODE:配置中斷模式 配置中斷屏蔽寄存器 中斷掛起寄存器(用來顯示當前優先級最高的、正在發生的中斷, 需要清除對應位) 從SRCPND寄存器可以讀到ADC和TSC復用的同一個中斷源,那么如何區分呢? 可以從SUBSRCPND寄存器配置,如下: 當bit 9被置1時,表示TSC中斷。那么我們需要打開subsrcmask寄存器 所以TSC中斷的產生流程如下: 2. TSC編程實現 ?、俪跏蓟疶SC,ADCTSC寄存器 ?、谠O定TSC處于“等待中斷模式”
[單片機]