29 #define CDXL_HEADER_SIZE 32
63 if (p->
buf[18] || !p->
buf[19])
92 "Could not parse framerate: %s.\n", cdxl->
framerate);
111 uint32_t current_size, video_size, image_size;
123 if (cdxl->
header[0] != 1) {
133 if (
FFALIGN(width, 16) * (uint64_t)height * cdxl->
header[19] > INT_MAX)
135 image_size =
FFALIGN(width, 16) * height * cdxl->
header[19] / 8;
136 video_size = palette_size + image_size;
138 if (palette_size > 512)
152 if (cdxl->
header[1] & 0x10) {
184 if (audio_size + video_size && cdxl->
filesize > 0) {
185 frames = cdxl->
filesize / (audio_size + video_size);
190 st->
duration = frames * (int64_t)audio_size;
221 #define OFFSET(x) offsetof(CDXLDemuxContext, x)
242 .extensions =
"cdxl,xl",
244 .priv_class = &cdxl_demuxer_class,