使用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是完全相同的。
相关推荐
ACP广源盛139246256733 小时前
GSV2231G@ACP#2231G产品规格详解及产品应用分享
嵌入式硬件·计算机外设·音视频
这儿有一堆花6 小时前
音频也有水印!不可察觉的声波密码
音视频
ACP广源盛139246256736 小时前
GSV6505F@ACP#6505F产品规格详解及产品应用分享
单片机·嵌入式硬件·计算机外设·音视频
gf13211118 小时前
python_制作视频开头_根据短句字长占总字幕的长度比例拆分
windows·python·音视频
专业开发者9 小时前
行业专家解读蓝牙 ® 低功耗音频(LE Audio)
物联网·音视频
LeeZhao@9 小时前
【狂飙全模态】狂飙AGI-Wan2.1文生视频实战部署-Gradio篇
人工智能·语言模型·音视频·agi
感谢地心引力10 小时前
【AI】加入AI绘图的视频封面快速编辑器
人工智能·python·ai·ffmpeg·音视频·pyqt·gemini
gf132111110 小时前
python_检测音频人声片段
开发语言·python·音视频
HoKis10 小时前
Powershell 向CMD窗口发送CTRL+C(优雅结束控制台应用程序)
ffmpeg·powershell·cmd
丹宇码农11 小时前
使用AI一步生成音视频文件的会议纪要或者课后笔记
人工智能·笔记·音视频