使用如下命令获取关键帧时间点
ffprobe -select_streams v -show_frames -v quiet LG.4K.DEMO_Chess_HEVC_60FPS_10bit_HDR.ts -unit | grep key_frame=1 -A 3
获取到如下时间点
key_frame=1 pkt_pts=96005 pkt_pts_time=1.066722 s pkt_dts=96005 -- key_frame=1 pkt_pts=186095 pkt_pts_time=2.067722 s pkt_dts=186095 -- key_frame=1 pkt_pts=276185 pkt_pts_time=3.068722 s pkt_dts=276185 -- key_frame=1 pkt_pts=366275 pkt_pts_time=4.069722 s pkt_dts=366275 -- key_frame=1 pkt_pts=456365 pkt_pts_time=5.070722 s pkt_dts=456365 -- key_frame=1 pkt_pts=546455 pkt_pts_time=6.071722 s pkt_dts=546455 -- key_frame=1 pkt_pts=636545 pkt_pts_time=7.072722 s pkt_dts=636545 -- key_frame=1 pkt_pts=656064 pkt_pts_time=7.289600 s pkt_dts=656064
使用截取命令进行截取。
ffmpeg -ss 00:00:07.072 -i LG.4K.DEMO_Chess_HEVC_60FPS_10bit_HDR.ts -vcodec copy -acodec copy LG.4K.DEMO_Chess_HEVC_60FPS_10bit_HDR.no_blackstart.ts