Ferramentas · No ar

Rec2Link

Grave a tela, a voz ou você. O link some em 24 horas.

Grave a tela, o áudio, os dois ou só a webcam direto no navegador. O arquivo é comprimido aí mesmo, ganha um link curto e é apagado sozinho em 24 horas.

Sobre o projeto

O que é o Rec2Link

O Rec2Link é para quando explicar por escrito dá trabalho: você grava a tela, a voz, os dois ou a sua webcam e, em segundos, tem um link curto para mandar. Não precisa de conta, de programa instalado nem de cadastro.

A gravação e o processamento acontecem inteiros no seu navegador. O arquivo já nasce comprimido (a qualidade escolhida limita a resolução, os quadros por segundo e o bitrate), a duração é ajustada e uma miniatura é criada ali mesmo. Só o resultado sobe para o servidor, e de propósito ele é pequeno: vídeo de até 5 minutos, áudio de até 15 e no máximo 60 MB.

Quem abre o link vê a gravação, um contador regressivo de 24 horas e quantas vezes ela foi vista e baixada, e pode baixar o arquivo. Quando o tempo acaba, o arquivo é apagado do servidor. A tela inicial mostra os números de todo o período.

Se quiser, dá para ligar a transcrição: enquanto você grava, o navegador reconhece a sua fala e o Rec2Link monta legendas e uma transcrição em que quem recebe o link pode tocar em um trecho para pular até ele. É opcional e vem desligada. Atenção: o reconhecimento de voz dos navegadores costuma usar o serviço de voz do próprio navegador (no Chrome, o do Google), então, só nesse caso, o áudio pode sair do seu aparelho. Se der qualquer problema, a transcrição para, um aviso diz o motivo e a gravação continua normalmente.

Recursos

O que o Rec2Link faz

Tela, áudio ou webcam

Grave só a tela, só o áudio, a tela com o microfone e o som do computador, ou só a webcam (com a sua voz, se quiser). Dá para pausar e continuar, com um contador de tempo e um medidor de volume.

Comprimido no seu navegador

Três qualidades (bem leve, equilibrada e nítida) definem resolução, quadros por segundo e bitrate. O áudio é comprimido em mono nas duas primeiras. O arquivo já sai pequeno, antes de subir.

Gravações curtas de propósito

Vídeo de até 5 minutos, áudio de até 15 e arquivo de até 60 MB. A tela mostra quanto tempo ainda cabe e a gravação para sozinha no limite.

Some em 24 horas

Cada link mostra um contador regressivo. Passado um dia, o arquivo é apagado do servidor. Dá para apagar antes pelo seu histórico.

Visualizações e downloads

A página do link mostra quantas vezes a gravação foi vista e baixada. Quem gravou acompanha os mesmos números no histórico.

Baixe quando quiser

Quem recebe o link pode assistir na hora ou baixar o arquivo. Dá para baixar uma cópia também antes de criar o link.

Miniatura no link

Um quadro da gravação é criado no seu navegador e usado como prévia do link nos aplicativos que mostram cartões, como mensageiros.

Conferido na chegada

O navegador calcula uma impressão digital (SHA-256) do arquivo pronto e o servidor confere que ele chegou idêntico antes de guardar.

Números abertos

A tela inicial mostra quantas gravações, visualizações, downloads e horas gravadas já aconteceram em todo o período, em uma tabela que só aumenta.

Transcrição opcional

Ligue e o navegador transcreve a sua fala enquanto você grava. Quem recebe o link lê a transcrição, busca uma palavra, vê a legenda no vídeo e toca em um trecho para pular até ele. Vem desligada, com aviso de privacidade; se falhar, a gravação segue sem ela.

Tecnologias

Por dentro do Rec2Link

Web Speech API, em paralelo

O reconhecimento de voz roda ao lado da gravação e cada frase ganha o tempo da gravação (sem as pausas). Se o navegador encerrar o reconhecimento, ele recomeça sozinho; se houver um problema de verdade, só a transcrição para e a gravação continua. Não funciona no Firefox, e o idioma é escolhido por você.

Legenda WebVTT limpa pelo servidor

A legenda chega como WebVTT, mas o servidor nunca a guarda como veio: lê, deixa só texto puro, limita tamanho e tempo e escreve o arquivo de novo. Marcações e scripts no meio dela não sobrevivem. O player a usa como legenda e a página monta os trechos clicáveis.

MediaRecorder, getDisplayMedia e getUserMedia

A captura da tela, da webcam e o encoder são do próprio navegador. O Rec2Link escolhe o codec (VP9 com Opus, ou MP4 se você preferir compatibilidade), o bitrate e as restrições de resolução e de quadros por segundo.

Web Audio API

O microfone e o som do computador passam por um grafo de áudio que mistura tudo numa única faixa, mede o volume para o medidor da tela e entrega o resultado ao gravador.

Compressão antes de enviar

Em vez de enviar o que o navegador gravar, o Rec2Link limita a gravação desde o começo: resolução máxima, quadros por segundo reduzidos, bitrate com teto e áudio em poucos kbps. Tela parada quase não gasta bits.

Duração corrigida no navegador

O WebM gravado ao vivo não informa a duração e o player não consegue buscar. Um pedaço de código lê o cabeçalho e escreve a duração antes do envio.

SQLite em WAL e arquivos em disco

Os dados e os números globais ficam em um banco SQLite em modo WAL. Os vídeos ficam em arquivos, lidos em pedaços (Range), porque são grandes demais para passar inteiros pela memória.

Fila com concorrência 1

Toda operação no banco entra em uma fila (p-queue) que executa uma por vez, sem disputa de trava. Se a fila encher, o servidor responde 503 em vez de travar.

Envio direto para o disco

O navegador manda o arquivo como binário puro e o servidor o grava em um arquivo parcial enquanto calcula o SHA-256. Só depois de conferir o tipo e a impressão digital ele vira uma gravação.

Tipo conferido pelo conteúdo

O servidor olha os primeiros bytes e só aceita WebM e MP4 de verdade. A resposta sai com cabeçalhos que impedem o navegador de executar qualquer coisa.

Tabela que só aumenta

Os totais da tela inicial ficam numa tabela com triggers do SQLite que recusam diminuir ou apagar um número. Cada contagem entra na mesma transação do fato contado.

Node, Express e Eta

A mesma base do resto do portfólio, sem etapa de build e sem framework de front. Tudo o que a tela faz é JavaScript do navegador.

FAQ

Perguntas frequentes

Preciso instalar alguma coisa ou criar uma conta?

Não. Tudo roda no navegador e o histórico das suas gravações fica só nele.

Onde a gravação é processada?

No seu navegador. A captura, a compressão, o ajuste da duração e a miniatura acontecem no seu aparelho. Só o arquivo final sobe para o servidor. A única exceção é a transcrição, que é opcional (veja abaixo).

A transcrição é privada?

Depende do navegador. O reconhecimento de voz costuma usar o serviço de voz do próprio navegador (no Chrome, o do Google), então o áudio pode sair do seu aparelho para ser transcrito. Por isso ela vem desligada e a tela avisa antes. Se você ligar, a transcrição só vai para o link se você deixar marcada a opção de enviá-la, e some junto com a gravação em 24 horas.

E se a transcrição não funcionar?

Nada acontece com a gravação. A transcrição é um extra: se o navegador não tiver reconhecimento de voz (o Firefox, por exemplo), se a internet cair ou se houver qualquer outro problema, ela para, um aviso diz o motivo e o vídeo ou o áudio seguem sendo gravados normalmente.

Por que o limite é de 5 minutos para vídeo?

É de propósito: a ideia é um recado rápido, e um arquivo pequeno sobe depressa e ocupa pouco espaço. O áudio vai até 15 minutos porque é bem mais leve. A tela avisa quanto tempo ainda cabe.

Como o arquivo fica pequeno?

A qualidade escolhida limita a resolução, os quadros por segundo e o bitrate, e o áudio vai em mono e com poucos kbps. A tela parada gasta pouquíssimo; o limite da qualidade padrão é de cerca de 4,5 MB por minuto, e o arquivo costuma ficar abaixo disso.

Dá para gravar a tela no celular?

Em geral não: os navegadores de celular não permitem gravar a tela. Os modos de webcam e de só áudio funcionam nos dois.

Dá para gravar só a webcam?

Dá. Escolha Webcam, deixe o microfone ligado se quiser falar e grave. A prévia aparece espelhada para você se ver como num espelho, mas o arquivo sai do jeito que a câmera viu. Vale o mesmo limite de 5 minutos dos vídeos, e a câmera e o microfone só ligam depois que você clica em iniciar e desligam quando a gravação termina.

WebM ou MP4?

O padrão é WebM (VP9), que fica menor. Nas opções avançadas dá para escolher MP4, que abre em praticamente qualquer programa e aparelho.

Alguém consegue adivinhar o meu link?

É improvável: são 10 caracteres sorteados (cerca de 58 bits), as tentativas em links que não existem são limitadas e a página não é indexada por buscadores. Mesmo assim, quem tiver o link consegue ver, então só mande a quem deve ver.

O que acontece depois das 24 horas?

O arquivo e a miniatura são apagados do disco e a linha do banco é removida. Não existe lixeira. Os números globais continuam, porque guardam só contagens.

Como são contadas as visualizações e os downloads?

Uma visualização por visitante a cada 30 minutos, ao abrir a página. Os robôs que montam a prévia do link em aplicativos de mensagem não entram na conta. Cada download completo conta uma vez.

E se o servidor lotar?

Há um teto de espaço para as gravações. Se chegar nele, o servidor para temporariamente de aceitar novas e avisa para você voltar mais tarde. Como tudo some em 24 horas, o espaço volta sozinho.

Gostou do Rec2Link? Dá para apoiar o trabalho:

Continue explorando

Veja também

Todos os projetos