Isso realmente depende da sua velocidade de upload.
bufsize determinará como o ffmpeg religioso está relacionado a manter sua taxa de bits constante. Se você definir um bufsize de 64k, conforme FFmpeg Wiki: Limitando a taxa de bits de saída , Ele calculará sua taxa de bits atual a cada 64 kilobytes e ajustará de acordo. Tamanhos menores para bufsize podem ser prejudiciais à qualidade, pois eles não permitem espaço suficiente entre as verificações de x264 para fazer alterações repentinas - você terá bloqueios.
Se seu maxrate for 640kbps e seu bufsize for 64k, então, a cada décimo de segundo x264 verificará. Isso é sub-ótimo - FFmpeg Wiki: A codificação de sites de streaming recomenda executá-lo a cada 1 a 2 segundos. Se isso não fizer sentido, pense nisso como maxrate / bufsize = freqüência de verificações. Mantenha esta frequência entre 1 e 2 segundos como regra geral.
Se você definir maxrate e bufsize , deverá:
- defina
maxratepara qualquer que seja sua menor velocidade de upload (no exemplo de wiki ffmpeg , isso é 80 % da velocidade total de upload, mas sua milhagem pode variar). - defina
bufsizepara algo entre o mesmo que seumaxrate(um segundo) e duas vezes do seumaxrate(2 segundos). Se isso ainda não estiver baixo o suficiente, diminua seumaxratee, em seguida, redefinabufsizede acordo.
Depois, você terá que brincar um pouco, mas desde que você tem que começar em algum lugar, eu começaria em maxrate em torno de 600k, o que geralmente era satisfatório para mim antes de usar crf para tudo.
Se desejar, você pode tentar valores mais baixos para bufsize , como para cada três ou quatro segundos, apenas para ver como o valor altera a aparência de sua saída. Então você pode determinar o quanto você deve se preocupar com isso em seu vídeo.
Não existe um valor normal, realmente - o que o crf faz é otimizar a saída com base no que acha ser o melhor tamanho de buffer para manter qualquer taxa definida. Ele tenta manter um tamanho de arquivo menor, mantendo alguma qualidade, ao custo de picos ocasionais.