Skip to main content

python bindings for the miniaudio library and its decoders (mp3, flac, ogg vorbis, wav)

Project description

Latest Version

Python miniaudio

Multiplatform audio playback, recording, decoding and sample format conversion for Linux (including Raspberri Pi), Windows, Mac and others.

Installation for most users: via Pypi, Raspberri Pi builds via PiWheels.

This is a Pythonic interface to the cross-platform miniaudio C library:

  • audio operations run in the background
  • python bindings for most of the functions offered in the miniaudio library:
    • reading and decoding audio files
    • getting audio file properties (such as duration, number of channels, sample rate)
    • converting sample formats and frequencies
    • streaming large audio files
    • audio playback
    • audio recording
  • decoders for wav, flac, vorbis and mp3
  • Audio file and Icecast internet radio streaming
  • Python enums instead of just some integers for special values
  • several classes to represent the main functions of the library
  • generators for the Audio playback and recording
  • sample data is usually in the form of a Python array with appropriately sized elements depending on the sample width (rather than a raw block of bytes)
  • TODO: filters, waveform generators?

Requires Python 3.6 or newer. Also works on pypy3 (because it uses cffi).

Software license for these Python bindings, miniaudio and the decoders: MIT

Synthesizer, modplayer?

If you like this library you may also be interested in my software FM synthesizer or my mod player which uses libxmp.

Examples

Most basic audio file playback

import miniaudio
stream = miniaudio.stream_file("samples/music.mp3")
with miniaudio.PlaybackDevice() as device:
    device.start(stream)
    input("Audio file playing in the background. Enter to stop playback: ")

Playback of an unsupported file format

This example uses ffmpeg as an external tool to decode an audio file in a format that miniaudio itself can't decode (m4a/aac in this case):

import subprocess
import miniaudio

channels = 2
sample_rate = 44100
sample_width = 2  # 16 bit pcm
filename = "samples/music.m4a"  # AAC encoded audio file

def stream_pcm(source):
    required_frames = yield b""  # generator initialization
    while True:
        required_bytes = required_frames * channels * sample_width
        sample_data = source.read(required_bytes)
        if not sample_data:
            break
        print(".", end="", flush=True)
        required_frames = yield sample_data

with miniaudio.PlaybackDevice(output_format=miniaudio.SampleFormat.SIGNED16,
                              nchannels=channels, sample_rate=sample_rate) as device:
    ffmpeg = subprocess.Popen(["ffmpeg", "-v", "fatal", "-hide_banner", "-nostdin",
                               "-i", filename, "-f", "s16le", "-acodec", "pcm_s16le",
                               "-ac", str(channels), "-ar", str(sample_rate), "-"],
                              stdin=None, stdout=subprocess.PIPE)
    stream = stream_pcm(ffmpeg.stdout)
    next(stream)  # start the generator
    device.start(stream)
    input("Audio file playing in the background. Enter to stop playback: ")
    ffmpeg.terminate()

API

enum class Backend names: WASAPI DSOUND WINMM COREAUDIO SNDIO AUDIO4 OSS PULSEAUDIO ALSA JACK AAUDIO OPENSL WEBAUDIO CUSTOM NULL

Operating system audio backend to use (only a subset will be available)

enum class ChannelMixMode names: RECTANGULAR SIMPLE CUSTOMWEIGHTS

How to mix channels when converting

enum class DeviceType names: PLAYBACK CAPTURE DUPLEX

Type of audio device

enum class DitherMode names: NONE RECTANGLE TRIANGLE

How to dither when converting

enum class FileFormat names: UNKNOWN WAV FLAC MP3 VORBIS

Audio file format

enum class SampleFormat names: UNKNOWN UNSIGNED8 SIGNED16 SIGNED24 SIGNED32 FLOAT32

Sample format in memory

enum class SeekOrigin names: START CURRENT

How to seek() in a source

enum class ThreadPriority names: IDLE LOWEST LOW NORMAL HIGH HIGHEST REALTIME

The priority of the worker thread (default=HIGHEST)

function convert_frames (from_fmt: miniaudio.SampleFormat, from_numchannels: int, from_samplerate: int, sourcedata: bytes, to_fmt: miniaudio.SampleFormat, to_numchannels: int, to_samplerate: int) -> bytearray

Convert audio frames in source sample format with a certain number of channels, to another sample format and possibly down/upmixing the number of channels as well.

function convert_sample_format (from_fmt: miniaudio.SampleFormat, sourcedata: bytes, to_fmt: miniaudio.SampleFormat, dither: miniaudio.DitherMode = <DitherMode.NONE: 0>) -> bytearray

Convert a raw buffer of pcm samples to another sample format. The result is returned as another raw pcm sample buffer

function decode (data: bytes, output_format: miniaudio.SampleFormat = <SampleFormat.SIGNED16: 2>, nchannels: int = 2, sample_rate: int = 44100, dither: miniaudio.DitherMode = <DitherMode.NONE: 0>) -> miniaudio.DecodedSoundFile

Convenience function to decode any supported audio file in memory to raw PCM samples in your chosen format.

function decode_file (filename: str, output_format: miniaudio.SampleFormat = <SampleFormat.SIGNED16: 2>, nchannels: int = 2, sample_rate: int = 44100, dither: miniaudio.DitherMode = <DitherMode.NONE: 0>) -> miniaudio.DecodedSoundFile

Convenience function to decode any supported audio file to raw PCM samples in your chosen format.

function flac_get_file_info (filename: str) -> miniaudio.SoundFileInfo

Fetch some information about the audio file (flac format).

function flac_get_info (data: bytes) -> miniaudio.SoundFileInfo

Fetch some information about the audio data (flac format).

function flac_read_f32 (data: bytes) -> miniaudio.DecodedSoundFile

Reads and decodes the whole flac audio file. Resulting sample format is 32 bits float.

function flac_read_file_f32 (filename: str) -> miniaudio.DecodedSoundFile

Reads and decodes the whole flac audio file. Resulting sample format is 32 bits float.

function flac_read_file_s16 (filename: str) -> miniaudio.DecodedSoundFile

Reads and decodes the whole flac audio file. Resulting sample format is 16 bits signed integer.

function flac_read_file_s32 (filename: str) -> miniaudio.DecodedSoundFile

Reads and decodes the whole flac audio file. Resulting sample format is 32 bits signed integer.

function flac_read_s16 (data: bytes) -> miniaudio.DecodedSoundFile

Reads and decodes the whole flac audio data. Resulting sample format is 16 bits signed integer.

function flac_read_s32 (data: bytes) -> miniaudio.DecodedSoundFile

Reads and decodes the whole flac audio data. Resulting sample format is 32 bits signed integer.

function flac_stream_file (filename: str, frames_to_read: int = 1024, seek_frame: int = 0) -> Generator[array.array, NoneType, NoneType]

Streams the flac audio file as interleaved 16 bit signed integer sample arrays segments. This uses a fixed chunk size and cannot be used as a generic miniaudio decoder input stream. Consider using stream_file() instead.

function get_enabled_backends () -> Set[miniaudio.Backend]

Returns the set of available backends by the compilation environment for the underlying miniaudio C library

function get_file_info (filename: str) -> miniaudio.SoundFileInfo

Fetch some information about the audio file.

function is_backend_enabled (backend: miniaudio.Backend) -> bool

Determines whether or not the given backend is available by the compilation environment for the underlying miniaudio C library

function is_loopback_supported (backend: miniaudio.Backend) -> bool

Determines whether or not loopback mode is support by a backend.

function lib_version () -> str

Returns the version string of the underlying miniaudio C library

function mp3_get_file_info (filename: str) -> miniaudio.SoundFileInfo

Fetch some information about the audio file (mp3 format).

function mp3_get_info (data: bytes) -> miniaudio.SoundFileInfo

Fetch some information about the audio data (mp3 format).

function mp3_read_f32 (data: bytes) -> miniaudio.DecodedSoundFile

Reads and decodes the whole mp3 audio data. Resulting sample format is 32 bits float.

function mp3_read_file_f32 (filename: str) -> miniaudio.DecodedSoundFile

Reads and decodes the whole mp3 audio file. Resulting sample format is 32 bits float.

function mp3_read_file_s16 (filename: str) -> miniaudio.DecodedSoundFile

Reads and decodes the whole mp3 audio file. Resulting sample format is 16 bits signed integer.

function mp3_read_s16 (data: bytes) -> miniaudio.DecodedSoundFile

Reads and decodes the whole mp3 audio data. Resulting sample format is 16 bits signed integer.

function mp3_stream_file (filename: str, frames_to_read: int = 1024, seek_frame: int = 0) -> Generator[array.array, NoneType, NoneType]

Streams the mp3 audio file as interleaved 16 bit signed integer sample arrays segments. This uses a fixed chunk size and cannot be used as a generic miniaudio decoder input stream. Consider using stream_file() instead.

function read_file (filename: str, convert_to_16bit: bool = False) -> miniaudio.DecodedSoundFile

Reads and decodes the whole audio file. Miniaudio will attempt to return the sound data in exactly the same format as in the file. Unless you set convert_convert_to_16bit to True, then the result is always a 16 bit sample format.

function stream_any (source: miniaudio.StreamableSource, source_format: miniaudio.FileFormat = <FileFormat.UNKNOWN: 0>, output_format: miniaudio.SampleFormat = <SampleFormat.SIGNED16: 2>, nchannels: int = 2, sample_rate: int = 44100, frames_to_read: int = 1024, dither: miniaudio.DitherMode = <DitherMode.NONE: 0>, seek_frame: int = 0) -> Generator[array.array, int, NoneType]

Convenience function that returns a generator to decode and stream any source of encoded audio data (such as a network stream). Stream result is chunks of raw PCM samples in the chosen format. If you send() a number into the generator rather than just using next() on it, you'll get that given number of frames, instead of the default configured amount. This is particularly useful to plug this stream into an audio device callback that wants a variable number of frames per call.

function stream_file (filename: str, output_format: miniaudio.SampleFormat = <SampleFormat.SIGNED16: 2>, nchannels: int = 2, sample_rate: int = 44100, frames_to_read: int = 1024, dither: miniaudio.DitherMode = <DitherMode.NONE: 0>, seek_frame: int = 0) -> Generator[array.array, int, NoneType]

Convenience generator function to decode and stream any supported audio file as chunks of raw PCM samples in the chosen format. If you send() a number into the generator rather than just using next() on it, you'll get that given number of frames, instead of the default configured amount. This is particularly useful to plug this stream into an audio device callback that wants a variable number of frames per call.

function stream_memory (data: bytes, output_format: miniaudio.SampleFormat = <SampleFormat.SIGNED16: 2>, nchannels: int = 2, sample_rate: int = 44100, frames_to_read: int = 1024, dither: miniaudio.DitherMode = <DitherMode.NONE: 0>) -> Generator[array.array, int, NoneType]

Convenience generator function to decode and stream any supported audio file in memory as chunks of raw PCM samples in the chosen format. If you send() a number into the generator rather than just using next() on it, you'll get that given number of frames, instead of the default configured amount. This is particularly useful to plug this stream into an audio device callback that wants a variable number of frames per call.

function stream_raw_pcm_memory (pcmdata: Union[array.array, memoryview, bytes], nchannels: int, sample_width: int, frames_to_read: int = 4096) -> Generator[Union[bytes, array.array], int, NoneType]

Convenience generator function to stream raw pcm audio data from memory. Usually you don't need to use this as the library provides many other streaming options that work on much smaller, encoded, audio data. However, in the odd case that you only have already decoded raw pcm data you can use this generator as a stream source. The data can be provided in array type or bytes, memoryview or even a numpy array. Be sure to also specify the correct number of channels that the audio data has, and the sample with in bytes.

function stream_with_callbacks (sample_stream: Generator[Union[bytes, array.array], int, NoneType], progress_callback: Optional[Callable[[int], NoneType]] = None, frame_process_method: Union[Callable[[array.array], array.array], None] = None, end_callback: Optional[Callable] = None) -> Generator[Union[bytes, array.array], int, NoneType]

Convenience generator function to add callback and processing functionality to another stream. You can specify: A callback function that gets called during play and takes an int for the number of frames played. A function that can be used to process raw data frames before they are yielded back (takes an array.array and returns an array.array) Note: if the processing method is slow it will result in audio glitchiness A callback function that gets called when the stream ends playing.

function vorbis_get_file_info (filename: str) -> miniaudio.SoundFileInfo

Fetch some information about the audio file (vorbis format).

function vorbis_get_info (data: bytes) -> miniaudio.SoundFileInfo

Fetch some information about the audio data (vorbis format).

function vorbis_read (data: bytes) -> miniaudio.DecodedSoundFile

Reads and decodes the whole vorbis audio data. Resulting sample format is 16 bits signed integer.

function vorbis_read_file (filename: str) -> miniaudio.DecodedSoundFile

Reads and decodes the whole vorbis audio file. Resulting sample format is 16 bits signed integer.

function vorbis_stream_file (filename: str, seek_frame: int = 0) -> Generator[array.array, NoneType, NoneType]

Streams the ogg vorbis audio file as interleaved 16 bit signed integer sample arrays segments. This uses a variable unconfigurable chunk size and cannot be used as a generic miniaudio decoder input stream. Consider using stream_file() instead.

function wav_get_file_info (filename: str) -> miniaudio.SoundFileInfo

Fetch some information about the audio file (wav format).

function wav_get_info (data: bytes) -> miniaudio.SoundFileInfo

Fetch some information about the audio data (wav format).

function wav_read_f32 (data: bytes) -> miniaudio.DecodedSoundFile

Reads and decodes the whole wav audio data. Resulting sample format is 32 bits float.

function wav_read_file_f32 (filename: str) -> miniaudio.DecodedSoundFile

Reads and decodes the whole wav audio file. Resulting sample format is 32 bits float.

function wav_read_file_s16 (filename: str) -> miniaudio.DecodedSoundFile

Reads and decodes the whole wav audio file. Resulting sample format is 16 bits signed integer.

function wav_read_file_s32 (filename: str) -> miniaudio.DecodedSoundFile

Reads and decodes the whole wav audio file. Resulting sample format is 32 bits signed integer.

function wav_read_s16 (data: bytes) -> miniaudio.DecodedSoundFile

Reads and decodes the whole wav audio data. Resulting sample format is 16 bits signed integer.

function wav_read_s32 (data: bytes) -> miniaudio.DecodedSoundFile

Reads and decodes the whole wav audio data. Resulting sample format is 32 bits signed integer.

function wav_stream_file (filename: str, frames_to_read: int = 1024, seek_frame: int = 0) -> Generator[array.array, NoneType, NoneType]

Streams the WAV audio file as interleaved 16 bit signed integer sample arrays segments. This uses a fixed chunk size and cannot be used as a generic miniaudio decoder input stream. Consider using stream_file() instead.

function wav_write_file (filename: str, sound: miniaudio.DecodedSoundFile)

Writes the pcm sound to a WAV file

function width_from_format (sampleformat: miniaudio.SampleFormat) -> int

returns the sample width in bytes, of the given sample format.

class CaptureDevice

CaptureDevice (self, input_format: miniaudio.SampleFormat = <SampleFormat.SIGNED16: 2>, nchannels: int = 2, sample_rate: int = 44100, buffersize_msec: int = 200, device_id: Optional[_cffi_backend._CDataBase] = None, callback_periods: int = 0, backends: Optional[List[miniaudio.Backend]] = None, thread_prio: miniaudio.ThreadPriority = <ThreadPriority.HIGHEST: 0>, app_name: str = '')

An audio device provided by miniaudio, for audio capture (recording).

method close (self)

Halt playback or capture and close down the device. If you use the device as a context manager, it will be closed automatically.

method start (self, callback_generator: Generator[NoneType, Union[bytes, array.array], NoneType])

Start the audio device: capture (recording) begins. The recorded audio data is sent to the given callback generator as raw bytes. (it should already be started before)

method stop (self)

Halt playback or capture.

class DecodeError

DecodeError (self, /, *args, **kwargs)

When something went wrong during decoding an audio file.

class DecodedSoundFile

DecodedSoundFile (self, name: str, nchannels: int, sample_rate: int, sample_format: miniaudio.SampleFormat, samples: array.array)

Contains various properties and also the PCM frames of a fully decoded audio file.

class Devices

Devices (self, backends: Optional[List[miniaudio.Backend]] = None)

Query the audio playback and record devices that miniaudio provides

method get_captures (self) -> List[Dict[str, Any]]

Get a list of capture devices and some details about them

method get_playbacks (self) -> List[Dict[str, Any]]

Get a list of playback devices and some details about them

class DuplexStream

DuplexStream (self, playback_format: miniaudio.SampleFormat = <SampleFormat.SIGNED16: 2>, playback_channels: int = 2, capture_format: miniaudio.SampleFormat = <SampleFormat.SIGNED16: 2>, capture_channels: int = 2, sample_rate: int = 44100, buffersize_msec: int = 200, playback_device_id: Optional[_cffi_backend._CDataBase] = None, capture_device_id: Optional[_cffi_backend._CDataBase] = None, callback_periods: int = 0, backends: Optional[List[miniaudio.Backend]] = None, thread_prio: miniaudio.ThreadPriority = <ThreadPriority.HIGHEST: 0>, app_name: str = '')

Joins a capture device and a playback device.

method close (self)

Halt playback or capture and close down the device. If you use the device as a context manager, it will be closed automatically.

method start (self, callback_generator: Generator[Union[bytes, array.array], Union[bytes, array.array], NoneType])

Start the audio device: playback and capture begin. The audio data for playback is provided by the given callback generator, which is sent the recorded audio data at the same time. (it should already be started before passing it in)

method stop (self)

Halt playback or capture.

class IceCastClient

IceCastClient (self, url: str, update_stream_title: Callable[[ForwardRef('IceCastClient'), str], NoneType] = None)

A simple client for IceCast audio streams as miniaudio streamable source. If the stream has Icy Meta Data, the stream_title attribute will be updated with the actual title taken from the meta data. You can also provide a callback to be called when a new stream title is available. The downloading of the data from the internet is done in a background thread and it tries to keep a (small) buffer filled with available data to read.

method close (self)

Stop the stream, aborting the background downloading.

method read (self, num_bytes: int) -> bytes

Read a chunk of data from the stream.

method seek (self, offset: int, origin: miniaudio.SeekOrigin) -> bool

Override this if the stream supports seeking. Note: seek support is sometimes not needed if you give the file type to a decoder upfront. You can ignore this method then.

class MiniaudioError

MiniaudioError (self, /, *args, **kwargs)

When a miniaudio specific error occurs.

class PlaybackDevice

PlaybackDevice (self, output_format: miniaudio.SampleFormat = <SampleFormat.SIGNED16: 2>, nchannels: int = 2, sample_rate: int = 44100, buffersize_msec: int = 200, device_id: Optional[_cffi_backend._CDataBase] = None, callback_periods: int = 0, backends: Optional[List[miniaudio.Backend]] = None, thread_prio: miniaudio.ThreadPriority = <ThreadPriority.HIGHEST: 0>, app_name: str = '')

An audio device provided by miniaudio, for audio playback.

method close (self)

Halt playback or capture and close down the device. If you use the device as a context manager, it will be closed automatically.

method start (self, callback_generator: Generator[Union[bytes, array.array], int, NoneType])

Start the audio device: playback begins. The audio data is provided by the given callback generator. The generator gets sent the required number of frames and should yield the sample data as raw bytes, a memoryview, an array.array, or as a numpy array with shape (numframes, numchannels). The generator should already be started before passing it in.

method stop (self)

Halt playback or capture.

class SoundFileInfo

SoundFileInfo (self, name: str, file_format: miniaudio.FileFormat, nchannels: int, sample_rate: int, sample_format: miniaudio.SampleFormat, duration: float, num_frames: int)

Contains various properties of an audio file.

class StreamableSource

StreamableSource (self, /, *args, **kwargs)

Base class for streams of audio data bytes. Can be used as a contextmanager, to properly call close().

method close (self)

Override this to properly close the stream and free resources.

method read (self, num_bytes: int) -> Union[bytes, memoryview]

override this to provide data bytes to the consumer of the stream

method seek (self, offset: int, origin: miniaudio.SeekOrigin) -> bool

Override this if the stream supports seeking. Note: seek support is sometimes not needed if you give the file type to a decoder upfront. You can ignore this method then.

class WavFileReadStream

WavFileReadStream (self, pcm_sample_gen: Generator[Union[bytes, array.array], int, NoneType], sample_rate: int, nchannels: int, output_format: miniaudio.SampleFormat, max_frames: int = 0)

An IO stream that reads as a .wav file, and which gets its pcm samples from the provided producer

method close (self)

Close the file

method read (self, amount: int = 9223372036854775807) -> Optional[bytes]

Read up to the given amount of bytes from the file.

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

miniaudio-1.55.tar.gz (685.7 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

miniaudio-1.55-pp38-pypy38_pp73-win_amd64.whl (604.8 kB view details)

Uploaded PyPyWindows x86-64

miniaudio-1.55-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

miniaudio-1.55-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (1.3 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

miniaudio-1.55-pp37-pypy37_pp73-win_amd64.whl (604.8 kB view details)

Uploaded PyPyWindows x86-64

miniaudio-1.55-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

miniaudio-1.55-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (1.3 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

miniaudio-1.55-cp310-cp310-win_amd64.whl (323.5 kB view details)

Uploaded CPython 3.10Windows x86-64

miniaudio-1.55-cp310-cp310-win32.whl (274.5 kB view details)

Uploaded CPython 3.10Windows x86

miniaudio-1.55-cp310-cp310-musllinux_1_1_x86_64.whl (593.7 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ x86-64

miniaudio-1.55-cp310-cp310-musllinux_1_1_i686.whl (570.2 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ i686

miniaudio-1.55-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (595.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

miniaudio-1.55-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (670.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

miniaudio-1.55-cp39-cp39-win_amd64.whl (323.5 kB view details)

Uploaded CPython 3.9Windows x86-64

miniaudio-1.55-cp39-cp39-win32.whl (274.5 kB view details)

Uploaded CPython 3.9Windows x86

miniaudio-1.55-cp39-cp39-musllinux_1_1_x86_64.whl (593.7 kB view details)

Uploaded CPython 3.9musllinux: musl 1.1+ x86-64

miniaudio-1.55-cp39-cp39-musllinux_1_1_i686.whl (570.2 kB view details)

Uploaded CPython 3.9musllinux: musl 1.1+ i686

miniaudio-1.55-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (595.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

miniaudio-1.55-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (670.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686

miniaudio-1.55-cp38-cp38-win_amd64.whl (323.5 kB view details)

Uploaded CPython 3.8Windows x86-64

miniaudio-1.55-cp38-cp38-win32.whl (274.5 kB view details)

Uploaded CPython 3.8Windows x86

miniaudio-1.55-cp38-cp38-musllinux_1_1_x86_64.whl (593.7 kB view details)

Uploaded CPython 3.8musllinux: musl 1.1+ x86-64

miniaudio-1.55-cp38-cp38-musllinux_1_1_i686.whl (570.2 kB view details)

Uploaded CPython 3.8musllinux: musl 1.1+ i686

miniaudio-1.55-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (595.6 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

miniaudio-1.55-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (670.6 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ i686

miniaudio-1.55-cp37-cp37m-win_amd64.whl (323.5 kB view details)

Uploaded CPython 3.7mWindows x86-64

miniaudio-1.55-cp37-cp37m-win32.whl (274.5 kB view details)

Uploaded CPython 3.7mWindows x86

miniaudio-1.55-cp37-cp37m-musllinux_1_1_x86_64.whl (593.4 kB view details)

Uploaded CPython 3.7mmusllinux: musl 1.1+ x86-64

miniaudio-1.55-cp37-cp37m-musllinux_1_1_i686.whl (570.0 kB view details)

Uploaded CPython 3.7mmusllinux: musl 1.1+ i686

miniaudio-1.55-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (595.4 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

miniaudio-1.55-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (670.5 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ i686

miniaudio-1.55-cp36-cp36m-win_amd64.whl (323.5 kB view details)

Uploaded CPython 3.6mWindows x86-64

miniaudio-1.55-cp36-cp36m-win32.whl (274.5 kB view details)

Uploaded CPython 3.6mWindows x86

miniaudio-1.55-cp36-cp36m-musllinux_1_1_x86_64.whl (593.4 kB view details)

Uploaded CPython 3.6mmusllinux: musl 1.1+ x86-64

miniaudio-1.55-cp36-cp36m-musllinux_1_1_i686.whl (570.0 kB view details)

Uploaded CPython 3.6mmusllinux: musl 1.1+ i686

miniaudio-1.55-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (595.4 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

miniaudio-1.55-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl (670.5 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ i686

File details

Details for the file miniaudio-1.55.tar.gz.

File metadata

  • Download URL: miniaudio-1.55.tar.gz
  • Upload date:
  • Size: 685.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55.tar.gz
Algorithm Hash digest
SHA256 fff98e701e43f9fd07f398762afd8c7e67a3461e6ec882e9ec0f220fd198bed1
MD5 5e45e1f51ffef5abb68ae6175794f510
BLAKE2b-256 fb8b6111e19c1cf414b92e61f0ae8994ed15766de1f60dccd1f5e90b2206f702

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-pp38-pypy38_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-pp38-pypy38_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 fbe0d0b62727360b7bf5dcfb18bad3384ad3f8b6e8ed8f133074599dac05bc26
MD5 fb3d6ecb97c967c59387ca1ccf315af2
BLAKE2b-256 4d4a5afaab4511e1c895ce6af4244f5fd78afc103e3989d54a5544991e76facb

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9ad7028432af69da50841a870ca12b1507a75b8ebf0595ba8e0366edd6bfcb9
MD5 40d0dfc0bf381c3fc27e94321afd8020
BLAKE2b-256 670fbd29d6a5b6c4f5c5f085b719e9dafd51eaa37a290634da1fe8ca1d769e03

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 571dbe795a18b2843283f488b1c66eebbb4df7731906b14cd79155d44ce7f74d
MD5 5cdf60d49e10327079ed28339a0ea046
BLAKE2b-256 cadf04032effe19e804be524641e7acedeffc7d68bdb55a332269be749cc58f3

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-pp37-pypy37_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-pp37-pypy37_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 a5da7c4e3db6e2391b8a21118718f58e15626e472fe3e0354040fb3bd23a0dc5
MD5 a86b8e9507940ba10101f7aee88c8b8d
BLAKE2b-256 a174dbec3c72493c60deff61e64aeac094f757ef10c94bc0a774c582bf3ac7a2

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 56c4ab931dd5f52a54c60f14b37d9e19a52a6fcc69a699b8cd997baa29c0cb70
MD5 b62ee4a0feefccc7fabafdf00ba789b9
BLAKE2b-256 8683eb5f8538e021f175b833fd2cf5315978efbef56f59b797b14bf3b4e267e4

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f6e141ed16eedff26062386d191e816cc58e03c3b008d3130fe43deaed2974df
MD5 52646f2de89893ff312d7d9b15497b91
BLAKE2b-256 3189fdcd560ac393bdfe8c7d156344bd02e22f234395d0ea9e18adc369dd1973

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: miniaudio-1.55-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 323.5 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 00aea575983da815692f099edc7900b55330a62ab4285010e7fc2ac11a171bf3
MD5 7fe40b3ea1de7f4adf5b8cce42c1d780
BLAKE2b-256 f4749318bb70ab62fad98b77f2d987009118881b606f7e288f4ad6fccad53eaf

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp310-cp310-win32.whl.

File metadata

  • Download URL: miniaudio-1.55-cp310-cp310-win32.whl
  • Upload date:
  • Size: 274.5 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 272628d9d30a0742e8904d617f8b8b8a1898567ebac1c3d8556daca7852d0409
MD5 f670763c1e735d9bdef28394f18153d7
BLAKE2b-256 902dcd98efec38305487323da56ff6f55f5125bf782be0d76b833e5afe0398d3

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 44be4cb7a2a7b1fce5800e6f8edd7e36f78deb6245da9da77ec04747ef20d12f
MD5 291d122699e48e4c5dfb8612f6a1249a
BLAKE2b-256 54a8cb7a2694433b3c53becdc997ee8bbb998c033c9227e4f47d60af67d2b50a

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 2e2f16a45a3be6353f83b2b70d09020bdefca2cb4c18d80b9033da8958972c2a
MD5 7ae486d194494cbc10db6c8c69842885
BLAKE2b-256 f40c5d16cda2dd1949184d3becb23d6ad98b2148282bd888c51a1ad035c9d0ee

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5dbb6131ba8a18579827573ab66d69cc2479e98c5f4f4c420cb910d81e18428c
MD5 e1fd424894cc9f73fcecf399273c0b7c
BLAKE2b-256 32d4b268129cdb0609a04fd00e0132f741af6420dd55dada51c2a48adf232c95

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2d8669e523a30c6355b84d13f8ac819fa230a4760aab167ab68f492a0b6594cf
MD5 e7acf5fae5a11078dc60f7db5dda9ed7
BLAKE2b-256 c6d0ba43a85d4db00626e1c27f26176437b7033af820016dd6bcaa727fb178ad

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: miniaudio-1.55-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 323.5 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 de0a330000d8ffa074d948b0121670cd9413b484677cf8e871c40db13722442a
MD5 c08ce9f06ca14ce003406a88b03cc5e2
BLAKE2b-256 0e38d3dc0627d8f872f89de6f3670f7899a288569878f6d1764d527624d53ec1

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp39-cp39-win32.whl.

File metadata

  • Download URL: miniaudio-1.55-cp39-cp39-win32.whl
  • Upload date:
  • Size: 274.5 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 3fd719bfae9e60f903afebd296d78267ace4f12026ddb5c7da867a83ede4157c
MD5 992b229dc4b7a9aca24c0245da66dec0
BLAKE2b-256 9953883ed6956276b73735e06bf7e1ce67248d1e9f22e506ba75d9896e32ca37

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 e9a6894623c0eeddbf61b37d12e175f8e1ae3b194a249d65a6a29e4670998f56
MD5 912bf0a3195e3ac269e634df53493ccf
BLAKE2b-256 71f62d3177690998ad73e31170ca313456ea0b10dcef6c281cfec4f193c8bf14

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 03dd39921efcf1b6da7f51936c239fb00b51e15b63fdb8267eb5f82b217368af
MD5 89069df38d2a278b89440e96540dc349
BLAKE2b-256 b962d8b624a7198bc5bab28cbc8fe6ca319891027aede56bfee96b229da3bb90

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 abb82e4e0b36ae6fc98d153c2734b0ff84f67f5cf9969d64b560632ad850f643
MD5 e924cd46eb1a89729333c98a5d3ef475
BLAKE2b-256 0e744d16b72101365cd4caad12a3e203ee56ba88bdc35a11619a6835154f447d

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a29ef41a36dba7d5736a339b49c2f773c26fe5245f78131d8d69950e5b791ecd
MD5 fc5e275373219b0fe5180603332da17e
BLAKE2b-256 faca02585f8302b21e2847cc2d78e46da03157aa9988d702048966560bf28873

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: miniaudio-1.55-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 323.5 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 fb541088c22a778fd461b612f365fc2bf8534f3aebc2a68d44ed496723771e12
MD5 70e80dbc5ca736f5b35b8ac6a38d506b
BLAKE2b-256 d7c29273a7334291fa896d9d801e7a0e6b135b978232918777fbc6c5caea8bfc

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp38-cp38-win32.whl.

File metadata

  • Download URL: miniaudio-1.55-cp38-cp38-win32.whl
  • Upload date:
  • Size: 274.5 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 2a9128e2c4bc392dc51f8dca8403b07e8806dc909cae90f7f1b1f896743a257d
MD5 1bd83622ff62542806c123d9a505f0c2
BLAKE2b-256 f9b200f1d390382106f94c72ac470806c643827e9133660b9315c3b98d991662

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 3e26a820fe1c02cd832f91a272229e59b5fb7150615339a724073c45cfe48efa
MD5 ba2f8f4865da571514318ae14bd89da0
BLAKE2b-256 18289cb4ed18e50aeb27f5c8a370eb24b05973af10c40e7d079227cb98bdf08e

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 0fa96813d4a4f7ee73ecb3767cf70b557a707298e3ce3fc17dd4f3d507a7dccb
MD5 aa38b0b5279861a30647bb30c4ed1d18
BLAKE2b-256 82a52f67b9988277abf8eecc7d0cc7aa70c3c789933ea95a5f4e6f6020936556

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1982149caa464d00cb6d6c5ab59e57dfb1fceb15c62feaa8d1fbfed778c10b41
MD5 0edf065249fc18b8b7b2b7bd49700173
BLAKE2b-256 fafe2ba84bdfafd0ae09ca5fed14d1f8b934862d4240f5b2984b6b8802e6c774

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 e5acfdaca0754d4280898f7efac90541b6dfc41c414251b1949528fc568a8043
MD5 51f965a3c161a17cbf8030ec29f5cd6b
BLAKE2b-256 ac4ec4e8e90e4567a18c8c4605d58665fd26ef37441f8071ee7a83943392f69d

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: miniaudio-1.55-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 323.5 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 52d546fb77c7f2cf0cf6c54f80934200a6efb54f00aac669e962020d292621fc
MD5 fef343065ac54e66343d6ebb06445a9e
BLAKE2b-256 d6c729bcc6a225ca87bff10759e609d7cc4a74ae705b3d46f4073a6301094a97

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp37-cp37m-win32.whl.

File metadata

  • Download URL: miniaudio-1.55-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 274.5 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 dc01351a8fc2af6c99ce86ecc8fc09be1fa25ef37b3f495db816101c7f43a1d2
MD5 5a69b104b7d111ad173a1200cbcc7fcb
BLAKE2b-256 1c48a0bd6d891cfa4359373fffde838a3e6796bfdd74036b3e3de00ab83a9e8e

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp37-cp37m-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 38043469c5afdb625fb2df49efe6e95e479e197aef5462ce3c7565ff44ae1fee
MD5 dc53c4fa5a608710f9e74a20f58579e8
BLAKE2b-256 9b39d9c8647ec78a07a9eb2db2cb09c3353e73f02085463d8a490b47030db7e5

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp37-cp37m-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 9a9c93e2271926ee4508454448277c5d2bed679ea7c45e64c02797fb77d261e4
MD5 9320a9c79c08cf33a6421e25f489d706
BLAKE2b-256 04865caf8094c4899a5facc33511970642ed613fa1fd1106e9231977957e04bb

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 121e2573438bca38fb745763870d1e8b1aadb9e2668cf2ad66cd9e20c504af5e
MD5 26cfc26d930b6e35f2b4f526da608e1e
BLAKE2b-256 9ba768d072e6b870366fd29fe03aa247226b0c537980c9653fe3b9066767911c

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 754b8fcc74578cf792525077e4e752756c37f3fa34f593c7e030d9b6b750eeb6
MD5 2feca1e3ace580bd47b28a1c952580db
BLAKE2b-256 65f6ca486f16083918b4ea85d0508047b902cae7198ec9158dc203cd091bc0be

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: miniaudio-1.55-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 323.5 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 6739bbc2ba8f861b0120ede11a9f560102b4af33fd0f2a88a82bcdd244117e58
MD5 1d4e1498a0be7aa0a597f95d9add5233
BLAKE2b-256 ed4375d0bafd26deedb18b32d8f17d18ebc60b391811a879e13d56df284a8f21

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp36-cp36m-win32.whl.

File metadata

  • Download URL: miniaudio-1.55-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 274.5 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for miniaudio-1.55-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 3342de0118797b5bcdc449ddd83a2208b176ffbe6b0aa4e0026eb7b2103b0992
MD5 97180040f2c68ec530891e42d9d7bbcd
BLAKE2b-256 4dfbe6a03e890dffdbf4884c0627f0f57b6eb0b736c4a391e0a3a7355c4d5c17

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp36-cp36m-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp36-cp36m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 dffad1d54059a592a74836d6cb1947709aa3dcbe17f15afb3f39a987be9865df
MD5 fce7d0f67371f59296973e6cecc72807
BLAKE2b-256 237729b490602718df2c1c306c8d9bddfd4d00a4ddffa390e72aa4e0834e09e7

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp36-cp36m-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp36-cp36m-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 6ebed590c88a6381d95487ae566f03496491ce8ec43778cc320ee6b55ec4f302
MD5 b1010e5787175dfd9ce1752e139c2165
BLAKE2b-256 5649656753c89ffd2cfac15f37a2fac92d609f4f72bea84d4ce9352447244839

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f7b7716448819236ae550448f8a0a22b404cf4efd2244a1da2358fcc36778319
MD5 42a9ef0648975e68aec235bc0faa1e0a
BLAKE2b-256 c4ac2ac44d8e78bea2398eca82bee4d45b7061f928fd16c5b00dab2004090b86

See more details on using hashes here.

File details

Details for the file miniaudio-1.55-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for miniaudio-1.55-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6999c8a019a4489cadfa481e2ef4f143b233e7eef2e8b3b4a412cb7d37f0063c
MD5 1f22e2412b18dc3c687e3c35f818803f
BLAKE2b-256 0cd6533473319d7677d2d2915e2ad9f167bbe2cc15caea82545edf6c0a0818c5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page