Je me débats avec quelque chose dans FFMpeg en ce moment...
J'essaie de créer des fichiers MXF DNxHD 1080p/24, 36Mb/s à partir d'une séquence de fichiers PNG.
Ma ligne de commande actuelle est :
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
A quoi ffmpeg me donne la sortie :
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 ?)
Il y a plusieurs choses ici qui me préoccupent :
- Le flux de sortie insiste pour être yuv422p, qui ne supporte pas l'alpha.
- 24fps est une fréquence d'images vidéo non prise en charge ? J'ai essayé 23.976 aussi, et j'obtiens la même chose.
J'ai ensuite essayé la même chose, mais en écrivant sur un quicktime (toujours DNxHD, cependant) avec :
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
Cela me donne le résultat :
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%
Ce qui fonctionne évidemment, dans une certaine mesure, mais présente toujours le problème d'être yuv422p, et donc de perdre l'alpha.
Si je vais vers QuickTime, je peux obtenir ce dont j'ai besoin en utilisant Shake, mais mon objectif principal ici est de pouvoir générer des fichiers .mxf.
Des idées ?
Merci