adts格式檔案分割而中的乙個小發現

2021-05-24 23:34:47 字數 795 閱讀 3011

於是我仔細看了看adts頭的內容:

synword 12

id 1

layer 2

protection_absent 1

profile 2

sampling_frequency_index 4

private_bit 1

channel_configuration 3

original/copy 1

home 1

根據以上資訊,我們對頭進行的資料設定為:

adtshdr[0] = (uint8)0xff;

adtshdr[1] = (uint8)0xf9;  

adtshdr[2] = (0x01<<6)|((0x06)<<2)|0x00; 

adtshdr[3] = (uint8)0x80;

adtshdr[4] = ((size+7)>>3)&0xff; 

adtshdr[5] = (((size+7)&0x07)<<5|0x1f);  

adtshdr[6] = (uint8)0xfc;

從這7個位元組的內容我們可以看出,第四個第五個位元組是由該aac的幀大小獲取的,更仔細地看,我們可以知道:adtshdr[4] = ((size+7)>>3)&0xff;  //取出size的前5位, 而adtshdr[5] = (((size+7)&0x07)<<5|0x1f);  //取出size的後3位, 因此我們可以根據這兩項的內容得到size資訊,即:將第四位元組的前五位與第五個位元組的後三位相拼後再減去7。

有了這個size資訊,是不是就很容易進行資料分割了呢!

PHP中 XBM格式 檔案的操作

1.xbm格式是一種可讀的文字格式儲存影象,檔案可用文字編輯器開啟,類似如下 define test width 20 define test height 20 static unsigned char test bits 2.使用php建立xbm影象是要注意 imagecreatetruecol...

乙個檔案分割成多個檔案

linux 或 類unix 下乙個檔案分割成多個 split l 20000 filename.txt a 3 d filename ls grep filename xargs n1 i mv txt 選項 options b 選項後跟期望切割後的單個檔案的大小,單位k或者m eg.split b...

乙個簡單而實用的make檔案

原來一直都是手工為專案維護乙個make檔案,特別是檔案越來越來多的時候,維護make檔案就成了乙個很大的負擔,其實gnu make還提供了乙個函式 wildcard wildcard 可以生成源程式檔案列表。project ptest libs lpthread source wildcard sr...