正在显示
11 个修改的文件
包含
108 行增加
和
1127 行删除
trunk/doc/ts-PCR-analysis.txt
已删除
100644 → 0
1 | -packet#7: | ||
2 | -Adaptation fields | ||
3 | - Adaptation_field_length: 7 | ||
4 | - discontinuity_indicator: False | ||
5 | - random_access_indicator: True | ||
6 | - ES_priority_indicator: False | ||
7 | - PCR_flag: True | ||
8 | - OPCR_flag: False | ||
9 | - splicing_point_flag: False | ||
10 | - transport_private_data_flag: False | ||
11 | - adaptation_field_extension_flag: False | ||
12 | - PCR: 50572350000 | ||
13 | -PES header | ||
14 | - stream_id: E0 (video stream 224) | ||
15 | - PES_packet_length: 35808 | ||
16 | - PES_scrambling: 0 | ||
17 | - PES_priority: False | ||
18 | - data_alignment: False | ||
19 | - copyright: False | ||
20 | - original_or_copy: False | ||
21 | - PTS_flag: True | ||
22 | - DTS_flag: True | ||
23 | - ESCR_flag: False | ||
24 | - ES_rate_flag: False | ||
25 | - DSM_trick_mode_flag: False | ||
26 | - additional_copy_info_flag: False | ||
27 | - PES_CRC_flag: False | ||
28 | - PES_extension_flag: False | ||
29 | - PES_header_data_length: 10 | ||
30 | - PTS: 168704280 | ||
31 | - DTS: 168700500 | ||
32 | - | ||
33 | - | ||
34 | - | ||
35 | -packet#665: | ||
36 | -Adaptation fields | ||
37 | - Adaptation_field_length: 7 | ||
38 | - discontinuity_indicator: False | ||
39 | - random_access_indicator: True | ||
40 | - ES_priority_indicator: False | ||
41 | - PCR_flag: True | ||
42 | - OPCR_flag: False | ||
43 | - splicing_point_flag: False | ||
44 | - transport_private_data_flag: False | ||
45 | - adaptation_field_extension_flag: False | ||
46 | - PCR: 50616225000 | ||
47 | -PES header | ||
48 | - stream_id: E0 (video stream 224) | ||
49 | - PES_packet_length: 29213 | ||
50 | - PES_scrambling: 0 | ||
51 | - PES_priority: False | ||
52 | - data_alignment: False | ||
53 | - copyright: False | ||
54 | - original_or_copy: False | ||
55 | - PTS_flag: True | ||
56 | - DTS_flag: True | ||
57 | - ESCR_flag: False | ||
58 | - ES_rate_flag: False | ||
59 | - DSM_trick_mode_flag: False | ||
60 | - additional_copy_info_flag: False | ||
61 | - PES_CRC_flag: False | ||
62 | - PES_extension_flag: False | ||
63 | - PES_header_data_length: 10 | ||
64 | - PTS: 168850530 | ||
65 | - DTS: 168846750 | ||
66 | - | ||
67 | -参考nginx-rtmp函数:ngx_rtmp_mpegts_write_frame | ||
68 | -其中,nginx-rtmp写入PCR的逻辑如下: | ||
69 | - if (f->key) { | ||
70 | - packet[3] |= 0x20; /* adaptation */ | ||
71 | - | ||
72 | - *p++ = 7; /* size */ | ||
73 | - *p++ = 0x50; /* random access + PCR */ | ||
74 | - | ||
75 | - p = ngx_rtmp_mpegts_write_pcr(p, f->dts - NGX_RTMP_HLS_DELAY); | ||
76 | - } | ||
77 | -只要碰到关键帧,就写入PCR。 | ||
78 | -ngx_rtmp_mpegts_write_pcr(u_char *p, uint64_t pcr) | ||
79 | -{ | ||
80 | - *p++ = (u_char) (pcr >> 25); | ||
81 | - *p++ = (u_char) (pcr >> 17); | ||
82 | - *p++ = (u_char) (pcr >> 9); | ||
83 | - *p++ = (u_char) (pcr >> 1); | ||
84 | - *p++ = (u_char) (pcr << 7 | 0x7e); | ||
85 | - *p++ = 0; | ||
86 | - | ||
87 | - return p; | ||
88 | -} | ||
89 | -即将高9位置0,6个reserverd置1,低33位输出(little-endian)。 | ||
90 | - | ||
91 | -nginx-rtmp写入dts的逻辑如下: | ||
92 | - p = ngx_rtmp_mpegts_write_pts(p, 1, f->dts + NGX_RTMP_HLS_DELAY); | ||
93 | -也就是说, | ||
94 | - pcr = f->dts - NGX_RTMP_HLS_DELAY | ||
95 | - f->dts = dts - NGX_RTMP_HLS_DELAY | ||
96 | -计算出来的: | ||
97 | - pcr = program_clock_reference_base = 168574500 | ||
98 | - dts = 168700500 | ||
99 | - 168574500 = 168700500 - 63000 - 63000 | ||
100 | -可见,工具MPEG-2 TS packet analyser分析出来的pcr是不对的。 | ||
101 | - | ||
102 | -解码出来的结果: | ||
103 | -demuxer+read packet 0006 0001128 0x47 0x41 0x00 0x35 ... 0xb6 0x9f 0x89 | ||
104 | -ts+af af flags parsed, discontinuity: 0 random: 1 priority: 0 PCR: 1 OPCR: 0 slicing: 0 private: 0 extension: 0 pcr: 168574500 opcr: 0 | ||
105 | -ts+pes stream_id: 224 size: 35808 pts: 168704280 dts: 168700500 total: 35808 header: 13 packet_size: 35795 parsed_size: 157 |
trunk/doc/ts-audio-video-analysis.mpegts
已删除
100644 → 0
不能预览此文件类型
trunk/doc/ts-audio-video-analysis.txt
已删除
100644 → 0
1 | -ts-audio-video-analysis.ts is generated by nginx-rtmp. | ||
2 | - | ||
3 | -AUDIO 0x0F ISO/IEC 13818-7 Audio with ADTS transport syntax | ||
4 | -110x xxxx ISO/IEC 13818-3 or ISO/IEC 11172-3 or ISO/IEC 13818-7 or ISO/IEC 14496-3 audio stream number x xxxx | ||
5 | -(gdb) p /x pkt.payload[0].pmt[0].at(1)[0] | ||
6 | -$55 = {stream_type = 0xf, elementary_PID = 0x101} | ||
7 | -======================================================================== | ||
8 | -(gdb) x /584xb msg->packet_data | ||
9 | -TS(AAC-ADTS) header, 7bytes | ||
10 | -0x60a320: 0xff 0xf1 0x5c 0x80 0x23 0xdf 0xfc | ||
11 | -FLV(AAC) header, 2bytes | ||
12 | -0xaf 0x01 | ||
13 | -TS(AAC-ADTS) RAW data, | ||
14 | -0x21 0x1a 0xcb 0xfe 0xfc 0xff 0xff 0xff 0x98 | ||
15 | -0x60a330: 0xb1 0x52 0xd8 0x88 0x43 0x28 0xc4 0xcb | ||
16 | -0x60a338: 0x95 0x2c 0x9a 0x09 0x5c 0x00 0x9c 0xfb | ||
17 | -0x60a340: 0x50 0xb9 0x3d 0xa8 0x96 0x02 0x47 0x68 | ||
18 | -0x60a348: 0xfb 0xb3 0x1c 0x26 0x2e 0xdb 0xac 0x8a | ||
19 | -0x60a350: 0xec 0x81 0x65 0xae 0x56 0x45 0x65 0x40 | ||
20 | -0x60a358: 0xcb 0x8f 0xa5 0x6a 0xe8 0x18 0x05 0x90 | ||
21 | -0x60a360: 0x8e 0x24 0xb7 0x55 0x72 0x0a 0x6d 0x07 | ||
22 | -0x60a368: 0x9b 0xa5 0xca 0xd2 0xc8 0x6d 0x0f 0xd2 | ||
23 | -0x60a370: 0x42 0xf0 0x83 0x1d 0x24 0x60 0xba 0x89 | ||
24 | -0x60a378: 0x57 0x3f 0x70 0x0f 0xc7 0x18 0xbc 0xc6 | ||
25 | -0x60a380: 0x0a 0xf2 0x2f 0x75 0x46 0x94 0x0b 0x81 | ||
26 | -0x60a388: 0x24 0x2e 0xfa 0x9d 0xa1 0x50 0x17 0x04 | ||
27 | -0x60a390: 0x50 0x0b 0xde 0x86 0xe5 0x80 0x0a 0x68 | ||
28 | -0x60a398: 0x56 0x30 0x1d 0xbf 0xf5 0x56 0x87 0xab | ||
29 | -0x60a3a0: 0x0f 0x30 0x8c 0x01 0x2b 0x3d 0x56 0xa6 | ||
30 | -0x60a3a8: 0xc7 0xe5 0xe1 0x83 0x76 0x8a 0xd4 0x7e | ||
31 | -0x60a3b0: 0xc0 0x04 0xad 0x31 0x0c 0xe1 0x3b 0x80 | ||
32 | -0x60a3b8: 0x41 0x0d 0x00 0xb6 0x88 0xb0 0xe3 0x62 | ||
33 | -0x60a3c0: 0xda 0xf3 0xb2 0x58 0x12 0x1c 0x9a 0x5e | ||
34 | -0x60a3c8: 0x4f 0x9c 0x63 0x5c 0xc1 0x99 0xc2 0x5e | ||
35 | -0x60a3d0: 0xc6 0x82 0x5e 0x95 0x9d 0x80 0x91 0x57 | ||
36 | -0x60a3d8: 0x66 0x22 0xaf 0x60 0x68 0xcc 0x9d 0x40 | ||
37 | -0x60a3e0: 0x16 0xc0 0x6c 0xee 0x69 0xae 0xda 0x3f | ||
38 | -0x60a3e8: 0x1e 0xe6 0x2e 0x55 0xbc 0xf8 0x60 0xda | ||
39 | -0x60a3f0: 0x5f 0x0a 0x08 0x6e 0xbb 0x82 0x48 0x53 | ||
40 | -0x60a3f8: 0x46 0x29 0x10 0xb2 0x99 0x50 0x69 0xe2 | ||
41 | -0x60a400: 0x74 0xa9 0xf1 0x2e 0xce 0x40 0x0c 0x70 | ||
42 | -0x60a408: 0xce 0x92 0x17 0x5c 0x02 0xc0 0x6d 0x19 | ||
43 | -0x60a410: 0xc0 0x17 0x58 0xb2 0x16 0xb9 0x2c 0x55 | ||
44 | -0x60a418: 0xc0 0xe2 0xbe 0x75 0xe4 0x8e 0xb9 0xd5 | ||
45 | -0x60a420: 0x24 0x12 0x5c 0x53 0x1c 0xa5 0xb5 0x78 | ||
46 | -0x60a428: 0x05 0x1a 0x74 0x85 0xd5 0x00 0x6d 0x00 | ||
47 | -0x60a430: 0x20 0xc0 0x00 0x34 0x80 0x00 0x00 0x00 | ||
48 | -0x60a438: 0x00 0x00 0x00 0x00 0x00 0x70 | ||
49 | -======================================================================== | ||
50 | -TS(AAC-ADTS) header, 7bytes | ||
51 | -0xff 0xf1 0x5c 0x80 0x25 0x5f 0xfc | ||
52 | -FLV(AAC) header, 2bytes | ||
53 | -0xaf 0x01 | ||
54 | -TS(AAC-ADTS) RAW data, | ||
55 | -0x21 0x1a 0xcf | ||
56 | -0x60a448: 0x77 0xff 0xff 0x7f 0xff 0x98 0xa6 0xb1 | ||
57 | -0x60a450: 0x85 0x0a 0x11 0x70 0x05 0xbd 0x0b 0xbb | ||
58 | -0x60a458: 0x88 0x80 0x59 0x19 0xa4 0x89 0x0d 0x68 | ||
59 | -0x60a460: 0xb9 0x01 0xb2 0x4d 0x7d 0xd7 0x18 0xe5 | ||
60 | -0x60a468: 0x77 0x1e 0x4b 0x5b 0xa1 0xa9 0xd5 0x2a | ||
61 | -0x60a470: 0x12 0x76 0xcb 0x35 0xb8 0x27 0xf1 0xab | ||
62 | -0x60a478: 0xf0 0xf8 0xb7 0xe5 0xcf 0x49 0xaa 0x15 | ||
63 | -0x60a480: 0x53 0x9a 0xdf 0x6d 0x9c 0x76 0xe4 0xcb | ||
64 | -0x60a488: 0x2d 0x83 0x88 0x31 0x8d 0x06 0x03 0xb4 | ||
65 | -0x60a490: 0xc5 0x68 0xf3 0xa9 0x70 0x8d 0x63 0x96 | ||
66 | -0x60a498: 0x02 0xa3 0xf5 0xf6 0x69 0x44 0xa4 0x3e | ||
67 | -0x60a4a0: 0x1d 0x27 0x68 0x6c 0x37 0x58 0x46 0xe5 | ||
68 | -0x60a4a8: 0xc5 0x26 0x21 0x1a 0x2f 0xee 0xa4 0x71 | ||
69 | -0x60a4b0: 0x02 0x29 0x44 0x16 0x96 0x7e 0x4b 0x16 | ||
70 | -0x60a4b8: 0x76 0x47 0x55 0x8c 0x44 0x28 0xbc 0x42 | ||
71 | -0x60a4c0: 0x1f 0xab 0x54 0x5d 0xf6 0xba 0xc3 0x73 | ||
72 | -0x60a4c8: 0x69 0x99 0xa5 0x72 0x12 0xce 0x8c 0xd7 | ||
73 | -0x60a4d0: 0xdf 0xae 0x3e 0xfa 0x13 0x14 0x96 0x31 | ||
74 | -0x60a4d8: 0x20 0xca 0x2e 0x00 0x95 0x5c 0x44 0x84 | ||
75 | -0x60a4e0: 0x89 0x05 0xaf 0x4a 0xcb 0xab 0x40 0xd7 | ||
76 | -0x60a4e8: 0x9a 0x25 0x80 0xc7 0x67 0x6e 0x87 0x9e | ||
77 | -0x60a4f0: 0xe5 0x74 0xb7 0xc3 0x40 0xc3 0x27 0x83 | ||
78 | -0x60a4f8: 0x3a 0x1d 0xc4 0x6c 0xef 0xa2 0x2f 0xd0 | ||
79 | -0x60a500: 0xc4 0xf0 0x2e 0xaa 0x85 0xb0 0x82 0xc3 | ||
80 | -0x60a508: 0x48 0x64 0x39 0x32 0x57 0x7a 0x45 0x6a | ||
81 | -0x60a510: 0x58 0xc6 0x82 0x40 0xaa 0x02 0xa3 0xea | ||
82 | -0x60a518: 0xdd 0xbb 0x58 0x3d 0x54 0x8d 0x2a 0xd5 | ||
83 | -0x60a520: 0x66 0xc8 0xc1 0x7b 0x89 0x83 0x06 0xe0 | ||
84 | -0x60a528: 0xaf 0x3d 0x56 0x00 0x4b 0x40 0x06 0x4c | ||
85 | -0x60a530: 0xb1 0x25 0x74 0xcb 0x0e 0x5a 0x9b 0x70 | ||
86 | -0x60a538: 0xaa 0x9d 0x68 0x8d 0xaf 0x0e 0xf1 0xe7 | ||
87 | -0x60a540: 0x6e 0x6b 0x4f 0xc4 0x60 0x48 0x88 0x97 | ||
88 | -0x60a548: 0x3f 0xc6 0x47 0xe7 0xf3 0xdb 0xb3 0x8e | ||
89 | -0x60a550: 0x36 0xad 0x21 0x55 0x40 0x49 0x40 0x08 | ||
90 | -0x60a558: 0x0c 0x00 0x00 0x0d 0x60 0x00 0x00 0x00 | ||
91 | -0x60a560: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x1c | ||
92 | - | ||
93 | - | ||
94 | - | ||
95 | -VIDEO 0x15-0x7F ITU-T Rec. H.222.0 | ISO/IEC 13818-1 Reserved | ||
96 | -1110 xxxx ITU-T Rec. H.262 | ISO/IEC 13818-2 or ISO/IEC 11172-2 or ISO/IEC 14496-2 video stream number xxxx | ||
97 | -(gdb) p /x pkt.payload[0].pmt[0].at(0)[0] | ||
98 | -$54 = {stream_type = 0x1b, elementary_PID = 0x100} | ||
99 | -======================================================================== | ||
100 | -(gdb) p msg[0] | ||
101 | -$6 = {_vptr.TSMessage = 0x407b70, pid = 256, type = TSPidTypeVideo, stream_type = TSStreamTypeVideoH264, | ||
102 | - PES_packet_length = 35808, stream_id = 224 '\340', packet_start_code_prefix = 1, packet_header_size = 13, | ||
103 | - parsed_packet_size = 35795, packet_data_size = 35795, packet_data = 0x60b300 ""} | ||
104 | -(gdb) x /356xb msg->packet_data | ||
105 | -======================================================================== | ||
106 | -TS(H264) header | ||
107 | -0x00 0x00 0x00 0x01 | ||
108 | -0x09 0xf0 | ||
109 | -0x00 0x00 0x00 0x01 | ||
110 | -======================================================================== | ||
111 | -FLV(H264) header | ||
112 | -0x00 0x00 0x00 0x00 0x01 0x64 0x00 0x28 | ||
113 | -0xff 0xe1 0x00 0x1e | ||
114 | -======================================================================== | ||
115 | -H264 Sequence header [section 0] | ||
116 | -0x67 0x64 0x00 0x28 0xac 0xd1 | ||
117 | -0x60b310: 0xc0 0x50 0x05 0xbb 0xff 0x00 0x2d 0x00 | ||
118 | -0x60b318: 0x22 0x10 0x00 0x00 0x03 0x00 0x10 0x00 | ||
119 | -0x60b320: 0x00 0x03 0x03 0x08 0xf1 0x83 0x11 0xe0 | ||
120 | -======================================================================== | ||
121 | -TS(H264) header | ||
122 | -0x00 0x00 0x00 0x01 | ||
123 | -======================================================================== | ||
124 | -H264 Sequence header [section 1] | ||
125 | -0x68 0xe9 0xab 0x2c 0x8b | ||
126 | -======================================================================== | ||
127 | - | ||
128 | -TS(H264) header, xbytes | ||
129 | -0x00 0x00 0x01 | ||
130 | -======================================================================== | ||
131 | -FLV(H264) header, xbytes | ||
132 | -0x01 0x00 0x00 0x2a 0x00 0x00 0x00 0x02 | ||
133 | -0x09 0xf0 0x00 0x00 0x00 0x1e | ||
134 | -H264 Sequence header [section 0] | ||
135 | -0x67 0x64 0x00 0x28 0xac 0xd1 | ||
136 | -0xc0 0x50 0x05 0xbb 0xff 0x00 0x2d 0x00 | ||
137 | -0x22 0x10 0x00 0x00 0x03 0x00 0x10 0x00 | ||
138 | -0x00 0x03 0x03 0x08 0xf1 0x83 0x11 0xe0 | ||
139 | -FLV header? | ||
140 | -0x00 0x00 0x00 0x05 | ||
141 | -H264 Sequence header [section 1] | ||
142 | -0x68 0xe9 0xab 0x2c 0x8b | ||
143 | -FLV header? | ||
144 | -0x00 0x00 0x8b 0x9f | ||
145 | -======================================================================== | ||
146 | -0x65 0x88 0x84 0x00 | ||
147 | -0x60b338: 0x42 0xbf 0x4e 0x19 0x2a 0x00 0x0b 0xa7 | ||
148 | -0x60b340: 0xeb 0x07 0xb7 0xfc 0xc2 0x24 0x8d 0xfa | ||
149 | -0x60b348: 0xc0 0xaf 0x2a 0x76 0x53 0xc4 0x2d 0x80 | ||
150 | -0x60b350: 0x8f 0xc8 0xba 0x2e 0x2b 0xb7 0x18 0x9f | ||
151 | - | ||
152 | - | ||
153 | -TS的数据如下: | ||
154 | -(gdb) x /35795xb msg->packet_data | ||
155 | -0x00 0x00 0x00 0x01 | ||
156 | -0x09 0xf0 | ||
157 | - | ||
158 | -0x00 0x00 0x00 0x01 | ||
159 | -0x67 0x64 0x00 0x28 0xac 0xd1 | ||
160 | -0x60b310: 0xc0 0x50 0x05 0xbb 0xff 0x00 0x2d 0x00 | ||
161 | -0x60b318: 0x22 0x10 0x00 0x00 0x03 0x00 0x10 0x00 | ||
162 | -0x60b320: 0x00 0x03 0x03 0x08 0xf1 0x83 0x11 0xe0 | ||
163 | - | ||
164 | -0x00 0x00 0x00 0x01 | ||
165 | -0x68 0xe9 0xab 0x2c 0x8b | ||
166 | - | ||
167 | -0x00 0x00 0x01 | ||
168 | -0x65 0x88 0x84 0x00 | ||
169 | -0x60b338: 0x42 0xbf 0x4e 0x19 0x2a 0x00 0x0b 0xa7 | ||
170 | -0x60b340: 0xeb 0x07 0xb7 0xfc 0xc2 0x24 0x8d 0xfa | ||
171 | -0x60b348: 0xc0 0xaf 0x2a 0x76 0x53 0xc4 0x2d 0x80 | ||
172 | -0x60b350: 0x8f 0xc8 0xba 0x2e 0x2b 0xb7 0x18 0x9f | ||
173 | -0x60b358: 0xba 0x47 0x10 0x8b 0xc7 0x93 0x92 0x89 | ||
174 | -0x60b360: 0x00 0x2d 0xdf 0x3b 0xcb 0x51 0xfe 0x27 | ||
175 | -0x60b368: 0x13 0xe3 0x29 0x48 0x71 0xf7 0x70 0x07 | ||
176 | -0x60b370: 0xf4 0x5c 0xb4 0xf0 0xbd 0x65 0x76 0xa1 | ||
177 | -0x60b378: 0x4e 0x96 0xd7 0x2c 0x66 0xdf 0xc3 0x9e | ||
178 | -0x60b380: 0xad 0x23 0x4b 0xc3 0xe1 0xf8 0xb4 0x59 | ||
179 | -0x60b388: 0x24 0x59 0xf3 0x7b 0x8e 0xb0 0xa6 0x95 | ||
180 | -0x60b390: 0xdf 0x4b 0x05 0x90 0xbd 0x87 0x87 0x99 | ||
181 | -0x60b398: 0xd5 0xc1 0xb6 0x9f 0x89 0xff 0x2f 0x7d | ||
182 | -0x60b3a0: 0xc6 0xac 0x0c 0x8f 0x00 0x07 0x28 0xac | ||
183 | -0x60b3a8: 0x09 0xf7 0x87 0xc7 0xc8 0xb6 0x19 0xc3 | ||
184 | -0x60b3b0: 0xda 0x3b 0x3d 0x9d 0x00 0x5f 0xc7 0xe6 | ||
185 | -0x60b3b8: 0x39 0xc5 0xc4 0x58 0x76 0xac 0xaa 0x16 | ||
186 | -0x60b3c0: 0xb7 0x05 0x5d 0xe4 0xe7 0x9d 0xda 0x97 | ||
187 | -0x60b3c8: 0x1c 0x3c 0xeb 0x66 0xf1 0xd9 0xa8 0x6e | ||
188 | -0x60b3d0: 0xae 0xdf 0xbd 0xa9 0x36 0xc9 0x86 0x88 | ||
189 | -0x60b3d8: 0x54 0x4b 0xb8 0xcc 0xe7 0xa6 0x60 0x40 | ||
190 | -0x60b3e0: 0x52 0xd9 0x32 0xf4 0xf0 0x2c 0x4f 0xf5 | ||
191 | -0x60b3e8: 0xc0 0xce 0x74 0x61 0x4a 0xc8 0x65 0x6e | ||
192 | -0x60b3f0: 0x92 0x8f 0xc8 0x63 0xd2 0xca 0xcc 0xe1 | ||
193 | -0x60b3f8: 0x65 0xa6 0x3b 0x6b 0xfd 0x7b 0x66 0x2a | ||
194 | -0x60b400: 0x0a 0xea 0x86 0x93 0xce 0x90 0xe7 0x9b | ||
195 | -0x60b408: 0x75 0x92 0x0d 0x6f 0xfa 0xa2 0xac 0x26 | ||
196 | -0x60b410: 0xae 0xb1 0xc3 0x4c 0xab 0x92 0xc6 0xae | ||
197 | - | ||
198 | -TS的第二个视频包数据如下: | ||
199 | -(gdb) x /4108xb 0x60b300 | ||
200 | -0x00 0x00 0x00 0x01 | ||
201 | -0x09 0xf0 | ||
202 | - | ||
203 | -0x00 0x00 0x01 | ||
204 | -0x41 0x9a 0x28 0xc8 0x4a 0xbf 0xe8 | ||
205 | -0x60b310: 0x06 0x44 0x30 0x05 0xea 0xd8 0x86 0xa5 | ||
206 | -0x60b318: 0xee 0x75 0xab 0x30 0xc8 0x7a 0x5c 0xe3 | ||
207 | -0x60b320: 0xc7 0x4a 0xdb 0xf6 0xe0 0x08 0xbe 0xc4 | ||
208 | -0x60b328: 0xb0 0xe4 0x5d 0xe7 0x95 0xf3 0x65 0x4e | ||
209 | -0x60b330: 0x00 0xed 0xdb 0xd1 0x5e 0xc3 0xb8 0x34 | ||
210 | -0x60b338: 0x3d 0xd3 0xfe 0x46 0x5b 0xfd 0xd9 0xf0 | ||
211 | -0x60b340: 0xa0 0x5d 0xa4 0xa8 0x3d 0x44 0x97 0x58 | ||
212 | -0x60b348: 0x20 0xd5 0x41 0xb2 0x49 0x72 0xd0 0x9b | ||
213 | -0x60b350: 0xa2 0xa7 0xbf 0xba 0x9c 0xa8 0x10 0x58 | ||
214 | -0x60b358: 0x07 0x47 0xf4 0xe5 0xe8 0x5d 0xf2 0x0d | ||
215 | -0x60b360: 0xfe 0x51 0x26 0x8a 0x6a 0x76 0xb8 0x35 | ||
216 | -0x60b368: 0x04 0xfe 0x01 0xb4 0xec 0x67 0xd5 0x1f | ||
217 | -0x60b370: 0xb0 0x66 0x0b 0x7e 0x52 0x58 0x38 0x1c | ||
218 | -0x60b378: 0xf3 0x4c 0x92 0xe8 0x38 0xc3 0x7e 0x5b | ||
219 | -0x60b380: 0xd6 0x17 0x47 0x49 0xba 0xae 0x6e 0xa0 | ||
220 | -0x60b388: 0xd8 0xfd 0x16 0xdb 0x85 0xd1 0x81 0x6e | ||
221 | -0x60b390: 0x43 0x17 0x82 0xb9 0x39 0xb0 0xa8 0xe8 | ||
222 | -0x60b398: 0x00 0x56 0x52 0x5e 0xfd 0xad 0x5a 0x43 | ||
223 | -0x60b3a0: 0x32 0x7a 0x4e 0xed 0xd7 0xb2 0x1b 0x4d | ||
224 | -0x60b3a8: 0x78 0x9e 0xad 0x4e 0x97 0x37 0x2c 0xbb | ||
225 | -0x60b3b0: 0xf3 0x99 0x45 0xee 0xce 0xc7 0x1f 0xeb | ||
226 | -0x60b3b8: 0x43 0x37 0xfd 0x67 0x34 0x97 0xcc 0x8c | ||
227 | -0x60b3c0: 0xc5 0xec 0x86 0xb0 0x57 0xb4 0x83 0xa9 | ||
228 | - | ||
229 | - | ||
230 | - | ||
231 | -第3030个包解析有点问题,设置条件断点: | ||
232 | -condition 1 ctx->ts_packet_count == 3030 | ||
233 | -发现数据如下: | ||
234 | -(gdb) x /188xb 0x7fffffffe2f0 | ||
235 | -0x7fffffffe2f0: 0x47 0x41 0x00 0x38 0x07 0x50 0x05 0x09 | ||
236 | -0x7fffffffe2f8: 0x5a 0xa6 0x7e 0x00 0x00 0x00 0x01 0xe0 | ||
237 | -0x7fffffffe300: 0x00 0x00 0x80 0xc0 0x0a 0x31 0x28 0x53 | ||
238 | -0x7fffffffe308: 0x60 0x81 0x11 0x28 0x53 0x42 0xf9 0x00 | ||
239 | -0x7fffffffe310: 0x00 0x00 0x01 0x09 0xf0 0x00 0x00 0x00 | ||
240 | -0x7fffffffe318: 0x01 0x67 0x64 0x00 0x28 0xac 0xd1 0xc0 | ||
241 | -0x7fffffffe320: 0x50 0x05 0xbb 0xff 0x00 0x2d 0x00 0x22 | ||
242 | -0x7fffffffe328: 0x10 0x00 0x00 0x03 0x00 0x10 0x00 0x00 | ||
243 | -0x7fffffffe330: 0x03 0x03 0x08 0xf1 0x83 0x11 0xe0 0x00 | ||
244 | -0x7fffffffe338: 0x00 0x00 0x01 0x68 0xe9 0xab 0x2c 0x8b | ||
245 | -0x7fffffffe340: 0x00 0x00 0x01 0x65 0x88 0x84 0x00 0x42 | ||
246 | -0x7fffffffe348: 0xbf 0x08 0xee 0x00 0x02 0xb2 0x75 0x8d | ||
247 | -0x7fffffffe350: 0x9f 0xc4 0x24 0xe5 0xbd 0x27 0x87 0xf1 | ||
248 | -0x7fffffffe358: 0xe4 0x09 0xa0 0x51 0x2d 0x12 0xfc 0xf5 | ||
249 | -0x7fffffffe360: 0x6e 0x31 0x3d 0xc4 0x0e 0x3f 0x51 0x47 | ||
250 | -0x7fffffffe368: 0x07 0xbd 0xd2 0x8c 0xab 0x72 0x1c 0x2d | ||
251 | -0x7fffffffe370: 0xd0 0xfa 0x2f 0x7d 0xef 0xaa 0xfb 0x17 | ||
252 | -0x7fffffffe378: 0xc1 0x08 0xad 0x36 0x8d 0xf1 0x41 0x35 | ||
253 | -0x7fffffffe380: 0xe0 0x20 0xae 0xe8 0x75 0x66 0x39 0x15 | ||
254 | -0x7fffffffe388: 0x78 0x88 0x01 0xe8 0x2e 0x4e 0x8a 0x8b | ||
255 | -0x7fffffffe390: 0xf8 0x04 0x68 0xbf 0xec 0x82 0x59 0x86 | ||
256 | -0x7fffffffe398: 0xde 0xe1 0x66 0x32 0x37 0xfa 0x78 0x6d | ||
257 | -0x7fffffffe3a0: 0x01 0xef 0xc0 0x2c 0x6b 0xa6 0xe9 0x36 | ||
258 | -0x7fffffffe3a8: 0x44 0x4b 0xc8 0x37 | ||
259 | -header解析如下: | ||
260 | -(gdb) p *this | ||
261 | -$74 = {_vptr.TSHeader = 0x4080b0, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
262 | - payload_unit_start_indicator = 1 '\001', transport_priority = 0 '\000', pid = 256, | ||
263 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypeBoth, continuity_counter = 8 '\b'} | ||
264 | -(gdb) p ctx->get(pid)[0] | ||
265 | -$76 = {type = TSPidTypeVideo, stream_type = TSStreamTypeVideoH264, pid = 256, continuity_counter = 8 '\b'} | ||
266 | -(gdb) p ctx->get_msg(256)[0] | ||
267 | -$124 = {_vptr.TSMessage = 0x408290, pid = 256, type = TSPidTypeVideo, stream_type = TSStreamTypeVideoH264, | ||
268 | - continuity_counter = 8 '\b', PES_packet_length = 0, stream_id = 224 '\340', packet_start_code_prefix = 1, | ||
269 | - packet_header_size = 13, parsed_packet_size = 144, packet_data_size = 144, packet_data = 0x60b300 ""} | ||
270 | -特殊的是:PES_packet_length为0,也就是未知长度。 | ||
271 | -解析下一个包,header为: | ||
272 | -(gdb) p header[0] | ||
273 | -$123 = {_vptr.TSHeader = 0x408170, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
274 | - payload_unit_start_indicator = 0 '\000', transport_priority = 0 '\000', pid = 256, | ||
275 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
276 | - continuity_counter = 9 '\t'} | ||
277 | -这个包的标识是continuity_counter为上一个包的连续。这个包里面是纯粹的数据: | ||
278 | -(gdb) x /184xb 0x7fffffffe2f4 | ||
279 | -0x7fffffffe2f4: 0x9c 0xfa 0x8c 0xc9 0x02 0x36 0xc2 0x46 | ||
280 | -0x7fffffffe2fc: 0x97 0x01 0x31 0x3d 0xfa 0x83 0xc2 0x88 | ||
281 | -0x7fffffffe304: 0x6b 0xb3 0x1c 0x63 0xcf 0xc6 0xc4 0xa6 | ||
282 | -0x7fffffffe30c: 0xe2 0xa7 0xb3 0x26 0x62 0x7e 0xb4 0xf0 | ||
283 | -0x7fffffffe314: 0x17 0x13 0x4c 0xd5 0x1b 0xee 0x80 0x37 | ||
284 | -0x7fffffffe31c: 0x8f 0x6a 0xad 0x41 0x8f 0x43 0x39 0xbe | ||
285 | -0x7fffffffe324: 0x2f 0x51 0xb4 0x0a 0x54 0x62 0xab 0xdc | ||
286 | -0x7fffffffe32c: 0x11 0x92 0x92 0x85 0x18 0x92 0x29 0xd5 | ||
287 | -0x7fffffffe334: 0xb5 0xbc 0x00 0x9e 0x26 0xc3 0xa4 0x04 | ||
288 | -0x7fffffffe33c: 0xb6 0x97 0x62 0x9b 0x3b 0x3c 0x09 0x6b | ||
289 | -0x7fffffffe344: 0x68 0x15 0xe7 0xcc 0x71 0xd9 0xb5 0x02 | ||
290 | -0x7fffffffe34c: 0x19 0x8a 0x06 0x90 0x22 0xcd 0x3e 0x82 | ||
291 | -0x7fffffffe354: 0xff 0x48 0x73 0x8b 0x00 0xdc 0xe5 0xdb | ||
292 | -0x7fffffffe35c: 0x83 0x13 0x5e 0xe8 0x63 0xe9 0xb6 0xf0 | ||
293 | -0x7fffffffe364: 0xc5 0x21 0x03 0x57 0xfb 0xb2 0xe1 0x9c | ||
294 | -0x7fffffffe36c: 0x71 0x3e 0x36 0xe3 0x05 0xb7 0xf1 0x85 | ||
295 | -0x7fffffffe374: 0x88 0x0e 0x51 0x52 0xd8 0x3c 0x80 0x1a | ||
296 | -0x7fffffffe37c: 0x34 0xff 0xd9 0x5f 0x69 0xb4 0x9d 0xd7 | ||
297 | -0x7fffffffe384: 0xc2 0x21 0xa8 0x85 0xc8 0xa2 0xdd 0xb8 | ||
298 | -0x7fffffffe38c: 0xa3 0x43 0x2f 0x7e 0xc8 0xac 0x1b 0x67 | ||
299 | -0x7fffffffe394: 0x17 0x6c 0x74 0xea 0x97 0xb8 0xa4 0xcf | ||
300 | -0x7fffffffe39c: 0x43 0xf3 0x1c 0xad 0x89 0x91 0x28 0x49 | ||
301 | -0x7fffffffe3a4: 0xf2 0xe8 0x0c 0xbf 0x75 0x8a 0x1c 0xac | ||
302 | -后续还有几个包: | ||
303 | -$136 = {_vptr.TSHeader = 0x408250, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
304 | - payload_unit_start_indicator = 0 '\000', transport_priority = 0 '\000', pid = 256, | ||
305 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
306 | - continuity_counter = 10 '\n'} | ||
307 | -$137 = {_vptr.TSHeader = 0x408250, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
308 | - payload_unit_start_indicator = 0 '\000', transport_priority = 0 '\000', pid = 256, | ||
309 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
310 | - continuity_counter = 11 '\v'} | ||
311 | -$138 = {_vptr.TSHeader = 0x408250, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
312 | - payload_unit_start_indicator = 0 '\000', transport_priority = 0 '\000', pid = 256, | ||
313 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
314 | - continuity_counter = 12 '\f'} | ||
315 | -$141 = {_vptr.TSHeader = 0x408250, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
316 | - payload_unit_start_indicator = 0 '\000', transport_priority = 0 '\000', pid = 256, | ||
317 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
318 | - continuity_counter = 13 '\r'} | ||
319 | -$142 = {_vptr.TSHeader = 0x408250, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
320 | - payload_unit_start_indicator = 0 '\000', transport_priority = 0 '\000', pid = 256, | ||
321 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
322 | - continuity_counter = 14 '\016'} | ||
323 | -$143 = {_vptr.TSHeader = 0x408250, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
324 | - payload_unit_start_indicator = 0 '\000', transport_priority = 0 '\000', pid = 256, | ||
325 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
326 | - continuity_counter = 15 '\017'} | ||
327 | -然后,这个包变了,但是还是继续前面的包,因为是0xF溢出: | ||
328 | -$144 = {_vptr.TSHeader = 0x408250, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
329 | - payload_unit_start_indicator = 0 '\000', transport_priority = 0 '\000', pid = 256, | ||
330 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
331 | - continuity_counter = 0 '\000'} | ||
332 | -$148 = {_vptr.TSHeader = 0x408250, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
333 | - payload_unit_start_indicator = 0 '\000', transport_priority = 0 '\000', pid = 256, | ||
334 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
335 | - continuity_counter = 1 '\001'} | ||
336 | -如此循环,可以循环很多次。一直到这个包: | ||
337 | -$556 = {_vptr.TSHeader = 0x408250, sync_byte = 71 'G', transport_error_indicator = 0 '\000', | ||
338 | - payload_unit_start_indicator = 1 '\001', transport_priority = 0 '\000', pid = 256, | ||
339 | - transport_scrambling_control = 0 '\000', adaption_field_control = TSAdaptionTypePayloadOnly, | ||
340 | - continuity_counter = 4 '\004'} | ||
341 | -其中的:payload_unit_start_indicator为1。 |
trunk/doc/ts-audio-video-dts-pts.txt
已删除
100644 → 0
1 | -ts+aac+h264+data audio pts:168696991 dts:168696991 size: 286 | ||
2 | -ts+aac+h264+data audio pts:168701170 dts:168701170 size: 298 | ||
3 | -ts+aac+h264+data video pts:168704280 dts:168700500 size: 35795 | ||
4 | -ts+aac+h264+data video pts:168702836 dts:168704280 size: 4108 | ||
5 | -ts+aac+h264+data video pts:168691586 dts:168691586 size: 425 | ||
6 | -ts+aac+h264+data video pts:168695366 dts:168695366 size: 466 | ||
7 | -ts+aac+h264+data video pts:168699146 dts:168699146 size: 353 | ||
8 | -ts+aac+h264+data video pts:168734250 dts:168702836 size: 4225 | ||
9 | -ts+aac+h264+data audio pts:168705351 dts:168705351 size: 297 | ||
10 | -ts+aac+h264+data audio pts:168709530 dts:168709530 size: 297 | ||
11 | -ts+aac+h264+data audio pts:168713709 dts:168713709 size: 297 | ||
12 | -ts+aac+h264+data audio pts:168717888 dts:168717888 size: 354 | ||
13 | -ts+aac+h264+data audio pts:168722067 dts:168722067 size: 366 | ||
14 | -ts+aac+h264+data video pts:168723000 dts:168723000 size: 416 | ||
15 | -ts+aac+h264+data video pts:168726780 dts:168726780 size: 486 | ||
16 | -ts+aac+h264+data video pts:168730470 dts:168730470 size: 408 | ||
17 | -ts+aac+h264+data video pts:168732896 dts:168734250 size: 5018 | ||
18 | -ts+aac+h264+data video pts:168738030 dts:168738030 size: 450 | ||
19 | -ts+aac+h264+data video pts:168725336 dts:168725336 size: 466 | ||
20 | -ts+aac+h264+data audio pts:168726248 dts:168726248 size: 304 | ||
21 | -ts+aac+h264+data audio pts:168730427 dts:168730427 size: 282 | ||
22 | -ts+aac+h264+data audio pts:168734606 dts:168734606 size: 298 | ||
23 | -ts+aac+h264+data audio pts:168738785 dts:168738785 size: 320 | ||
24 | -ts+aac+h264+data audio pts:168742964 dts:168742964 size: 293 | ||
25 | -ts+aac+h264+data video pts:168729116 dts:168729116 size: 384 | ||
26 | -ts+aac+h264+data video pts:168764220 dts:168732896 size: 6680 | ||
27 | -ts+aac+h264+data video pts:168736586 dts:168736586 size: 844 | ||
28 | -ts+aac+h264+data video pts:168756750 dts:168756750 size: 773 | ||
29 | -ts+aac+h264+data video pts:168760530 dts:168760530 size: 509 | ||
30 | -ts+aac+h264+data audio pts:168730762 dts:168730762 size: 278 | ||
31 | -ts+aac+h264+data audio pts:168734941 dts:168734941 size: 277 | ||
32 | -ts+aac+h264+data audio pts:168739120 dts:168739120 size: 266 | ||
33 | -ts+aac+h264+data audio pts:168743299 dts:168743299 size: 286 | ||
34 | -ts+aac+h264+data audio pts:168747478 dts:168747478 size: 276 | ||
35 | -ts+aac+h264+data video pts:168762866 dts:168764220 size: 7197 | ||
36 | -ts+aac+h264+data video pts:168768000 dts:168768000 size: 546 | ||
37 | -ts+aac+h264+data video pts:168755396 dts:168755396 size: 574 | ||
38 | -ts+aac+h264+data video pts:168759086 dts:168759086 size: 415 | ||
39 | -ts+aac+h264+data video pts:168794280 dts:168762866 size: 3442 | ||
40 | -ts+aac+h264+data video pts:168766646 dts:168766646 size: 334 | ||
41 | -ts+aac+h264+data audio pts:168768044 dts:168768044 size: 284 | ||
42 | -ts+aac+h264+data audio pts:168772223 dts:168772223 size: 301 | ||
43 | -ts+aac+h264+data audio pts:168776402 dts:168776402 size: 284 | ||
44 | -ts+aac+h264+data audio pts:168780581 dts:168780581 size: 287 | ||
45 | -ts+aac+h264+data audio pts:168784760 dts:168784760 size: 298 | ||
46 | -ts+aac+h264+data video pts:168770336 dts:168770336 size: 353 | ||
47 | -ts+aac+h264+data video pts:168790500 dts:168790500 size: 298 | ||
48 | -ts+aac+h264+data video pts:168792836 dts:168794280 size: 954 | ||
49 | -ts+aac+h264+data video pts:168797970 dts:168797970 size: 303 | ||
50 | -ts+aac+h264+data video pts:168801750 dts:168801750 size: 329 | ||
51 | -ts+aac+h264+data video pts:168789146 dts:168789146 size: 302 | ||
52 | -ts+aac+h264+data audio pts:168788942 dts:168788942 size: 361 | ||
53 | -ts+aac+h264+data audio pts:168793121 dts:168793121 size: 309 | ||
54 | -ts+aac+h264+data audio pts:168797300 dts:168797300 size: 277 | ||
55 | -ts+aac+h264+data audio pts:168801479 dts:168801479 size: 282 | ||
56 | -ts+aac+h264+data audio pts:168805658 dts:168805658 size: 284 | ||
57 | -ts+aac+h264+data video pts:168800396 dts:168792836 size: 746 | ||
58 | -ts+aac+h264+data video pts:168796616 dts:168796616 size: 473 | ||
59 | -ts+aac+h264+data video pts:168804086 dts:168800396 size: 3674 | ||
60 | -ts+aac+h264+data video pts:168824250 dts:168804086 size: 3116 | ||
61 | -ts+aac+h264+data video pts:168828030 dts:168824250 size: 3064 | ||
62 | -ts+aac+h264+data audio pts:168793456 dts:168793456 size: 286 | ||
63 | -ts+aac+h264+data audio pts:168797635 dts:168797635 size: 286 | ||
64 | -ts+aac+h264+data audio pts:168801814 dts:168801814 size: 303 | ||
65 | -ts+aac+h264+data audio pts:168805993 dts:168805993 size: 301 | ||
66 | -ts+aac+h264+data audio pts:168810172 dts:168810172 size: 328 | ||
67 | -ts+aac+h264+data video pts:168831720 dts:168828030 size: 2899 | ||
68 | -ts+aac+h264+data video pts:168835500 dts:168831720 size: 3231 | ||
69 | -ts+aac+h264+data video pts:168822896 dts:168835500 size: 3877 | ||
70 | -ts+aac+h264+data video pts:168826586 dts:168822896 size: 2984 | ||
71 | -ts+aac+h264+data video pts:168830366 dts:168826586 size: 6415 | ||
72 | -ts+aac+h264+data video pts:168834146 dts:168830366 size: 29200 | ||
73 | -ts+aac+h264+data audio pts:168830738 dts:168830738 size: 290 | ||
74 | -ts+aac+h264+data audio pts:168834917 dts:168834917 size: 291 | ||
75 | -ts+aac+h264+data audio pts:168839096 dts:168839096 size: 356 | ||
76 | -ts+aac+h264+data audio pts:168843275 dts:168843275 size: 317 | ||
77 | -ts+aac+h264+data audio pts:168847454 dts:168847454 size: 286 | ||
78 | -ts+aac+h264+data video pts:168854220 dts:168834146 size: 4102 | ||
79 | -ts+aac+h264+data video pts:168858000 dts:168854220 size: 6944 | ||
80 | -ts+aac+h264+data video pts:168861780 dts:168858000 size: 9061 | ||
81 | -ts+aac+h264+data video pts:168865470 dts:168861780 size: 9760 | ||
82 | -ts+aac+h264+data video pts:168869250 dts:168865470 size: 14741 | ||
83 | -ts+aac+h264+data audio pts:168835252 dts:168835252 size: 274 | ||
84 | -ts+aac+h264+data audio pts:168839431 dts:168839431 size: 364 | ||
85 | -ts+aac+h264+data audio pts:168843610 dts:168843610 size: 317 | ||
86 | -ts+aac+h264+data audio pts:168847789 dts:168847789 size: 284 | ||
87 | -ts+aac+h264+data audio pts:168851968 dts:168851968 size: 368 | ||
88 | -ts+aac+h264+data video pts:168860336 dts:168869250 size: 15711 | ||
89 | -ts+aac+h264+data video pts:168856646 dts:168856646 size: 2181 | ||
90 | -ts+aac+h264+data video pts:168891750 dts:168860336 size: 19063 | ||
91 | -ts+aac+h264+data video pts:168864116 dts:168864116 size: 2345 | ||
92 | -ts+aac+h264+data video pts:168867896 dts:168867896 size: 2597 | ||
93 | -ts+aac+h264+data video pts:168887970 dts:168887970 size: 2003 | ||
94 | -ts+aac+h264+data audio pts:168856150 dts:168856150 size: 357 | ||
95 | -ts+aac+h264+data audio pts:168860329 dts:168860329 size: 334 | ||
96 | -ts+aac+h264+data audio pts:168864508 dts:168864508 size: 306 | ||
97 | -ts+aac+h264+data audio pts:168868687 dts:168868687 size: 290 | ||
98 | -ts+aac+h264+data audio pts:168872866 dts:168872866 size: 288 | ||
99 | -ts+aac+h264+data video pts:168890396 dts:168891750 size: 16911 | ||
100 | -ts+aac+h264+data video pts:168895530 dts:168895530 size: 1196 | ||
101 | -ts+aac+h264+data video pts:168899220 dts:168899220 size: 1181 | ||
102 | -ts+aac+h264+data video pts:168886616 dts:168886616 size: 891 | ||
103 | -ts+aac+h264+data video pts:168921720 dts:168890396 size: 15388 | ||
104 | -ts+aac+h264+data audio pts:168893432 dts:168893432 size: 285 | ||
105 | -ts+aac+h264+data audio pts:168897611 dts:168897611 size: 278 | ||
106 | -ts+aac+h264+data audio pts:168901790 dts:168901790 size: 280 | ||
107 | -ts+aac+h264+data audio pts:168905969 dts:168905969 size: 276 | ||
108 | -ts+aac+h264+data audio pts:168910148 dts:168910148 size: 282 | ||
109 | -ts+aac+h264+data video pts:168894086 dts:168894086 size: 982 | ||
110 | -ts+aac+h264+data video pts:168897866 dts:168897866 size: 928 | ||
111 | -ts+aac+h264+data video pts:168901646 dts:168901646 size: 737 | ||
112 | -ts+aac+h264+data video pts:168920366 dts:168921720 size: 14519 | ||
113 | -ts+aac+h264+data video pts:168925500 dts:168925500 size: 900 | ||
114 | -ts+aac+h264+data video pts:168929280 dts:168929280 size: 878 | ||
115 | -ts+aac+h264+data audio pts:168897946 dts:168897946 size: 282 | ||
116 | -ts+aac+h264+data audio pts:168902125 dts:168902125 size: 274 | ||
117 | -ts+aac+h264+data audio pts:168906304 dts:168906304 size: 347 | ||
118 | -ts+aac+h264+data audio pts:168910483 dts:168910483 size: 341 | ||
119 | -ts+aac+h264+data audio pts:168914662 dts:168914662 size: 302 | ||
120 | -ts+aac+h264+data video pts:168932970 dts:168932970 size: 698 | ||
121 | -ts+aac+h264+data video pts:168935396 dts:168920366 size: 11824 | ||
122 | -ts+aac+h264+data video pts:168924146 dts:168924146 size: 837 | ||
123 | -ts+aac+h264+data video pts:168927836 dts:168927836 size: 896 | ||
124 | -ts+aac+h264+data video pts:168931616 dts:168931616 size: 671 | ||
125 | -ts+aac+h264+data video pts:168966720 dts:168935396 size: 8523 | ||
126 | -ts+aac+h264+data audio pts:168935228 dts:168935228 size: 285 | ||
127 | -ts+aac+h264+data audio pts:168939407 dts:168939407 size: 290 | ||
128 | -ts+aac+h264+data audio pts:168943586 dts:168943586 size: 301 | ||
129 | -ts+aac+h264+data audio pts:168947765 dts:168947765 size: 257 | ||
130 | -ts+aac+h264+data audio pts:168951944 dts:168951944 size: 265 | ||
131 | -ts+aac+h264+data video pts:168955470 dts:168955470 size: 773 | ||
132 | -ts+aac+h264+data video pts:168959250 dts:168959250 size: 755 | ||
133 | -ts+aac+h264+data video pts:168963030 dts:168963030 size: 643 | ||
134 | -ts+aac+h264+data video pts:168961586 dts:168966720 size: 4648 | ||
135 | -ts+aac+h264+data video pts:168954116 dts:168954116 size: 626 | ||
136 | -ts+aac+h264+data audio pts:168956126 dts:168956126 size: 279 | ||
137 | -ts+aac+h264+data audio pts:168960305 dts:168960305 size: 279 | ||
138 | -ts+aac+h264+data audio pts:168964484 dts:168964484 size: 280 | ||
139 | -ts+aac+h264+data audio pts:168968663 dts:168968663 size: 269 | ||
140 | -ts+aac+h264+data audio pts:168972842 dts:168972842 size: 319 | ||
141 | -ts+aac+h264+data video pts:168957896 dts:168957896 size: 536 | ||
142 | -ts+aac+h264+data video pts:168965366 dts:168961586 size: 3771 | ||
143 | -ts+aac+h264+data video pts:168985530 dts:168965366 size: 4494 | ||
144 | -ts+aac+h264+data video pts:168989220 dts:168985530 size: 5560 | ||
145 | -ts+aac+h264+data video pts:168993000 dts:168989220 size: 6541 | ||
146 | -ts+aac+h264+data video pts:168996780 dts:168993000 size: 7636 | ||
147 | -ts+aac+h264+data audio pts:168960640 dts:168960640 size: 287 | ||
148 | -ts+aac+h264+data audio pts:168964819 dts:168964819 size: 279 | ||
149 | -ts+aac+h264+data audio pts:168968998 dts:168968998 size: 272 | ||
150 | -ts+aac+h264+data audio pts:168973177 dts:168973177 size: 314 | ||
151 | -ts+aac+h264+data audio pts:168977356 dts:168977356 size: 318 | ||
152 | -ts+aac+h264+data video pts:169000470 dts:168996780 size: 6685 | ||
153 | -ts+aac+h264+data video pts:168987866 dts:169000470 size: 6791 | ||
154 | -ts+aac+h264+data video pts:168991646 dts:168987866 size: 11730 | ||
155 | -ts+aac+h264+data video pts:168995336 dts:168991646 size: 14252 | ||
156 | -ts+aac+h264+data video pts:169022970 dts:168995336 size: 9386 | ||
157 | -ts+aac+h264+data audio pts:168997922 dts:168997922 size: 269 | ||
158 | -ts+aac+h264+data audio pts:169002101 dts:169002101 size: 365 | ||
159 | -ts+aac+h264+data audio pts:169006280 dts:169006280 size: 360 | ||
160 | -ts+aac+h264+data audio pts:169010459 dts:169010459 size: 339 | ||
161 | -ts+aac+h264+data audio pts:169014638 dts:169014638 size: 308 | ||
162 | -ts+aac+h264+data video pts:168999116 dts:168999116 size: 809 | ||
163 | -ts+aac+h264+data video pts:169019280 dts:169019280 size: 631 | ||
164 | -ts+aac+h264+data video pts:169030530 dts:169022970 size: 7316 | ||
165 | -ts+aac+h264+data video pts:169026750 dts:169026750 size: 594 | ||
166 | -ts+aac+h264+data video pts:169021616 dts:169030530 size: 6070 | ||
167 | -ts+aac+h264+data video pts:169017836 dts:169017836 size: 674 | ||
168 | -ts+aac+h264+data audio pts:169018820 dts:169018820 size: 295 | ||
169 | -ts+aac+h264+data audio pts:169022999 dts:169022999 size: 330 | ||
170 | -ts+aac+h264+data audio pts:169027178 dts:169027178 size: 291 | ||
171 | -ts+aac+h264+data audio pts:169031357 dts:169031357 size: 271 | ||
172 | -ts+aac+h264+data audio pts:169035536 dts:169035536 size: 281 | ||
173 | -ts+aac+h264+data video pts:169029086 dts:169021616 size: 5808 | ||
174 | -ts+aac+h264+data video pts:169025396 dts:169025396 size: 958 | ||
175 | -ts+aac+h264+data video pts:169032866 dts:169029086 size: 5959 | ||
176 | -ts+aac+h264+data video pts:169053030 dts:169032866 size: 5991 | ||
177 | -ts+aac+h264+data video pts:169056720 dts:169053030 size: 10941 | ||
178 | -ts+aac+h264+data audio pts:169023334 dts:169023334 size: 270 | ||
179 | -ts+aac+h264+data audio pts:169027513 dts:169027513 size: 277 | ||
180 | -ts+aac+h264+data audio pts:169031692 dts:169031692 size: 264 | ||
181 | -ts+aac+h264+data audio pts:169035871 dts:169035871 size: 279 | ||
182 | -ts+aac+h264+data audio pts:169040050 dts:169040050 size: 381 | ||
183 | -ts+aac+h264+data video pts:169064280 dts:169056720 size: 7867 | ||
184 | -ts+aac+h264+data video pts:169060500 dts:169060500 size: 4550 | ||
185 | -ts+aac+h264+data video pts:169051586 dts:169064280 size: 10501 | ||
186 | -ts+aac+h264+data video pts:169055366 dts:169051586 size: 10772 | ||
187 | -ts+aac+h264+data video pts:169059146 dts:169055366 size: 12594 | ||
188 | -ts+aac+h264+data video pts:169083000 dts:169059146 size: 12274 | ||
189 | -ts+aac+h264+data audio pts:169060616 dts:169060616 size: 362 | ||
190 | -ts+aac+h264+data audio pts:169064795 dts:169064795 size: 305 | ||
191 | -ts+aac+h264+data audio pts:169068974 dts:169068974 size: 283 | ||
192 | -ts+aac+h264+data audio pts:169073153 dts:169073153 size: 285 | ||
193 | -ts+aac+h264+data audio pts:169077332 dts:169077332 size: 316 | ||
194 | -ts+aac+h264+data video pts:169062836 dts:169062836 size: 2145 | ||
195 | -ts+aac+h264+data video pts:169098030 dts:169083000 size: 10764 | ||
196 | -ts+aac+h264+data video pts:169086780 dts:169086780 size: 952 | ||
197 | -ts+aac+h264+data video pts:169090470 dts:169090470 size: 977 | ||
198 | -ts+aac+h264+data video pts:169094250 dts:169094250 size: 830 | ||
199 | -ts+aac+h264+data video pts:169096586 dts:169098030 size: 2899 | ||
200 | -ts+aac+h264+data audio pts:169065130 dts:169065130 size: 288 | ||
201 | -ts+aac+h264+data audio pts:169069309 dts:169069309 size: 313 | ||
202 | -ts+aac+h264+data audio pts:169073488 dts:169073488 size: 299 | ||
203 | -ts+aac+h264+data audio pts:169077667 dts:169077667 size: 272 | ||
204 | -ts+aac+h264+data audio pts:169081846 dts:169081846 size: 285 | ||
205 | -ts+aac+h264+data video pts:169085336 dts:169085336 size: 388 | ||
206 | -ts+aac+h264+data video pts:169089116 dts:169089116 size: 291 | ||
207 | -ts+aac+h264+data video pts:169092896 dts:169092896 size: 275 | ||
208 | -ts+aac+h264+data video pts:169124220 dts:169096586 size: 676 | ||
209 | -ts+aac+h264+data video pts:169116750 dts:169116750 size: 249 | ||
210 | -ts+aac+h264+data audio pts:169086028 dts:169086028 size: 287 | ||
211 | -ts+aac+h264+data audio pts:169090207 dts:169090207 size: 276 | ||
212 | -ts+aac+h264+data audio pts:169094386 dts:169094386 size: 272 | ||
213 | -ts+aac+h264+data audio pts:169098565 dts:169098565 size: 285 | ||
214 | -ts+aac+h264+data audio pts:169102744 dts:169102744 size: 280 | ||
215 | -ts+aac+h264+data video pts:169120530 dts:169120530 size: 217 | ||
216 | -ts+aac+h264+data video pts:169128000 dts:169124220 size: 75644 | ||
217 | -ts+aac+h264+data video pts:169126646 dts:169128000 size: 2805 | ||
218 | -ts+aac+h264+data video pts:169131780 dts:169131780 size: 229 | ||
219 | -ts+aac+h264+data video pts:169119086 dts:169119086 size: 199 | ||
220 | -ts+aac+h264+data video pts:169122866 dts:169122866 size: 197 | ||
221 | -ts+aac+h264+data audio pts:169123310 dts:169123310 size: 322 | ||
222 | -ts+aac+h264+data audio pts:169127489 dts:169127489 size: 384 | ||
223 | -ts+aac+h264+data audio pts:169131668 dts:169131668 size: 368 | ||
224 | -ts+aac+h264+data audio pts:169135847 dts:169135847 size: 301 | ||
225 | -ts+aac+h264+data audio pts:169140026 dts:169140026 size: 308 | ||
226 | -ts+aac+h264+data video pts:169157970 dts:169126646 size: 4670 | ||
227 | -ts+aac+h264+data video pts:169130336 dts:169130336 size: 501 | ||
228 | -ts+aac+h264+data video pts:169150500 dts:169150500 size: 672 | ||
229 | -ts+aac+h264+data video pts:169154280 dts:169154280 size: 422 | ||
230 | -ts+aac+h264+data video pts:169156616 dts:169157970 size: 6008 | ||
231 | -ts+aac+h264+data audio pts:169127824 dts:169127824 size: 309 | ||
232 | -ts+aac+h264+data audio pts:169132003 dts:169132003 size: 325 | ||
233 | -ts+aac+h264+data audio pts:169136182 dts:169136182 size: 300 | ||
234 | -ts+aac+h264+data audio pts:169140361 dts:169140361 size: 266 | ||
235 | -ts+aac+h264+data audio pts:169144540 dts:169144540 size: 270 | ||
236 | -ts+aac+h264+data video pts:169161750 dts:169161750 size: 682 | ||
237 | -ts+aac+h264+data video pts:169149146 dts:169149146 size: 712 | ||
238 | -ts+aac+h264+data video pts:169152836 dts:169152836 size: 638 | ||
239 | -ts+aac+h264+data video pts:169188030 dts:169156616 size: 11908 | ||
240 | -ts+aac+h264+data video pts:169160396 dts:169160396 size: 1508 | ||
241 | -ts+aac+h264+data video pts:169164086 dts:169164086 size: 1455 | ||
242 | -ts+aac+h264+data audio pts:169148722 dts:169148722 size: 270 | ||
243 | -ts+aac+h264+data audio pts:169152901 dts:169152901 size: 268 | ||
244 | -ts+aac+h264+data audio pts:169157080 dts:169157080 size: 282 | ||
245 | -ts+aac+h264+data audio pts:169161259 dts:169161259 size: 296 | ||
246 | -ts+aac+h264+data audio pts:169165438 dts:169165438 size: 267 | ||
247 | -ts+aac+h264+data video pts:169184250 dts:169184250 size: 1169 | ||
248 | -ts+aac+h264+data video pts:169186586 dts:169188030 size: 11158 | ||
249 | -ts+aac+h264+data video pts:169191720 dts:169191720 size: 685 | ||
250 | -ts+aac+h264+data video pts:169195500 dts:169195500 size: 652 | ||
251 | -ts+aac+h264+data video pts:169182896 dts:169182896 size: 558 | ||
252 | -ts+aac+h264+data audio pts:169186004 dts:169186004 size: 278 | ||
253 | -ts+aac+h264+data audio pts:169190183 dts:169190183 size: 282 | ||
254 | -ts+aac+h264+data audio pts:169194362 dts:169194362 size: 353 | ||
255 | -ts+aac+h264+data audio pts:169198541 dts:169198541 size: 346 | ||
256 | -ts+aac+h264+data audio pts:169202720 dts:169202720 size: 276 | ||
257 | -ts+aac+h264+data video pts:169218000 dts:169186586 size: 2086 | ||
258 | -ts+aac+h264+data video pts:169190366 dts:169190366 size: 420 | ||
259 | -ts+aac+h264+data video pts:169194146 dts:169194146 size: 465 | ||
260 | -ts+aac+h264+data video pts:169214220 dts:169214220 size: 407 | ||
261 | -ts+aac+h264+data video pts:169229250 dts:169218000 size: 284 | ||
262 | -ts+aac+h264+data video pts:169221780 dts:169221780 size: 288 | ||
263 | -ts+aac+h264+data audio pts:169190518 dts:169190518 size: 275 | ||
264 | -ts+aac+h264+data audio pts:169194697 dts:169194697 size: 293 | ||
265 | -ts+aac+h264+data audio pts:169198876 dts:169198876 size: 261 | ||
266 | -ts+aac+h264+data audio pts:169203055 dts:169203055 size: 295 | ||
267 | -ts+aac+h264+data audio pts:169207234 dts:169207234 size: 279 | ||
268 | -ts+aac+h264+data video pts:169225470 dts:169225470 size: 234 | ||
269 | -ts+aac+h264+data video pts:169216646 dts:169229250 size: 59016 | ||
270 | -ts+aac+h264+data video pts:169224116 dts:169216646 size: 4100 | ||
271 | -ts+aac+h264+data video pts:169220336 dts:169220336 size: 1047 | ||
272 | -ts+aac+h264+data video pts:169247970 dts:169224116 size: 10317 | ||
273 | -ts+aac+h264+data video pts:169227896 dts:169227896 size: 2748 | ||
274 | -ts+aac+h264+data audio pts:169227800 dts:169227800 size: 280 | ||
275 | -ts+aac+h264+data audio pts:169231979 dts:169231979 size: 278 | ||
276 | -ts+aac+h264+data audio pts:169236158 dts:169236158 size: 361 | ||
277 | -ts+aac+h264+data audio pts:169240337 dts:169240337 size: 354 | ||
278 | -ts+aac+h264+data audio pts:169244516 dts:169244516 size: 344 | ||
279 | -ts+aac+h264+data video pts:169251750 dts:169247970 size: 11029 | ||
280 | -ts+aac+h264+data video pts:169250396 dts:169251750 size: 4083 | ||
281 | -ts+aac+h264+data video pts:169255530 dts:169255530 size: 1481 | ||
282 | -ts+aac+h264+data video pts:169259220 dts:169259220 size: 642 | ||
283 | -ts+aac+h264+data video pts:169263000 dts:169263000 size: 499 | ||
284 | -ts+aac+h264+data audio pts:169248697 dts:169248697 size: 321 | ||
285 | -ts+aac+h264+data audio pts:169252876 dts:169252876 size: 301 | ||
286 | -ts+aac+h264+data audio pts:169257055 dts:169257055 size: 277 | ||
287 | -ts+aac+h264+data audio pts:169261234 dts:169261234 size: 318 | ||
288 | -ts+aac+h264+data audio pts:169265413 dts:169265413 size: 261 | ||
289 | -ts+aac+h264+data video pts:169281720 dts:169250396 size: 1760 | ||
290 | -ts+aac+h264+data video pts:169254086 dts:169254086 size: 499 | ||
291 | -ts+aac+h264+data video pts:169257866 dts:169257866 size: 510 | ||
292 | -ts+aac+h264+data video pts:169261646 dts:169261646 size: 425 | ||
293 | -ts+aac+h264+data video pts:169285500 dts:169281720 size: 2071 | ||
294 | -ts+aac+h264+data video pts:169292970 dts:169285500 size: 4220 | ||
295 | -ts+aac+h264+data audio pts:169253211 dts:169253211 size: 268 | ||
296 | -ts+aac+h264+data audio pts:169257390 dts:169257390 size: 289 | ||
297 | -ts+aac+h264+data audio pts:169261569 dts:169261569 size: 267 | ||
298 | -ts+aac+h264+data audio pts:169265748 dts:169265748 size: 269 | ||
299 | -ts+aac+h264+data audio pts:169269927 dts:169269927 size: 280 | ||
300 | -ts+aac+h264+data video pts:169289280 dts:169289280 size: 2596 | ||
301 | -ts+aac+h264+data video pts:169280366 dts:169292970 size: 13800 | ||
302 | -ts+aac+h264+data video pts:169284146 dts:169280366 size: 8452 | ||
303 | -ts+aac+h264+data video pts:169291616 dts:169284146 size: 11802 | ||
304 | -ts+aac+h264+data video pts:169287836 dts:169287836 size: 3014 | ||
305 | -ts+aac+h264+data audio pts:169290493 dts:169290493 size: 263 | ||
306 | -ts+aac+h264+data audio pts:169294672 dts:169294672 size: 310 | ||
307 | -ts+aac+h264+data audio pts:169298851 dts:169298851 size: 313 | ||
308 | -ts+aac+h264+data audio pts:169303030 dts:169303030 size: 331 | ||
309 | -ts+aac+h264+data audio pts:169307209 dts:169307209 size: 280 | ||
310 | -ts+aac+h264+data video pts:169295396 dts:169291616 size: 10497 | ||
311 | -ts+aac+h264+data video pts:169323030 dts:169295396 size: 10094 | ||
312 | -ts+aac+h264+data video pts:169315470 dts:169315470 size: 1955 | ||
313 | -ts+aac+h264+data video pts:169319250 dts:169319250 size: 931 | ||
314 | -ts+aac+h264+data video pts:169321586 dts:169323030 size: 2733 | ||
315 | -ts+aac+h264+data video pts:169326720 dts:169326720 size: 570 | ||
316 | -ts+aac+h264+data audio pts:169295007 dts:169295007 size: 330 | ||
317 | -ts+aac+h264+data audio pts:169299186 dts:169299186 size: 299 | ||
318 | -ts+aac+h264+data audio pts:169303365 dts:169303365 size: 289 | ||
319 | -ts+aac+h264+data audio pts:169307544 dts:169307544 size: 296 | ||
320 | -ts+aac+h264+data audio pts:169311723 dts:169311723 size: 287 | ||
321 | -ts+aac+h264+data video pts:169314116 dts:169314116 size: 590 | ||
322 | -ts+aac+h264+data video pts:169317896 dts:169317896 size: 418 | ||
323 | -ts+aac+h264+data video pts:169349220 dts:169321586 size: 838 | ||
324 | -ts+aac+h264+data video pts:169325366 dts:169325366 size: 341 | ||
325 | -ts+aac+h264+data video pts:169345530 dts:169345530 size: 402 | ||
326 | -ts+aac+h264+data audio pts:169315905 dts:169315905 size: 286 | ||
327 | -ts+aac+h264+data audio pts:169320084 dts:169320084 size: 278 | ||
328 | -ts+aac+h264+data audio pts:169324263 dts:169324263 size: 269 | ||
329 | -ts+aac+h264+data audio pts:169328442 dts:169328442 size: 271 | ||
330 | -ts+aac+h264+data audio pts:169332621 dts:169332621 size: 276 |
trunk/doc/ts-audio-video-ffmpeg.txt
已删除
100644 → 0
1 | -[mpegts @ 0x22b5040] max_analyze_duration 5000000 reached at 5014800 microseconds | ||
2 | -Input #0, mpegts, from 'livestream-1347.ts': | ||
3 | - Duration: 00:00:07.25, start: 1874.411011, bitrate: 994 kb/s | ||
4 | - Program 1 | ||
5 | - Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1280x720 [SAR 45:34 DAR 40:17], 24 fps, 24 tbr, 90k tbn, 48 tbc | ||
6 | - Stream #0:1[0x101]: Audio: aac ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp, 46 kb/s | ||
7 | - Stream #0: timebase={num=1, den=90000} type=video | ||
8 | - Stream #1: timebase={num=1, den=90000} type=audio | ||
9 | -demuxer -> stream audio packet pts=168696991, dts=168696991, size=286, diff=168696991, index=1 dts_time=1874.41 | ||
10 | -demuxer -> stream audio packet pts=168701170, dts=168701170, size=298, diff=4179, index=1 dts_time=1874.46 | ||
11 | -demuxer -> stream video packet pts=168704280, dts=168700500, size=35795, diff=168700500, index=0 dts_time=1874.45 | ||
12 | -demuxer -> stream video packet pts=168719220, dts=168704280, size=4108, diff=3780, index=0 dts_time=1874.49 | ||
13 | -demuxer -> stream video packet pts=168707970, dts=168707970, size=425, diff=3690, index=0 dts_time=1874.53 | ||
14 | -demuxer -> stream video packet pts=168711750, dts=168711750, size=466, diff=3780, index=0 dts_time=1874.58 | ||
15 | -demuxer -> stream video packet pts=168715530, dts=168715530, size=353, diff=3780, index=0 dts_time=1874.62 | ||
16 | -demuxer -> stream audio packet pts=168705351, dts=168705351, size=297, diff=4181, index=1 dts_time=1874.5 | ||
17 | -demuxer -> stream audio packet pts=168709530, dts=168709530, size=297, diff=4179, index=1 dts_time=1874.55 | ||
18 | -demuxer -> stream audio packet pts=168713709, dts=168713709, size=297, diff=4179, index=1 dts_time=1874.6 | ||
19 | -demuxer -> stream audio packet pts=168717888, dts=168717888, size=354, diff=4179, index=1 dts_time=1874.64 | ||
20 | -demuxer -> stream audio packet pts=168722067, dts=168722067, size=366, diff=4179, index=1 dts_time=1874.69 | ||
21 | -demuxer -> stream video packet pts=168734250, dts=168719220, size=4225, diff=3690, index=0 dts_time=1874.66 | ||
22 | -demuxer -> stream video packet pts=168723000, dts=168723000, size=416, diff=3780, index=0 dts_time=1874.7 | ||
23 | -demuxer -> stream video packet pts=168726780, dts=168726780, size=486, diff=3780, index=0 dts_time=1874.74 | ||
24 | -demuxer -> stream video packet pts=168730470, dts=168730470, size=408, diff=3690, index=0 dts_time=1874.78 | ||
25 | -demuxer -> stream video packet pts=168749280, dts=168734250, size=5018, diff=3780, index=0 dts_time=1874.83 | ||
26 | -demuxer -> stream video packet pts=168738030, dts=168738030, size=450, diff=3780, index=0 dts_time=1874.87 | ||
27 | -demuxer -> stream audio packet pts=168726248, dts=168726248, size=304, diff=4181, index=1 dts_time=1874.74 | ||
28 | -demuxer -> stream audio packet pts=168730427, dts=168730427, size=282, diff=4179, index=1 dts_time=1874.78 | ||
29 | -demuxer -> stream audio packet pts=168734606, dts=168734606, size=298, diff=4179, index=1 dts_time=1874.83 | ||
30 | -demuxer -> stream audio packet pts=168738785, dts=168738785, size=320, diff=4179, index=1 dts_time=1874.88 | ||
31 | -demuxer -> stream audio packet pts=168742964, dts=168742964, size=293, diff=4179, index=1 dts_time=1874.92 | ||
32 | -demuxer -> stream video packet pts=168741720, dts=168741720, size=466, diff=3690, index=0 dts_time=1874.91 | ||
33 | -demuxer -> stream video packet pts=168745500, dts=168745500, size=384, diff=3780, index=0 dts_time=1874.95 | ||
34 | -demuxer -> stream video packet pts=168764220, dts=168749280, size=6680, diff=3780, index=0 dts_time=1874.99 | ||
35 | -demuxer -> stream video packet pts=168752970, dts=168752970, size=844, diff=3690, index=0 dts_time=1875.03 | ||
36 | -demuxer -> stream video packet pts=168756750, dts=168756750, size=773, diff=3780, index=0 dts_time=1875.08 | ||
37 | -demuxer -> stream audio packet pts=168747146, dts=168747146, size=278, diff=4182, index=1 dts_time=1874.97 | ||
38 | -demuxer -> stream audio packet pts=168751325, dts=168751325, size=277, diff=4179, index=1 dts_time=1875.01 | ||
39 | -demuxer -> stream audio packet pts=168755504, dts=168755504, size=266, diff=4179, index=1 dts_time=1875.06 | ||
40 | -demuxer -> stream audio packet pts=168759683, dts=168759683, size=286, diff=4179, index=1 dts_time=1875.11 | ||
41 | -demuxer -> stream audio packet pts=168763862, dts=168763862, size=276, diff=4179, index=1 dts_time=1875.15 | ||
42 | -demuxer -> stream video packet pts=168760530, dts=168760530, size=509, diff=3780, index=0 dts_time=1875.12 | ||
43 | -demuxer -> stream video packet pts=168779250, dts=168764220, size=7197, diff=3690, index=0 dts_time=1875.16 | ||
44 | -demuxer -> stream video packet pts=168768000, dts=168768000, size=546, diff=3780, index=0 dts_time=1875.2 | ||
45 | -demuxer -> stream video packet pts=168771780, dts=168771780, size=574, diff=3780, index=0 dts_time=1875.24 | ||
46 | -demuxer -> stream video packet pts=168775470, dts=168775470, size=415, diff=3690, index=0 dts_time=1875.28 | ||
47 | -demuxer -> stream video packet pts=168794280, dts=168779250, size=3442, diff=3780, index=0 dts_time=1875.33 | ||
48 | -demuxer -> stream audio packet pts=168768044, dts=168768044, size=284, diff=4182, index=1 dts_time=1875.2 | ||
49 | -demuxer -> stream audio packet pts=168772223, dts=168772223, size=301, diff=4179, index=1 dts_time=1875.25 | ||
50 | -demuxer -> stream audio packet pts=168776402, dts=168776402, size=284, diff=4179, index=1 dts_time=1875.29 | ||
51 | -demuxer -> stream audio packet pts=168780581, dts=168780581, size=287, diff=4179, index=1 dts_time=1875.34 | ||
52 | -demuxer -> stream audio packet pts=168784760, dts=168784760, size=298, diff=4179, index=1 dts_time=1875.39 | ||
53 | -demuxer -> stream video packet pts=168783030, dts=168783030, size=334, diff=3780, index=0 dts_time=1875.37 | ||
54 | -demuxer -> stream video packet pts=168786720, dts=168786720, size=353, diff=3690, index=0 dts_time=1875.41 | ||
55 | -demuxer -> stream video packet pts=168790500, dts=168790500, size=298, diff=3780, index=0 dts_time=1875.45 | ||
56 | -demuxer -> stream video packet pts=168809220, dts=168794280, size=954, diff=3780, index=0 dts_time=1875.49 | ||
57 | -demuxer -> stream video packet pts=168797970, dts=168797970, size=303, diff=3690, index=0 dts_time=1875.53 | ||
58 | -demuxer -> stream video packet pts=168801750, dts=168801750, size=329, diff=3780, index=0 dts_time=1875.58 | ||
59 | -demuxer -> stream audio packet pts=168788942, dts=168788942, size=361, diff=4182, index=1 dts_time=1875.43 | ||
60 | -demuxer -> stream audio packet pts=168793121, dts=168793121, size=309, diff=4179, index=1 dts_time=1875.48 | ||
61 | -demuxer -> stream audio packet pts=168797300, dts=168797300, size=277, diff=4179, index=1 dts_time=1875.53 | ||
62 | -demuxer -> stream audio packet pts=168801479, dts=168801479, size=282, diff=4179, index=1 dts_time=1875.57 | ||
63 | -demuxer -> stream audio packet pts=168805658, dts=168805658, size=284, diff=4179, index=1 dts_time=1875.62 | ||
64 | -demuxer -> stream video packet pts=168805530, dts=168805530, size=302, diff=3780, index=0 dts_time=1875.62 | ||
65 | -demuxer -> stream video packet pts=168816780, dts=168809220, size=746, diff=3690, index=0 dts_time=1875.66 | ||
66 | -demuxer -> stream video packet pts=168813000, dts=168813000, size=473, diff=3780, index=0 dts_time=1875.7 | ||
67 | -demuxer -> stream video packet pts=168820470, dts=168816780, size=3674, diff=3780, index=0 dts_time=1875.74 | ||
68 | -demuxer -> stream video packet pts=168824250, dts=168820470, size=3116, diff=3690, index=0 dts_time=1875.78 | ||
69 | -demuxer -> stream audio packet pts=168809840, dts=168809840, size=286, diff=4182, index=1 dts_time=1875.66 | ||
70 | -demuxer -> stream audio packet pts=168814019, dts=168814019, size=286, diff=4179, index=1 dts_time=1875.71 | ||
71 | -demuxer -> stream audio packet pts=168818198, dts=168818198, size=303, diff=4179, index=1 dts_time=1875.76 | ||
72 | -demuxer -> stream audio packet pts=168822377, dts=168822377, size=301, diff=4179, index=1 dts_time=1875.8 | ||
73 | -demuxer -> stream audio packet pts=168826556, dts=168826556, size=328, diff=4179, index=1 dts_time=1875.85 | ||
74 | -demuxer -> stream video packet pts=168828030, dts=168824250, size=3064, diff=3780, index=0 dts_time=1875.83 | ||
75 | -demuxer -> stream video packet pts=168831720, dts=168828030, size=2899, diff=3780, index=0 dts_time=1875.87 | ||
76 | -demuxer -> stream video packet pts=168835500, dts=168831720, size=3231, diff=3690, index=0 dts_time=1875.91 | ||
77 | -demuxer -> stream video packet pts=168839280, dts=168835500, size=3877, diff=3780, index=0 dts_time=1875.95 | ||
78 | -demuxer -> stream video packet pts=168842970, dts=168839280, size=2984, diff=3780, index=0 dts_time=1875.99 | ||
79 | -demuxer -> stream video packet pts=168846750, dts=168842970, size=6415, diff=3690, index=0 dts_time=1876.03 | ||
80 | -demuxer -> stream audio packet pts=168830738, dts=168830738, size=290, diff=4182, index=1 dts_time=1875.9 | ||
81 | -demuxer -> stream audio packet pts=168834917, dts=168834917, size=291, diff=4179, index=1 dts_time=1875.94 | ||
82 | -demuxer -> stream audio packet pts=168839096, dts=168839096, size=356, diff=4179, index=1 dts_time=1875.99 | ||
83 | -demuxer -> stream audio packet pts=168843275, dts=168843275, size=317, diff=4179, index=1 dts_time=1876.04 | ||
84 | -demuxer -> stream audio packet pts=168847454, dts=168847454, size=286, diff=4179, index=1 dts_time=1876.08 | ||
85 | -demuxer -> stream video packet pts=168850530, dts=168846750, size=29200, diff=3780, index=0 dts_time=1876.08 | ||
86 | -demuxer -> stream video packet pts=168854220, dts=168850530, size=4102, diff=3780, index=0 dts_time=1876.12 | ||
87 | -demuxer -> stream video packet pts=168858000, dts=168854220, size=6944, diff=3690, index=0 dts_time=1876.16 | ||
88 | -demuxer -> stream video packet pts=168861780, dts=168858000, size=9061, diff=3780, index=0 dts_time=1876.2 | ||
89 | -demuxer -> stream video packet pts=168865470, dts=168861780, size=9760, diff=3780, index=0 dts_time=1876.24 | ||
90 | -demuxer -> stream audio packet pts=168851636, dts=168851636, size=274, diff=4182, index=1 dts_time=1876.13 | ||
91 | -demuxer -> stream audio packet pts=168855815, dts=168855815, size=364, diff=4179, index=1 dts_time=1876.18 | ||
92 | -demuxer -> stream audio packet pts=168859994, dts=168859994, size=317, diff=4179, index=1 dts_time=1876.22 | ||
93 | -demuxer -> stream audio packet pts=168864173, dts=168864173, size=284, diff=4179, index=1 dts_time=1876.27 | ||
94 | -demuxer -> stream audio packet pts=168868352, dts=168868352, size=368, diff=4179, index=1 dts_time=1876.32 | ||
95 | -demuxer -> stream video packet pts=168869250, dts=168865470, size=14741, diff=3690, index=0 dts_time=1876.28 | ||
96 | -demuxer -> stream video packet pts=168876720, dts=168869250, size=15711, diff=3780, index=0 dts_time=1876.33 | ||
97 | -demuxer -> stream video packet pts=168873030, dts=168873030, size=2181, diff=3780, index=0 dts_time=1876.37 | ||
98 | -demuxer -> stream video packet pts=168891750, dts=168876720, size=19063, diff=3690, index=0 dts_time=1876.41 | ||
99 | -demuxer -> stream video packet pts=168880500, dts=168880500, size=2345, diff=3780, index=0 dts_time=1876.45 | ||
100 | -demuxer -> stream video packet pts=168884280, dts=168884280, size=2597, diff=3780, index=0 dts_time=1876.49 | ||
101 | -demuxer -> stream audio packet pts=168872534, dts=168872534, size=357, diff=4182, index=1 dts_time=1876.36 | ||
102 | -demuxer -> stream audio packet pts=168876713, dts=168876713, size=334, diff=4179, index=1 dts_time=1876.41 | ||
103 | -demuxer -> stream audio packet pts=168880892, dts=168880892, size=306, diff=4179, index=1 dts_time=1876.45 | ||
104 | -demuxer -> stream audio packet pts=168885071, dts=168885071, size=290, diff=4179, index=1 dts_time=1876.5 | ||
105 | -demuxer -> stream audio packet pts=168889250, dts=168889250, size=288, diff=4179, index=1 dts_time=1876.55 | ||
106 | -demuxer -> stream video packet pts=168887970, dts=168887970, size=2003, diff=3690, index=0 dts_time=1876.53 | ||
107 | -demuxer -> stream video packet pts=168906780, dts=168891750, size=16911, diff=3780, index=0 dts_time=1876.58 | ||
108 | -demuxer -> stream video packet pts=168895530, dts=168895530, size=1196, diff=3780, index=0 dts_time=1876.62 | ||
109 | -demuxer -> stream video packet pts=168899220, dts=168899220, size=1181, diff=3690, index=0 dts_time=1876.66 | ||
110 | -demuxer -> stream video packet pts=168903000, dts=168903000, size=891, diff=3780, index=0 dts_time=1876.7 | ||
111 | -demuxer -> stream audio packet pts=168893432, dts=168893432, size=285, diff=4182, index=1 dts_time=1876.59 | ||
112 | -demuxer -> stream audio packet pts=168897611, dts=168897611, size=278, diff=4179, index=1 dts_time=1876.64 | ||
113 | -demuxer -> stream audio packet pts=168901790, dts=168901790, size=280, diff=4179, index=1 dts_time=1876.69 | ||
114 | -demuxer -> stream audio packet pts=168905969, dts=168905969, size=276, diff=4179, index=1 dts_time=1876.73 | ||
115 | -demuxer -> stream audio packet pts=168910148, dts=168910148, size=282, diff=4179, index=1 dts_time=1876.78 | ||
116 | -demuxer -> stream video packet pts=168921720, dts=168906780, size=15388, diff=3780, index=0 dts_time=1876.74 | ||
117 | -demuxer -> stream video packet pts=168910470, dts=168910470, size=982, diff=3690, index=0 dts_time=1876.78 | ||
118 | -demuxer -> stream video packet pts=168914250, dts=168914250, size=928, diff=3780, index=0 dts_time=1876.83 | ||
119 | -demuxer -> stream video packet pts=168918030, dts=168918030, size=737, diff=3780, index=0 dts_time=1876.87 | ||
120 | -demuxer -> stream video packet pts=168936750, dts=168921720, size=14519, diff=3690, index=0 dts_time=1876.91 | ||
121 | -demuxer -> stream video packet pts=168925500, dts=168925500, size=900, diff=3780, index=0 dts_time=1876.95 | ||
122 | -demuxer -> stream audio packet pts=168914330, dts=168914330, size=282, diff=4182, index=1 dts_time=1876.83 | ||
123 | -demuxer -> stream audio packet pts=168918509, dts=168918509, size=274, diff=4179, index=1 dts_time=1876.87 | ||
124 | -demuxer -> stream audio packet pts=168922688, dts=168922688, size=347, diff=4179, index=1 dts_time=1876.92 | ||
125 | -demuxer -> stream audio packet pts=168926867, dts=168926867, size=341, diff=4179, index=1 dts_time=1876.97 | ||
126 | -demuxer -> stream audio packet pts=168931046, dts=168931046, size=302, diff=4179, index=1 dts_time=1877.01 | ||
127 | -demuxer -> stream video packet pts=168929280, dts=168929280, size=878, diff=3780, index=0 dts_time=1876.99 | ||
128 | -demuxer -> stream video packet pts=168932970, dts=168932970, size=698, diff=3690, index=0 dts_time=1877.03 | ||
129 | -demuxer -> stream video packet pts=168951780, dts=168936750, size=11824, diff=3780, index=0 dts_time=1877.08 | ||
130 | -demuxer -> stream video packet pts=168940530, dts=168940530, size=837, diff=3780, index=0 dts_time=1877.12 | ||
131 | -demuxer -> stream video packet pts=168944220, dts=168944220, size=896, diff=3690, index=0 dts_time=1877.16 | ||
132 | -demuxer -> stream video packet pts=168948000, dts=168948000, size=671, diff=3780, index=0 dts_time=1877.2 | ||
133 | -demuxer -> stream audio packet pts=168935228, dts=168935228, size=285, diff=4182, index=1 dts_time=1877.06 | ||
134 | -demuxer -> stream audio packet pts=168939407, dts=168939407, size=290, diff=4179, index=1 dts_time=1877.1 | ||
135 | -demuxer -> stream audio packet pts=168943586, dts=168943586, size=301, diff=4179, index=1 dts_time=1877.15 | ||
136 | -demuxer -> stream audio packet pts=168947765, dts=168947765, size=257, diff=4179, index=1 dts_time=1877.2 | ||
137 | -demuxer -> stream audio packet pts=168951944, dts=168951944, size=265, diff=4179, index=1 dts_time=1877.24 | ||
138 | -demuxer -> stream video packet pts=168966720, dts=168951780, size=8523, diff=3780, index=0 dts_time=1877.24 | ||
139 | -demuxer -> stream video packet pts=168955470, dts=168955470, size=773, diff=3690, index=0 dts_time=1877.28 | ||
140 | -demuxer -> stream video packet pts=168959250, dts=168959250, size=755, diff=3780, index=0 dts_time=1877.33 | ||
141 | -demuxer -> stream video packet pts=168963030, dts=168963030, size=643, diff=3780, index=0 dts_time=1877.37 | ||
142 | -demuxer -> stream video packet pts=168977970, dts=168966720, size=4648, diff=3690, index=0 dts_time=1877.41 | ||
143 | -demuxer -> stream audio packet pts=168956126, dts=168956126, size=279, diff=4182, index=1 dts_time=1877.29 | ||
144 | -demuxer -> stream audio packet pts=168960305, dts=168960305, size=279, diff=4179, index=1 dts_time=1877.34 | ||
145 | -demuxer -> stream audio packet pts=168964484, dts=168964484, size=280, diff=4179, index=1 dts_time=1877.38 | ||
146 | -demuxer -> stream audio packet pts=168968663, dts=168968663, size=269, diff=4179, index=1 dts_time=1877.43 | ||
147 | -demuxer -> stream audio packet pts=168972842, dts=168972842, size=319, diff=4179, index=1 dts_time=1877.48 | ||
148 | -demuxer -> stream video packet pts=168970500, dts=168970500, size=626, diff=3780, index=0 dts_time=1877.45 | ||
149 | -demuxer -> stream video packet pts=168974280, dts=168974280, size=536, diff=3780, index=0 dts_time=1877.49 | ||
150 | -demuxer -> stream video packet pts=168981750, dts=168977970, size=3771, diff=3690, index=0 dts_time=1877.53 | ||
151 | -demuxer -> stream video packet pts=168985530, dts=168981750, size=4494, diff=3780, index=0 dts_time=1877.58 | ||
152 | -demuxer -> stream video packet pts=168989220, dts=168985530, size=5560, diff=3780, index=0 dts_time=1877.62 | ||
153 | -demuxer -> stream video packet pts=168993000, dts=168989220, size=6541, diff=3690, index=0 dts_time=1877.66 | ||
154 | -demuxer -> stream audio packet pts=168977024, dts=168977024, size=287, diff=4182, index=1 dts_time=1877.52 | ||
155 | -demuxer -> stream audio packet pts=168981203, dts=168981203, size=279, diff=4179, index=1 dts_time=1877.57 | ||
156 | -demuxer -> stream audio packet pts=168985382, dts=168985382, size=272, diff=4179, index=1 dts_time=1877.62 | ||
157 | -demuxer -> stream audio packet pts=168989561, dts=168989561, size=314, diff=4179, index=1 dts_time=1877.66 | ||
158 | -demuxer -> stream audio packet pts=168993740, dts=168993740, size=318, diff=4179, index=1 dts_time=1877.71 | ||
159 | -demuxer -> stream video packet pts=168996780, dts=168993000, size=7636, diff=3780, index=0 dts_time=1877.7 | ||
160 | -demuxer -> stream video packet pts=169000470, dts=168996780, size=6685, diff=3780, index=0 dts_time=1877.74 | ||
161 | -demuxer -> stream video packet pts=169004250, dts=169000470, size=6791, diff=3690, index=0 dts_time=1877.78 | ||
162 | -demuxer -> stream video packet pts=169008030, dts=169004250, size=11730, diff=3780, index=0 dts_time=1877.83 | ||
163 | -demuxer -> stream video packet pts=169011720, dts=169008030, size=14252, diff=3780, index=0 dts_time=1877.87 | ||
164 | -demuxer -> stream audio packet pts=168997922, dts=168997922, size=269, diff=4182, index=1 dts_time=1877.75 | ||
165 | -demuxer -> stream audio packet pts=169002101, dts=169002101, size=365, diff=4179, index=1 dts_time=1877.8 | ||
166 | -demuxer -> stream audio packet pts=169006280, dts=169006280, size=360, diff=4179, index=1 dts_time=1877.85 | ||
167 | -demuxer -> stream audio packet pts=169010459, dts=169010459, size=339, diff=4179, index=1 dts_time=1877.89 | ||
168 | -demuxer -> stream audio packet pts=169014638, dts=169014638, size=308, diff=4179, index=1 dts_time=1877.94 | ||
169 | -demuxer -> stream video packet pts=169022970, dts=169011720, size=9386, diff=3690, index=0 dts_time=1877.91 | ||
170 | -demuxer -> stream video packet pts=169015500, dts=169015500, size=809, diff=3780, index=0 dts_time=1877.95 | ||
171 | -demuxer -> stream video packet pts=169019280, dts=169019280, size=631, diff=3780, index=0 dts_time=1877.99 | ||
172 | -demuxer -> stream video packet pts=169030530, dts=169022970, size=7316, diff=3690, index=0 dts_time=1878.03 | ||
173 | -demuxer -> stream video packet pts=169026750, dts=169026750, size=594, diff=3780, index=0 dts_time=1878.08 | ||
174 | -demuxer -> stream video packet pts=169038000, dts=169030530, size=6070, diff=3780, index=0 dts_time=1878.12 | ||
175 | -demuxer -> stream audio packet pts=169018820, dts=169018820, size=295, diff=4182, index=1 dts_time=1877.99 | ||
176 | -demuxer -> stream audio packet pts=169022999, dts=169022999, size=330, diff=4179, index=1 dts_time=1878.03 | ||
177 | -demuxer -> stream audio packet pts=169027178, dts=169027178, size=291, diff=4179, index=1 dts_time=1878.08 | ||
178 | -demuxer -> stream audio packet pts=169031357, dts=169031357, size=271, diff=4179, index=1 dts_time=1878.13 | ||
179 | -demuxer -> stream audio packet pts=169035536, dts=169035536, size=281, diff=4179, index=1 dts_time=1878.17 | ||
180 | -demuxer -> stream video packet pts=169034220, dts=169034220, size=674, diff=3690, index=0 dts_time=1878.16 | ||
181 | -demuxer -> stream video packet pts=169045470, dts=169038000, size=5808, diff=3780, index=0 dts_time=1878.2 | ||
182 | -demuxer -> stream video packet pts=169041780, dts=169041780, size=958, diff=3780, index=0 dts_time=1878.24 | ||
183 | -demuxer -> stream video packet pts=169049250, dts=169045470, size=5959, diff=3690, index=0 dts_time=1878.28 | ||
184 | -demuxer -> stream video packet pts=169053030, dts=169049250, size=5991, diff=3780, index=0 dts_time=1878.33 | ||
185 | -demuxer -> stream audio packet pts=169039718, dts=169039718, size=270, diff=4182, index=1 dts_time=1878.22 | ||
186 | -demuxer -> stream audio packet pts=169043897, dts=169043897, size=277, diff=4179, index=1 dts_time=1878.27 | ||
187 | -demuxer -> stream audio packet pts=169048076, dts=169048076, size=264, diff=4179, index=1 dts_time=1878.31 | ||
188 | -demuxer -> stream audio packet pts=169052255, dts=169052255, size=279, diff=4179, index=1 dts_time=1878.36 | ||
189 | -demuxer -> stream audio packet pts=169056434, dts=169056434, size=381, diff=4179, index=1 dts_time=1878.4 | ||
190 | -demuxer -> stream video packet pts=169056720, dts=169053030, size=10941, diff=3780, index=0 dts_time=1878.37 | ||
191 | -demuxer -> stream video packet pts=169064280, dts=169056720, size=7867, diff=3690, index=0 dts_time=1878.41 | ||
192 | -demuxer -> stream video packet pts=169060500, dts=169060500, size=4550, diff=3780, index=0 dts_time=1878.45 | ||
193 | -demuxer -> stream video packet pts=169067970, dts=169064280, size=10501, diff=3780, index=0 dts_time=1878.49 | ||
194 | -demuxer -> stream video packet pts=169071750, dts=169067970, size=10772, diff=3690, index=0 dts_time=1878.53 | ||
195 | -demuxer -> stream video packet pts=169075530, dts=169071750, size=12594, diff=3780, index=0 dts_time=1878.58 | ||
196 | -demuxer -> stream audio packet pts=169060616, dts=169060616, size=362, diff=4182, index=1 dts_time=1878.45 | ||
197 | -demuxer -> stream audio packet pts=169064795, dts=169064795, size=305, diff=4179, index=1 dts_time=1878.5 | ||
198 | -demuxer -> stream audio packet pts=169068974, dts=169068974, size=283, diff=4179, index=1 dts_time=1878.54 | ||
199 | -demuxer -> stream audio packet pts=169073153, dts=169073153, size=285, diff=4179, index=1 dts_time=1878.59 | ||
200 | -demuxer -> stream audio packet pts=169077332, dts=169077332, size=316, diff=4179, index=1 dts_time=1878.64 | ||
201 | -demuxer -> stream video packet pts=169083000, dts=169075530, size=12274, diff=3780, index=0 dts_time=1878.62 | ||
202 | -demuxer -> stream video packet pts=169079220, dts=169079220, size=2145, diff=3690, index=0 dts_time=1878.66 | ||
203 | -demuxer -> stream video packet pts=169098030, dts=169083000, size=10764, diff=3780, index=0 dts_time=1878.7 | ||
204 | -demuxer -> stream video packet pts=169086780, dts=169086780, size=952, diff=3780, index=0 dts_time=1878.74 | ||
205 | -demuxer -> stream video packet pts=169090470, dts=169090470, size=977, diff=3690, index=0 dts_time=1878.78 | ||
206 | -demuxer -> stream video packet pts=169094250, dts=169094250, size=830, diff=3780, index=0 dts_time=1878.83 | ||
207 | -demuxer -> stream audio packet pts=169081514, dts=169081514, size=288, diff=4182, index=1 dts_time=1878.68 | ||
208 | -demuxer -> stream audio packet pts=169085693, dts=169085693, size=313, diff=4179, index=1 dts_time=1878.73 | ||
209 | -demuxer -> stream audio packet pts=169089872, dts=169089872, size=299, diff=4179, index=1 dts_time=1878.78 | ||
210 | -demuxer -> stream audio packet pts=169094051, dts=169094051, size=272, diff=4179, index=1 dts_time=1878.82 | ||
211 | -demuxer -> stream audio packet pts=169098230, dts=169098230, size=285, diff=4179, index=1 dts_time=1878.87 | ||
212 | -demuxer -> stream video packet pts=169112970, dts=169098030, size=2899, diff=3780, index=0 dts_time=1878.87 | ||
213 | -demuxer -> stream video packet pts=169101720, dts=169101720, size=388, diff=3690, index=0 dts_time=1878.91 | ||
214 | -demuxer -> stream video packet pts=169105500, dts=169105500, size=291, diff=3780, index=0 dts_time=1878.95 | ||
215 | -demuxer -> stream video packet pts=169109280, dts=169109280, size=275, diff=3780, index=0 dts_time=1878.99 | ||
216 | -demuxer -> stream video packet pts=169124220, dts=169112970, size=676, diff=3690, index=0 dts_time=1879.03 | ||
217 | -demuxer -> stream audio packet pts=169102412, dts=169102412, size=287, diff=4182, index=1 dts_time=1878.92 | ||
218 | -demuxer -> stream audio packet pts=169106591, dts=169106591, size=276, diff=4179, index=1 dts_time=1878.96 | ||
219 | -demuxer -> stream audio packet pts=169110770, dts=169110770, size=272, diff=4179, index=1 dts_time=1879.01 | ||
220 | -demuxer -> stream audio packet pts=169114949, dts=169114949, size=285, diff=4179, index=1 dts_time=1879.05 | ||
221 | -demuxer -> stream audio packet pts=169119128, dts=169119128, size=280, diff=4179, index=1 dts_time=1879.1 | ||
222 | -demuxer -> stream video packet pts=169116750, dts=169116750, size=249, diff=3780, index=0 dts_time=1879.08 | ||
223 | -demuxer -> stream video packet pts=169120530, dts=169120530, size=217, diff=3780, index=0 dts_time=1879.12 | ||
224 | -demuxer -> stream video packet pts=169128000, dts=169124220, size=75657, diff=3690, index=0 dts_time=1879.16 | ||
225 | -demuxer -> stream video packet pts=169143030, dts=169128000, size=2805, diff=3780, index=0 dts_time=1879.2 | ||
226 | -demuxer -> stream video packet pts=169131780, dts=169131780, size=229, diff=3780, index=0 dts_time=1879.24 | ||
227 | -demuxer -> stream video packet pts=169135470, dts=169135470, size=199, diff=3690, index=0 dts_time=1879.28 | ||
228 | -demuxer -> stream audio packet pts=169123310, dts=169123310, size=322, diff=4182, index=1 dts_time=1879.15 | ||
229 | -demuxer -> stream audio packet pts=169127489, dts=169127489, size=384, diff=4179, index=1 dts_time=1879.19 | ||
230 | -demuxer -> stream audio packet pts=169131668, dts=169131668, size=368, diff=4179, index=1 dts_time=1879.24 | ||
231 | -demuxer -> stream audio packet pts=169135847, dts=169135847, size=301, diff=4179, index=1 dts_time=1879.29 | ||
232 | -demuxer -> stream audio packet pts=169140026, dts=169140026, size=308, diff=4179, index=1 dts_time=1879.33 | ||
233 | -demuxer -> stream video packet pts=169139250, dts=169139250, size=197, diff=3780, index=0 dts_time=1879.33 | ||
234 | -demuxer -> stream video packet pts=169157970, dts=169143030, size=4670, diff=3780, index=0 dts_time=1879.37 | ||
235 | -demuxer -> stream video packet pts=169146720, dts=169146720, size=501, diff=3690, index=0 dts_time=1879.41 | ||
236 | -demuxer -> stream video packet pts=169150500, dts=169150500, size=672, diff=3780, index=0 dts_time=1879.45 | ||
237 | -demuxer -> stream video packet pts=169154280, dts=169154280, size=422, diff=3780, index=0 dts_time=1879.49 | ||
238 | -demuxer -> stream audio packet pts=169144208, dts=169144208, size=309, diff=4182, index=1 dts_time=1879.38 | ||
239 | -demuxer -> stream audio packet pts=169148387, dts=169148387, size=325, diff=4179, index=1 dts_time=1879.43 | ||
240 | -demuxer -> stream audio packet pts=169152566, dts=169152566, size=300, diff=4179, index=1 dts_time=1879.47 | ||
241 | -demuxer -> stream audio packet pts=169156745, dts=169156745, size=266, diff=4179, index=1 dts_time=1879.52 | ||
242 | -demuxer -> stream audio packet pts=169160924, dts=169160924, size=270, diff=4179, index=1 dts_time=1879.57 | ||
243 | -demuxer -> stream video packet pts=169173000, dts=169157970, size=6008, diff=3690, index=0 dts_time=1879.53 | ||
244 | -demuxer -> stream video packet pts=169161750, dts=169161750, size=682, diff=3780, index=0 dts_time=1879.58 | ||
245 | -demuxer -> stream video packet pts=169165530, dts=169165530, size=712, diff=3780, index=0 dts_time=1879.62 | ||
246 | -demuxer -> stream video packet pts=169169220, dts=169169220, size=638, diff=3690, index=0 dts_time=1879.66 | ||
247 | -demuxer -> stream video packet pts=169188030, dts=169173000, size=11908, diff=3780, index=0 dts_time=1879.7 | ||
248 | -demuxer -> stream video packet pts=169176780, dts=169176780, size=1508, diff=3780, index=0 dts_time=1879.74 | ||
249 | -demuxer -> stream audio packet pts=169165106, dts=169165106, size=270, diff=4182, index=1 dts_time=1879.61 | ||
250 | -demuxer -> stream audio packet pts=169169285, dts=169169285, size=268, diff=4179, index=1 dts_time=1879.66 | ||
251 | -demuxer -> stream audio packet pts=169173464, dts=169173464, size=282, diff=4179, index=1 dts_time=1879.71 | ||
252 | -demuxer -> stream audio packet pts=169177643, dts=169177643, size=296, diff=4179, index=1 dts_time=1879.75 | ||
253 | -demuxer -> stream audio packet pts=169181822, dts=169181822, size=267, diff=4179, index=1 dts_time=1879.8 | ||
254 | -demuxer -> stream video packet pts=169180470, dts=169180470, size=1455, diff=3690, index=0 dts_time=1879.78 | ||
255 | -demuxer -> stream video packet pts=169184250, dts=169184250, size=1169, diff=3780, index=0 dts_time=1879.83 | ||
256 | -demuxer -> stream video packet pts=169202970, dts=169188030, size=11158, diff=3780, index=0 dts_time=1879.87 | ||
257 | -demuxer -> stream video packet pts=169191720, dts=169191720, size=685, diff=3690, index=0 dts_time=1879.91 | ||
258 | -demuxer -> stream video packet pts=169195500, dts=169195500, size=652, diff=3780, index=0 dts_time=1879.95 | ||
259 | -demuxer -> stream audio packet pts=169186004, dts=169186004, size=278, diff=4182, index=1 dts_time=1879.84 | ||
260 | -demuxer -> stream audio packet pts=169190183, dts=169190183, size=282, diff=4179, index=1 dts_time=1879.89 | ||
261 | -demuxer -> stream audio packet pts=169194362, dts=169194362, size=353, diff=4179, index=1 dts_time=1879.94 | ||
262 | -demuxer -> stream audio packet pts=169198541, dts=169198541, size=346, diff=4179, index=1 dts_time=1879.98 | ||
263 | -demuxer -> stream audio packet pts=169202720, dts=169202720, size=276, diff=4179, index=1 dts_time=1880.03 | ||
264 | -demuxer -> stream video packet pts=169199280, dts=169199280, size=558, diff=3780, index=0 dts_time=1879.99 | ||
265 | -demuxer -> stream video packet pts=169218000, dts=169202970, size=2086, diff=3690, index=0 dts_time=1880.03 | ||
266 | -demuxer -> stream video packet pts=169206750, dts=169206750, size=420, diff=3780, index=0 dts_time=1880.08 | ||
267 | -demuxer -> stream video packet pts=169210530, dts=169210530, size=465, diff=3780, index=0 dts_time=1880.12 | ||
268 | -demuxer -> stream video packet pts=169214220, dts=169214220, size=407, diff=3690, index=0 dts_time=1880.16 | ||
269 | -demuxer -> stream video packet pts=169229250, dts=169218000, size=284, diff=3780, index=0 dts_time=1880.2 | ||
270 | -demuxer -> stream audio packet pts=169206902, dts=169206902, size=275, diff=4182, index=1 dts_time=1880.08 | ||
271 | -demuxer -> stream audio packet pts=169211081, dts=169211081, size=293, diff=4179, index=1 dts_time=1880.12 | ||
272 | -demuxer -> stream audio packet pts=169215260, dts=169215260, size=261, diff=4179, index=1 dts_time=1880.17 | ||
273 | -demuxer -> stream audio packet pts=169219439, dts=169219439, size=295, diff=4179, index=1 dts_time=1880.22 | ||
274 | -demuxer -> stream audio packet pts=169223618, dts=169223618, size=279, diff=4179, index=1 dts_time=1880.26 | ||
275 | -demuxer -> stream video packet pts=169221780, dts=169221780, size=288, diff=3780, index=0 dts_time=1880.24 | ||
276 | -demuxer -> stream video packet pts=169225470, dts=169225470, size=234, diff=3690, index=0 dts_time=1880.28 | ||
277 | -demuxer -> stream video packet pts=169233030, dts=169229250, size=59016, diff=3780, index=0 dts_time=1880.33 | ||
278 | -demuxer -> stream video packet pts=169240500, dts=169233030, size=4100, diff=3780, index=0 dts_time=1880.37 | ||
279 | -demuxer -> stream video packet pts=169236720, dts=169236720, size=1047, diff=3690, index=0 dts_time=1880.41 | ||
280 | -demuxer -> stream video packet pts=169247970, dts=169240500, size=10317, diff=3780, index=0 dts_time=1880.45 | ||
281 | -demuxer -> stream audio packet pts=169227800, dts=169227800, size=280, diff=4182, index=1 dts_time=1880.31 | ||
282 | -demuxer -> stream audio packet pts=169231979, dts=169231979, size=278, diff=4179, index=1 dts_time=1880.36 | ||
283 | -demuxer -> stream audio packet pts=169236158, dts=169236158, size=361, diff=4179, index=1 dts_time=1880.4 | ||
284 | -demuxer -> stream audio packet pts=169240337, dts=169240337, size=354, diff=4179, index=1 dts_time=1880.45 | ||
285 | -demuxer -> stream audio packet pts=169244516, dts=169244516, size=344, diff=4179, index=1 dts_time=1880.49 | ||
286 | -demuxer -> stream video packet pts=169244280, dts=169244280, size=2748, diff=3780, index=0 dts_time=1880.49 | ||
287 | -demuxer -> stream video packet pts=169251750, dts=169247970, size=11029, diff=3690, index=0 dts_time=1880.53 | ||
288 | -demuxer -> stream video packet pts=169266780, dts=169251750, size=4083, diff=3780, index=0 dts_time=1880.58 | ||
289 | -demuxer -> stream video packet pts=169255530, dts=169255530, size=1481, diff=3780, index=0 dts_time=1880.62 | ||
290 | -demuxer -> stream video packet pts=169259220, dts=169259220, size=642, diff=3690, index=0 dts_time=1880.66 | ||
291 | -demuxer -> stream audio packet pts=169248697, dts=169248697, size=321, diff=4181, index=1 dts_time=1880.54 | ||
292 | -demuxer -> stream audio packet pts=169252876, dts=169252876, size=301, diff=4179, index=1 dts_time=1880.59 | ||
293 | -demuxer -> stream audio packet pts=169257055, dts=169257055, size=277, diff=4179, index=1 dts_time=1880.63 | ||
294 | -demuxer -> stream audio packet pts=169261234, dts=169261234, size=318, diff=4179, index=1 dts_time=1880.68 | ||
295 | -demuxer -> stream audio packet pts=169265413, dts=169265413, size=261, diff=4179, index=1 dts_time=1880.73 | ||
296 | -demuxer -> stream video packet pts=169263000, dts=169263000, size=499, diff=3780, index=0 dts_time=1880.7 | ||
297 | -demuxer -> stream video packet pts=169281720, dts=169266780, size=1760, diff=3780, index=0 dts_time=1880.74 | ||
298 | -demuxer -> stream video packet pts=169270470, dts=169270470, size=499, diff=3690, index=0 dts_time=1880.78 | ||
299 | -demuxer -> stream video packet pts=169274250, dts=169274250, size=510, diff=3780, index=0 dts_time=1880.83 | ||
300 | -demuxer -> stream video packet pts=169278030, dts=169278030, size=425, diff=3780, index=0 dts_time=1880.87 | ||
301 | -demuxer -> stream video packet pts=169285500, dts=169281720, size=2071, diff=3690, index=0 dts_time=1880.91 | ||
302 | -demuxer -> stream audio packet pts=169269595, dts=169269595, size=268, diff=4182, index=1 dts_time=1880.77 | ||
303 | -demuxer -> stream audio packet pts=169273774, dts=169273774, size=289, diff=4179, index=1 dts_time=1880.82 | ||
304 | -demuxer -> stream audio packet pts=169277953, dts=169277953, size=267, diff=4179, index=1 dts_time=1880.87 | ||
305 | -demuxer -> stream audio packet pts=169282132, dts=169282132, size=269, diff=4179, index=1 dts_time=1880.91 | ||
306 | -demuxer -> stream audio packet pts=169286311, dts=169286311, size=280, diff=4179, index=1 dts_time=1880.96 | ||
307 | -demuxer -> stream video packet pts=169292970, dts=169285500, size=4220, diff=3780, index=0 dts_time=1880.95 | ||
308 | -demuxer -> stream video packet pts=169289280, dts=169289280, size=2596, diff=3780, index=0 dts_time=1880.99 | ||
309 | -demuxer -> stream video packet pts=169296750, dts=169292970, size=13800, diff=3690, index=0 dts_time=1881.03 | ||
310 | -demuxer -> stream video packet pts=169300530, dts=169296750, size=8452, diff=3780, index=0 dts_time=1881.08 | ||
311 | -demuxer -> stream video packet pts=169308000, dts=169300530, size=11802, diff=3780, index=0 dts_time=1881.12 | ||
312 | -demuxer -> stream audio packet pts=169290493, dts=169290493, size=263, diff=4182, index=1 dts_time=1881.01 | ||
313 | -demuxer -> stream audio packet pts=169294672, dts=169294672, size=310, diff=4179, index=1 dts_time=1881.05 | ||
314 | -demuxer -> stream audio packet pts=169298851, dts=169298851, size=313, diff=4179, index=1 dts_time=1881.1 | ||
315 | -demuxer -> stream audio packet pts=169303030, dts=169303030, size=331, diff=4179, index=1 dts_time=1881.14 | ||
316 | -demuxer -> stream audio packet pts=169307209, dts=169307209, size=280, diff=4179, index=1 dts_time=1881.19 | ||
317 | -demuxer -> stream video packet pts=169304220, dts=169304220, size=3014, diff=3690, index=0 dts_time=1881.16 | ||
318 | -demuxer -> stream video packet pts=169311780, dts=169308000, size=10497, diff=3780, index=0 dts_time=1881.2 | ||
319 | -demuxer -> stream video packet pts=169323030, dts=169311780, size=10094, diff=3780, index=0 dts_time=1881.24 | ||
320 | -demuxer -> stream video packet pts=169315470, dts=169315470, size=1955, diff=3690, index=0 dts_time=1881.28 | ||
321 | -demuxer -> stream video packet pts=169319250, dts=169319250, size=931, diff=3780, index=0 dts_time=1881.33 | ||
322 | -demuxer -> stream video packet pts=169337970, dts=169323030, size=2733, diff=3780, index=0 dts_time=1881.37 | ||
323 | -demuxer -> stream audio packet pts=169311391, dts=169311391, size=330, diff=4182, index=1 dts_time=1881.24 | ||
324 | -demuxer -> stream audio packet pts=169315570, dts=169315570, size=299, diff=4179, index=1 dts_time=1881.28 | ||
325 | -demuxer -> stream audio packet pts=169319749, dts=169319749, size=289, diff=4179, index=1 dts_time=1881.33 | ||
326 | -demuxer -> stream audio packet pts=169323928, dts=169323928, size=296, diff=4179, index=1 dts_time=1881.38 | ||
327 | -demuxer -> stream audio packet pts=169328107, dts=169328107, size=287, diff=4179, index=1 dts_time=1881.42 | ||
328 | -demuxer -> stream video packet pts=169326720, dts=169326720, size=570, diff=3690, index=0 dts_time=1881.41 | ||
329 | -demuxer -> stream video packet pts=169330500, dts=169330500, size=590, diff=3780, index=0 dts_time=1881.45 | ||
330 | -demuxer -> stream video packet pts=169334280, dts=169334280, size=418, diff=3780, index=0 dts_time=1881.49 | ||
331 | -demuxer -> stream video packet pts=169349220, dts=169337970, size=838, diff=3690, index=0 dts_time=1881.53 | ||
332 | -demuxer -> stream video packet pts=169341750, dts=169341750, size=341, diff=3780, index=0 dts_time=1881.58 | ||
333 | -demuxer -> stream audio packet pts=169332289, dts=169332289, size=286, diff=4182, index=1 dts_time=1881.47 | ||
334 | -demuxer -> stream audio packet pts=169336468, dts=169336468, size=278, diff=4179, index=1 dts_time=1881.52 | ||
335 | -demuxer -> stream audio packet pts=169340647, dts=169340647, size=269, diff=4179, index=1 dts_time=1881.56 | ||
336 | -demuxer -> stream audio packet pts=169344826, dts=169344826, size=271, diff=4179, index=1 dts_time=1881.61 | ||
337 | -demuxer -> stream audio packet pts=169349005, dts=169349005, size=276, diff=4179, index=1 dts_time=1881.66 | ||
338 | -demuxer -> stream video packet pts=169345530, dts=169345530, size=402, diff=3780, index=0 dts_time=1881.62 |
@@ -30,6 +30,39 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -30,6 +30,39 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
30 | #include <srs_core_log.hpp> | 30 | #include <srs_core_log.hpp> |
31 | #include <srs_core_autofree.hpp> | 31 | #include <srs_core_autofree.hpp> |
32 | 32 | ||
33 | +SrsCodecSample::SrsCodecSample() | ||
34 | +{ | ||
35 | + clear(); | ||
36 | +} | ||
37 | + | ||
38 | +SrsCodecSample::~SrsCodecSample() | ||
39 | +{ | ||
40 | +} | ||
41 | + | ||
42 | +void SrsCodecSample::clear() | ||
43 | +{ | ||
44 | + cts = 0; | ||
45 | + nb_buffers = 0; | ||
46 | +} | ||
47 | + | ||
48 | +int SrsCodecSample::add_sample(char* bytes, int size) | ||
49 | +{ | ||
50 | + int ret = ERROR_SUCCESS; | ||
51 | + | ||
52 | + if (nb_buffers >= SRS_MAX_CODEC_SAMPLE) { | ||
53 | + ret = ERROR_HLS_DECODE_ERROR; | ||
54 | + srs_error("hls decode samples error, " | ||
55 | + "exceed the max count: %d, ret=%d", SRS_MAX_CODEC_SAMPLE, ret); | ||
56 | + return ret; | ||
57 | + } | ||
58 | + | ||
59 | + SrsCodecBuffer* buf = &buffers[nb_buffers++]; | ||
60 | + buf->bytes = bytes; | ||
61 | + buf->size = size; | ||
62 | + | ||
63 | + return ret; | ||
64 | +} | ||
65 | + | ||
33 | SrsCodec::SrsCodec() | 66 | SrsCodec::SrsCodec() |
34 | { | 67 | { |
35 | width = 0; | 68 | width = 0; |
@@ -62,7 +95,7 @@ SrsCodec::~SrsCodec() | @@ -62,7 +95,7 @@ SrsCodec::~SrsCodec() | ||
62 | srs_freep(stream); | 95 | srs_freep(stream); |
63 | } | 96 | } |
64 | 97 | ||
65 | -int SrsCodec::audio_aac_demux(int8_t* data, int size) | 98 | +int SrsCodec::audio_aac_demux(int8_t* data, int size, SrsCodecSample* sample) |
66 | { | 99 | { |
67 | int ret = ERROR_SUCCESS; | 100 | int ret = ERROR_SUCCESS; |
68 | 101 | ||
@@ -109,11 +142,11 @@ int SrsCodec::audio_aac_demux(int8_t* data, int size) | @@ -109,11 +142,11 @@ int SrsCodec::audio_aac_demux(int8_t* data, int size) | ||
109 | if (aac_packet_type == SrsCodecAudioTypeSequenceHeader) { | 142 | if (aac_packet_type == SrsCodecAudioTypeSequenceHeader) { |
110 | // AudioSpecificConfig | 143 | // AudioSpecificConfig |
111 | // 1.6.2.1 AudioSpecificConfig, in aac-mp4a-format-ISO_IEC_14496-3+2001.pdf, page 33. | 144 | // 1.6.2.1 AudioSpecificConfig, in aac-mp4a-format-ISO_IEC_14496-3+2001.pdf, page 33. |
112 | - aac_extra_size = size - stream->pos(); | 145 | + aac_extra_size = stream->left(); |
113 | if (aac_extra_size > 0) { | 146 | if (aac_extra_size > 0) { |
114 | srs_freepa(aac_extra_data); | 147 | srs_freepa(aac_extra_data); |
115 | aac_extra_data = new char[aac_extra_size]; | 148 | aac_extra_data = new char[aac_extra_size]; |
116 | - memcpy(aac_extra_data, data + stream->pos(), aac_extra_size); | 149 | + memcpy(aac_extra_data, stream->current(), aac_extra_size); |
117 | } | 150 | } |
118 | } else if (aac_packet_type == SrsCodecAudioTypeRawData) { | 151 | } else if (aac_packet_type == SrsCodecAudioTypeRawData) { |
119 | // ensure the sequence header demuxed | 152 | // ensure the sequence header demuxed |
@@ -125,6 +158,10 @@ int SrsCodec::audio_aac_demux(int8_t* data, int size) | @@ -125,6 +158,10 @@ int SrsCodec::audio_aac_demux(int8_t* data, int size) | ||
125 | 158 | ||
126 | // Raw AAC frame data in UI8 [] | 159 | // Raw AAC frame data in UI8 [] |
127 | // 6.3 Raw Data, aac-iso-13818-7.pdf, page 28 | 160 | // 6.3 Raw Data, aac-iso-13818-7.pdf, page 28 |
161 | + if ((ret = sample->add_sample(stream->current(), stream->left())) != ERROR_SUCCESS) { | ||
162 | + srs_error("hls add audio sample failed. ret=%d", ret); | ||
163 | + return ret; | ||
164 | + } | ||
128 | } else { | 165 | } else { |
129 | // ignored. | 166 | // ignored. |
130 | } | 167 | } |
@@ -135,7 +172,7 @@ int SrsCodec::audio_aac_demux(int8_t* data, int size) | @@ -135,7 +172,7 @@ int SrsCodec::audio_aac_demux(int8_t* data, int size) | ||
135 | return ret; | 172 | return ret; |
136 | } | 173 | } |
137 | 174 | ||
138 | -int SrsCodec::video_avc_demux(int8_t* data, int size) | 175 | +int SrsCodec::video_avc_demux(int8_t* data, int size, SrsCodecSample* sample) |
139 | { | 176 | { |
140 | int ret = ERROR_SUCCESS; | 177 | int ret = ERROR_SUCCESS; |
141 | 178 | ||
@@ -175,17 +212,17 @@ int SrsCodec::video_avc_demux(int8_t* data, int size) | @@ -175,17 +212,17 @@ int SrsCodec::video_avc_demux(int8_t* data, int size) | ||
175 | int8_t avc_packet_type = stream->read_1bytes(); | 212 | int8_t avc_packet_type = stream->read_1bytes(); |
176 | int32_t composition_time = stream->read_3bytes(); | 213 | int32_t composition_time = stream->read_3bytes(); |
177 | 214 | ||
178 | - // avoid warning, used it future. | ||
179 | - (void)composition_time; | 215 | + // pts = dts + cts. |
216 | + sample->cts = composition_time; | ||
180 | 217 | ||
181 | if (avc_packet_type == SrsCodecVideoAVCTypeSequenceHeader) { | 218 | if (avc_packet_type == SrsCodecVideoAVCTypeSequenceHeader) { |
182 | // AVCDecoderConfigurationRecord | 219 | // AVCDecoderConfigurationRecord |
183 | // 5.2.4.1.1 Syntax, H.264-AVC-ISO_IEC_14496-15.pdf, page 16 | 220 | // 5.2.4.1.1 Syntax, H.264-AVC-ISO_IEC_14496-15.pdf, page 16 |
184 | - avc_extra_size = size - stream->pos(); | 221 | + avc_extra_size = stream->left(); |
185 | if (avc_extra_size > 0) { | 222 | if (avc_extra_size > 0) { |
186 | srs_freepa(avc_extra_data); | 223 | srs_freepa(avc_extra_data); |
187 | avc_extra_data = new char[avc_extra_size]; | 224 | avc_extra_data = new char[avc_extra_size]; |
188 | - memcpy(avc_extra_data, data + stream->pos(), avc_extra_size); | 225 | + memcpy(avc_extra_data, stream->current(), avc_extra_size); |
189 | } | 226 | } |
190 | 227 | ||
191 | if (!stream->require(6)) { | 228 | if (!stream->require(6)) { |
@@ -222,7 +259,7 @@ int SrsCodec::video_avc_demux(int8_t* data, int size) | @@ -222,7 +259,7 @@ int SrsCodec::video_avc_demux(int8_t* data, int size) | ||
222 | 259 | ||
223 | // One or more NALUs (Full frames are required) | 260 | // One or more NALUs (Full frames are required) |
224 | // 5.3.4.2.1 Syntax, H.264-AVC-ISO_IEC_14496-15.pdf, page 20 | 261 | // 5.3.4.2.1 Syntax, H.264-AVC-ISO_IEC_14496-15.pdf, page 20 |
225 | - int PictureLength = size - stream->pos(); | 262 | + int PictureLength = stream->left(); |
226 | for (int i = 0; i < PictureLength;) { | 263 | for (int i = 0; i < PictureLength;) { |
227 | if (!stream->require(NAL_unit_length + 1)) { | 264 | if (!stream->require(NAL_unit_length + 1)) { |
228 | ret = ERROR_HLS_DECODE_ERROR; | 265 | ret = ERROR_HLS_DECODE_ERROR; |
@@ -246,6 +283,10 @@ int SrsCodec::video_avc_demux(int8_t* data, int size) | @@ -246,6 +283,10 @@ int SrsCodec::video_avc_demux(int8_t* data, int size) | ||
246 | return ret; | 283 | return ret; |
247 | } | 284 | } |
248 | // 7.3.1 NAL unit syntax, H.264-AVC-ISO_IEC_14496-10.pdf, page 44. | 285 | // 7.3.1 NAL unit syntax, H.264-AVC-ISO_IEC_14496-10.pdf, page 44. |
286 | + if ((ret = sample->add_sample(stream->current(), NALUnitLength)) != ERROR_SUCCESS) { | ||
287 | + srs_error("hls add video sample failed. ret=%d", ret); | ||
288 | + return ret; | ||
289 | + } | ||
249 | stream->skip(NALUnitLength); | 290 | stream->skip(NALUnitLength); |
250 | 291 | ||
251 | i += NAL_unit_length + 1 + NALUnitLength; | 292 | i += NAL_unit_length + 1 + NALUnitLength; |
@@ -30,6 +30,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -30,6 +30,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
30 | 30 | ||
31 | #include <srs_core.hpp> | 31 | #include <srs_core.hpp> |
32 | 32 | ||
33 | +#define SRS_MAX_CODEC_SAMPLE 128 | ||
34 | + | ||
33 | class SrsStream; | 35 | class SrsStream; |
34 | 36 | ||
35 | // E.4.3.1 VIDEODATA | 37 | // E.4.3.1 VIDEODATA |
@@ -162,6 +164,33 @@ enum SrsCodecAudioSoundType | @@ -162,6 +164,33 @@ enum SrsCodecAudioSoundType | ||
162 | }; | 164 | }; |
163 | 165 | ||
164 | /** | 166 | /** |
167 | +* buffer indicates the position and size. | ||
168 | +*/ | ||
169 | +struct SrsCodecBuffer | ||
170 | +{ | ||
171 | + int size; | ||
172 | + char* bytes; | ||
173 | +}; | ||
174 | + | ||
175 | +/** | ||
176 | +* the samples in the flv audio/video packet. | ||
177 | +*/ | ||
178 | +class SrsCodecSample | ||
179 | +{ | ||
180 | +public: | ||
181 | + int nb_buffers; | ||
182 | + SrsCodecBuffer buffers[SRS_MAX_CODEC_SAMPLE]; | ||
183 | + // CompositionTime, video_file_format_spec_v10_1.pdf, page 78. | ||
184 | + // cts = pts - dts, where dts = flvheader->timestamp. | ||
185 | + int32_t cts; | ||
186 | +public: | ||
187 | + SrsCodecSample(); | ||
188 | + virtual ~SrsCodecSample(); | ||
189 | + void clear(); | ||
190 | + int add_sample(char* bytes, int size); | ||
191 | +}; | ||
192 | + | ||
193 | +/** | ||
165 | * Annex E. The FLV File Format | 194 | * Annex E. The FLV File Format |
166 | */ | 195 | */ |
167 | class SrsCodec | 196 | class SrsCodec |
@@ -212,8 +241,8 @@ public: | @@ -212,8 +241,8 @@ public: | ||
212 | virtual ~SrsCodec(); | 241 | virtual ~SrsCodec(); |
213 | // the following function used for hls to build the codec info. | 242 | // the following function used for hls to build the codec info. |
214 | public: | 243 | public: |
215 | - virtual int audio_aac_demux(int8_t* data, int size); | ||
216 | - virtual int video_avc_demux(int8_t* data, int size); | 244 | + virtual int audio_aac_demux(int8_t* data, int size, SrsCodecSample* sample); |
245 | + virtual int video_avc_demux(int8_t* data, int size, SrsCodecSample* sample); | ||
217 | // the following function used to finger out the flv/rtmp packet detail. | 246 | // the following function used to finger out the flv/rtmp packet detail. |
218 | public: | 247 | public: |
219 | /** | 248 | /** |
@@ -31,11 +31,13 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -31,11 +31,13 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
31 | SrsHLS::SrsHLS() | 31 | SrsHLS::SrsHLS() |
32 | { | 32 | { |
33 | codec = new SrsCodec(); | 33 | codec = new SrsCodec(); |
34 | + sample = new SrsCodecSample(); | ||
34 | } | 35 | } |
35 | 36 | ||
36 | SrsHLS::~SrsHLS() | 37 | SrsHLS::~SrsHLS() |
37 | { | 38 | { |
38 | srs_freep(codec); | 39 | srs_freep(codec); |
40 | + srs_freep(sample); | ||
39 | } | 41 | } |
40 | 42 | ||
41 | int SrsHLS::on_publish() | 43 | int SrsHLS::on_publish() |
@@ -134,7 +136,12 @@ int SrsHLS::on_audio(SrsCommonMessage* audio) | @@ -134,7 +136,12 @@ int SrsHLS::on_audio(SrsCommonMessage* audio) | ||
134 | { | 136 | { |
135 | int ret = ERROR_SUCCESS; | 137 | int ret = ERROR_SUCCESS; |
136 | 138 | ||
137 | - if ((ret = codec->audio_aac_demux(audio->payload, audio->size)) != ERROR_SUCCESS) { | 139 | + sample->clear(); |
140 | + if ((ret = codec->audio_aac_demux(audio->payload, audio->size, sample)) != ERROR_SUCCESS) { | ||
141 | + return ret; | ||
142 | + } | ||
143 | + | ||
144 | + if (codec->audio_codec_id != SrsCodecAudioAAC) { | ||
138 | return ret; | 145 | return ret; |
139 | } | 146 | } |
140 | 147 | ||
@@ -145,7 +152,8 @@ int SrsHLS::on_video(SrsCommonMessage* video) | @@ -145,7 +152,8 @@ int SrsHLS::on_video(SrsCommonMessage* video) | ||
145 | { | 152 | { |
146 | int ret = ERROR_SUCCESS; | 153 | int ret = ERROR_SUCCESS; |
147 | 154 | ||
148 | - if ((ret = codec->video_avc_demux(video->payload, video->size)) != ERROR_SUCCESS) { | 155 | + sample->clear(); |
156 | + if ((ret = codec->video_avc_demux(video->payload, video->size, sample)) != ERROR_SUCCESS) { | ||
149 | return ret; | 157 | return ret; |
150 | } | 158 | } |
151 | 159 |
@@ -31,12 +31,14 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -31,12 +31,14 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
31 | 31 | ||
32 | class SrsOnMetaDataPacket; | 32 | class SrsOnMetaDataPacket; |
33 | class SrsCommonMessage; | 33 | class SrsCommonMessage; |
34 | +class SrsCodecSample; | ||
34 | class SrsCodec; | 35 | class SrsCodec; |
35 | 36 | ||
36 | class SrsHLS | 37 | class SrsHLS |
37 | { | 38 | { |
38 | private: | 39 | private: |
39 | SrsCodec* codec; | 40 | SrsCodec* codec; |
41 | + SrsCodecSample* sample; | ||
40 | public: | 42 | public: |
41 | SrsHLS(); | 43 | SrsHLS(); |
42 | virtual ~SrsHLS(); | 44 | virtual ~SrsHLS(); |
@@ -87,6 +87,16 @@ int SrsStream::pos() | @@ -87,6 +87,16 @@ int SrsStream::pos() | ||
87 | return p - bytes; | 87 | return p - bytes; |
88 | } | 88 | } |
89 | 89 | ||
90 | +int SrsStream::left() | ||
91 | +{ | ||
92 | + return size - pos(); | ||
93 | +} | ||
94 | + | ||
95 | +char* SrsStream::current() | ||
96 | +{ | ||
97 | + return p; | ||
98 | +} | ||
99 | + | ||
90 | int8_t SrsStream::read_1bytes() | 100 | int8_t SrsStream::read_1bytes() |
91 | { | 101 | { |
92 | srs_assert(require(1)); | 102 | srs_assert(require(1)); |
@@ -74,6 +74,11 @@ public: | @@ -74,6 +74,11 @@ public: | ||
74 | * tell the current pos. | 74 | * tell the current pos. |
75 | */ | 75 | */ |
76 | virtual int pos(); | 76 | virtual int pos(); |
77 | + /** | ||
78 | + * left size of bytes. | ||
79 | + */ | ||
80 | + virtual int left(); | ||
81 | + virtual char* current(); | ||
77 | public: | 82 | public: |
78 | /** | 83 | /** |
79 | * get 1bytes char from stream. | 84 | * get 1bytes char from stream. |
-
请 注册 或 登录 后发表评论