But I would like to encode different segments of the video at different rate and not use a constant rate of 1024k. Is this possible?
Não. Isso simplesmente não é um caso de uso muito típico. Você quer uma taxa de bits constante (por exemplo, ao transmitir) ou deseja uma taxa de bits variável (qualidade constante). No último caso, o codificador selecionará a taxa de bits apropriada para corresponder à sua configuração de qualidade ou usará os parâmetros de quantização fornecidos. Veja este documento para os modos de codificação suportados pela libvpx.
I do not want to use VBR or I don't want to cut the video and encode them at different rates and then join them.
Esta provavelmente seria a única maneira de fazer isso. Você teria que encontrar uma maneira de exportar os fluxos de bits de vídeo VP8 brutos (o que é possível com ffmpeg … -f rawvideo out.webm
), juntá-los e depois envolvê-los novamente dentro de um contêiner WebM. Eu não encontrei uma solução para isso.
Ou você pode modificar o código-fonte do codificador libvpx de forma que ele aceite alterar a taxa de bits constante por tempo.
I read the man page for ffmpeg and saw there were options for
startime and time
…
Não há essas opções no FFmpeg. Há uma opção -ss
que altera a hora de início do processo de codificação e a opção -t
que especifica por quanto tempo você deseja que o FFmpeg codifique. Mas esses são úteis apenas para o corte de vídeos.