使用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是完全相同的。
相关推荐
却道天凉_好个秋20 分钟前
音视频学习(九十八):Profile
学习·音视频·profile
:mnong1 小时前
FramePack视频帧预测设计分析
音视频
无巧不成书02181 小时前
FFmpeg 保姆级安装教程!Windows/macOS/Linux全平台覆盖,
windows·macos·ffmpeg
:mnong1 小时前
MOVA MOSS Video and Audio同步视频-音频设计分析
音视频
chushiyunen1 小时前
python cosyVoice实现tts文本转语音、音频(未完成)
开发语言·python·音视频
愚公搬代码15 小时前
【愚公系列】《剪映+DeepSeek+即梦:短视频制作》018-特效:轻松提升视频质感(知识拓展:轴线原则)
人工智能·音视频
wefly201720 小时前
告别本地环境!m3u8live.cn一键实现 M3U8 链接预览与调试
前端·后端·python·音视频·m3u8·前端开发工具
却道天凉_好个秋21 小时前
音视频学习(九十七):自适应码率(ABR)
学习·音视频·abr
foenix6621 小时前
我的第一个 Vibe Coding 项目:我做了一个能自动剪视频、写字幕、配音、生成文案的 AI 工作流
人工智能·音视频
却道天凉_好个秋21 小时前
音视频学习(九十六):PLC
学习·音视频·plc