android lame wav 转 mp3,Wav文件转mp3(LAME)
LibAV轉碼肯定比較簡單,而且快,但是缺點就是要加一堆DLL,最近有個需求,要功能簡單,程序體積小,只要求wav轉mp3,所以用不到libav的大炮轟蚊子。mp3編碼還是很麻煩的,小胳膊力量不夠,找來扳手LAME。
網上有一堆轉碼的教程,例如:http://www.jianshu.com/p/62899e829e45
還有?https://www.cnblogs.com/lvpblog/p/3794721.html
,http://blog.csdn.net/a2657222/article/details/7949118
很多問題都解決了,單通道的wav出來的文件時間短了,還要播放快一半!
經過試驗得到結果,只要設置lame_set_num_channels就可以了。那些lame_set_mode,lame_set_brate,lame_set_quality都是多余的,因為mode是根據通道來計算的。只需要在lame_init_params,調用lame_get_mode就可以驗證!
設置了通道至少其中一個條件,另外還有一個條件需要做的。
16bit
to 32 bit
主要是要保證pcm_buffer為32位對齊。
以上是我試驗的結果,只適用16bit雙通道和16bit單通道的情況,不考慮其他例外的情況。?
還有一個情況,就是轉出來的mp3時長在QuickTime顯示不對,但是Vector
Express這類編輯軟件又是正確的。出現這樣的情況,是少做一個步驟:
save
tags
?
?代碼不到80行,應該不用貼上吧。不懂的話,直接參考上面的鏈接吧,然后在一一改進。
?
?
總結
以上是生活随笔為你收集整理的android lame wav 转 mp3,Wav文件转mp3(LAME)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windows 7 如何调出快速启动栏
- 下一篇: IAP2 通过蓝牙