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);
207 static const uint8_t avci100_1080p_extradata[] = {
209 0x00, 0x00, 0x00, 0x01, 0x67, 0x7a, 0x10, 0x29,
210 0xb6, 0xd4, 0x20, 0x22, 0x33, 0x19, 0xc6, 0x63,
211 0x23, 0x21, 0x01, 0x11, 0x98, 0xce, 0x33, 0x19,
212 0x18, 0x21, 0x02, 0x56, 0xb9, 0x3d, 0x7d, 0x7e,
213 0x4f, 0xe3, 0x3f, 0x11, 0xf1, 0x9e, 0x08, 0xb8,
214 0x8c, 0x54, 0x43, 0xc0, 0x78, 0x02, 0x27, 0xe2,
215 0x70, 0x1e, 0x30, 0x10, 0x10, 0x14, 0x00, 0x00,
216 0x03, 0x00, 0x04, 0x00, 0x00, 0x03, 0x00, 0xca,
217 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
219 0x00, 0x00, 0x00, 0x01, 0x68, 0xce, 0x33, 0x48,
222 static const uint8_t avci100_1080i_extradata[] = {
224 0x00, 0x00, 0x00, 0x01, 0x67, 0x7a, 0x10, 0x29,
225 0xb6, 0xd4, 0x20, 0x22, 0x33, 0x19, 0xc6, 0x63,
226 0x23, 0x21, 0x01, 0x11, 0x98, 0xce, 0x33, 0x19,
227 0x18, 0x21, 0x03, 0x3a, 0x46, 0x65, 0x6a, 0x65,
228 0x24, 0xad, 0xe9, 0x12, 0x32, 0x14, 0x1a, 0x26,
229 0x34, 0xad, 0xa4, 0x41, 0x82, 0x23, 0x01, 0x50,
230 0x2b, 0x1a, 0x24, 0x69, 0x48, 0x30, 0x40, 0x2e,
231 0x11, 0x12, 0x08, 0xc6, 0x8c, 0x04, 0x41, 0x28,
232 0x4c, 0x34, 0xf0, 0x1e, 0x01, 0x13, 0xf2, 0xe0,
233 0x3c, 0x60, 0x20, 0x20, 0x28, 0x00, 0x00, 0x03,
234 0x00, 0x08, 0x00, 0x00, 0x03, 0x01, 0x94, 0x20,
236 0x00, 0x00, 0x00, 0x01, 0x68, 0xce, 0x33, 0x48,
239 static const uint8_t avci50_1080p_extradata[] = {
241 0x00, 0x00, 0x00, 0x01, 0x67, 0x6e, 0x10, 0x28,
242 0xa6, 0xd4, 0x20, 0x32, 0x33, 0x0c, 0x71, 0x18,
243 0x88, 0x62, 0x10, 0x19, 0x19, 0x86, 0x38, 0x8c,
244 0x44, 0x30, 0x21, 0x02, 0x56, 0x4e, 0x6f, 0x37,
245 0xcd, 0xf9, 0xbf, 0x81, 0x6b, 0xf3, 0x7c, 0xde,
246 0x6e, 0x6c, 0xd3, 0x3c, 0x05, 0xa0, 0x22, 0x7e,
247 0x5f, 0xfc, 0x00, 0x0c, 0x00, 0x13, 0x8c, 0x04,
248 0x04, 0x05, 0x00, 0x00, 0x03, 0x00, 0x01, 0x00,
249 0x00, 0x03, 0x00, 0x32, 0x84, 0x00, 0x00, 0x00,
251 0x00, 0x00, 0x00, 0x01, 0x68, 0xee, 0x31, 0x12,
254 static const uint8_t avci50_1080i_extradata[] = {
256 0x00, 0x00, 0x00, 0x01, 0x67, 0x6e, 0x10, 0x28,
257 0xa6, 0xd4, 0x20, 0x32, 0x33, 0x0c, 0x71, 0x18,
258 0x88, 0x62, 0x10, 0x19, 0x19, 0x86, 0x38, 0x8c,
259 0x44, 0x30, 0x21, 0x02, 0x56, 0x4e, 0x6e, 0x61,
260 0x87, 0x3e, 0x73, 0x4d, 0x98, 0x0c, 0x03, 0x06,
261 0x9c, 0x0b, 0x73, 0xe6, 0xc0, 0xb5, 0x18, 0x63,
262 0x0d, 0x39, 0xe0, 0x5b, 0x02, 0xd4, 0xc6, 0x19,
263 0x1a, 0x79, 0x8c, 0x32, 0x34, 0x24, 0xf0, 0x16,
264 0x81, 0x13, 0xf7, 0xff, 0x80, 0x02, 0x00, 0x01,
265 0xf1, 0x80, 0x80, 0x80, 0xa0, 0x00, 0x00, 0x03,
266 0x00, 0x20, 0x00, 0x00, 0x06, 0x50, 0x80, 0x00,
268 0x00, 0x00, 0x00, 0x01, 0x68, 0xee, 0x31, 0x12,
271 static const uint8_t avci100_720p_extradata[] = {
273 0x00, 0x00, 0x00, 0x01, 0x67, 0x7a, 0x10, 0x29,
274 0xb6, 0xd4, 0x20, 0x2a, 0x33, 0x1d, 0xc7, 0x62,
275 0xa1, 0x08, 0x40, 0x54, 0x66, 0x3b, 0x8e, 0xc5,
276 0x42, 0x02, 0x10, 0x25, 0x64, 0x2c, 0x89, 0xe8,
277 0x85, 0xe4, 0x21, 0x4b, 0x90, 0x83, 0x06, 0x95,
278 0xd1, 0x06, 0x46, 0x97, 0x20, 0xc8, 0xd7, 0x43,
279 0x08, 0x11, 0xc2, 0x1e, 0x4c, 0x91, 0x0f, 0x01,
280 0x40, 0x16, 0xec, 0x07, 0x8c, 0x04, 0x04, 0x05,
281 0x00, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x03,
282 0x00, 0x64, 0x84, 0x00, 0x00, 0x00, 0x00, 0x00,
284 0x00, 0x00, 0x00, 0x01, 0x68, 0xce, 0x31, 0x12,
287 static const uint8_t avci50_720p_extradata[] = {
289 0x00, 0x00, 0x00, 0x01, 0x67, 0x6e, 0x10, 0x20,
290 0xa6, 0xd4, 0x20, 0x32, 0x33, 0x0c, 0x71, 0x18,
291 0x88, 0x62, 0x10, 0x19, 0x19, 0x86, 0x38, 0x8c,
292 0x44, 0x30, 0x21, 0x02, 0x56, 0x4e, 0x6f, 0x37,
293 0xcd, 0xf9, 0xbf, 0x81, 0x6b, 0xf3, 0x7c, 0xde,
294 0x6e, 0x6c, 0xd3, 0x3c, 0x0f, 0x01, 0x6e, 0xff,
295 0xc0, 0x00, 0xc0, 0x01, 0x38, 0xc0, 0x40, 0x40,
296 0x50, 0x00, 0x00, 0x03, 0x00, 0x10, 0x00, 0x00,
297 0x06, 0x48, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00,
299 0x00, 0x00, 0x00, 0x01, 0x68, 0xee, 0x31, 0x12,
308 data = avci100_1080p_extradata;
309 size =
sizeof(avci100_1080p_extradata);
311 data = avci100_1080i_extradata;
312 size =
sizeof(avci100_1080i_extradata);
316 data = avci50_1080p_extradata;
317 size =
sizeof(avci50_1080p_extradata);
319 data = avci50_1080i_extradata;
320 size =
sizeof(avci50_1080i_extradata);
323 data = avci100_720p_extradata;
324 size =
sizeof(avci100_720p_extradata);
326 data = avci50_720p_extradata;
327 size =
sizeof(avci50_720p_extradata);
358 for (
unsigned i = 0;
i <
s->nb_streams;
i++)
359 if (
s->streams[
i]->id ==
id)