55 if (!
s->nb_chapters) {
58 for (
unsigned i = 0;
i <
s->nb_chapters;
i++)
59 if (
s->chapters[
i]->id ==
id)
60 chapter =
s->chapters[
i];
78 chapter->
start = start;
88 for (
unsigned i = 0;
i <
s->nb_streams;
i++)
91 if (
s->streams[
i]->attached_pic.size <= 0) {
93 "Attached picture on stream %d has invalid size, "
99 &
s->streams[
i]->attached_pic,
143 uint64_t channel_layout,
int32_t sample_rate,
165 bytestream_put_le32(&
data, sample_rate);
193 static const uint8_t avci100_1080p_extradata[] = {
195 0x00, 0x00, 0x00, 0x01, 0x67, 0x7a, 0x10, 0x29,
196 0xb6, 0xd4, 0x20, 0x22, 0x33, 0x19, 0xc6, 0x63,
197 0x23, 0x21, 0x01, 0x11, 0x98, 0xce, 0x33, 0x19,
198 0x18, 0x21, 0x02, 0x56, 0xb9, 0x3d, 0x7d, 0x7e,
199 0x4f, 0xe3, 0x3f, 0x11, 0xf1, 0x9e, 0x08, 0xb8,
200 0x8c, 0x54, 0x43, 0xc0, 0x78, 0x02, 0x27, 0xe2,
201 0x70, 0x1e, 0x30, 0x10, 0x10, 0x14, 0x00, 0x00,
202 0x03, 0x00, 0x04, 0x00, 0x00, 0x03, 0x00, 0xca,
203 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
205 0x00, 0x00, 0x00, 0x01, 0x68, 0xce, 0x33, 0x48,
208 static const uint8_t avci100_1080i_extradata[] = {
210 0x00, 0x00, 0x00, 0x01, 0x67, 0x7a, 0x10, 0x29,
211 0xb6, 0xd4, 0x20, 0x22, 0x33, 0x19, 0xc6, 0x63,
212 0x23, 0x21, 0x01, 0x11, 0x98, 0xce, 0x33, 0x19,
213 0x18, 0x21, 0x03, 0x3a, 0x46, 0x65, 0x6a, 0x65,
214 0x24, 0xad, 0xe9, 0x12, 0x32, 0x14, 0x1a, 0x26,
215 0x34, 0xad, 0xa4, 0x41, 0x82, 0x23, 0x01, 0x50,
216 0x2b, 0x1a, 0x24, 0x69, 0x48, 0x30, 0x40, 0x2e,
217 0x11, 0x12, 0x08, 0xc6, 0x8c, 0x04, 0x41, 0x28,
218 0x4c, 0x34, 0xf0, 0x1e, 0x01, 0x13, 0xf2, 0xe0,
219 0x3c, 0x60, 0x20, 0x20, 0x28, 0x00, 0x00, 0x03,
220 0x00, 0x08, 0x00, 0x00, 0x03, 0x01, 0x94, 0x20,
222 0x00, 0x00, 0x00, 0x01, 0x68, 0xce, 0x33, 0x48,
225 static const uint8_t avci50_1080p_extradata[] = {
227 0x00, 0x00, 0x00, 0x01, 0x67, 0x6e, 0x10, 0x28,
228 0xa6, 0xd4, 0x20, 0x32, 0x33, 0x0c, 0x71, 0x18,
229 0x88, 0x62, 0x10, 0x19, 0x19, 0x86, 0x38, 0x8c,
230 0x44, 0x30, 0x21, 0x02, 0x56, 0x4e, 0x6f, 0x37,
231 0xcd, 0xf9, 0xbf, 0x81, 0x6b, 0xf3, 0x7c, 0xde,
232 0x6e, 0x6c, 0xd3, 0x3c, 0x05, 0xa0, 0x22, 0x7e,
233 0x5f, 0xfc, 0x00, 0x0c, 0x00, 0x13, 0x8c, 0x04,
234 0x04, 0x05, 0x00, 0x00, 0x03, 0x00, 0x01, 0x00,
235 0x00, 0x03, 0x00, 0x32, 0x84, 0x00, 0x00, 0x00,
237 0x00, 0x00, 0x00, 0x01, 0x68, 0xee, 0x31, 0x12,
240 static const uint8_t avci50_1080i_extradata[] = {
242 0x00, 0x00, 0x00, 0x01, 0x67, 0x6e, 0x10, 0x28,
243 0xa6, 0xd4, 0x20, 0x32, 0x33, 0x0c, 0x71, 0x18,
244 0x88, 0x62, 0x10, 0x19, 0x19, 0x86, 0x38, 0x8c,
245 0x44, 0x30, 0x21, 0x02, 0x56, 0x4e, 0x6e, 0x61,
246 0x87, 0x3e, 0x73, 0x4d, 0x98, 0x0c, 0x03, 0x06,
247 0x9c, 0x0b, 0x73, 0xe6, 0xc0, 0xb5, 0x18, 0x63,
248 0x0d, 0x39, 0xe0, 0x5b, 0x02, 0xd4, 0xc6, 0x19,
249 0x1a, 0x79, 0x8c, 0x32, 0x34, 0x24, 0xf0, 0x16,
250 0x81, 0x13, 0xf7, 0xff, 0x80, 0x02, 0x00, 0x01,
251 0xf1, 0x80, 0x80, 0x80, 0xa0, 0x00, 0x00, 0x03,
252 0x00, 0x20, 0x00, 0x00, 0x06, 0x50, 0x80, 0x00,
254 0x00, 0x00, 0x00, 0x01, 0x68, 0xee, 0x31, 0x12,
257 static const uint8_t avci100_720p_extradata[] = {
259 0x00, 0x00, 0x00, 0x01, 0x67, 0x7a, 0x10, 0x29,
260 0xb6, 0xd4, 0x20, 0x2a, 0x33, 0x1d, 0xc7, 0x62,
261 0xa1, 0x08, 0x40, 0x54, 0x66, 0x3b, 0x8e, 0xc5,
262 0x42, 0x02, 0x10, 0x25, 0x64, 0x2c, 0x89, 0xe8,
263 0x85, 0xe4, 0x21, 0x4b, 0x90, 0x83, 0x06, 0x95,
264 0xd1, 0x06, 0x46, 0x97, 0x20, 0xc8, 0xd7, 0x43,
265 0x08, 0x11, 0xc2, 0x1e, 0x4c, 0x91, 0x0f, 0x01,
266 0x40, 0x16, 0xec, 0x07, 0x8c, 0x04, 0x04, 0x05,
267 0x00, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x03,
268 0x00, 0x64, 0x84, 0x00, 0x00, 0x00, 0x00, 0x00,
270 0x00, 0x00, 0x00, 0x01, 0x68, 0xce, 0x31, 0x12,
273 static const uint8_t avci50_720p_extradata[] = {
275 0x00, 0x00, 0x00, 0x01, 0x67, 0x6e, 0x10, 0x20,
276 0xa6, 0xd4, 0x20, 0x32, 0x33, 0x0c, 0x71, 0x18,
277 0x88, 0x62, 0x10, 0x19, 0x19, 0x86, 0x38, 0x8c,
278 0x44, 0x30, 0x21, 0x02, 0x56, 0x4e, 0x6f, 0x37,
279 0xcd, 0xf9, 0xbf, 0x81, 0x6b, 0xf3, 0x7c, 0xde,
280 0x6e, 0x6c, 0xd3, 0x3c, 0x0f, 0x01, 0x6e, 0xff,
281 0xc0, 0x00, 0xc0, 0x01, 0x38, 0xc0, 0x40, 0x40,
282 0x50, 0x00, 0x00, 0x03, 0x00, 0x10, 0x00, 0x00,
283 0x06, 0x48, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00,
285 0x00, 0x00, 0x00, 0x01, 0x68, 0xee, 0x31, 0x12,
294 data = avci100_1080p_extradata;
295 size =
sizeof(avci100_1080p_extradata);
297 data = avci100_1080i_extradata;
298 size =
sizeof(avci100_1080i_extradata);
302 data = avci50_1080p_extradata;
303 size =
sizeof(avci50_1080p_extradata);
305 data = avci50_1080i_extradata;
306 size =
sizeof(avci50_1080i_extradata);
309 data = avci100_720p_extradata;
310 size =
sizeof(avci100_720p_extradata);
312 data = avci50_720p_extradata;
313 size =
sizeof(avci50_720p_extradata);
344 for (
unsigned i = 0;
i <
s->nb_streams;
i++)
345 if (
s->streams[
i]->id ==
id)