ffmpeg curd_dts sempre inválido quando o StreamId é 0x11

0

Eu quero gerar um fluxo de transporte mpeg com stream_id 0: 0x11 assim:

ffmpeg.exe -i foo.avi -codec libx264 -streamid 0:0x11 baa.ts

O arquivo ts resultante possui macroblocos inválidos em todos os quadros P e I.

No log de saída, vejo

cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)

muitas vezes.

Funciona para qualquer outro streamid, exceto 0x11. Mas isso é o stream_id que eu sou forçado a usar.

Eu tentei ffmpeg.exe -r 25 -i foo.avi -codec libx264 -streamid 0:0x11 baa.ts mas isso tem os mesmos resultados.

Isso é um bug ou estou faltando alguma coisa? E se é um bug é possível alterar o stream_id de um arquivo ts com qualquer outra ferramenta que o ffmpeg depois que ele é gerado?

    
por RobH83 19.05.2018 / 10:39

0 respostas