All Projects → WarrenWeckesser → wavio

WarrenWeckesser / wavio

Licence: other
A Python module for reading and writing WAV files using numpy arrays.

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to wavio

datasets
🤗 The largest hub of ready-to-use datasets for ML models with fast, easy-to-use and efficient data manipulation tools
Stars: ✭ 13,870 (+11555.46%)
Mutual labels:  numpy
simple-web-audio-recorder-demo
A simple HTML/JS demo that uses WebAudioRecorder.js to record audio on a web page
Stars: ✭ 141 (+18.49%)
Mutual labels:  wav
audio-playback
Ruby/Command Line Audio File Player
Stars: ✭ 20 (-83.19%)
Mutual labels:  wav
python demo
一些简单有趣的Python小Demo
Stars: ✭ 109 (-8.4%)
Mutual labels:  numpy
Poke-Pi-Dex
Our deep learning for computer vision related project for nostalgic poke weebs (Sistemi digitali, Unibo).
Stars: ✭ 18 (-84.87%)
Mutual labels:  numpy
ml-workflow-automation
Python Machine Learning (ML) project that demonstrates the archetypal ML workflow within a Jupyter notebook, with automated model deployment as a RESTful service on Kubernetes.
Stars: ✭ 44 (-63.03%)
Mutual labels:  numpy
NDScala
N-dimensional arrays in Scala 3. Think NumPy ndarray, but type-safe over shapes, array/axis labels & numeric data types
Stars: ✭ 37 (-68.91%)
Mutual labels:  numpy
vidpipe
Video data processing pipeline using OpenCV
Stars: ✭ 33 (-72.27%)
Mutual labels:  numpy
gau2grid
Fast computation of a gaussian and its derivative on a grid.
Stars: ✭ 23 (-80.67%)
Mutual labels:  numpy
Object-sorting-using-Robotic-arm-and-Image-processing
Sorting objects of different colors using robotic arm and using computer vision (image processing).
Stars: ✭ 21 (-82.35%)
Mutual labels:  numpy
npbench
NPBench - A Benchmarking Suite for High-Performance NumPy
Stars: ✭ 40 (-66.39%)
Mutual labels:  numpy
easy-audio
Lossless audio decoder written in common lisp
Stars: ✭ 18 (-84.87%)
Mutual labels:  wav
easywave
Easy WAVE file handling for Nim
Stars: ✭ 18 (-84.87%)
Mutual labels:  wav
Record-Audio-on-Windows
A Go program that uses winmm.dll to record audio to a WAV file.
Stars: ✭ 28 (-76.47%)
Mutual labels:  wav
Python-for-data-analysis
No description or website provided.
Stars: ✭ 18 (-84.87%)
Mutual labels:  numpy
NothingButNumPy
This repo is part of a series of blog post titled "Nothing but NumPy"
Stars: ✭ 43 (-63.87%)
Mutual labels:  numpy
equilib
🌎→🗾Equirectangular (360/panoramic) image processing library for Python with minimal dependencies only using Numpy and PyTorch
Stars: ✭ 43 (-63.87%)
Mutual labels:  numpy
python-sharearray
Share numpy arrays across processes efficiently ideal for large, read-only datasets
Stars: ✭ 32 (-73.11%)
Mutual labels:  numpy
Information-Retrieval
Information Retrieval algorithms developed in python. To follow the blog posts, click on the link:
Stars: ✭ 103 (-13.45%)
Mutual labels:  numpy
UDACITY-Deep-Learning-Nanodegree-PROJECTS
These are the projects I did on my Udacity Deep Learning Nanodegree 🌟 💻 💻. 💥 🌈
Stars: ✭ 18 (-84.87%)
Mutual labels:  numpy

wavio

wavio is a Python module that defines two functions:

  • wavio.read reads a WAV file and returns an object that holds the sampling rate, sample width (in bytes), and a numpy array containing the data.
  • wavio.write writes a numpy array to a WAV file, optionally using a specified sample width.

The module uses the wave module in Python's standard library, so it has the same limitations as that module. In particular, it does not support compressed WAV files, and it does not handle floating point WAV files. (When floating point data is passed to wavio.write it is converted to integers before being written to the WAV file.) The functions can read and write 8-, 16-, 24- and 32-bit integer WAV files.

wavio has been tested with Python versions 2.7 and 3.4 to 3.9.

wavio depends on numpy (http://www.numpy.org). NumPy version 1.9.0 or later is required.

The package has a suite of unit tests, but it should still be considered prototype-quality software. There may be backwards-incompatible API changes between releases.

Example

The following code (also found in the docstring of wavio.write) writes a three second 440 Hz sine wave to a 24-bit WAV file:

import numpy as np
import wavio

rate = 22050  # samples per second
T = 3         # sample duration (seconds)
f = 440.0     # sound frequency (Hz)
t = np.linspace(0, T, T*rate, endpoint=False)
x = np.sin(2*np.pi * f * t)
wavio.write("sine24.wav", x, rate, sampwidth=3)

Author:Warren Weckesser
Repository:https://github.com/WarrenWeckesser/wavio
License:BSD 2-clause (http://opensource.org/licenses/BSD-2-Clause)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].