python把wav本地转文字_从python读取wav文件并将帧转换为RAW s16le字符串

I'm reading a file in Python using either of librosa, wave or soundfile libraries and I need to push the chunk (any size) to a HTTP stream. By specification, stream string input requires me to convert frames into RAW s16le format.

I tried multiple options including:

soundarray,rate = librosa.load(pathToWavFile, dtype="

str = b''.join(soundarray)

But this just creates an empty audio stream. What am I doing wrong?

解决方案

You can try pydub to convert audio to audio-segment, split audio-segment into chunks that are playable (i.e you can play each chunk), then convert them to raw as needed.

Here is a quick code.

from pydub import AudioSegment

from pydub.utils import make_chunks

myaudio = AudioSegment.from_file("myaudio.wav" , "wav")

chunk_length_ms = 1000 # pydub c

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值