新闻中心

Python 音频文件的读取与写入方法

2025-11-23
浏览次数:
返回列表
根据需求选择合适方法:处理W*用scipy.io.w*file,多格式支持用soundfile,MP3操作用pydub,信号分析用librosa;注意采样率、位深和通道数以避免数据错误。

python 音频文件的读取与写入方法

处理音频文件在语音识别、音乐分析和信号处理等领域非常常见。Python 提供了多种库来读取和写入音频文件,下面介绍几种常用方法及其使用方式。

1. 使用 scipy.io.w*file 读写 W* 文件

scipy.io.w*file 是处理 W* 格式音频的简单高效工具,适合读取和保存未压缩的 PCM 音频。

读取 W* 文件:

from scipy.io import w*file
<p>sample_rate, audio_data = w*file.read('audio.w*')
print("采样率:", sample_rate)
print("音频数据形状:", audio_data.shape)</p>

写入 W* 文件:

import numpy as np
from scipy.io import w*file
<h1>生成一个简单的正弦波作为示例</h1><p>duration = 2  # 秒
frequency = 440  # Hz
t = np.linspace(0, duration, int(sample_rate <em> duration), False)
tone = np.sin(2 </em> np.pi <em> frequency </em> t) * 32767  # 转为 16 位整数范围
tone = tone.astype(np.int16)</p><p>w*file.write('output.w*', sample_rate, tone)</p>

注意:w*file 只支持未压缩的 W* 文件,不支持 MP3 或其他压缩格式。

2. 使用 soundfile 读写多种格式

soundfile 基于 libsndfile,支持 W*、FLAC、OGG、AIFF 等多种格式,接口简洁。

安装:

pip install soundfile

读取音频:

import soundfile as sf
<p>audio_data, sample_rate = sf.read('audio.flac')
print("采样率:", sample_rate)
print("通道数:", audio_data.shape[1] if len(audio_data.shape) > 1 else 1)</p>

写入音频:

sf.write('output.ogg', audio_data, sample_rate, format='OGG')

format 参数可指定 'W*'、'FLAC'、'OGG' 等格式,支持自动根据扩展名推断。

3. 使用 pydub 处理 MP3 等常见格式

pydub 封装了 ffmpeg,能轻松处理 MP3、M4A、W* 等格式,适合剪辑和转换。

安装:

pip install pydub

需要系统安装 ffmpeg(可通过包管理器或官网下载)。

PictoGraphic PictoGraphic

AI驱动的矢量插图库和插图生成平台

PictoGraphic 133 查看详情 PictoGraphic

读取音频:

from pydub import AudioSegment
<p>audio = AudioSegment.from_mp3("audio.mp3")</p><h1>其他格式可用 from_w*, from_ogg 等,或统一用 from_file</h1><h1>audio = AudioSegment.from_file("audio.m4a", format="m4a")</h1><h1>获取参数</h1><p>sample_rate = audio.frame_rate
channels = audio.channels
duration_ms = len(audio)</p>

导出音频:

audio.export("output.w*", format="w*")

pydub 内部以毫秒为单位操作,适合做切片、合并、音量调整等操作。

4. 使用 librosa 分析音频信号

librosa 主要用于音乐和音频分析,支持多种格式,底层依赖 soundfile。

安装:

pip install librosa

读取音频:

import librosa
<p>audio_data, sample_rate = librosa.load('audio.mp3', sr=22050)  # 默认重采样到 22050 Hz
print("采样率:", sample_rate)
print("时长(秒):", len(audio_data) / sample_rate)</p>

librosa.load 返回的是归一化的浮点数组(范围 -1 到 1),便于后续处理。若需保留原始幅度,可在调用时设置 dtype。

写入音频:

import soundfile as sf
<p>sf.write('reconstructed.w*', audio_data, sample_rate)</p>

librosa 本身不提供 write 方法,通常结合 soundfile 使用。

基本上就这些。根据需求选择合适的方法:处理 W* 用 scipy,多格式支持用 soundfile,MP3 操作用 pydub,信号分析用 librosa。关键是理解采样率、位深和通道数的概念,避免数据截断或类型错误。

以上就是Python 音频文件的读取与写入方法的详细内容,更多请关注其它相关文章!


# 浮点  # 营口seo工具公司  # 昌平营销推广公司招聘  # 光山seo网络推广方案  # 沈阳网站建设平台步骤  # google seo零基础入门  # 莆田seo推广软件  # 连云港网站推荐优化  # 网络推广营销的三种方式  # 鞍山seo云优化  # 龙岗bdk营销推广外包服务商  # 可在  # 相关文章  # python  # 的是  # 源代码  # 如何将  # 命令行  # 转换为  # 采样率  # 系统安装  # 音乐  # ios  # ai  # 工具 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: 解决Flask中Quill编辑器内容提交失败及TypeError的指南  抖音创作助手登录入口_抖音创作辅助工具官网直达  如何在复杂的电商平台中优雅地管理共享资源并确保正确重定向,使用spryker-shop/resource-share-page模块助你一臂之力  PHP中SSG-WSG API的AES加密实践:正确使用初始化向量  邮政快递单号查询入口 邮政快递物流信息在线查询入口  Python大型XML文件高效流式解析教程  抓大鹅无需下载版 抓大鹅秒玩版入口  Flexbox布局实践:实现粘性导航栏与底部固定页脚  CSS子选择器:如何区分并样式化嵌套列表的子层级  Sublime Text怎么设置垂直标尺_Sublime配置Rulers规范代码长度  蛙漫官方正版入口 蛙漫网页在线全集免费观看  神庙逃亡小游戏在线玩 神庙逃亡小游戏入口  斑马英语APP如何开启夜间护眼阅读_斑马英语APP夜间模式与低蓝光设置教程  Tabulator表格日期时间排序问题及自定义解决方案  sublime如何配置Python开发环境_将sublime打造成轻量级Python IDE  蛙漫2台版漫画地址 Manwa2正版网页版链接  AO3官方可用镜像 Archive of Our Own网页版最新入口  机器学习中对数变换预测结果的反向还原  css链接悬停下划线样式如何自定义_使用::after结合content和transition  解决移动端滚动问题的overflow属性应用指南  wps文字怎么插入目录并自动更新_wps文字如何插入目录并自动更新方法  如何使 Jest 模拟函数默认抛出错误以提高测试效率  实现分段式页面滚动导航:CSS与J*aScript教程  Django AJAX 文件上传教程:解决图片无法保存到模型的常见问题  C#使用XPath查询节点时出错? 常见语法错误与调试技巧  Fabric Mod开发:在1.19.3+版本中正确添加自定义物品并管理物品组  Go语言中动态执行代码字符串的策略与实践  谷歌浏览器浏览体验优化_谷歌浏览器新版直连永久可用提示  AO3最新镜像入口 Archive of Our Own官方平台访问  邮政快递包裹最新位置 邮政快递实时追踪入口  解决J*aScript中重复选择项的确认对话框显示问题  C++的std::forward_list怎么用_C++ STL中单向链表容器的特点与应用  淘宝网网页版登录入口 淘宝官方网页版快捷登录  excel如何生成目录 excel一键生成工作表目录超链接  谷歌学术网站直达地址 谷歌学术搜索网页版一键进入  msn官网入口地址手机版 msn官方网站手机最新链接  Composer的 "licenses" 命令如何帮助你遵守开源协议_检查项目依赖的许可证合规性  2025AO3夸克浏览器通道_AO3手机HTTPS安全入口分享  微信群消息显示延迟如何解决 微信群消息刷新优化方法  J*aScript:在map操作中高效处理空数组  押井守高度称赞《辐射4》:玩了八年都停不下来!  微信网页版官方入口直达 微信网页版网页版登录使用方法  蛙漫正版漫画平台入口_蛙漫免费阅读全站漫画资源  星露谷物语官网入口 星露谷物语游戏官网入口  c++如何使用TBB库进行任务并行_c++ Intel线程构建模块  Go调试环境为何无法启动_Go调试器启动失败原因与解决策略  文心一言怎样用插件调度API数据_文心一言用插件调度API数据【API调用】  汽水音乐在线版入口_汽水音乐网页播放手册  Win10系统怎么查看已安装更新_Win10卸载有问题的更新补丁  2026年发布! 美少女养成动作RPG《神剑少女战记》发布实机演示 

搜索