49 audio tools: trim, convert, normalize, remove vocals, split stems, transcribe, and more.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Pans the audio in a circle around the listener (the "8D audio" effect). Input: one file with a public HTTPS download_url. Optional settings for set_8d_effect: secondsPerTurn, distance. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
One input media file.
Parameters for set_8d_effect: secondsPerTurn, distance.
Bitrate for lossy formats, in kbps.
Output format, for example mp3, wav, m4a, ogg or flac.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pans the audio in a circle around the listener (the "8D audio" effect). Input: one file with a public HTTPS download_url. Optional settings for set_8d_effect: secondsPerTurn, distance. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_8d_effect: secondsPerTurn, distance. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_8d_effect: secondsPerTurn, distance.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Isolates the vocals from a song by source separation and returns the vocal track. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Cuts a section of a song into an MP3 ringtone for Android. Input: one file with a public HTTPS download_url. Optional settings for set_ringtone: startSec, endSec, fadeOut, fadeSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_ringtone: startSec, endSec, fadeOut, fadeSec. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_ringtone: startSec, endSec, fadeOut, fadeSec.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Makes an audio file smaller by lowering its bitrate, sample rate or channel count. Input: one file with a public HTTPS download_url. Optional settings for set_compression: bitrateKbps, sampleRateHz, channels. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_compression: bitrateKbps, sampleRateHz, channels. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_compression: bitrateKbps, sampleRateHz, channels.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Converts audio between MP3, WAV, M4A, OGG, FLAC and other formats. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Joins several audio files into one, in the order given, with an optional gap. Input: two or more files, in order, each with a public HTTPS download_url. Optional settings for set_join_gap: gapSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | Input files in processing order. |
| settings | object | Parameters for set_join_gap: gapSec. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "Input files in processing order."
},
"settings": {
"type": "object",
"description": "Parameters for set_join_gap: gapSec.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Repeats a clip a set number of times, with an optional gap. Input: one file with a public HTTPS download_url. Optional settings for set_loop: repeats, gapSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_loop: repeats, gapSec. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_loop: repeats, gapSec.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Normalizes loudness to a LUFS target, such as -14 for Spotify or -16 for podcasts, with a true-peak ceiling. Input: one file with a public HTTPS download_url. Optional settings for set_loudness_target: platform, targetLufs, ceilingDbtp. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_loudness_target: platform, targetLufs, ceilingDbtp. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_loudness_target: platform, targetLufs, ceilingDbtp.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Reverses audio so it plays from end to start. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Splits a recording into parts: a set number, a set length, or at silences. Input: one file with a public HTTPS download_url. Optional settings for set_split: method, parts, partLengthSec, silenceThresholdDbfs, minimumGapSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_split: method, parts, partLengthSec, silenceThresholdDbfs, minimumGapSec. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_split: method, parts, partLengthSec, silenceThresholdDbfs, minimumGapSec.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Transcribes the speech in a recording to text with the Whisper speech recognition model. Input: one file with a public HTTPS download_url. Optional settings for set_transcript_layout: paragraphs. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_transcript_layout: paragraphs. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_transcript_layout: paragraphs.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Cuts an audio file down to a start and end time, or removes that section. Input: one file with a public HTTPS download_url. Optional settings for set_trim: startSec, endSec, mode, fade. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_trim: startSec, endSec, mode, fade. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_trim: startSec, endSec, mode, fade.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Boosts the low frequencies. Input: one file with a public HTTPS download_url. Optional settings for set_bass_boost: amountDb, cornerHz, keepLevel. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_bass_boost: amountDb, cornerHz, keepLevel. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_bass_boost: amountDb, cornerHz, keepLevel.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Measures the tempo of a track in BPM. Input: one file with a public HTTPS download_url. Optional settings for set_analysis_range: selectionOnly. Returns the measurements as JSON, not a file. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_analysis_range: selectionOnly. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_analysis_range: selectionOnly.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
}
}Joins several files with a crossfade between each pair. Input: two or more files, in order, each with a public HTTPS download_url. Optional settings for set_crossfade: fadeSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | Input files in processing order. |
| settings | object | Parameters for set_crossfade: fadeSec. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "Input files in processing order."
},
"settings": {
"type": "object",
"description": "Parameters for set_crossfade: fadeSec.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Applies dynamic range compression to even out levels. Input: one file with a public HTTPS download_url. Optional settings for set_compressor: preset, thresholdDb, ratio, attackMs, releaseMs, kneeDb, makeupDb. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_compressor: preset, thresholdDb, ratio, attackMs, releaseMs, kneeDb, makeupDb. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_compressor: preset, thresholdDb, ratio, attackMs, releaseMs, kneeDb, makeupDb.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Adds an echo or delay effect. Input: one file with a public HTTPS download_url. Optional settings for set_echo: preset, delayMs, feedbackPercent, mixPercent. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_echo: preset, delayMs, feedbackPercent, mixPercent. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_echo: preset, delayMs, feedbackPercent, mixPercent.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Applies an equalizer preset. Input: one file with a public HTTPS download_url. Optional settings for set_equalizer: preset. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_equalizer: preset. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_equalizer: preset.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Adds a fade-in at the start and a fade-out at the end. Input: one file with a public HTTPS download_url. Optional settings for set_fade: fadeInSec, fadeOutSec, curve. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_fade: fadeInSec, fadeOutSec, curve. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_fade: fadeInSec, fadeOutSec, curve.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Converts audio to lossless FLAC. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Detects the musical key of a track and its Camelot code. Input: one file with a public HTTPS download_url. Returns the measurements as JSON, not a file. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
}
}
}Measures integrated loudness (LUFS), loudness range and true peak to ITU-R BS.1770. Input: one file with a public HTTPS download_url. Returns the measurements as JSON, not a file. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
}
}
}Converts audio to M4A (AAC). Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Converts an audio or video file to MP3. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Speeds a track up and raises its pitch (the "nightcore" edit). Input: one file with a public HTTPS download_url. Optional settings for set_nightcore: rate, preset. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_nightcore: rate, preset. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_nightcore: rate, preset.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Reduces background noise such as hiss, hum and room noise in a recording. Input: one file with a public HTTPS download_url. Optional settings for set_noise_reduction: strength. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_noise_reduction: strength. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_noise_reduction: strength.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Converts audio to OGG Vorbis. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Shifts pitch by semitones and cents without changing length. Input: one file with a public HTTPS download_url. Optional settings for set_pitch_shift: semitones, cents. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_pitch_shift: semitones, cents. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_pitch_shift: semitones, cents.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Adds convolution reverb. Input: one file with a public HTTPS download_url. Optional settings for set_reverb: space, decaySec, mix, preDelayMs. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_reverb: space, decaySec, mix, preDelayMs. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_reverb: space, decaySec, mix, preDelayMs.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Cuts a section of a song into an M4R ringtone for iPhone. Input: one file with a public HTTPS download_url. Optional settings for set_ringtone: startSec, endSec, fadeOut, fadeSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_ringtone: startSec, endSec, fadeOut, fadeSec. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_ringtone: startSec, endSec, fadeOut, fadeSec.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Resamples audio to a different sample rate. Input: one file with a public HTTPS download_url. Optional settings for set_sample_rate: sampleRateHz. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_sample_rate: sampleRateHz. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_sample_rate: sampleRateHz.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Prepares audio to fit common email attachment limits by recompressing it or splitting it. It returns the files and does not send any email. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Prepares audio to fit Discord's upload limit by recompressing it or splitting it. It returns the files and does not send anything to Discord. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Prepares audio to fit WhatsApp's 16 MB limit by recompressing it or splitting it at pauses. It returns the files and does not send anything to WhatsApp. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Shortens long silences in speech recordings. Input: one file with a public HTTPS download_url. Optional settings for set_silence_removal: threshold, minimumGapSec, paddingSec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_silence_removal: threshold, minimumGapSec, paddingSec. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_silence_removal: threshold, minimumGapSec, paddingSec.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Slows a track down and adds reverb (the "slowed + reverb" edit). Input: one file with a public HTTPS download_url. Optional settings for set_slowed_reverb: intensity, speed, mix, decaySec. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_slowed_reverb: intensity, speed, mix, decaySec. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_slowed_reverb: intensity, speed, mix, decaySec.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Changes playback speed, with or without changing pitch. Input: one file with a public HTTPS download_url. Optional settings for set_speed: speed, keepPitch. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_speed: speed, keepPitch. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_speed: speed, keepPitch.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Separates a song into stems (vocals, drums, bass, other) by source separation. Input: one file with a public HTTPS download_url. Optional settings for set_stems: vocals, drums, bass, other. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_stems: vocals, drums, bass, other. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_stems: vocals, drums, bass, other.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Converts between stereo and mono, or keeps one channel. Input: one file with a public HTTPS download_url. Optional settings for set_channel_mode: mode. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_channel_mode: mode. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_channel_mode: mode.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Widens or narrows the stereo image. Input: one file with a public HTTPS download_url. Optional settings for set_stereo_width: width. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_stereo_width: width. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_stereo_width: width.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Transcribes speech and returns an SRT or VTT subtitle file. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Changes tempo without changing pitch. Input: one file with a public HTTPS download_url. Optional settings for set_tempo: tempoPercent, bpm. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_tempo: tempoPercent, bpm. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_tempo: tempoPercent, bpm.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Extracts the audio track from a video file such as MP4, MOV or MKV. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Removes the vocals from a song by source separation and returns the instrumental. Input: one file with a public HTTPS download_url. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Applies a voice effect preset or a pitch shift to a recorded voice. Input: one file with a public HTTPS download_url. Optional settings for set_voice: preset, semitones. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_voice: preset, semitones. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_voice: preset, semitones.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Raises the volume by a gain in dB or up to a target peak. Input: one file with a public HTTPS download_url. Optional settings for set_volume: method, gainDb, targetPeakDbfs. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_volume: method, gainDb, targetPeakDbfs. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_volume: method, gainDb, targetPeakDbfs.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Converts audio to WAV at 16, 24 or 32-bit. Input: one file with a public HTTPS download_url. Optional settings for set_wav_bit_depth: bitDepth. Optional outputFormat (for example mp3, wav, m4a) and bitrateKbps where the tool supports them. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_wav_bit_depth: bitDepth. |
| bitrateKbps | number | Bitrate for lossy formats, in kbps. |
| outputFormat | string | Output format, for example mp3, wav, m4a, ogg or flac. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_wav_bit_depth: bitDepth.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bitrateKbps": {
"type": "number",
"description": "Bitrate for lossy formats, in kbps.",
"exclusiveMinimum": 0
},
"outputFormat": {
"type": "string",
"description": "Output format, for example mp3, wav, m4a, ogg or flac."
}
}
}Draws a PNG image of the waveform. Input: one file with a public HTTPS download_url. Optional settings for set_waveform_image: preset, widthPx, heightPx, style, waveColor, backgroundColor, transparent. Returns download links for the result, which expire after 1 hour. The server downloads the file from download_url, keeps it in ihateaudio's Cloudflare R2 storage while the job runs, and processes it with the ihateaudio.com tool page in a headless browser on Cloudflare. The input is deleted when the job ends.
| Argument | Type | Description |
|---|---|---|
| files* | array | One input media file. |
| settings | object | Parameters for set_waveform_image: preset, widthPx, heightPx, style, waveColor, backgroundColor, transparent. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url"
],
"properties": {
"file_id": {
"type": "string",
"minLength": 1,
"description": "Set by ChatGPT for files shared in the chat. Other clients leave it out."
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string",
"format": "uri",
"description": "Public HTTPS link to the audio or video file. The server downloads it from here."
}
},
"additionalProperties": false
},
"maxItems": 12,
"minItems": 1,
"description": "One input media file."
},
"settings": {
"type": "object",
"description": "Parameters for set_waveform_image: preset, widthPx, heightPx, style, waveColor, backgroundColor, transparent.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
}
}