Add a short description here
Project description
spectro-utils
Conversion from wav file to spectro image and from spectro image to wav file
install
pip install spectro-utils
how to use
get started
wav file to spectro image
import spectro_utils.audio2spectro as a2s
a2s.audio2spectro_img(audio_paths)
spectro image to wav file
import spectro_utils.spectro2audio as s2a
s2a.img2wav_file(image_paths)
more details of audio2spectro
read_audio_lazy
Reads a wav file using delayed evaluation. It saves memory compared to normal loading.
audios=a2s.read_audio_lazy(paths)
wave2spectro_lazy
Converts the waves to an spectrum using delayed evaluation.
spectros=a2s.wave2spectro_lazy(audios)
spectro2img
Save the spectro images as a image files(png or bmp).
a2s.spectro2img(spectros,image_names)
example of custom pipeline
def split_four_audio_lazy(audios):
for audio in audios:
n=len(audio)/4
for i in range(4):
start=n*i
yield audio[start:start+n]
def custom_pipeline(paths:list[str],image_names:list[str])->None:
g=a2s.read_audio_lazy(paths)
g=split_four_audio_lazy(g)
g=a2s.wave2spectro_lazy(g)
a2s.spectro2img(g,image_names)
more details of spectro2audio
read_img_lazy
Reads a image file using delayed evaluation. It saves memory compared to normal loading.
images=s2a.read_img_lazy(paths)
img2amp_lazy
Converts the image to an power spectrum using delayed evaluation.
amplitudes=s2a.img2amp_lazy(images)
amp2wave_lazy
Converts power spectrum to sound waves using delay evaluation.
waves=s2a.amp2wave_lazy(amplitudes)
wave2wav_file
Save the sound wave as a wav file.
s2a.wave2wav_file(waves,file_names)
example of custom pipeline
def volume_up_lazy(amplitudes):
for amp in amplitudes:
yield amp*2000
def custom_pipeline(paths)->None:
g=s2a.read_img_lazy(paths)
g=s2a.img2amp_lazy(g)
g=volume_up_lazy(g)
g=s2a.amp2wave_lazy(g)
return g
g=custom_pipeline(['./data/image/1.png'])
display(IPython.display.Audio(g.__next__(), rate=44100))
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
spectro_utils-0.1.2.tar.gz
(3.0 kB
view hashes)
Built Distribution
Close
Hashes for spectro_utils-0.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcd27677971e111f878a8125a7e7a1c918f377b01f4a118a0b954b6dd0f75d57 |
|
MD5 | 924ceadac44a71edc5132f09ffffcd9d |
|
BLAKE2b-256 | 818aa03a7ee23ea9d982a7bd731feeb7134ac4bd9c4c3ff2b998da41ba1f08a4 |