PCM文件调整采样率,Java库
version = 0.1.1
maven { url 'https://raw.githubusercontent.com/D10NGYANG/maven-repo/main/repository'}
implementation 'com.github.D10NGYANG:DLPcmResampleUtil:$version'
-keep class com.d10ng.pcmresample.** {*;}
-dontwarn com.d10ng.pcmresample.**
/**
* 重采样,保持通道数、位深、编码方式不变
* - 录音文件时长越长,处理越耗时,不要在UI线程进行操作
* @param srcPath String 源文件路径
* @param targetPath String 目标文件路径
* @param srcSampleRate Int 源采样率
* @param targetSampleRate Int 目标采样率
* @param channelType ChannelType 通道数
* @param encodingType EncodingType 位深
*/
fun resample(
srcPath: String,
targetPath: String,
srcSampleRate: Int,
targetSampleRate: Int,
channelType: ChannelType = ChannelType.MONO,
encodingType: EncodingType = EncodingType.PCM_16BIT
)
/**
* 重采样,保持通道数、位深、编码方式不变
* - 录音文件时长越长,处理越耗时,不要在UI线程进行操作
* @param srcData ByteArray 源文件数据
* @param srcSampleRate Int 源采样率
* @param targetSampleRate Int 目标采样率
* @param channelType ChannelType 通道数
* @param encodingType EncodingType 位深
* @return ByteArray 重采样后的数据
*/
fun resample(
srcData: ByteArray,
srcSampleRate: Int,
targetSampleRate: Int,
channelType: ChannelType = ChannelType.MONO,
encodingType: EncodingType = EncodingType.PCM_16BIT
): ByteArray
参考
Test
文件:Test.kt;
暂无