用于处理wave文件的纯python模块,支持riff和rifx的所有通用文件格式。

wav的Python项目详细描述


https://travis-ci.org/acelletti/wavy.svg?branch=masterhttps://coveralls.io/repos/github/acelletti/wavy/badge.svg?branch=traviscihttps://img.shields.io/appveyor/tests/acelletti/wavy.svghttps://img.shields.io/github/license/acelletti/wavy.svghttps://readthedocs.org/projects/wavy/badge/?version=latest

简介

用于处理wave文件的纯python模块,支持riff和rifx的所有通用文件格式。

使用wave文件时,有两个主要的纯python模块可用:

  • builtin.wave
    python内置模块,缺少对float和24位整数的支持。 提供原始数据而不是值数组。
  • scipy.wave
    scipy不支持24位整数文件。模块的优点和缺点在于它的简单性, 如果你只需要读和写,这可能是给你的。

wave模块提供了一个功能齐全的专用模块,如果 灵活性和易用性是可取的。

比较

下表显示了受支持功能的比较:

Functionalitybuiltin.wavescipy.wavewavy
RIFF Format Supportcheck-circlecheck-circlecheck-circle
RIFX Format Supporttimes-circlecheck-circlecheck-circle
Read Audio Informationcheck-circletimes-circlecheck-circle
Read Data As Arraytimes-circlecheck-circlecheck-circle
Read Tag Informationtimes-circletimes-circlecheck-circle

下表显示了未压缩波形文件支持格式的比较:

Sample WidthFormat Tagbuiltin.wavescipy.wavewavy
8 bitPCMcheck-circlecheck-circlecheck-circle
EXTENSIBLEtimes-circlecheck-circlecheck-circle
16 bitPCMcheck-circlecheck-circlecheck-circle
EXTENSIBLEtimes-circlecheck-circlecheck-circle
24 bitPCMcheck-circletimes-circlecheck-circle
EXTENSIBLEtimes-circletimes-circlecheck-circle
32 bitPCMcheck-circlecheck-circlecheck-circle
EXTENSIBLEtimes-circlecheck-circlecheck-circle
FLOATtimes-circlecheck-circlecheck-circle
64 bitFLOATtimes-circlecheck-circlecheck-circle

安装

最新的稳定版本可在PyPI上获得。

wavy添加到requirements.txt文件或使用pip安装:

pip install wavy

用法

读取文件

使用模块usewavy.read打开文件:

>>>importwavy>>>file=wavy.read("audio.wav")>>>fileWaveFile(sample_width=16,framerate=44100,n_channels=2,n_frames=286653)

获取文件的数据:

>>>rate,data=file.framerate,file.data>>>rate44100>>>data.shape(286653,2)>>>data.dtypeint16

获取文件信息

要在不加载数据的情况下读取文件信息,请使用wavy.info

>>>wavy.info("audio.wav")WaveFileInfo(sample_width=16,framerate=44100,n_channels=2,n_frames=286653,tags=None)

作者

许可证

这个项目是在麻省理工学院的许可下授权的-请参阅LICENSE文件了解详细信息。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java 安卓 XMLPullParser错误   Java响应网格布局   Java中使用递归的不同方法   java变量可能尚未初始化(边加权图)   java如何将这样的文件插入MySQL数据库   java云端点:不允许实体类型的数组或集合   java(编译器或jvm)是否以不同方式处理类的静态最终成员?如果是,怎么做   java如何从lambda表达式返回新的非抽象映射?   java JDK 7支持的最大Spring版本是什么   我们如何从java类生成DTD   java在我的例子中BindingResult、FieldErrors或GlobalErrors是否可以为null?   java[LibGDX][GWT]读取文件外观时出错。HTML格式的json[序列化异常]   字典Java不可修改密钥集映射   java Admob在firebase sdk之后显示测试广告,但不显示真实广告