Um arquivo MP4 é um contêiner: dentro dele há uma faixa de vídeo (quase sempre H.264), uma de áudio (quase sempre AAC) e um índice dizendo onde está cada pacote. Cortar por cópia de fluxo é ler os pacotes do trecho escolhido e gravá-los em um novo contêiner com um índice novo. Os pacotes não são abertos: nenhum quadro é decodificado, nenhum é comprimido de novo.
Disso saem três consequências práticas:
- Qualidade idêntica. Resolução, bitrate e taxa de quadros do trecho são os do arquivo original.
- Velocidade. O tempo é o de ler e escrever os dados. Um trecho de um minuto não leva um minuto.
- Início no keyframe. O primeiro quadro do novo arquivo precisa ser um quadro completo. O corte recua até o keyframe anterior ao ponto marcado e o resultado mostra onde o vídeo de fato começa.
Quando o MP4 é recodificado
A cópia só é possível quando nada no quadro muda. Se você escolher outra proporção, pedir “Exato ao quadro” ou limitar o tamanho abaixo do que a cópia ocupa, o trecho passa pelo codificador H.264 do navegador. O mesmo vale para MP4 com vídeo que não seja H.264 ou com áudio que não seja AAC (nesse caso, remover o áudio devolve o caminho da cópia). O resultado indica, arquivo por arquivo, se foi “copiado sem recodificar” ou “recodificado”.
O fim do corte
O fim não tem a restrição do keyframe: o último pacote copiado é o último que começa antes do ponto marcado. A duração medida do arquivo aparece junto ao resultado.