Caso 04Produto digital à venda
RASANTE SFX
369 efeitos sonoros para vídeo de drone FPV, gerados por código e vendidos na minha loja. O agente que escreve os sons não consegue ouvir, e este caso é sobre como trabalhar assim.
Ouvir os sons- Meu papel
- Produto e direção de som. O código é do agente; a audição é minha.
- Período
- Outubro e novembro de 2026, três versões
- Situação
- À venda por R$ 47, com licença comercial
- Stack
- Python, NumPy, SciPy, pyloudnorm e ffmpeg
Em 30 segundos
Vídeo de drone FPV chega mudo ou com barulho de motor. O RASANTE é o resto do som: o lugar onde se voou e o peso de cada corte. São arquivos WAV gerados por código a partir de seeds fixas, sem nenhuma gravação nem amostra de terceiros.
O problema de engenharia é fazer som bom com um autor que não ouve. O agente escreve a síntese, mede tudo o que dá para medir e lê espectrogramas. Eu ouço, e o que não soa bem volta como regra escrita.
- 369
- sons em 11 pastas, 62 deles em loop
- 100 min
- de áudio, em WAV de 48 kHz e 24 bits
- 1 min
- para refazer o pack inteiro a partir das seeds, em 10 núcleos
- 0
- gravações e amostras de terceiros, então nenhuma licença para herdar
Ouça como você, veja como o agente
O agente não ouve. O que ele tem é o espectrograma: tempo na horizontal, frequência na vertical, energia na cor. Aqui os dois andam juntos.
Mergulho longo
FPV_WHOOSH_Dive_Long_01.wav

O ar sobe de tom até o fundo do mergulho, marcado pelo ponto de sincronia, e o grave forte chega ali. Depois de passar, o topo cai.
- Duração
- 5,5 s
- Sincronia
- 2409 ms
- Loudness
- -14,0 LUFS
- Pico verdadeiro
- -1,00 dBTP
O áudio são as prévias da página de venda. As imagens foram calculadas a partir delas, no mesmo mapa de cor do QA do pack, e as medidas são dos WAV que o comprador recebe.
Depois de mexer em qualquer recipe, revisar o espectrograma é obrigatório para o agente. Ele procura tom parado, corte seco, topo cheio demais e energia onde não devia ter. Não é ouvir, e eu não finjo que é. Só tira da minha frente o que dá para reprovar sem ouvir.
Som escrito em código
Não existe biblioteca de amostras por trás. Cada som é uma função Python, feita de camadas, com envelope, filtro que se move e espaço.
dsp.py
496 linhas. Ruído, filtros, STFT, reverb e limiter.
elements.py
1.422 linhas. Vento, ondas, bolhas, pássaros, whoosh e boom.
recipes/
2,3 mil linhas em 11 módulos, um por pasta do pack. Cada linha descreve um som.
build.py
280 linhas. Render, master, WAV com metadados, prévias e catálogo.
def dive(rng, dur=3.0, pkf=0.78, f0=170, fpk=1100, f1=240, flow=300, pan0=-0.3, pan1=0.25, rise=2.0, sub=0.6,
drop=None, pull=0.0, t60=2.6):
"""Mergulho do drone: o corpo grave entra primeiro, o ar sobe de tom conforme a queda acelera
e o ponto mais forte fica no fundo. Mesmas camadas da passagem, sem chiado nem sopro."""
n = n_of(dur)
pk = pkf * dur
mid = pass_band(rng, dur, pkf, f0 * rng.uniform(0.92, 1.08), fpk * rng.uniform(0.92, 1.08), f1, bw=0.55,
pan0=pan0, pan1=pan1, air=0.04, hi_cut=4800, rise=rise, curve=2.0)
low = pass_band(rng, dur, pkf, 58, flow, 48, bw=0.8, pan0=pan0 * 0.2, pan1=pan1 * 0.2, air=0.0, lo_cut=30,
hi_cut=1200, rise=0.9, curve=1.2)
y = low + mid + pass_sub(n, pk) * subCada som tira a seed do próprio nome. Rodar de novo dá o mesmo arquivo, então o pack cabe num repositório: os 1,74 GB de WAV nem entram no git. E o build não toca em som marcado como aprovado, para uma melhoria em outro lugar não mudar o que eu já ouvi.
# Em recipes/whoosh.py: uma linha é um som do pack.
W("Long", "Dive", "Mergulho longo: virada lenta, queda acelerando e saída no fundo", partial(dv, fpk=1300), 3.2),
# Em tools/sound.py: a seed sai do nome do arquivo.
def seed_value(self):
return self.seed if self.seed is not None else zlib.crc32(self.name.encode())O que dá para medir
Tudo o que tem número é conferido por código, nos 369 arquivos, antes de eu ouvir qualquer coisa.
| O que confere | Regra |
|---|---|
| Todo arquivo | |
| Formato | 48 kHz, PCM de 24 bits, estéreo |
| Nome | FPV_<CATEGORIA>_<SUBTIPO>_<Descricao>_<NN>.wav |
| Clipping | Nenhuma amostra no limite |
| DC offset | Média abaixo de 0,001 |
| Correlação estéreo | Positiva |
| Som único | |
| Pico verdadeiro | -1 dBTP, com tolerância de 0,15 |
| Começo | No máximo 5 ms de silêncio. Riser fica de fora, porque começa do nada |
| Fim | Sem clique: abaixo de -40 dB no último meio milissegundo |
| Loop | |
| Loudness | -23 LUFS, com tolerância de 0,5 |
| Pico verdadeiro | Abaixo de -3 dBTP |
| Emenda | Salto de no máximo 6 dB entre o fim e o começo |
| Timbre na emenda | Muda no máximo 6 dB entre o fim e o começo |
| Auditoria | |
| Cliques | Procura degraus no meio do som, fora dos tipos em que o golpe é o objetivo |
| Mono | Perde no máximo 3 dB ao somar os canais |
| Som de motor | Tom parado entre 150 e 600 Hz em no máximo metade do tempo |
| Duplicatas | Procura variações quase iguais do mesmo subtipo |
A promessa virou teste
A página de venda diz que o pack não tem som de drone, porque o piloto já tem de sobra. Uma regra escrita não segura isso, já que o agente pode chegar num zumbido sem querer. A auditoria procura pico tonal parado entre 150 e 600 Hz, a faixa de motor, e sinaliza quem passa de metade do tempo. Na última rodada não sinalizou nenhum. Os 30 sons tonais de propósito, como sinos, metal e Shepard, saem listados à parte para eu saber quais são.
O que só o ouvido pega
Os testes passam e o som ainda pode ser ruim. A primeira trilha completa que pedi, para um voo meu de 80 segundos, levou quatro rodadas.
O agente recebeu o vídeo mudo e o leu por fluxo óptico, quadro a quadro. Achou sozinho, em 17,567 s, o ponto em que o vídeo passa a rodar ao contrário. Mas gostar ele não mede. Minhas frases abaixo chegaram no chat, sem nenhum termo técnico, e ele transformou cada uma em medição.
Rodada 1
Alguns sons estão desagradáveis, parece até que tem alguns sopros que incomodam muito. Parece que tem alguém assoprando no meu ouvido.
- O agente achou
- Ar de velocidade com tremulação independente em cada canal, whooshes de banda larga com ataque seco e pan quase total, um thump de ruído marrom e chiado entre 5 e 12 kHz.
- O que mudou
- Whooshes refeitos em banda estreita, de 0,55 oitava, com Doppler, envelope liso e estéreo correlacionado. Eventos cortados de 35 para 24. O agudo acima de 8 kHz caiu cerca de 10 dB.
Rodada 2
Deixou de incomodar tanto quanto antes, mas ainda não se tornou agradável para o meu ouvido. O SFX sempre precisa ser cinematográfico, agradável, épico, grave, bem acabado, como os SFX de grandes produções.
- O agente achou
- Aqui não havia defeito para medir. Estava limpo e sem tamanho.
- O que mudou
- Entrou um pad tonal com acordes que seguem o voo e uma camada de impactos: boom de abertura, swells reversos, sub e um clímax com braam. Os whooshes ganharam corpo grave.
Rodada 3
Eu gostei do resultado, mas ainda escuto chiados em alguns momentos.
- O agente achou
- Um script novo mediu o agudo de 4 a 12 kHz em cada camada da mix e achou cinco fontes.
- O que mudou
- Todas as fontes de ruído passaram a parar em 4 a 5 kHz. A cachoeira ganhou rugido grave para não perder corpo.
Rodada 4
Ficou bem melhor, considero aprovado o SFX desse vídeo.
| Fonte | Antes | Depois |
|---|---|---|
| Cachoeira de pertoAos 13 a 16, 19 a 23, 47 s | −28 | −37 |
| Ar de velocidadeAos 16,5 a 17,4 s | −28 | −36 |
| Scrub do rewindAos 17,7 a 18,8 s | −23 | −33 |
| FolhagemAos 41 s | −28 | −31 |
| Whoosh do chicoteAos 62,2 s | −25 | −39 |
O que eu recusei virou regra
Essas recusas não ficaram na conversa. Estão escritas no método que qualquer agente lê antes de sonorizar um vídeo novo, com a causa técnica de cada uma, para eu não precisar reclamar de novo.
Sopro
Ruído largo com ataque seco, pan total para um lado, ar contínuo com tremulação e qualquer som de ar sem corpo grave.
trilhas/METODO.md
Som cru
Ruído e seno sem camadas nem espaço, sem grave e sem momentos marcados. O tamanho vem da soma da cena com um pad tonal e os impactos.
trilhas/METODO.md
Chiado
Ruído de fonte natural com energia acima de 5 kHz. Já apareceu na cachoeira, no borrifo, nas folhas, na fita do rewind e no ar dos whooshes.
trilhas/METODO.md
Um filme só com o pack
Da Serra ao Mar tem 80 segundos de voo pela Chapada Diamantina e por Salvador, e todo o som vem do pack. É a prova que o catálogo não dá.
A sessão de som fica embaixo do vídeo, com cada arquivo no lugar em que entra. As imagens são minhas e a cor segue o meu padrão de grading. Se uma ação aparece na imagem e o pack não tem o som, ele nasce no pack: foi assim que surgiram os sons de água.
Da pasta à venda
Som bom numa pasta não é produto. Quem compra recebe um zip pronto para usar, e a venda é feita na minha própria loja.
O zip tem 1,74 GB, com os WAV em pastas por função, nomes que dá para buscar no editor e metadados dentro de cada arquivo. Vem um catálogo em HTML, em português e inglês, com busca e prévia de cada som, e um guia de uso de 72 páginas. A venda passa pelo Gumroad, e a página está no caso da loja.




| Versão | Sons |
|---|---|
| 1.0Ambiências, vento, whooshes, impactos e transições, em 9 pastas. | 237 |
| 1.1Pasta nova de foley de água, mergulhos do drone e mais booms. | 309 |
| 1.2Pasta nova de mecânicos, estilhaços, morphs e passagens por dentro de túnel. | 369 |
Quem compra recebe as próximas versões sem pagar de novo, e o pack está congelado em 369 sons até 17 de novembro de 2026 por decisão minha. O que nasce até lá fica numa fila, fora do build, com a própria audição.
Como dividi o trabalho com a IA
Som é o caso mais extremo do que todo projeto com agente tem: a parte que importa precisa de alguém que perceba o resultado.
Ficou com a IA
- Escrever o DSP, os elementos, as recipes, o QA e a auditoria.
- Medir o que eu reclamava de ouvido e achar a causa no sinal.
- Montar o zip, o catálogo, o guia em PDF e a página de venda.
Ficou comigo
- Decidir o que o pack é e o que não é, a começar por não ter som de drone.
- Ouvir e recusar. Sopro, som cru e chiado saíram daí.
- Filmar os voos e aprovar o Da Serra ao Mar, que prova o pack.
O que ainda falta
O que os testes não respondem e o que eu ainda não tenho para mostrar.
- Teste não diz se um som é bonito. Isso continua no meu ouvido, e eu sou uma pessoa só. A audição anda mais devagar que a geração e ainda não cobre o pack inteiro.
- O espectrograma pega defeito de forma, não de gosto. Mais de uma vez o agente achou tudo certo e eu não gostei.
- A página de venda foi ao ar no fim de outubro de 2026. Ainda é cedo para falar de vendas, e por isso não falo.
- O pack só tem síntese. Se um dia entrar material de fora, só vale CC0 ou gravação própria, com a origem registrada.




