Nous utilisons ffmpeg et un script pour le transcodage et nous voulons faire des fichiers batch que nous pouvons utiliser pour le transcodage.
Par exemple, j'utilise un paramètre appelé video_kbit
et si j'écris en 30000, il devrait atteindre 30 Mbit. Bien sûr, si j'utilise 6000
comme paramètre, il devrait atteindre 6 MBit aussi, donc j'ai un script qui atteint tous les bitrates vidéo que je veux.
Dans l'état actuel de mes paramètres, je n'atteins que 18,1 Mbit. Ce n'est que lorsque j'utilise 15000 comme paramètre que j'atteins mon objectif pour un débit vidéo constant de 15 MBit. Si j'utilise 8000 comme paramètre, j'obtiens 10,1 MBit. Donc, en dessous de 15000, j'obtiens un débit supérieur et au-dessus de 15000, j'obtiens un débit inférieur à celui que je souhaite.
Mes préréglages sont :
ffmpeg -threads "4" -i "$2" -f mp4 -c:v libx264 -crf 1 \
-bufsize 30000k -maxrate ${FC_PARAM_video_kbit}k \
-acodec libfaac -ac 2 -ab ${FC_PARAM_audio_kbit}k -ar 44100 \
-pix_fmt yuv420p -vf scale=${FC_PARAM_width}:${FC_PARAM_height} -y "$3"
Et j'utilise ces paramètres :
FC_PARAM_video_kbit = 30000
FC_PARAM_audio_kbit = 192
FC_PARAM_width = 1920
FC_PARAM_height = 1080
J'ai essayé d'utiliser un bufsize plus élevé et d'utiliser profile:v
et des réglages de niveau, mais rien ne m'a permis de m'approcher du débit vidéo constant de 30000 Mbit.
Avez-vous des idées ou des suggestions pour une meilleure façon d'atteindre mon objectif ?