Vocal Remover 🎵

Separação de vocais e instrumentais usando IA (Spleeter)

Separar via Upload

POST/api/vocalremove/separate

Envia um arquivo de áudio via upload para separação de vocais e instrumentais.

Body (multipart/form-data)

CampoTipoObrigatórioDescrição
audiofileSimArquivo de áudio (MP3, WAV, OGG, FLAC, M4A — máx. 50MB)

Exemplo de Requisição

bash
curl -X POST https://api.alauda.mz/api/vocalremove/separate \
  -H "X-API-Key: sua_api_key_aqui" \
  -F "audio=@musica.mp3"
JavaScript (fetch)
javascript
const formData = new FormData();
formData.append('audio', fileInput.files[0]);

const response = await fetch('https://api.alauda.mz/api/vocalremove/separate', {
  method: 'POST',
  headers: {
    'X-API-Key': 'sua_api_key_aqui'
  },
  body: formData
});

const data = await response.json();
console.log(data.data.stems);

Resposta

json
{
  "success": true,
  "message": "Separação realizada com sucesso",
  "data": {
    "stems": {
      "vocals": "https://storage.alauda.mz/downloads/vocalremove/abc123_vocals.mp3",
      "instrumental": "https://storage.alauda.mz/downloads/vocalremove/abc123_instrumental.mp3"
    },
    "original_filename": "musica.mp3",
    "duration": "3:45",
    "format": "mp3",
    "stems_count": 2,
    "credits_remaining": 4985
  }
}

Custo: 15 créditos por requisição

Separar via URL

POST/api/vocalremove/separate-url

Envia uma URL de áudio para separação de vocais e instrumentais.

Body (JSON)

CampoTipoObrigatórioDescrição
urlstringSimURL direta do arquivo de áudio

Exemplo de Requisição

bash
curl -X POST https://api.alauda.mz/api/vocalremove/separate-url \
  -H "X-API-Key: sua_api_key_aqui" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com/audio/musica.mp3"
  }'
Python (requests)
python
import requests

headers = {
    'X-API-Key': 'sua_api_key_aqui',
    'Content-Type': 'application/json'
}

data = {
    'url': 'https://example.com/audio/musica.mp3'
}

response = requests.post(
    'https://api.alauda.mz/api/vocalremove/separate-url',
    headers=headers,
    json=data
)

result = response.json()
print(result['data']['stems'])

Resposta

json
{
  "success": true,
  "message": "Separação realizada com sucesso",
  "data": {
    "stems": {
      "vocals": "https://storage.alauda.mz/downloads/vocalremove/def456_vocals.mp3",
      "drums": "https://storage.alauda.mz/downloads/vocalremove/def456_drums.mp3",
      "bass": "https://storage.alauda.mz/downloads/vocalremove/def456_bass.mp3",
      "other": "https://storage.alauda.mz/downloads/vocalremove/def456_other.mp3"
    },
    "duration": "4:12",
    "format": "mp3",
    "stems_count": 4,
    "credits_remaining": 4970
  }
}

Custo: 15 créditos por requisição

Stems por Plano

🎛️

Quantidade de Stems por Plano

Free / Basic2 stems
  • • Vocals
  • • Instrumental
Pro4 stems
  • • Vocals
  • • Drums
  • • Bass
  • • Other
Premium5 stems
  • • Vocals
  • • Drums
  • • Bass
  • • Piano
  • • Other

Formatos Suportados

Entrada

  • MP3 - MPEG Audio Layer 3
  • WAV - Waveform Audio
  • OGG - Ogg Vorbis
  • FLAC - Free Lossless Audio
  • M4A - MPEG-4 Audio

Limites

  • Tamanho máximo: 50MB
  • Motor IA: Spleeter
  • Saída: MP3
⚠️

Limitações

  • • Tamanho máximo do arquivo: 50MB
  • • O processamento pode levar alguns segundos dependendo do tamanho do arquivo
  • • A qualidade da separação depende da complexidade da música
💡

Dica

Para melhores resultados, envie arquivos de alta qualidade (WAV ou FLAC). Use o endpoint /separate-url para evitar upload de arquivos grandes.