return NULL;
}
+#if FF_API_CHILD_CLASS_NEXT
static const AVClass *codec_child_class_next(const AVClass *prev)
{
void *iter = NULL;
return c->priv_class;
return NULL;
}
+#endif
+
+static const AVClass *codec_child_class_iterate(void **iter)
+{
+ const AVCodec *c;
+ /* find next codec with priv options */
+ while (c = av_codec_iterate(iter))
+ if (c->priv_class)
+ return c->priv_class;
+ return NULL;
+}
static AVClassCategory get_category(void *ptr)
{
.version = LIBAVUTIL_VERSION_INT,
.log_level_offset_offset = offsetof(AVCodecContext, log_level_offset),
.child_next = codec_child_next,
+#if FF_API_CHILD_CLASS_NEXT
.child_class_next = codec_child_class_next,
+#endif
+ .child_class_iterate = codec_child_class_iterate,
.category = AV_CLASS_CATEGORY_ENCODER,
.get_category = get_category,
};
{NULL},
};
+#if FF_API_COPY_CONTEXT
static const AVClass av_frame_class = {
.class_name = "AVFrame",
.item_name = NULL,
{
return &av_frame_class;
}
+#endif
#define SROFFSET(x) offsetof(AVSubtitleRect,x)
{NULL},
};
+#if FF_API_COPY_CONTEXT
static const AVClass av_subtitle_rect_class = {
.class_name = "AVSubtitleRect",
.item_name = NULL,
{
return &av_subtitle_rect_class;
}
+#endif