diff options
author | Stefano Sabatini <stefasab@gmail.com> | 2014-02-02 18:52:11 +0400 |
---|---|---|
committer | Stefano Sabatini <stefasab@gmail.com> | 2014-02-02 18:54:26 +0400 |
commit | e756effd585844422eb8e95fd26ab92d46f67f74 (patch) | |
tree | a2ae1d62f77013bafbbf6fe0f466f274dff68cb9 /libavfilter/src_movie.c | |
parent | bf96e547b738c5058317177fb504aae840b780e1 (diff) |
lavfi/movie: fix display of pushed frame information
It was broken since 7e350379f87e7f7.
Also fix warnings:
libavfilter/src_movie.c: In function ‘describe_frame_to_str’:
libavfilter/src_movie.c:392:5: warning: ‘type’ is deprecated (declared at ./libavutil/frame.h:313) [-Wdeprecated-declarations]
libavfilter/src_movie.c:408:9: warning: ‘type’ is deprecated (declared at ./libavutil/frame.h:313) [-Wdeprecated-declarations]
Diffstat (limited to 'libavfilter/src_movie.c')
-rw-r--r-- | libavfilter/src_movie.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/libavfilter/src_movie.c b/libavfilter/src_movie.c index d1289e2fe8..a1bb843166 100644 --- a/libavfilter/src_movie.c +++ b/libavfilter/src_movie.c @@ -386,10 +386,10 @@ static int movie_config_output_props(AVFilterLink *outlink) } static char *describe_frame_to_str(char *dst, size_t dst_size, - AVFrame *frame, - AVFilterLink *link) + AVFrame *frame, enum AVMediaType frame_type, + AVFilterLink *link) { - switch (frame->type) { + switch (frame_type) { case AVMEDIA_TYPE_VIDEO: snprintf(dst, dst_size, "video pts:%s time:%s size:%dx%d aspect:%d/%d", @@ -405,15 +405,12 @@ static char *describe_frame_to_str(char *dst, size_t dst_size, frame->nb_samples); break; default: - snprintf(dst, dst_size, "%s BUG", av_get_media_type_string(frame->type)); + snprintf(dst, dst_size, "%s BUG", av_get_media_type_string(frame_type)); break; } return dst; } -#define describe_frameref(f, link) \ - describe_frame_to_str((char[1024]){0}, 1024, f, link) - static int rewind_file(AVFilterContext *ctx) { MovieContext *movie = ctx->priv; @@ -452,6 +449,7 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) { MovieContext *movie = ctx->priv; AVPacket *pkt = &movie->pkt; + enum AVMediaType frame_type; MovieStream *st; int ret, got_frame = 0, pkt_out_id; AVFilterLink *outlink; @@ -501,7 +499,8 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) if (!movie->frame) return AVERROR(ENOMEM); - switch (st->st->codec->codec_type) { + frame_type = st->st->codec->codec_type; + switch (frame_type) { case AVMEDIA_TYPE_VIDEO: ret = avcodec_decode_video2(st->st->codec, movie->frame, &got_frame, pkt); break; @@ -537,10 +536,10 @@ static int movie_push_frame(AVFilterContext *ctx, unsigned out_id) return 0; } + movie->frame->pts = av_frame_get_best_effort_timestamp(movie->frame); av_dlog(ctx, "movie_push_frame(): file:'%s' %s\n", movie->file_name, - describe_frameref(movie->frame, outlink)); + describe_frame_to_str((char[1024]){0}, 1024, movie->frame, frame_type, outlink)); - movie->frame->pts = av_frame_get_best_effort_timestamp(movie->frame); ret = ff_filter_frame(outlink, movie->frame); movie->frame = NULL; |