Skip to main content
Este documento apresentará uma descrição da integração da API de Geração de Áudios do Producer, que pode gerar músicas oficiais do Producer através da entrada de parâmetros personalizados.

Processo de Solicitação

Para usar a API de Geração de Áudios do Producer, primeiro acesse o Painel de Controle da Ace Data Cloud para obter seu Token de API, que deve ser guardado para uso futuro. Se você ainda não estiver logado ou registrado, será redirecionado automaticamente para a página de login, onde será convidado a se registrar e fazer login. Após a conclusão, você será redirecionado de volta para a página atual. Um Token de API é suficiente para acessar todos os serviços da plataforma, não sendo necessário solicitar um para cada serviço individualmente. A primeira solicitação oferece um crédito gratuito, permitindo uma experiência sem custo; quando o crédito estiver baixo, você pode recarregar o saldo geral no painel de controle.
📘 Documentação Completa: API de Geração de Áudios do Producer →

Uso Básico

Para pensar em algumas músicas, você pode inserir qualquer texto, por exemplo, se eu quiser gerar uma música sobre o Natal, posso inserir a song for Christmas, como mostrado na imagem:

Aqui podemos ver que configuramos os Cabeçalhos da Solicitação, incluindo:
  • accept: o formato de resposta desejado, aqui preenchido como application/json, ou seja, formato JSON.
  • authorization: a chave para chamar a API, que pode ser selecionada diretamente após a solicitação.
Além disso, os parâmetros do Corpo da Solicitação incluem:
  • action: a ação da tarefa de geração de música, que é generate para gerar uma música.
  • model: o modelo utilizado para criar a música, atualmente os principais são: FUZZ-2.0 Pro, FUZZ-2.0, FUZZ-2.0 Raw, FUZZ-1.1 Pro, FUZZ-1.0 Pro, FUZZ-1.0, FUZZ-1.1, FUZZ-0.8.
  • lyric: o conteúdo da letra da música.
  • custom: se a música deve ser gerada de forma personalizada.
  • prompt: a palavra-chave no modo de inspiração.
  • title: informações sobre o título da música.
  • audio_id: ID da música de referência, usado para continuar ou replicar.
  • continue_at: continuar a partir de um número de segundos especificado.
  • replace_section_start/replace_section_end: tempo de início e fim do trecho a ser substituído, em segundos.
  • lyrics_strength: intensidade da letra, indicando o grau de influência da letra na geração do áudio, podendo variar de 0 a 1, com padrão de 0.7.
  • sound_strength: intensidade da palavra-chave de áudio, podendo variar de 0.2 a 1, com padrão de 0.7.
  • cover_strength: intensidade da reinterpretação, variando de 0.2 a 1, com padrão de 1.
  • weirdness: grau de peculiaridade do estilo, podendo variar de 0 a 1, com padrão de 0.5.
  • callback_url: URL para onde os resultados devem ser retornados.
  • async: opcional, se definido como true, a interface retorna imediatamente task_id, sem necessidade de fornecer callback_url, e os resultados podem ser obtidos através da interface de consulta de tarefas correspondente.
  • instrumental: se deve ser no modo sem letra.
Após a seleção, você pode notar que o código correspondente também foi gerado à direita, como mostrado na imagem:

Clique no botão “Try” para realizar o teste, como mostrado na imagem acima, e você receberá o seguinte resultado:
O resultado retornado contém vários campos, descritos a seguir:
  • success, o estado atual da tarefa de geração de música.
    • data, o resultado da tarefa de música atual
      • id, o ID da tarefa de geração de música atual.
      • sound, a palavra-chave da tarefa de geração de música atual.
      • seed, o valor da semente da tarefa de geração de música atual.
      • audio_url, o link de áudio da tarefa de geração de música atual.
      • image_url, o link da capa da tarefa de geração de música atual.
      • image_id, o ID da capa da tarefa de geração de música atual.
      • state, o estado da tarefa de geração de música atual.
      • duration, a duração da música atual.
      • progress, o valor de progresso da tarefa de música atual.
      • model, as informações do modelo utilizado na tarefa de geração de música atual.
      • lyric, as informações da letra da tarefa de geração de música atual.
Podemos ver que recebemos as informações da música que desejamos gerar, e tudo o que precisamos fazer é acessar o link de áudio da música no data para obter a música do Producer gerada. Além disso, se você quiser gerar o código de integração correspondente, pode copiá-lo diretamente, por exemplo, o código CURL é o seguinte:

Geração Personalizada

Se você quiser gerar letras personalizadas, pode inserir a letra: Neste caso, o campo lyric pode receber um conteúdo semelhante ao seguinte:
Em seguida, para personalizar a geração da música com base na letra, título e estilo, você pode especificar o seguinte conteúdo:
  • lyric:Texto da letra
  • custom:Preencha como true, representando geração personalizada, este parâmetro é false por padrão, representando geração por prompt.
  • title:Título da música.
O exemplo preenchido é o seguinte:

Após o preenchimento, o código gerado automaticamente é o seguinte:

O código correspondente:
Teste permitido, o efeito gerado é semelhante.

Cantar uma música

Se você deseja realizar uma operação de canto em uma música já gerada, pode inserir a música gerada acima para cantar, em seguida, precisamos personalizar a geração da música com base na letra e no título. Se você deseja continuar cantando uma música que você enviou, pode definir o parâmetro action como upload_cover e inserir o ID da música que precisa ser continuada, o ID da música pode ser obtido usando a Producer Upload API, como mostrado na imagem abaixo:

Você pode especificar o seguinte conteúdo:
  • action:A ação da tarefa da música, atualmente suportando: generate, cover, extend, upload_cover, upload_extend, replace_section, swap_vocals, swap_instrumentals, variation, nesta reinterpretação usamos o parâmetro cover.
  • lyric:Texto da letra
  • title:Título da música.
  • custom:Se deve usar o modo personalizado para gerar, o padrão é false.
  • audio_id:ID da música que precisa ser cantada.
O exemplo preenchido é o seguinte:

Após o preenchimento, o código gerado automaticamente é o seguinte:

O código correspondente:
Teste permitido, o efeito gerado é semelhante.

Continuar a música

Se você quiser continuar a música, precisamos passar o valor do parâmetro action como: extend, em seguida, devemos personalizar a geração da música com base na letra, título e estilo. Se você quiser continuar a música que enviou, pode definir o parâmetro action como upload_extend e inserir o ID da música que precisa ser continuada. O ID da música pode ser obtido usando a API de Upload do Produtor, conforme mostrado na imagem abaixo:

O exemplo de preenchimento é o seguinte:

Após o preenchimento, o código gerado automaticamente é o seguinte:

O código correspondente:
Teste permitido, o efeito gerado é semelhante.

Transformação musical

Se você quiser gerar uma nova música com efeito semelhante com base no valor de seed da música anterior, precisamos passar o valor do parâmetro action como: variation, em seguida, podemos personalizar a geração de uma nova música com efeito semelhante. O exemplo de preenchimento é o seguinte:

Após o preenchimento, o código gerado automaticamente é o seguinte:

O código correspondente:
Teste permitido, o efeito gerado é semelhante.

Substituir Seção

Se você quiser substituir uma seção da música, precisamos passar o valor do parâmetro action como: substituir_seção, em seguida, devemos personalizar a geração da música com base na letra e no título. Se você quiser continuar substituindo uma seção da música que você enviou, pode definir o parâmetro action como upload_substituir_seção e inserir o ID da música que precisa ser continuada, o ID da música pode ser obtido usando a API de Upload do Produtor para obter, como mostrado na imagem abaixo:

O exemplo de preenchimento é o seguinte:

Depois de preencher, o código gerado automaticamente é o seguinte:

O código correspondente:
Teste permitido, o efeito gerado é semelhante.

Versão de acompanhamento

Se você deseja usar a versão oficial de acompanhamento, pode definir o valor do parâmetro action como: swap_instrumentals, em seguida, precisamos personalizar a geração da música com base na letra e no título. O exemplo de preenchimento é o seguinte:

Após o preenchimento, o código gerado automaticamente é o seguinte:

O código correspondente:
O teste é permitido, o efeito gerado é semelhante.

Versão de voz

Se você deseja usar a versão oficial de voz, pode definir o valor do parâmetro action como: swap_vocals, em seguida, precisamos personalizar a geração da música com base na letra, título e estilo. O exemplo de preenchimento é o seguinte:

Após o preenchimento, o código gerado automaticamente é o seguinte:

O código correspondente:
O teste é permitido, o efeito gerado é semelhante.

Separação de letras e música

Se você deseja usar a operação oficial de separação de letras e música, pode definir o valor do parâmetro action como: stems, em seguida, precisamos realizar a separação de letras e música com base no ID da música. O exemplo de preenchimento é o seguinte:

Após o preenchimento, o código gerado automaticamente é o seguinte:

O código correspondente:
O teste é permitido, o efeito gerado é semelhante.

Callback assíncrono

Como o tempo de geração da API Producer Audios pode ser relativamente longo, se a API não responder por um longo período, a solicitação HTTP manterá a conexão, resultando em consumo adicional de recursos do sistema. Portanto, esta API também oferece suporte a callbacks assíncronos. O fluxo geral é: quando o cliente inicia a solicitação, deve especificar um campo callback_url adicional. Após o cliente fazer a solicitação à API, a API retornará imediatamente um resultado, contendo um campo task_id, que representa o ID da tarefa atual. Quando a tarefa for concluída, o resultado da tarefa gerada será enviado para o callback_url especificado pelo cliente no formato JSON POST, que também incluirá o campo task_id, assim o resultado da tarefa pode ser associado pelo ID. Abaixo, vamos entender como operar isso através de um exemplo. Primeiro, o callback Webhook é um serviço que pode receber solicitações HTTP, os desenvolvedores devem substituí-lo pela URL do servidor HTTP que construíram. Para facilitar a demonstração, usamos um site de exemplo de Webhook público https://webhook.site/, ao abrir este site, você obterá uma URL de Webhook, como mostrado na imagem: Copie esta URL e você pode usá-la como Webhook, o exemplo aqui é https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1. Em seguida, podemos definir o campo callback_url para a URL do Webhook acima, ao mesmo tempo preenchendo os parâmetros correspondentes, o conteúdo específico é mostrado na imagem:

Ao clicar em executar, você pode descobrir que receberá imediatamente um resultado, como abaixo:
Após um momento, podemos observar o resultado da tarefa gerada em https://webhook.site/#!/view/0d73431d-f833-4be4-9276-b6e1690d55c1, como mostrado na imagem: O conteúdo é o seguinte:
Pode-se ver que o resultado contém um campo task_id, e os outros campos são semelhantes ao texto anterior, permitindo a associação da tarefa por meio desse campo.

Tratamento de Erros

Ao chamar a API, se ocorrer um erro, a API retornará o código de erro e a mensagem correspondente. Por exemplo:
  • 400 token_mismatched: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.
  • 400 api_not_implemented: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.
  • 401 invalid_token: Não autorizado, token de autorização inválido ou ausente.
  • 429 too_many_requests: Muitas solicitações, você excedeu o limite de taxa.
  • 500 api_error: Erro interno do servidor, algo deu errado no servidor.

Exemplo de Resposta de Erro

Conclusão

Através deste documento, você já entendeu como usar a API de Geração de Áudios do Produtor para gerar música através de palavras-chave de entrada. Esperamos que este documento ajude você a integrar e usar melhor essa API. Se tiver alguma dúvida, entre em contato com nossa equipe de suporte técnico.