Estou tentando converter um MP4 em um arquivo TS para que eu possa segmentar o arquivo para o iOS Streaming. Eu tenho um arquivo de vídeo TS (que não tem áudio) e um arquivo TS de áudio separado. O problema que estou tendo é, às vezes, o áudio e o vídeo ficavam fora de sincronia. Depois de fazer algumas pesquisas, o PTS tem um papel muito importante nisso.
Então, se eu executar ffprobe -print_format csv -show_packets test.mp4
, o resultado será
packet,video,0,0,0.000000,-7200,-0.080000,3600,0.040000,N/A,N/A,13154,1673,K
packet,video,0,3600,0.040000,-3600,-0.040000,3600,0.040000,N/A,N/A,9227,14827,_
packet,video,0,7200,0.080000,0,0.000000,3600,0.040000,N/A,N/A,8689,24054,_
packet,video,0,14400,0.160000,3600,0.040000,3600,0.040000,N/A,N/A,7730,32743,_
O quarto col é o valor PTS e observe que ele começa com 0.
E se eu converter o mp4 em um arquivo TS com ffmpeg -y -i test.mp4 -acodec libfaac -vcodec copy -vbsf h264_mp4toannexb test.ts
e, em seguida, executar ffprobe -print_format csv -show_packets WG7855.ts
, recebo
packet,video,0,126000,1.400000,118800,1.320000,N/A,N/A,N/A,N/A,13204,564,K
packet,video,0,129600,1.440000,122400,1.360000,N/A,N/A,N/A,N/A,9233,14476,_
packet,video,0,133200,1.480000,126000,1.400000,N/A,N/A,N/A,N/A,8695,24816,_
packet,video,0,140400,1.560000,129600,1.440000,N/A,N/A,N/A,N/A,7736,34216,_
Observe que o PTS começa com 126000. Eu tentei o -copyts
arg e o PTS ainda começa com 126000.
Alguém que pode ajudar?