"Nenhum MP4 válido encontrado" — Como recuperar o ficheiro
Este erro – por vezes "nenhum MP4 válido encontrado", "não é um ficheiro MP4 válido", "o ficheiro não está num formato reconhecido" ou "nenhum átomo encontrado" – vem de um analisador que abriu o seu ficheiro, olhou para o primeiro bloco de bytes e concluiu que não é um MP4.
Esta é uma declaração mais forte do que "MP4 com um índice em falta". O analisador nem sequer tem a certeza de que está a olhar para um MP4. Podem estar a acontecer três coisas.
Causa 1: o átomo "ftyp" está em falta ou danificado
Cada ficheiro MP4/MOV começa com um átomo "ftyp" — um pequeno cabeçalho (geralmente de 32 bytes) que identifica o ficheiro como MP4/MOV e declara a marca do formato. Se esses primeiros bytes estiverem danificados ou em falta — substituídos, nunca gravados, perdidos numa cópia parcial do ficheiro — o analisador não vê "MP4" e desiste.
Isto acontece frequentemente quando:
- Um ficheiro foi parcialmente copiado de um cartão SD antes de a cópia ser concluída.
- O primeiro setor do ficheiro foi afetado por um erro do sistema de ficheiros.
- Uma tentativa de recuperação anterior com uma ferramenta não fiável removeu o cabeçalho.
Causa 2: o ficheiro na verdade não é um MP4
Pode ser um:
- Renomeado '.mkv' (os ficheiros MKV começam com '1A 45 DF A3' — completamente diferente).
- Renomeado para '.avi' (cabeçalho no formato RIFF).
- Fluxo elementar '.h264' / '.h265' bruto ao qual alguém deu uma extensão '.mp4'.
- Fluxo ProRes raw sem um contentor.
Teste:
file your_file.mp4
Se 'file' indicar qualquer coisa que não seja 'ISO Media, MP4 ...', na verdade não é um MP4.
Causa 3: o ficheiro é apenas 'mdat' — sem qualquer contentor
Algumas tentativas de recuperação (ou alguns modos de falha da câmara) produzem um ficheiro que é apenas a carga útil 'mdat' em bruto, sem 'ftyp' e sem MOOV — apenas fotogramas de vídeo comprimidos num ficheiro. O analisador não vê nenhuma assinatura de átomo e desiste.
Isto é recuperável, mas requer a construção de um contentor completo em torno dos dados, e não apenas a reconstrução do índice.
Como descobrir qual
file your_file.mp4
xxd your_file.mp4 | head -1
Leia os primeiros 16 bytes:
- Começa com '... ftyp ...' algures nos bytes 4–12 → causa 1 com danos parciais; 'ftyp' deve estar no byte 4, mas pode ter mudado de posição.
- Começa com '1A 45 DF A3' → na verdade é MKV.
- Começa com '52 49 46 46' ('RIFF') → na verdade, é AVI / WAV / WebP.
- Começa com '00 00 00 01' ou '00 00 01' → é um fluxo H.264 / H.265 bruto.
- Começa com 'icpf' (ou perto disso no primeiro bloco) → fotogramas ProRes em bruto.
- Começa com bytes de aparência aleatória → causa 3 (apenas 'mdat') ou corrupção profunda.
ffprobe -v error your_file.mp4
Se o 'ffprobe' devolver informações úteis sobre os fluxos, apesar do erro, o ficheiro é mais recuperável do que parece.
O que pode tentar fazer por si mesmo
Para a causa 1 — dano parcial no cabeçalho
ffmpeg -err_detect ignore_err -i broken.mp4 -c copy out.mp4
Por vezes, funciona se 'ftyp' estiver parcialmente intacto e o FFmpeg conseguir encontrar átomos para além dos danos.
Para a causa 2 — ficheiro renomeado
Mude o nome para o formato real e reproduza normalmente:
mv broken.mp4 broken.mkv
Para a causa 3 — apenas 'mdat'
Este é o caso mais difícil e precisa de análise ao nível do quadro para identificar o codec e, em seguida, a construção do contentor a partir do zero. É exatamente isso que o nosso pipeline faz.
Como a nossa recuperação lida com isto
- Verificação ao nível de byte do primeiro MB do ficheiro à procura de "ftyp", assinaturas de átomo e marcadores de fotograma específicos do codec.
- Identificação do codec a partir dos dados do quadro — funciona mesmo quando não existem metadados do contentor (causa 3).
- Síntese de contentor a partir do zero quando necessário: criamos um novo wrapper MP4 em torno dos fotogramas identificados.
- Reconhecimento de formato para os casos de ficheiros renomeados — o diagnóstico identifica o formato real e repara o original ou diz-lhe para renomear.
Para a causa 3, em particular, este é um dos cenários de recuperação mais difíceis — estamos efetivamente a construir um contentor em torno de dados de codec brutos — mas é tratável quando o codec é um que reconhecemos (ProRes, H.264, H.265, MJPEG).
O que faz
- Carregue o ficheiro. Até 50 GB.
- O diagnóstico identifica qual a causa aplicável e o que é recuperável.
- Se a recuperação for possível, pode pré-visualizar e pagar apenas se funcionar.
FAQ
O ficheiro tem exatamente o tamanho que espero de uma gravação, então porque não é um MP4? O tamanho do ficheiro não está relacionado com o formato. Um ficheiro pode ter o tamanho certo e ter bytes de cabeçalho totalmente errados (substituídos, nunca gravados, misturados por uma conversão malfeita). Verifique o conteúdo real com "file" e "xxd".
Uma ferramenta de recuperação anterior escreveu um ficheiro "corrigido" que produz este erro. É comum. Algumas ferramentas removem ou modificam o 'ftyp' de maneiras que quebram a compatibilidade. Se ainda tiver o ficheiro original (antes da recuperação incorreta), trabalhe com ele. Caso contrário, carregue o que tem — geralmente conseguimos reconstruir mesmo a partir de um resultado parcialmente danificado.
A minha câmara produziu este erro diretamente do cartão SD. É possível se a câmara falhou muito cedo na gravação, antes mesmo de o "ftyp" ser escrito. Menos comum do que um MOOV em falta, mas acontece. Carregue-o.
Isto funcionará em fluxos elementares '.h264' / '.h265' em bruto? Sim — colocamo-los num contentor MP4/MOV válido. O tempo de fotograma tem de ser inferido (sem carimbos de data/hora em fluxos elementares), pelo que o resultado é reproduzido a uma taxa de fotogramas predefinida; pode ajustar com o FFmpeg posteriormente, se necessário.
As minhas filmagens estão seguras? Servidor em França, eliminadas automaticamente após 48 horas, nunca usadas para treinar nada ou partilhadas. Política de privacidade.
Relacionado
- Átomo MOOV não encontrado
- Dados inválidos encontrados ao processar a entrada
- Como funciona o nosso motor de recuperação
Pré-visualização gratuita · Sem compromisso
Pronto(a) para recuperar o seu vídeo?
Carregue o seu ficheiro. Obtenha uma pré-visualização gratuita de 5 segundos em cerca de um minuto. Pague apenas se a pré-visualização parecer correta.
Carregue o seu vídeo →