avpriv_set_pts_info(st, 64, 1, 1);
else {
avpriv_set_pts_info(st, 64, s->framerate.den, s->framerate.num);
- st->avg_frame_rate = s->framerate;
+ st->avg_frame_rate = st->r_frame_rate = s->framerate;
}
if (s->width && s->height) {
* as a dictionary, so it can be used by filters like 'drawtext'.
*/
static int add_filename_as_pkt_side_data(char *filename, AVPacket *pkt) {
- int metadata_len, ret;
AVDictionary *d = NULL;
char *packed_metadata = NULL;
+ size_t metadata_len;
+ int ret;
av_dict_set(&d, "lavf.image2dec.source_path", filename, 0);
av_dict_set(&d, "lavf.image2dec.source_basename", av_basename(filename), 0);
.option = ff_img_options,
.version = LIBAVUTIL_VERSION_INT,
};
-AVInputFormat ff_image2_demuxer = {
+const AVInputFormat ff_image2_demuxer = {
.name = "image2",
.long_name = NULL_IF_CONFIG_SMALL("image2 sequence"),
.priv_data_size = sizeof(VideoDemuxData),
.option = ff_img2pipe_options,
.version = LIBAVUTIL_VERSION_INT,
};
-AVInputFormat ff_image2pipe_demuxer = {
+const AVInputFormat ff_image2pipe_demuxer = {
.name = "image2pipe",
.long_name = NULL_IF_CONFIG_SMALL("piped image2 sequence"),
.priv_data_size = sizeof(VideoDemuxData),
static int pbm_probe(const AVProbeData *p)
{
- return pnm_magic_check(p, 1) || pnm_magic_check(p, 4) ? pnm_probe(p) : 0;
+ return pnm_magic_check(p, 1) || pnm_magic_check(p, 4) || pnm_magic_check(p, 22) || pnm_magic_check(p, 54) ? pnm_probe(p) : 0;
}
static inline int pgmx_probe(const AVProbeData *p)
static int xbm_probe(const AVProbeData *p)
{
+ if (!memcmp(p->buf, "/* XBM X10 format */", 20))
+ return AVPROBE_SCORE_MAX;
+
if (!memcmp(p->buf, "#define", 7))
return AVPROBE_SCORE_MAX - 1;
return 0;
.option = ff_img2pipe_options,\
.version = LIBAVUTIL_VERSION_INT,\
};\
-AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\
+const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\
.name = AV_STRINGIFY(imgname) "_pipe",\
.long_name = NULL_IF_CONFIG_SMALL("piped " AV_STRINGIFY(imgname) " sequence"),\
.priv_data_size = sizeof(VideoDemuxData),\