From 0bbd874743538103c74f3c81df4f25b1bb3f1b2e Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Sat, 5 May 2012 13:11:53 +0200 Subject: [PATCH] lavfi: support audio in avfilter_copy_frame_props(). --- libavfilter/avfilter.c | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index d42659112a..91eb7f97cf 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -684,19 +684,26 @@ int avfilter_init_filter(AVFilterContext *filter, const char *args, void *opaque int avfilter_copy_frame_props(AVFilterBufferRef *dst, const AVFrame *src) { - if (dst->type != AVMEDIA_TYPE_VIDEO) - return AVERROR(EINVAL); - dst->pts = src->pts; dst->format = src->format; - dst->video->w = src->width; - dst->video->h = src->height; - dst->video->pixel_aspect = src->sample_aspect_ratio; - dst->video->interlaced = src->interlaced_frame; - dst->video->top_field_first = src->top_field_first; - dst->video->key_frame = src->key_frame; - dst->video->pict_type = src->pict_type; + switch (dst->type) { + case AVMEDIA_TYPE_VIDEO: + dst->video->w = src->width; + dst->video->h = src->height; + dst->video->pixel_aspect = src->sample_aspect_ratio; + dst->video->interlaced = src->interlaced_frame; + dst->video->top_field_first = src->top_field_first; + dst->video->key_frame = src->key_frame; + dst->video->pict_type = src->pict_type; + break; + case AVMEDIA_TYPE_AUDIO: + dst->audio->sample_rate = src->sample_rate; + dst->audio->channel_layout = src->channel_layout; + break; + default: + return AVERROR(EINVAL); + } return 0; }