← Todas as ferramentas

Detector de Cenas

Solte um vídeo. Receba cada corte, com uma miniatura e um timecode por plano — encontrado na sua própria máquina, sem enviar nada.

O seu navegador lê e recodifica o ficheiro. Nenhum pedido o envia para lado nenhum — esta página não tem servidor para onde o enviar.

Perguntas

O vídeo é enviado?

Não. O navegador decodifica localmente, um canvas lê os pixels e o WebAssembly os compara. Nada é enviado a lugar nenhum: esta página não tem servidor para onde enviar. É também por isso que não há limite de tamanho nem fila.

Como ele acha os cortes?

Ele amostra quadros ao longo do vídeo e observa o quanto a imagem muda de uma amostra para a seguinte. Um corte é uma descontinuidade: cor e luminância saltam de uma vez, em vez de derivar como num movimento de câmera ou numa transição. O detector procura esses saltos e devolve as fronteiras entre eles.

Ele pega fusões e fades?

Em parte. Um corte seco é inequívoco e é achado com confiança. Uma fusão lenta é, por construção, uma mudança gradual — a mesma forma de um movimento de câmera —, então pode aparecer um pouco antes, um pouco depois ou fundida com a vizinha. Panorâmicas rápidas também podem ser lidas como cortes. Trate o resultado como uma lista de planos para conferir, não como um veredito.

O que é a nota de qualidade de cada plano?

A mesma pontuação por quadro que o app do Life2Film usa para decidir o que manter: nitidez, exposição, contraste, cor e entropia combinados num número. É uma ordenação aproximada de quais planos merecem um segundo olhar, não um julgamento sobre o que é interessante.

Quanto tempo demora?

Ele percorre o vídeo saltando para cada ponto de amostragem, e cada salto custa dezenas de milissegundos. Um clipe de um minuto leva alguns segundos. Vídeos longos são amostrados de forma mais grossa para a espera continuar razoável: a lista de planos mantém precisão de cerca de meio segundo.

As outras ferramentas

Integre isto no seu projeto

Finding every cut in a video — the same way this page does it, on the user's machine, with no server. Take the code, or hand the prompt to a coding agent.

const engine = await import('https://life2film.com/wasm/va_wasm.js');
await engine.default({ module_or_path: 'https://life2film.com/wasm/va_wasm_bg.wasm' });

// 31 features per frame, from RGB24 pixels
const scored = JSON.parse(engine.score_frame(width, height, rgb24, timestamp, null));

The engine is documented for agents, and every tool page is available as markdown by adding .md to its address.