久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
STM32下幾種無損音樂格式比較
[打印本頁]
作者:
ktcl7777
時間:
2021-8-7 17:27
標(biāo)題:
STM32下幾種無損音樂格式比較
常見的無損音樂有好幾種(不討論類似mp3(愛夢屁三)之類的有損壓縮格式)
WAV(娃夫) 無損非壓縮 最早由microsoft(賣客燒福特)定義 常見的數(shù)字無損音樂都是以此為標(biāo)準(zhǔn) 壓縮和解壓
FLAC(佛勒啊測) 這個格式很常見 壓縮和解壓的速度都不錯 免費 stm32下有牛人做出了解壓程序 我自己是用FLAC(佛勒啊次)的原生代碼改的 效果很好
APE(啊屁) 這個格式也很常見 不過現(xiàn)在大大落后了 STM32上處理這個垃圾貨色 基本呵呵
ALAC(啊拉客) 這個是Apple(矮破)家的垃圾貨色 破玩意兒 壓縮比 和速度都很次 Apple(矮破)家所有的東西一個鳥樣 辣雞 不討論
下面隆重推出兩款免費的 開源的 無損格式
TTA True Audio(特特啊 楚奧丟)
https://sourceforge.net/projects/tta/files/tta/
這個格式的文件非常優(yōu)秀 壓縮只有一個級別 支持8字節(jié)密碼(兩個CRC16) 哈哈 也支持流壓縮 所以 假定你給你小女盆友錄一段的話 別人沒密碼是聽不到的 只有沙沙聲,而且密碼是初始化一次即可(即 不設(shè)密碼的話是8個0x00) 并不影響 壓縮和解壓的速度
WAVPACK(娃夫怕客)
(請手工把點替換成.)
www點wavpack點com/downloads.html
這個格式的文件及其優(yōu)秀 共四種壓縮級別 fast(罰死特) default(得佛爾特) high(嗨) very-high(歪芮嗨) 而且支持Hybrid(嗨補芮得) 無損/有損混血模式 不過這里只討論無損
做好解壓程序后 FLAC + WAVPACK + TTA True Audio
在用STM32F103+0 SRAM 72Mhz / STM32F407+1M SRAM 168Mhz / STM32F746+8M SRAM (受限于SRAM(四日啊摸) 的速度限制 200Mhz) 三款板子比較
最終結(jié)果如下:
STM32F103 超頻到80后 只可以正常播放 WAVPACK fast 44khz 16bits
TTA True Audio 和 FLAC 卡
沒法播放
STM32F407
WAVPACK fast 96khz 24bits
TTA True Audio 96khz 24bits
FLAC 96khz 24bits 0級
STM32F746
WAVPACK very-high 96khz 24bits
TTA True Audio 96khz 24bits
FLAC 96khz 24bits 8級
順便說一下 我用的是正版STM32F746迪斯科(坑爹版) 這個片子用的是WM8994 我找遍了薩拉熱窩也沒有找到192Khz (需要打開Ultrasonic 優(yōu)特拉鎖你客 模式) 的驅(qū)動程序 所以雖然 相信 STM32F746 可以播放192khz 24bits的WAVPACK+TTA True Audio 但是沒法測試
-------------------------------------------------------------------------------
這三款格式的壓縮比差不多 僅就壓縮比作比較的話 TTA True Audio是最好的 大多數(shù)情況下文件比 WAVPACK very-high 和 FLAC 8級小
WAVPACK + fast 的文件常常比TTA True Audio大3%-8% 尤其是24bit的
解壓速度
WAVPACK > TTA True Audio > FLAC
注意 這里說的是在STM32解壓的情況 ,PC上三者都有SSE或者匯編的部分 一般一首5分鐘左右44khz 16bits的音樂 都只需要不到兩秒鐘 即壓縮完成 (FLAC是最慢的)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
做完解壓后 順便做了一個錄音程序直接存儲WAVPACK 不過這個東西很好玩 上述三款格式都提供了CRC FRAME(測啊測 夫軟木)校驗 wavpack 的crc因子從頭文件就開始了 在total_samples(頭陀桑撲了)未知的情況下 只能在頭文件給一個默認(rèn)值 然后最后修改這個值
所以后面所有的crc值全錯 導(dǎo)致錄出來的只能在不校驗crc的播放器上播放 好比VLC(微了測)這種比較矯情的播放器軟件就放不了
音頻解壓移植到類似STM32資源比較吃力的機器上的一點心得:
1: 墻裂推薦一款編譯器 Tiny C Compiler (太膩 色 康拍了)
(請手工把點替換成.)
bellard點org/tcc/
這個世界上最小的C編譯器 基于ANSI C (昂西 色) 編譯速度太特么快了 對付上面幾種 基本上敲回車就搞定 一般來說 Tiny C Compiler能通過的編譯 可以直接用到STM32上
2:盡量去掉校驗 CRC MD5這些 解壓速度大大加快
3:STM32上面對解壓速度影響最大的是最后數(shù)據(jù)輸出
WAVPACK和 TTA True Audio都是最后 輸出 的格式直接可以存為 WAV , FLAC還要做一道手腳 因為FLAC是分聲道輸出的 (這個也是為啥FLAC在STM32上最卡的原因)
所以在輸出的時候 最好不要像網(wǎng)上大多數(shù)例子一樣 對輸出的數(shù)據(jù)再加工一次
最終推薦順序 WAVPACK > FLAC > TTA True Audio
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
99在线精品视频
|
国产精品伦理一区二区三区
|
亚洲色图综合
|
黄网站免费在线观看
|
国产精品久久久久久久久久久久久久
|
一本岛道一二三不卡区
|
操人网站
|
热re99久久精品国99热观看
|
91久久精品日日躁夜夜躁欧美
|
日韩精品一区二区三区中文字幕
|
伊人亚洲
|
亚洲综合婷婷
|
在线视频第一页
|
免费看国产一级特黄aaaa大片
|
亚洲免费三区
|
久久久高清
|
久久青青
|
91免费在线看
|
久久999
|
久久久精品一区二区
|
一区二区三区四区在线
|
国产精品一区二区三区在线
|
成人亚洲性情网站www在线观看
|
国产免费一区二区
|
国产一区二区三区视频免费观看
|
亚洲网站在线观看
|
国产在线精品一区二区三区
|
国产视频精品在线
|
日韩精品免费一区二区在线观看
|
国产成人精品一区二区在线
|
狠狠干天天干
|
99久久久国产精品
|
久久久精品一区
|
亚洲 成人 在线
|
国产精品亚洲综合
|
久久久国产精品
|
天天躁日日躁狠狠躁白人
|
一区二区三区精品视频
|
视频在线亚洲
|
四虎影音
|
午夜电影网站
|