使用pydub库操作与二进制音频数据互转

一、二进制数据转AudioSegment对象

python 复制代码
binary_data = b'...'  # 二进制音频数据
combined_audio = AudioSegment.from_file(io.BytesIO(binary_data))

二、AudioSegment对象转二进制数据

python 复制代码
    binary_data = b'...'  # 二进制音频数据
    combined_audio = AudioSegment.from_file(io.BytesIO(binary_data))

    # 直接获取二进制字节数据时,会缺失44个头部说明字节,我们需要补全
    # 获取二进制字节数据
    raw_audio = combined_audio.raw_data
    # 组装头部字节
    header = struct.pack('<4sI4s', b'RIFF', len(raw_audio) + 36, b'WAVE')
    header += struct.pack('<4sIHHIIHH', b'fmt ', 16, 1, combined_audio.channels, combined_audio.frame_rate,
                          combined_audio.frame_rate * combined_audio.channels * combined_audio.sample_width,
                          combined_audio.channels * combined_audio.sample_width, combined_audio.sample_width * 8)
    header += struct.pack('<4sI', b'data', len(raw_audio))

    # 添加上头部字节
    binary_data_comeback = header + raw_audio
    # 此时binary_data_comeback 跟 binary_data是完全相同的。
相关推荐
luoqice14 分钟前
利用librtmp实现h264和AAC音频的推流
音视频·aac
byte轻骑兵19 分钟前
蓝牙CAP规范解析:构建多设备协同的通用音频新生态
人工智能·音视频·le audio·低功耗音频·蓝牙通话
大象AI共学28 分钟前
我让AI写了个网页,它自动变成了视频
人工智能·音视频
Prannt35 分钟前
星朗智能语音——视频音色替换
ai·音视频·语音识别
时空自由民.1 天前
音视频图片压缩
音视频
日取其半万世不竭1 天前
PeerTube 部署指南:自建视频托管平台
云原生·eureka·音视频
luoqice1 天前
FLV文件解析
音视频
byte轻骑兵1 天前
【AVRCP】规范精讲[10]:链路管理器LM互操作规则与场景落地
人工智能·音视频·蓝牙·avrcp·音视频控制
luoqice1 天前
RTMP视频流的帧格式分析
网络·ffmpeg
JK Chen1 天前
faster_whisper,视频转文字,并生成字幕文件
python·whisper·音视频