使用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是完全相同的。
相关推荐
前端达人5 小时前
原生组件案例 04:5 个 div 打造「音频波形动效」
音视频
Android系统攻城狮7 小时前
Android16音频之设置是否允许录音setAllowedCapturePolicy:用法实例(一百)
音视频·android16·音频进阶·是否允许录音
好多渔鱼好多14 小时前
【音视频】AI自适应均衡器的调节精度提升方法
人工智能·音视频
昨日之日200614 小时前
InfiniteTalk V2版 - 声音驱动图片生成高度逼真的说话/唱歌视频 支持50系显卡 ComfyUI+WebUI 一键整合包下载
人工智能·深度学习·音视频
提娜米苏14 小时前
唇语识别中的音频信号
音视频
汗流浃背了吧,老弟!14 小时前
Langchian检索YouTube视频字幕
python·音视频
TG:@yunlaoda360 云老大15 小时前
AI 电影制作迈入新阶段:谷歌云Veo 3.1模型发布,实现音频全覆盖与精细化创意剪辑
人工智能·云计算·音视频·googlecloud
先知后行。17 小时前
音视频项目框架
音视频
EasyCVR19 小时前
视频汇聚平台EasyCVR如何构建“可视、可析、可管”的智慧环保天网
音视频
努力还债的学术吗喽1 天前
ffmpeg离线安装到服务器:解决conda/sudo/无法安装的通用方案
服务器·ffmpeg·conda