ffmpeg - criando arquivos DNxHD MFX com alfas

1

Estou lutando com algo no FFMpeg no momento ...

Estou tentando fazer arquivos MXF DNxHD 1080p / 24, 36Mb / s a partir de uma seqüência de arquivos PNG.

Minha linha de comando atual é:

ffmpeg -y -f image2 -i /tmp/temp.%04d.png -s 1920x1080 -r 24 -vcodec dnxhd -f mxf -pix_fmt rgb32 -b 36Mb /tmp/temp.mxf

Para o qual o ffmpeg me fornece a saída:

Input #0, image2, from '/tmp/temp.%04d.png':
  Duration: 00:00:01.60, start: 0.000000, bitrate: N/A
    Stream #0.0: Video: png, rgb32, 1920x1080, 25 tbr, 25 tbn, 25 tbc
Output #0, mxf, to '/tmp/temp.mxf':
    Stream #0.0: Video: dnxhd, yuv422p, 1920x1080, q=2-31, 36000 kb/s, 90k tbn, 24 tbc
Stream mapping:
  Stream #0.0 -> #0.0
[mxf @ 0x1005800]unsupported video frame rate
Could not write header for output file #0 (incorrect codec parameters ?)

Há algumas coisas aqui que me preocupam:

  • O fluxo de saída está insistindo em ser yuv422p, que não suporta alfa.
  • 24fps é uma taxa de quadros de vídeo sem suporte? Eu tentei 23.976 também e obter a mesma coisa.

Eu então tentei a mesma coisa, mas escrevendo para um quicktime (ainda DNxHD, embora) com:

ffmpeg -y -f image2 -i /tmp/temp.%04d.png -s 1920x1080 -r 24 -vcodec dnxhd -f mov -pix_fmt rgb32 -b 36Mb /tmp/temp.mov

Isso me dá a saída:

Input #0, image2, from '/tmp/1274263259.28098.%04d.png':
  Duration: 00:00:01.60, start: 0.000000, bitrate: N/A
    Stream #0.0: Video: png, rgb32, 1920x1080, 25 tbr, 25 tbn, 25 tbc
Output #0, mov, to '/tmp/1274263259.28098.mov':
    Stream #0.0: Video: dnxhd, yuv422p, 1920x1080, q=2-31, 36000 kb/s, 90k tbn, 24 tbc
Stream mapping:
  Stream #0.0 -> #0.0
Press [q] to stop encoding
frame=   39 fps=  9 q=1.0 Lsize=    7177kB time=1.62 bitrate=36180.8kbits/s    
video:7176kB audio:0kB global headers:0kB muxing overhead 0.013636%

O que obviamente funciona, até certo ponto, mas ainda tem a questão de ser yuv422p e, portanto, perder o alfa.

Se eu estiver indo para o QuickTime, posso obter o que preciso usando o Shake, mas meu principal objetivo aqui é gerar arquivos .mxf.

Alguma opinião?

Obrigado

    
por Hugh 19.05.2010 / 15:29

1 resposta

0

Primeiramente, deixe-me agradecer por este post porque ele realmente me ajudou a obter algumas instruções sobre como codificar um quicktime DNxHD no ffmpeg. Eu estava tentando converter o J2K MXF em DNxHD.

Quanto à geração de arquivos mxf com parâmetros corretos, você já tentou executar sua seqüência png através da versão mais recente do Avid Metafuze? Ele oferece muita flexibilidade com essas coisas. Eu criei maravilhoso mxf de 24xps 24xps DNxHD a partir de seqüências de arquivos DPX. O Metafuze também suporta sequências de png. Carregue a sequência, edite o LUT, insira seus metadados, gere um ALE e pronto.

Se você é um usuário Linux, ele é executado perfeitamente no Linux através do Wine.

    
por 31.08.2010 / 11:30