learn_ffmpeg 发表于 2020-5-26 17:51:44

FFmpeg 时间戳问题

本帖最后由 learn_ffmpeg 于 2020-5-26 17:53 编辑

       最近的项目需要将不同的M3U8中的TS片动态的制作成一个M3U8列表,因为FFmpeg 目前只兼容连续递增的DTS时间戳,所以就改了HLS读取hls_read_packet()函数中的部分代码,对av_read_frame()读取出来的packet包从新打时间戳,

视频采用采用如下方式:DTS = DTS + av_rescale_q(1, fps, s->streams->time_base);
PTS = DTS - (pkt->dts - pkt->pts);上述方式计算出来之后和原视频的时间戳是一致的;

音频采用如下方式:// 以AAC为例
PTS += 1024 * s->streams->time_base.den / c->audio_sample_rate;
DTS = PTS;但是音频的时间戳算出来反而和源时间戳不一致,计算出来的值有差距,大神帮忙看下这么计算是有什么问题吗?谢谢

下面是部分日志,befor 为av_read_frame()读取出来的pkt的时间戳,after 为转换之后的时间戳: befor pts = 21096522, dts = 21096522 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
after pts = 21096522, dts = 21096522 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
    Last message repeated 5 times
ct_type:0 pic_struct:0
befor pts = 21106800, dts = 21106800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21106800, dts = 21106800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
nal_unit_type: 9(AUD), nal_ref_idc: 0
nal_unit_type: 6(SEI), nal_ref_idc: 0
nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
ct_type:0 pic_struct:0
ct_type:0 pic_struct:0
befor pts = 21121200, dts = 21110400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21121200, dts = 21110400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
nal_unit_type: 9(AUD), nal_ref_idc: 0
nal_unit_type: 6(SEI), nal_ref_idc: 0
nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 3
ct_type:0 pic_struct:0
ct_type:0 pic_struct:0
befor pts = 21114000, dts = 21114000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21114000, dts = 21114000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
nal_unit_type: 9(AUD), nal_ref_idc: 0
nal_unit_type: 6(SEI), nal_ref_idc: 0
nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
ct_type:0 pic_struct:0
ct_type:0 pic_struct:0
befor pts = 21117600, dts = 21117600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21117600, dts = 21117600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
nal_unit_type: 9(AUD), nal_ref_idc: 0
nal_unit_type: 6(SEI), nal_ref_idc: 0
nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
ct_type:0 pic_struct:0
befor pts = 21111151, dts = 21111151 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
after pts = 21111145, dts = 21111145 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
    Last message repeated 5 times
ct_type:0 pic_struct:0
befor pts = 21132000, dts = 21121200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21132000, dts = 21121200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
nal_unit_type: 9(AUD), nal_ref_idc: 0
nal_unit_type: 6(SEI), nal_ref_idc: 0
nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 3
ct_type:0 pic_struct:0
ct_type:0 pic_struct:0
befor pts = 21124800, dts = 21124800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21124800, dts = 21124800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21128400, dts = 21128400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21128400, dts = 21128400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21142800, dts = 21132000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21142800, dts = 21132000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
befor pts = 21125780, dts = 21125780 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
after pts = 21125768, dts = 21125768 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
    Last message repeated 5 times
ct_type:0 pic_struct:0
befor pts = 21135600, dts = 21135600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21135600, dts = 21135600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21139200, dts = 21139200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21139200, dts = 21139200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21153600, dts = 21142800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21153600, dts = 21142800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21146400, dts = 21146400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21146400, dts = 21146400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
befor pts = 21140408, dts = 21140408 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
after pts = 21140391, dts = 21140391 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
    Last message repeated 5 times
ct_type:0 pic_struct:0
befor pts = 21150000, dts = 21150000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21150000, dts = 21150000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21164400, dts = 21153600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21164400, dts = 21153600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21157200, dts = 21157200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21157200, dts = 21157200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21160800, dts = 21160800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21160800, dts = 21160800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
befor pts = 21155037, dts = 21155037 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
after pts = 21155014, dts = 21155014 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
    Last message repeated 5 times
ct_type:0 pic_struct:0
befor pts = 21175200, dts = 21164400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21175200, dts = 21164400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21168000, dts = 21168000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21168000, dts = 21168000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
All info found
Setting avg frame rate based on r frame rate
After avformat_find_stream_info() pos: 341 bytes read:341 seeks:0 frames:56
Input #0, hls,applehttp, from '/home/nvod/channal/3.m3u8':
Duration: N/A, start: 234.405800, bitrate: N/A
Program 0
    Metadata:
      variant_bitrate : 0
    Stream #0:0, 21, 1/90000: Video: h264 (High), 1 reference frame ( / 0x001B), yuv420p(left), 720x576 , 0/1, 25 fps, 25 tbr, 90k tbn, 50 tbc
    Metadata:
      variant_bitrate : 0
    Stream #0:1, 35, 1/90000: Audio: aac (LC) ( / 0x000F), 44100 Hz, stereo, fltp
    Metadata:
      variant_bitrate : 0
Successfully opened the file.
Parsing a group of options: output url udp://10.160.34.117:53001?pkt_size=1316&overrun_nonfatal=1&fifo_size=286720&ttl=64.
Applying option c (codec name) with argument copy.
Applying option f (force format) with argument mpegts.
Successfully parsed a group of options.
Opening an output file: udp://10.160.34.117:53001?pkt_size=1316&overrun_nonfatal=1&fifo_size=286720&ttl=64.
No default whitelist set
Successfully opened the file.
create zmq thread succsess
create ovt bitrate control thread succsess
ts->pids = (null)
muxrate VBR, pcr every 9000 pkts, sdt every 200, pat/pmt every 40 pkts
Output #0, mpegts, to 'udp://10.160.34.117:53001?pkt_size=1316&overrun_nonfatal=1&fifo_size=286720&ttl=64':
Metadata:
    encoder         : Lavf58.20.100
    Stream #0:0, 0, 1/90000: Video: h264 (High), 1 reference frame ( / 0x001B), yuv420p(left), 720x576 (0x0) , 0/1, q=2-31, 25 fps, 25 tbr, 90k tbn, 90k tbc
    Metadata:
      variant_bitrate : 0
    Stream #0:1, 0, 1/90000: Audio: aac (LC) ( / 0x000F), 44100 Hz, stereo, fltp
    Metadata:
      variant_bitrate : 0
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press to stop, [?] for help
stream_index, set bitrate
stream_index, set bitrate
ots sb malloc success
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 20 times
program_num = 0
first data size , last data size , first pts , last pts , first pts
calucate bitrate faild, ots_data_size = 0 ots_pts = 0, last_pts=46279
first data size , last data size , first pts , last pts , first pts
calucate bitrate faild, ots_data_size = 0 ots_pts = 0, last_pts=41785
frame=   14 fps=0.0 q=-1.0bitrate_0=N/A bitrate_1=N/A size=      33kB time=00:00:00.51 bitrate= 520.6kbits/s speed=-0x timestamps cc:   
ct_type:0 pic_struct:0
befor pts = 21171600, dts = 21171600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21171600, dts = 21171600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21186000, dts = 21175200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
after pts = 21186000, dts = 21175200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 0
befor pts = 21169665, dts = 21169665 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
after pts = 21169637, dts = 21169637 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
    Last message repeated 5 times
befor pts = 21184294, dts = 21184294 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
after pts = 21184260, dts = 21184260 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player233.ts , avtype = 1
Statistics: 78208 bytes read, 0 seeks
Opening '/home/nvod/channal/3.m3u8' for reading
Media sequence change (21132 -> 21133) reflected in first_timestamp: 234400000 -> 235400000
Statistics: 341 bytes read, 0 seeks
HLS request for url '/opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts', offset 0, playlist 0
Opening '/opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts' for reading
ct_type:0 pic_struct:0
befor pts = 21178800, dts = 21178800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21178800, dts = 21178800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21182400, dts = 21182400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21182400, dts = 21182400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21189600, dts = 21186000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21189600, dts = 21186000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21200400, dts = 21189600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21200400, dts = 21189600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
program_num = 0
first data size , last data size , first pts , last pts , first pts
    Last message repeated 1 times
frame=   27 fps=0.0 q=-1.0bitrate_0= 767.2kbits/s bitrate_1= 128.9kbits/s size=      80kB time=00:00:01.03 bitrate= 632.6kbits/s speed=62.9x timestamps cc:   
ct_type:0 pic_struct:0
befor pts = 21193200, dts = 21193200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21193200, dts = 21193200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
befor pts = 21186384, dts = 21186384 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
after pts = 21186349, dts = 21186349 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
    Last message repeated 5 times
ct_type:0 pic_struct:0
befor pts = 21196800, dts = 21196800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21196800, dts = 21196800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21211200, dts = 21200400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21211200, dts = 21200400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21204000, dts = 21204000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21204000, dts = 21204000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21207600, dts = 21207600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21207600, dts = 21207600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
befor pts = 21201010, dts = 21201010 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
after pts = 21200972, dts = 21200972 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
    Last message repeated 5 times
ct_type:0 pic_struct:0
befor pts = 21222000, dts = 21211200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21222000, dts = 21211200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21214800, dts = 21214800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21214800, dts = 21214800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21218400, dts = 21218400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21218400, dts = 21218400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21232800, dts = 21222000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21232800, dts = 21222000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
befor pts = 21215641, dts = 21215641 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
after pts = 21215595, dts = 21215595 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
    Last message repeated 6 times
ct_type:0 pic_struct:0
befor pts = 21225600, dts = 21225600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21225600, dts = 21225600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21229200, dts = 21229200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21229200, dts = 21229200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21243600, dts = 21232800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21243600, dts = 21232800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21236400, dts = 21236400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21236400, dts = 21236400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
program_num = 0
first data size , last data size , first pts , last pts , first pts
    Last message repeated 1 times
frame=   40 fps=0.0 q=-1.0bitrate_0= 515.0kbits/s bitrate_1= 128.4kbits/s size=   128kB time=00:00:01.55 bitrate= 675.5kbits/s speed=2.01x timestamps cc:   
befor pts = 21232357, dts = 21232357 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
after pts = 21232307, dts = 21232307 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
    Last message repeated 5 times
ct_type:0 pic_struct:0
befor pts = 21240000, dts = 21240000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21240000, dts = 21240000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21254400, dts = 21243600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21254400, dts = 21243600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21247200, dts = 21247200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21247200, dts = 21247200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21250800, dts = 21250800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21250800, dts = 21250800 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21265200, dts = 21254400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21265200, dts = 21254400 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
befor pts = 21246988, dts = 21246988 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
after pts = 21246930, dts = 21246930 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
    Last message repeated 5 times
ct_type:0 pic_struct:0
befor pts = 21258000, dts = 21258000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21258000, dts = 21258000 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21261600, dts = 21261600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21261600, dts = 21261600 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
ct_type:0 pic_struct:0
befor pts = 21276000, dts = 21265200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
after pts = 21276000, dts = 21265200 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 0
befor pts = 21261616, dts = 21261616 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
after pts = 21261553, dts = 21261553 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
invalid pts = -9223372036854775808, dts = -9223372036854775808 , filename = /opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player234.ts , avtype = 1
    Last message repeated 5 times
Statistics: 84976 bytes read, 0 seeks
Opening '/home/nvod/channal/3.m3u8' for reading
Media sequence change (21133 -> 21134) reflected in first_timestamp: 235400000 -> 236400000
Statistics: 341 bytes read, 0 seeks
HLS request for url '/opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player235.ts', offset 0, playlist 0
Opening '/opt/Film18/NVodUpload/电影/2020/5月/2020-5-11@12-28-32//player235.ts' for reading

learn_ffmpeg 发表于 2020-6-2 19:28:41

优化了下处理逻辑,通过ext-x-discontinuity 检测到有不连续的时间戳到来,然后只对这个时间戳衔接的部分自己计算时间戳,衔接好了之后再原有的时间戳基础上增加差值,达到时间戳连续的目的,目前测试没有问题,可以流畅的衔接!

但是上面为什么音频的时间戳计算有问题,还需要高人指点,谢谢

learn_ffmpeg 发表于 2020-6-2 19:29:21

优化了下处理逻辑,通过ext-x-discontinuity 检测到有不连续的时间戳到来,然后只对这个时间戳衔接的部分自己计算时间戳,衔接好了之后再原有的时间戳基础上增加差值,达到时间戳连续的目的,目前测试没有问题,可以流畅的衔接!

但是上面为什么音频的时间戳计算有问题,还需要高人指点,谢谢

learn_ffmpeg 发表于 2020-6-2 19:29:38

优化了下处理逻辑,通过ext-x-discontinuity 检测到有不连续的时间戳到来,然后只对这个时间戳衔接的部分自己计算时间戳,衔接好了之后再原有的时间戳基础上增加差值,达到时间戳连续的目的,目前测试没有问题,可以流畅的衔接!

但是上面为什么音频的时间戳计算有问题,还需要高人指点,谢谢
页: [1]
查看完整版本: FFmpeg 时间戳问题