Audio

uploadkit-audio adds codec, duration, and structural checks for MP3, WAV, FLAC, OGG/Opus, M4A/AAC, and WebM uploads. Do not transcode or generate waveforms here — put generic MIME/filename checks in Security.

Install

Shell
pip install uploadkit-audio
Shell
uv add uploadkit-audio
Shell
poetry add uploadkit-audio

Quick start

upload.py
from uploadkit import Uploader
from uploadkit_audio import AudioPolicy

uploader = Uploader(
    AudioPolicy(max_duration_sec=600, allowed_codecs=frozenset({"mp3", "wav"})),
    storage=my_storage,
)

Async pipelines use default_async_audio_validators and the AsyncAudio* validator classes on async_validators.

Shared policy and error conventions: Common patterns. Full reference: uploadkit-audio README.