#ifndef LAVF_API_MAX_STREAMS
#define LAVF_API_MAX_STREAMS (LIBAVFORMAT_VERSION_MAJOR < 53)
#endif
+#ifndef LAVF_API_OLD_METADATA
+#define LAVF_API_OLD_METADATA (LIBAVFORMAT_VERSION_MAJOR < 53)
+#endif
/**
* I return the LIBAVFORMAT_VERSION_INT constant. You got
AVMetadataTag *
av_metadata_get(AVMetadata *m, const char *key, const AVMetadataTag *prev, int flags);
-#if LIBAVFORMAT_VERSION_MAJOR == 52
+#if LAVF_API_OLD_METADATA
/**
* Set the given tag in *pm, overwriting an existing tag.
*
*/
int64_t duration;
-#if LIBAVFORMAT_VERSION_INT < (53<<16)
+#if LAVF_API_OLD_METADATA
char language[4]; /**< ISO 639-2/B 3-letter language code (empty string if undefined) */
#endif
#if LIBAVFORMAT_VERSION_INT < (53<<16)
int64_t unused[4+1];
+#endif
+#if LAVF_API_OLD_METADATA
char *filename; /**< source filename of the stream */
#endif
*/
typedef struct AVProgram {
int id;
-#if LIBAVFORMAT_VERSION_INT < (53<<16)
+#if LAVF_API_OLD_METADATA
char *provider_name; ///< network name for DVB streams
char *name; ///< service name for DVB streams
#endif
int id; ///< unique ID to identify the chapter
AVRational time_base; ///< time base in which the start/end timestamps are specified
int64_t start, end; ///< chapter start/end time in time_base units
-#if LIBAVFORMAT_VERSION_INT < (53<<16)
+#if LAVF_API_OLD_METADATA
char *title; ///< chapter title
#endif
AVMetadata *metadata;
char filename[1024]; /**< input or output filename */
/* stream info */
int64_t timestamp;
-#if LIBAVFORMAT_VERSION_INT < (53<<16)
+#if LAVF_API_OLD_METADATA
char title[512];
char author[512];
char copyright[512];
return 0;
}
-#if LIBAVFORMAT_VERSION_MAJOR == 52
+#if LAVF_API_OLD_METADATA
int av_metadata_set(AVMetadata **pm, const char *key, const char *value)
{
return av_metadata_set2(pm, key, value, 0);
const char *generic;
};
-#if LIBAVFORMAT_VERSION_MAJOR < 53
+#if LAVF_API_OLD_METADATA
void ff_metadata_demux_compat(AVFormatContext *s);
void ff_metadata_mux_compat(AVFormatContext *s);
#endif
#include "metadata.h"
#include "libavutil/avstring.h"
-#if LIBAVFORMAT_VERSION_MAJOR < 53
+#if LAVF_API_OLD_METADATA
#define SIZE_OFFSET(x) sizeof(((AVFormatContext*)0)->x),offsetof(AVFormatContext,x)
}
}
-#endif /* LIBAVFORMAT_VERSION_MAJOR < 53 */
+#endif /* LAVF_API_OLD_METADATA */
{"noparse", "disable AVParsers, this needs nofillin too", 0, FF_OPT_TYPE_CONST, AVFMT_FLAG_NOPARSE, INT_MIN, INT_MAX, D, "fflags"},
{"igndts", "ignore dts", 0, FF_OPT_TYPE_CONST, AVFMT_FLAG_IGNDTS, INT_MIN, INT_MAX, D, "fflags"},
{"rtphint", "add rtp hinting", 0, FF_OPT_TYPE_CONST, AVFMT_FLAG_RTP_HINT, INT_MIN, INT_MAX, E, "fflags"},
-#if LIBAVFORMAT_VERSION_INT < (53<<16)
+#if LAVF_API_OLD_METADATA
{"track", " set the track number", OFFSET(track), FF_OPT_TYPE_INT, DEFAULT, 0, INT_MAX, E},
{"year", "set the year", OFFSET(year), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, E},
#endif
if (pb && !ic->data_offset)
ic->data_offset = url_ftell(ic->pb);
-#if LIBAVFORMAT_VERSION_MAJOR < 53
+#if LAVF_API_OLD_METADATA
ff_metadata_demux_compat(ic);
#endif
av_free(st->index_entries);
av_free(st->codec->extradata);
av_free(st->codec);
-#if LIBAVFORMAT_VERSION_INT < (53<<16)
+#if LAVF_API_OLD_METADATA
av_free(st->filename);
#endif
av_free(st->priv_data);
av_free(st);
}
for(i=s->nb_programs-1; i>=0; i--) {
-#if LIBAVFORMAT_VERSION_INT < (53<<16)
+#if LAVF_API_OLD_METADATA
av_freep(&s->programs[i]->provider_name);
av_freep(&s->programs[i]->name);
#endif
flush_packet_queue(s);
av_freep(&s->priv_data);
while(s->nb_chapters--) {
-#if LIBAVFORMAT_VERSION_INT < (53<<16)
+#if LAVF_API_OLD_METADATA
av_free(s->chapters[s->nb_chapters]->title);
#endif
av_metadata_free(&s->chapters[s->nb_chapters]->metadata);
return NULL;
dynarray_add(&s->chapters, &s->nb_chapters, chapter);
}
-#if LIBAVFORMAT_VERSION_INT < (53<<16)
+#if LAVF_API_OLD_METADATA
av_free(chapter->title);
#endif
av_metadata_set2(&chapter->metadata, "title", title, 0);
return AVERROR(ENOMEM);
}
-#if LIBAVFORMAT_VERSION_MAJOR < 53
+#if LAVF_API_OLD_METADATA
ff_metadata_mux_compat(s);
#endif