Encodage des vidéos H.264 CBR avec FFmpeg
Je suis en train d'encoder une video avec ffmpeg en H. 264 (via le libx264 bibliothèque) avec un débit constant. Je sais, je sais, IL est souvent préférable, mais pour ce travail, je ne suis nécessaires à l'utilisation de la RBC (juste le temps qu'il sorte, en kilo-octets par seconde; il n'a pas à être exact kilo-octets par image, autant que je sache). Mon exemple de vidéo que je suis à l'aide de test est ici: http://a1408.g.akamai.net/5/1408/1388/2005110403/1a1a1ad948be278cff2d96046ad90768d848b41947aa1986/sample_iTunes.mov.zip (il vient de http://support.apple.com/kb/HT1425)
Je peux obtenir un débit constant lors de l'encodage de la vidéo MPEG-4 Vidéo (en utilisant les commandes ffmpeg -i sample_iTunes.mov -b 819968 -minrate 819968 -maxrate 819968 out.mov
), et le débit est comme prévu. La lecture de la vidéo spécifications via l'Inspecteur QuickTime, il a un débit de données de 844.94 kbit/s. Cool.
Cependant, quand j'ai changer le codec à libx264, il semble totalement ignorer mon débit demandes! La commande que j'essaie est "ffmpeg -i sample_iTunes.mov -vcodec libx264 -vpre medium -b 819968 -vb 819968 -minrate 819968 -maxrate 819968 -bufsize 400000 test.mov
". Mais quand j'ai regarder la vidéo de spécifications par l'Inspecteur QuickTime, il a un débit de données de 254.74 kbit/s. WTF? Ce n'est même pas proche!!!!
J'ai essayé de changer de sorte de nombreux paramètres et en ajoutant des tonnes de choses différentes, et j'ai passé 2 jours sur google, mais je n'arrive pas à le faire fonctionner. Si je encoder la vidéo avec le MainConcept H. 264 encodeur, je peux obtenir un débit constant, mais j'ai besoin de ce travail avec ffmpeg.
Si quelqu'un peut m'aider à comprendre comment faire CBR H. 264 codage avec FFmpeg, je vous aimerai toujours!!!!
source d'informationauteur Cornstalks
Vous devez vous connecter pour publier un commentaire.
Moi aussi, j'ai travaillé à essayer de trouver des CBR de x264. J'ai trouvé ce blog post par de Sombres Shakari tout à fait intéressant.
Voici ce que j'ai à faible latence CBR vidéo MPEG transport stream:
Selon le x264 développeur blog vous définir:
Enfin, définir le ffmpeg commutateur pour x264-tune zerolatency.
Espère que c'est utile. Et, si quelqu'un a des améliorations à cette s'il vous plaît laissez-moi savoir!
Spécifier
-nal-hrd cbr
après-bufsize 400000
.Ok, donc je pense que j'ai peut-être trouvé une partie du problème. Faire -bufsize plus grand que le débit de données semble avoir résolu le problème. Bien sûr, je ne sais pas si c'est l'encodage réel CBR, mais le débit de données Rapide Temps de l'Inspecteur de lit regarde en ce moment.
Ce peut être un indice (en supposant que vous avez un débit réglé) "RBC est quand maxrate == débit et bufsize est réglé" http://ffmpeg-users.933282.n4.nabble.com/Does-constant-bitrate-exist-in-libx264-td2255554.html
bufsize est censé être le "client" max taille de la mémoire tampon.