Skip to content
Advertisement

How to convert a numpy array waveform into a wav file-like object?

I want to convert a numpy array waveform into a wav-like object so that I can upload it to S3 without having to save the waveform to file locally. Imagine I have a numpy array waveform, y,

JavaScript

How can I convert this numpy array, y into a wav file-like object to upload to S3 using boto3‘s upload_fileobj method?

According to the boto3 docs, the file-like object must have the properties:

A file-like object to upload. At a minimum, it must implement the read method, and must return bytes.

This is how I would like to upload the file-like object:

JavaScript

TLDR:

I want a function that converts a numpy array into a wav-like object that implements the read method and returns bytes.

Advertisement

Answer

You can try like this:

JavaScript
User contributions licensed under: CC BY-SA
9 People found this is helpful
Advertisement