Convert to lossless audio
“Crate” (a music distribution app like DistroKid) needs to keep master-quality audio for delivery to streaming platforms. Lossy formats like MP3 won’t cut it.
API
Convert to FLAC (lossless, compressed):
ittybit audio \
-i https://crate-app.com/masters/track-07.wav \
--format flac \
--cloudconst task = {
input: "https://crate-app.com/masters/track-07.wav",
kind: "audio",
options: {
format: "flac",
},
};
const res = await fetch("https://api.ittybit.com/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.ITTYBIT_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify(task),
});
const data = await res.json();import requests
task = {
"input": "https://crate-app.com/masters/track-07.wav",
"kind": "audio",
"options": {
"format": "flac",
},
}
res = requests.post(
"https://api.ittybit.com/tasks",
headers={"Authorization": f"Bearer {api_key}"},
json=task,
)
data = res.json()TASK='{
"input": "https://crate-app.com/masters/track-07.wav",
"kind": "audio",
"options": {
"format": "flac"
}
}'
curl -X POST https://api.ittybit.com/tasks \
-H "Authorization: Bearer $ITTYBIT_API_KEY" \
-H "Content-Type: application/json" \
-d "$TASK" CLI
ittybit audio \
-i track-07.wav \
-o track-07.flac
Lossless vs lossy
| Format | Type | Size vs WAV | Use case |
|---|---|---|---|
wav | Lossless, uncompressed | 1x | Master archive |
flac | Lossless, compressed | ~0.6x | Distribution, archive |
mp3 | Lossy | ~0.1x | Playback, streaming |
aac | Lossy | ~0.08x | Playback, streaming |
opus | Lossy | ~0.06x | Streaming, voice |
WAV to FLAC for archival
FLAC is ~40% smaller than WAV with zero quality loss. Good for cutting storage costs on masters:
ittybit audio \
-i master.wav \
-o master.flac
Produce both master and streaming versions
ittybit audio \
-i track-07.wav \
-o track-07.flac
ittybit audio \
-i track-07.wav \
-o track-07.mp3 \
--quality high
ittybit audio \
-i track-07.wav \
-o track-07.aac \
--quality high