2015-02-13 2 views
3

Когда я выполнить следующую команду ffprobe в потоке HLS с параметром, чтобы показать кадры в конкретном потоке видео в плоском формате и Grep с «ПКТ» шаблон, он возвращает эту информацию:различию между pkt_duration и pkt_duration_time в ffprobe

$ ffprobe -i http://xxxxxxxxxxxxxxxx/PCMDY_SUB.m3u8 -show_frames -select_streams v:0 -print_format flat | grep pkt 
... 
frames.frame.229.pkt_pts=2438664735, 
frames.frame.229.pkt_pts_time=27096.274833, 
frames.frame.229.pkt_dts=2438664735, 
frames.frame.229.pkt_dts_time=27096.274833, 
frames.frame.229.pkt_duration=3600, 
frames.frame.229.pkt_duration_time="0.040000", 
frames.frame.229.pkt_pos=13348, 
frames.frame.229.pkt_size=2510, 

frames.frame.230.pkt_pts=2438668335, 
frames.frame.230.pkt_pts_time=27096.314833, 
frames.frame.230.pkt_dts=2438668335, 
frames.frame.230.pkt_dts_time=27096.314833, 
frames.frame.230.pkt_duration=3600, 
frames.frame.230.pkt_duration_time="0.040000", 
frames.frame.230.pkt_pos=15980, 
frames.frame.230.pkt_size=2389, 
... 

В чем разница между информацией с _time моделью и без нее ?.

Я предположил, что pkt_duration находится в микросекундах, а pkt_duration_time - в секундах. Это правда?

ответ

4

Разница заключается в том, что pkt_duration не в микросекундах, но во время базовых ломтиков, часто, как:

1/framerate/1000 

pkt_duration_time в секундах. Вы можете увидеть единицы, переходя к ffprobe опции «-Unit»:

ffprobe -i i.mp4 -show_frames -unit 
.... 
pkt_pts=14014 
pkt_pts_time=0.233567 s 
pkt_dts=14014 
pkt_dts_time=0.233567 s 
pkt_duration=2002 
pkt_duration_time=0.033367 s 

More info о Опорный генератор.

Смежные вопросы