[英]Is there a way to play an .ogg file in Android at an increased speed?
我有要以1倍速,2倍速和3倍速播放的聲音文件。 應該對其進行音高校正。 有許多解決方案可以離線更改文件,並且簡單地擁有三個文件。 但是,這意味着我的應用占用更多的磁盤空間。
有沒有一種直接的在線速度提高方法,因此我只需要在我的App中包括該文件的一個版本?
我的應用程序是封閉源,因此我不能使用GLP庫。
您可能正在尋找的功能是音頻時間拉伸。 不能簡單地更改采樣率,因為它會引起音高變化(類似於模擬記錄或錄音帶產生的效果)
如果要進行實時拉伸,請嘗試使用實時數字信號處理庫。 如果您願意在項目中添加其他庫,則TarsosDSP是默認情況下可在Android上運行的本機Java框架。
https://github.com/JorenSix/TarsosDSP
他們的存儲庫中甚至還包含Audio Time Stretching示例代碼,該代碼甚至帶有一個swing接口。
編輯:TarsosDSP是GPL。 音頻timestretching是在音響行業這么多的使用的算法或者是專有或GPL的一個大問題。
如果您願意學習一些DSP,我建議您查看https://github.com/philburk/jsyn,它已獲得Apache許可,並且支持Android。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.