como escrever imagem com dados em formato yuv420 com PIL ou outra biblioteca Python?

0

Estou usando o ffmpeg e o Python para extrair quadros, fazer alguns processamentos e gravar esses quadros em um novo arquivo.

Primeiro eu extraio o quadro definindo o formato de pixel como rgb24. Então, cada vez que eu leio 6220800 bytes. Funcionou bem, mas perdeu qualidade porque o vídeo original era yuv420p (o vídeo é 1920 * 1080)

    ffmpeg -y -i input.mp4 -vcodec rawvideo -pix_fmt rgb24 -an -r 25 -f rawvideo pipe:1

Então eu tentei extrair o frame sem configurar o formato de pixel, então cada frame deve ser yuv420p que contém 3110400 bytes.

    ffmpeg -y -i input.mp4 -vcodec rawvideo -pix_fmt yuv420p -an -r 25 -f rawvideo pipe:1

O que devo fazer com esses 3110400 bytes de dados? Eu não posso usá-lo através do PIL ... E transformar esses dados requer muito tempo.

    
por nathan wu 16.08.2018 / 04:07

0 respostas