FixMyVideos

O vídeo é reproduzido com ecrã preto — o áudio funciona, mas não há imagem

O áudio é reproduzido. O contador de duração avança normalmente. O ecrã não mostra nada — preto sólido, sem imagem, sem falhas, sem erros. Três categorias de causa.

Causa 1: incompatibilidade de codec/cor no reprodutor

A causa mais comum, especialmente para filmagens ProRes / 10 bits reproduzidas num navegador ou no QuickTime. Alguns formatos de pixel — 'yuv422p10le', 'yuv444p10le' — não são suportados pelas etiquetas <video> do navegador ou por versões mais antigas do QuickTime. O codec não consegue renderizar, pelo que o reprodutor apresenta um ecrã preto.

Os ficheiros ProRes são normalmente yuv422p10le na sua forma nativa. Se pré-visualizar um ficheiro ProRes recuperado num elemento de vídeo baseado em navegador e vir um quadrado preto, é por isso.

Correção: transcodifique para yuv420p (8 bits, seguro para navegador):

ffmpeg -i prores.mov -c:v libx264 -pix_fmt yuv420p -c:a copy preview.mp4

O ficheiro recuperado está bom. O problema é o reprodutor em que o testou. Abra-o no DaVinci Resolve, Premiere ou VLC e a imagem aparecerá.

Causa 2: o fluxo de vídeo está no ficheiro, mas danificado

O "ffprobe" mostra um fluxo de vídeo, mas os dados do codec são ilegíveis. Possibilidades:

  • Danos no conjunto de parâmetros do codec. O H.264 SPS / H.265 VPS / SPS está corrompido. O descodificador não consegue inicializar, por isso fica a preto.
  • Codec four-cc errado. O contentor indica um codec; os dados são outra coisa. Incompatibilidade do descodificador → preto.
  • Corrupção interna do fotograma. Os dados do codec têm inversões de bits que impedem a descodificação.

Para estes, a transcodificação não ajudará (os próprios dados de origem são ilegíveis). A correção é recuperar os parâmetros do codec ou a identificação do codec.

Causa 3: a gravação estava realmente a preto

Tampa da lente da câmara colocada. Câmara em modo de reprodução em vez de modo de gravação. Telemóvel no bolso com o ecrã virado para baixo. Estas situações produzem uma gravação verdadeiramente a preto. O áudio está bom porque o microfone estava a funcionar; a imagem é o que a lente viu.

Teste verificando outra gravação da mesma câmara. Se as outras tiverem imagem, tem um caso real de recuperação. Se as outras também estiverem a preto, a câmara estava a gravar imagens a preto.

Como descobrir a causa

ffprobe -v error -show_streams broken.mov

Veja o 'pix_fmt' do stream de vídeo:

Valor 'pix_fmt'Causa provável
'yuv420p'Deve ser reproduzido em navegadores; se não for, causa 2.
'yuv422p10le', 'yuv444p10le', 'yuv420p10le'Causa 1 — transcodificar para yuv420p.
'none' ou em faltaCausa 2 — danos nos dados do codec.

Em seguida, tente o VLC. Se o VLC reproduzir a imagem e o navegador/QuickTime não, causa 1. Se até o VLC reproduzir a preto, causa 2.

Especificamente para o nosso pipeline de pré-visualização: cada pré-visualização é forçada a '-pix_fmt yuv420p' para compatibilidade com o navegador. Se vir uma pré-visualização preta da nossa parte, é uma verdadeira falha de vídeo (causa 2), não um problema de formato de pixel.

O que pode tentar fazer

Para a causa 1:

ffmpeg -i source.mov -c:v libx264 -pix_fmt yuv420p preview.mp4

Para a causa 2:

ffmpeg -err_detect ignore_err -i broken.mov -c copy out.mov

(Se o FFmpeg conseguir produzir qualquer saída, os dados do codec estão pelo menos parcialmente intactos. Se o FFmpeg devolver "nenhum fotograma decodificável encontrado", a causa 2 é grave e pode ser irrecuperável.)

Para a causa 3:

Não há nada para recuperar. A gravação em si está preta.

Como a nossa recuperação lida com casos de ecrã preto

  • Recuperação de parâmetros de codec a partir de fotogramas observados. Se o SPS/VPS no início do ficheiro estiver danificado, mas o conjunto de parâmetros do codec for repetido mais tarde no fluxo (alguns codecs fazem isso, particularmente o H.265), extraímos de um fotograma posterior.
  • Identificação do codec a partir de marcadores de fotogramas. Se o codec declarado do contentor estiver errado, identificamos o codec real a partir dos dados do fotograma e reconstruímos com o codec correto.
  • O pipeline de pré-visualização força yuv420p para a pré-visualização de 5 segundos. Nunca verá um problema de "ecrã preto devido a pix_fmt" na nossa pré-visualização.
  • Honestos sobre casos difíceis. Se os dados do codec estiverem genuinamente corrompidos (causa 2 grave), informamo-lo rapidamente. Não faz sentido receber o seu dinheiro por um ficheiro em que os frames reais são ilegíveis.

O que faz

  1. Carregue o ficheiro.
  2. Cerca de 1 minuto depois, recebe um diagnóstico + pré-visualização gratuita. O diagnóstico identifica se a imagem é recuperável ou se o fluxo de vídeo está realmente demasiado danificado.
  3. Pague apenas se a pré-visualização mostrar a imagem real.

FAQ

O meu ficheiro ProRes aparece a preto no QuickTime, mas é reproduzido corretamente no Resolve. Causa 1 — incompatibilidade de formato de pixel. O ficheiro está bom. O pipeline HEVC/ProRes do QuickTime em versões mais antigas do macOS não processa bem 4:2:2 de 10 bits. Atualize o macOS ou transcodifique para QuickTime.

O meu ficheiro recuperado de outra ferramenta mostra um ecrã preto. Pode ser a causa 1 (a sua pré-visualização/saída usa um formato de pixel não seguro para o navegador) ou a causa 2 (a sua recuperação não reconstruiu os parâmetros do codec). Envie-nos o ficheiro danificado original; tentaremos com o tratamento adequado do codec.

O áudio é reproduzido com a duração correta, mas não há vídeo desde o início. Causa 2 grave — dados de codec tão danificados que nenhum fotograma é descodificado. Por vezes, recuperável extraindo fotogramas de mais adiante no ficheiro; por vezes, não.

As minhas imagens 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

Carregue o seu ficheiro →

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 →