Android音訊視覺化操作
在我們使用各大音樂軟體時,會發現,很多軟體都會有一個音訊的特效——鯨雲特效,而鯨雲特效,實際上就是對音訊的一種視覺化處理。
音訊視覺化,顧名思義就是將聲音以視覺的方式呈現出來。那麼怎麼實現音訊視覺化呢,這就要說到兩個知識點——視覺化類Visualizer和傅立葉變換
Visualizer
Android系統的 Visualizer 提供了方便的 api 來獲取播放音訊的波形或 FFT 資料,其使用步驟為
-
透過MediaPlayer播放音樂,並且拿到mediaplayerId
-
透過這個id放入Visualizer,即可拿到實時播放的FTT資料
-
最後對資料進行處理,利用自定義view實現音訊視覺化
需要注意的是,Visualizer 輸出的資料大小正比於音量,當音量為 0 時,輸出也為 0,視覺化效果會隨音量變化。
傅立葉變換
上面說到相關的使用步驟,那麼在最後一步進行資料處理時,就需要用到傅立葉轉換,在實現音訊視覺化的過程中直接體現音訊特徵,可用於視覺化繪製的是 pcm 資料。
但是pcm 表示各取樣時間點上音訊訊號強度,看起來雜亂無章,難以體現聽覺感知到的聲音變化。
pcm 資料僅僅用來繪製體現音訊訊號平均強度變化的視覺化動效。其他的動畫效果需要使用對 pcm 資料做傅立葉變換後得到的體現各頻率點上訊號強度變化的頻域資料來繪製。
傅立葉變換是一種分析訊號的方法,它可分析訊號的成分,也可用這些成分合成訊號。許多波形可作為訊號的成分,比如正弦波、方波、鋸齒波等,傅立葉變換用正弦波作為訊號的成分。
透過傅立葉變換,可以將訊號從時域轉換為頻域。由於音訊是離散的,所以需要使用離散傅立葉變換(DFT), 對一段有限長的離散訊號,找出它含有的各個頻率的正弦波分量。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69917874/viewspace-2765310/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 音訊錄製及視覺化處理音訊視覺化
- AudioContext+canvas實現音訊視覺化ContextCanvas音訊視覺化
- 短視訊“音訊化”,音樂“視訊化”音訊
- android音視訊指南-處理音訊輸出的變化Android音訊
- Android 音視訊 - MediaCodec 編解碼音視訊Android
- [C#] 使用 NAudio 實現音訊視覺化C#音訊視覺化
- android音視訊指南-管理音訊焦點Android音訊
- Android音視訊之AudioRecordAndroid
- Android 音視訊開發 視訊編碼,音訊編碼格式Android音訊
- android音視訊指南-MediaPlayer概述Android
- android音視訊指南-MediaRecorder概述Android
- Web Audio API 第5章 音訊的分析與視覺化WebAPI音訊視覺化
- 如何使用Android視覺化埋點Android視覺化
- Android 音視訊採集那些事Android
- Android音視訊處理之MediaCodecAndroid
- Android音視訊處理之MediaMuxerAndroidUX
- Elsten Software Bliss 音樂視覺化管理視覺化
- C#程式呼叫FFmpeg操作音視訊C#
- Android 音視訊開發 - 使用AudioTrack播放音訊Android音訊
- Android 音視訊 遇上鎖屏那些事Android
- Tableau簡單的資料視覺化操作視覺化
- 如何做好 Android 端音視訊測試?Android
- android音視訊指南-支援的媒體格式Android
- Android音視訊(四)MediaCodec編解碼AACAndroid
- Mac音樂視覺化程式設計軟體Mac視覺化程式設計
- Excel 製作視覺化看板的思路及操作Excel視覺化
- 基於Linphone開發Android音視訊通話Android
- Android 音視訊入門:C語言基礎AndroidC語言
- android音視訊指南-響應媒體按鈕Android
- Android 音視訊錄製硬編碼實現Android
- 音視訊--音訊入門音訊
- 音視訊–音訊入門音訊
- 不會做好看的地圖視覺化?跟著Smartbi學操作,秒變視覺化達人地圖視覺化
- 視覺化視覺化
- Android端實現多人音視訊聊天應用(二):多人視訊通話Android
- Android多媒體之SoundPool+pcm流的音訊操作Android音訊
- 音視訊--視訊入門
- R視覺化:plot函式基礎操作,小白教程視覺化函式