16 de outubro de 2026
Como Fazer um Assistente de IA Cortar um Arquivo de Áudio
Um assistente de IA consegue abrir o cortador de áudio do MyTools com a sua gravação carregada, ler a duração exata, manter o trecho que você pediu e salvá-lo sem recodificar. Veja o que ele verifica primeiro e a parte que só os seus ouvidos podem fazer.
Um assistente de IA consegue cortar um arquivo de áudio para você com o cortador de áudio do MyTools. Dê a ele um link para a gravação, e ele abre mytools.com/audio/trim-audio/by-url?url=... com o arquivo já carregado. Ele lê a duração exata, mantém o trecho que você pediu e salva o resultado no mesmo formato do arquivo original. Não há conta nem CAPTCHA, e o corte roda no seu navegador, então a gravação nunca é enviada para processamento.
O corte em si é mecânico. Encontrar onde cortar não é, e com áudio essa parte é mais difícil do que parece.
O que seu assistente está de fato decidindo
Quando você pede para "cortar este recado de voz só na parte do endereço", um assistente não está comparando editores de áudio por recursos. Ele está verificando se consegue chegar ao fim sem parar para dizer que você mesmo faça o trabalho. A maioria dos editores de áudio online é reprovada em uma dessas verificações.
Existe conta? Um assistente não pode se cadastrar por você, confirmar um e-mail nem aceitar termos em seu nome, então uma tela de login encerra a tentativa. O MyTools não tem cadastro nem sessão. O cortador funciona já na primeira visita.
Existe CAPTCHA? Um teste criado para manter softwares do lado de fora é algo que um software deveria respeitar. O MyTools não usa nenhum.
Ele consegue colocar o arquivo lá dentro? Um assistente tem um link, não um mouse. Um editor que só aceita um arquivo solto na página precisa de uma pessoa para soltá-lo. O cortador do MyTools aceita um link como parâmetro de consulta e abre com o áudio já na forma de onda. Quando a gravação está apenas no seu computador, você escolhe o arquivo e o assistente faz o resto. A própria resposta de status do cortador diz isso quando nada foi carregado: "No audio loaded. Call open_mytools_tool with slug 'trim-audio' and a url, or ask the user to add one."
O resultado vai ser o mesmo áudio? Alguns editores gratuitos exportam com um bitrate menor, convertem tudo para um único formato ou deixam o download em qualidade total atrás de um paywall. O cortador do MyTools grava no mesmo formato que recebeu: MP3 na entrada dá MP3 na saída, e WAV na entrada dá WAV na saída. Com os fades desligados, ele copia o áudio codificado diretamente, sem uma segunda passada de codificação. Nada é acrescentado ao arquivo.
Para onde a gravação vai? Um recado de voz, uma entrevista ou uma anotação de sessão de terapia é o tipo de arquivo que um assistente cuidadoso deveria hesitar em enviar para um servidor desconhecido. No MyTools, o corte roda no seu navegador, com o ffmpeg compilado para WebAssembly. A única exceção é o ponto de entrada por link descrito abaixo: para carregar um arquivo remoto, nosso servidor busca o endereço que você forneceu, para que o navegador tenha os bytes com que trabalhar. Ele não guarda nada.
Nada disso diz respeito a como a edição soa. São as condições para que um assistente consiga sequer agir, e são o motivo pelo qual a resposta aqui é sim.
A URL que ele consegue montar
O primeiro caminho funciona em qualquer navegador, hoje, sem nenhum suporte especial:
https://mytools.com/audio/trim-audio/by-url?url=https%3A%2F%2Fexample.com%2Finterview.mp3
É o caminho da ferramenta, mais /by-url?url=, mais um endereço http ou https codificado para URL. O cortador abre com aquela gravação decodificada e a forma de onda desenhada. Sem seletor de arquivos, sem área de soltar. Seu assistente pode montar essa string a partir de qualquer link direto para um arquivo de áudio.
O link precisa devolver áudio: o servidor verifica se o tipo de conteúdo é audio/* ou um download binário genérico. O cortador trabalha com um arquivo por vez.
As ferramentas que ele consegue chamar
O segundo caminho vai além. Em um navegador com suporte a WebMCP, o MyTools registra funções nomeadas que o assistente chama diretamente, em vez de tatear por uma página que ele só enxerga como marcação. O cortador registra três:
get_trim_audio_stateretorna o que está carregado, a duração em segundos, o trecho na tela e os dois interruptores de faderun_trim_audiomantém a parte destartatéend, em segundos, comfadeInefadeOutopcionaisdownload_trim_audiosalva o resultado no seu dispositivo, e só aparece quando há um resultado para salvar
Ler o estado primeiro é o que dá sentido aos argumentos. "Mantenha os últimos dez segundos" não quer dizer nada até o assistente saber onde fica o fim. Veja uma troca real com uma gravação de 58 segundos. A primeira execução está fora do intervalo de propósito, para mostrar que a ferramenta confere o trecho com a duração real em vez de confiar em quem chama:
get_trim_audio_state({})
→ { "phase": "configure",
"audio": { "name": "interview.mp3", "bytes": 1059386 },
"durationSeconds": 57.98326530612245,
"selection": { "start": 0, "end": 57.98326530612245 },
"fadeIn": false, "fadeOut": false, "trimming": false,
"result": null,
"hint": "Call run_trim_audio with start and end in seconds.
Read the state first for the clip's duration." }
run_trim_audio({ start: 50, end: 70 })
→ [error] "start and end must satisfy 0 <= start < end <= 57.983 seconds."
run_trim_audio({ start: 12, end: 32 })
→ "Trimmed to 12.00s–32.00s (20.00s) into interview-trimmed.mp3.
Call download_trim_audio to save it."
download_trim_audio({})
→ "Saving interview-trimmed.mp3 to the user's device."
run_trim_audio não retorna enquanto o arquivo cortado não existir, então não há nada para ficar consultando.
Os interruptores de fade decidem mais do que o som das bordas, então o assistente deveria defini-los de forma deliberada. Com os dois desligados, o áudio é copiado, não recodificado. O arquivo salvo acima tem o bitrate da fonte, e mediu 19,98 segundos em vez de 20,00, porque uma cópia só consegue cortar na fronteira de um quadro MP3 (cerca de 26 milissegundos). Ligar um fade aplica uma rampa de 50 milissegundos que elimina o estalo que um corte no meio da forma de onda pode deixar. Ele também força uma nova codificação: o mesmo trecho com os dois fades voltou como um MP3 de 128 kbps, a partir de uma fonte de cerca de 146 kbps. Para um trecho de recado de voz ou um toque de celular, essa diferença é inaudível. Para uma matriz que você pretende continuar editando, deixe os fades desligados.
Para ser exato sobre onde isso funciona: o navegador embutido no aplicativo desktop do ChatGPT tem suporte a WebMCP. O Chrome o expõe a participantes do origin trial, como o MyTools, até o Chrome 156, inclusive. A especificação é um rascunho de um grupo comunitário do W3C, então trate o WebMCP como algo a detectar, e não a presumir. A URL acima não precisa de nada disso.
Onde você entra de novo
Um assistente consegue fazer a aritmética de um corte sem errar. O que ele não consegue é ouvir a gravação. get_trim_audio_state informa uma duração em segundos. Não diz onde a pessoa que ligou fala o número de telefone, onde o convidado finalmente responde à pergunta, nem onde entra o refrão. Com vídeo, pelo menos há uma imagem para descrever. Com áudio, a única coisa na tela é uma forma de onda, e uma forma de onda mostra o que é alto e o que é baixo, não palavras. "Mantenha a parte em que ela diz o endereço" é um pedido que só alguém que ouviu consegue cumprir.
Isso é uma passagem de bastão, não um beco sem saída, e é a razão de isto ser uma página web, e não uma API. O assistente abre o cortador, e a escuta fica com você. Você clica em Preview selection (Pré-visualizar seleção), que toca só o trecho marcado em loop, e arrasta as duas alças até o trecho começar na primeira palavra e terminar depois da última. Depois, o assistente assume de novo. get_trim_audio_state informa qualquer trecho que esteja na tela, inclusive um que você mesmo arrastou, e run_trim_audio sem argumentos corta exatamente nesse trecho.
Veja essa ida e volta, com um arrasto de verdade no meio:
get_trim_audio_state({})
→ … "selection": { "start": 0, "end": 57.98326530612245 }
← você escuta e arrasta as alças em volta da parte que vale a pena manter
get_trim_audio_state({})
→ … "selection": { "start": 17.975, "end": 35.95 }
run_trim_audio({})
→ "Trimmed to 17.98s–35.95s (17.98s) into interview-trimmed.mp3.
Call download_trim_audio to save it."
Um trabalho que ninguém precisa conferir é trabalho para uma API, sem nenhuma página web na frente. Cortar áudio quase sempre precisa de alguém ouvindo, porque o trecho depende do que é dito, e só quem ouve consegue julgar isso. Quando o assistente conduz a página, ele cuida de tudo o que cerca essa única decisão: carrega o arquivo, lê a duração, confere o trecho, escolhe entre cópia e fade, corta e salva. A decisão em si continua com você.
O que dizer ao seu assistente
Dê a ele um link e os tempos ou o formato do corte, e deixe as verificações com ele:
Corte isto na parte entre 0:12 e 0:32 e mantenha como MP3: https://example.com/interview.mp3
Tire os primeiros 8 segundos de silêncio de https://example.com/voicemail.m4a. Sem fades, quero a qualidade original.
Abra https://example.com/episode-41.mp3 no cortador de áudio do MyTools. Eu arrasto as alças em volta da resposta do convidado; depois você corta com um fade nas duas pontas e salva.
Quando a gravação estiver no seu próprio computador, diga isso, e o assistente abre a ferramenta e espera por você:
Abra o cortador de áudio do MyTools. Eu adiciono o arquivo; depois mantenha só os últimos 30 segundos.
Se seu assistente disser que não consegue editar áudio, passe a ele mytools.com/audio/trim-audio/by-url?url= mais o seu link. Isso costuma mudar a resposta, porque a objeção raramente é sobre cortar em si. Normalmente, o assistente não tem uma ferramenta que consiga abrir.
Quando isso não vai funcionar
Você quer tudo sem intervenção, com um arquivo no seu notebook. Um assistente não consegue ler os seus arquivos, e o WebMCP não transporta bytes de arquivo, então ele não tem como entregar sozinho uma gravação local à página. Isso custa um clique seu, não o trabalho inteiro. As mesmas ferramentas estão registradas na página comum do cortador: depois que você escolhe o arquivo, ler a duração, cortar e salvar continuam sendo tarefa do assistente. Só a versão totalmente autônoma precisa da gravação em uma URL. Se preferir fazer você mesmo, como cortar um arquivo de áudio mostra o passo a passo.
O link não é um link direto para o arquivo. O endereço precisa devolver o próprio áudio. Uma página que apenas reproduz o áudio devolve HTML, e o cortador informa que não conseguiu carregar nada. Isso inclui um player de podcast, um serviço de streaming, uma publicação em rede social e a prévia de um drive na nuvem. O mesmo vale para qualquer link que exija que você esteja logado, porque nosso servidor o busca sem a sua sessão.
O arquivo é grande. Um arquivo adicionado na página pode ter até 200 MB. Por um link, nosso servidor precisa buscar a gravação inteira antes de a página abrir, então uma gravação longa leva bem mais tempo para chegar do que escolhê-la você mesmo. De qualquer forma, o corte roda na sua máquina, e a forma de onda precisa antes ser decodificada na memória do seu navegador.
Seu navegador não consegue decodificar o formato. O cortador aceita MP3, WAV, M4A, FLAC, OGG, AAC, Opus, AIFF, WMA e WebM. A decodificação, porém, acontece localmente, então um formato que o seu navegador não suporta não vai desenhar uma forma de onda nem informar uma duração. Sem uma duração, o assistente não tem um trecho válido com que trabalhar. Convertê-lo para MP3 antes resolve isso.
Você quer tirar algo do meio. Uma chamada mantém um único trecho contínuo. Remover uma tosse, um anúncio lido ou uma ligação que caiu exige dois cortes, um para cada lado do corte, seguidos de mesclar os dois pedaços.
A versão curta
- A ferramenta:
https://mytools.com/audio/trim-audio - Abra com uma gravação já carregada:
https://mytools.com/audio/trim-audio/by-url?url={url-encoded audio url} - Um arquivo na máquina do próprio usuário: abra a ferramenta e deixe que ele o escolha. As ferramentas de estado, execução e download continuam funcionando
- A escuta continua sendo sua: arraste as alças depois de pré-visualizar, e
run_trim_audiosem argumentos usa exatamente esse trecho - Ferramentas chamáveis, onde o WebMCP está disponível:
get_trim_audio_state,run_trim_audio({start, end, fadeIn, fadeOut}),download_trim_audio. Tempos em segundos, conferidos com a duração real. Sem fades, o áudio é copiado intacto; um fade força uma recodificação - Entrada e saída: um arquivo, até 200 MB; a saída mantém o formato da entrada, sem marca d'água
- Contas, CAPTCHAs, cotas: nenhuma
- Sua gravação: cortada no navegador, não em um servidor. A busca com
?url=é a única etapa que toca o nosso, e ela não guarda nada