[FFmpeg-cvslog] doc/examples/filtering_*: switch to codecpar

Clément Bœsch git at videolan.org
Tue Mar 28 12:40:09 EEST 2017


ffmpeg | branch: master | Clément Bœsch <cboesch at gopro.com> | Tue Mar 28 11:29:19 2017 +0200| [c3706bc255741faab426093c64fe16c2c879b3a2] | committer: Clément Bœsch

doc/examples/filtering_*: switch to codecpar

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c3706bc255741faab426093c64fe16c2c879b3a2
---

 doc/examples/filtering_audio.c | 9 +++++++--
 doc/examples/filtering_video.c | 9 +++++++--
 2 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/doc/examples/filtering_audio.c b/doc/examples/filtering_audio.c
index 6bb24a4..c6a930b 100644
--- a/doc/examples/filtering_audio.c
+++ b/doc/examples/filtering_audio.c
@@ -69,7 +69,12 @@ static int open_input_file(const char *filename)
         return ret;
     }
     audio_stream_index = ret;
-    dec_ctx = fmt_ctx->streams[audio_stream_index]->codec;
+
+    /* create decoding context */
+    dec_ctx = avcodec_alloc_context3(dec);
+    if (!dec_ctx)
+        return AVERROR(ENOMEM);
+    avcodec_parameters_to_context(dec_ctx, fmt_ctx->streams[audio_stream_index]->codecpar);
     av_opt_set_int(dec_ctx, "refcounted_frames", 1, 0);
 
     /* init the audio decoder */
@@ -281,7 +286,7 @@ int main(int argc, char **argv)
     }
 end:
     avfilter_graph_free(&filter_graph);
-    avcodec_close(dec_ctx);
+    avcodec_free_context(&dec_ctx);
     avformat_close_input(&fmt_ctx);
     av_frame_free(&frame);
     av_frame_free(&filt_frame);
diff --git a/doc/examples/filtering_video.c b/doc/examples/filtering_video.c
index 3dabf13..15116d3 100644
--- a/doc/examples/filtering_video.c
+++ b/doc/examples/filtering_video.c
@@ -72,7 +72,12 @@ static int open_input_file(const char *filename)
         return ret;
     }
     video_stream_index = ret;
-    dec_ctx = fmt_ctx->streams[video_stream_index]->codec;
+
+    /* create decoding context */
+    dec_ctx = avcodec_alloc_context3(dec);
+    if (!dec_ctx)
+        return AVERROR(ENOMEM);
+    avcodec_parameters_to_context(dec_ctx, fmt_ctx->streams[video_stream_index]->codecpar);
     av_opt_set_int(dec_ctx, "refcounted_frames", 1, 0);
 
     /* init the video decoder */
@@ -266,7 +271,7 @@ int main(int argc, char **argv)
     }
 end:
     avfilter_graph_free(&filter_graph);
-    avcodec_close(dec_ctx);
+    avcodec_free_context(&dec_ctx);
     avformat_close_input(&fmt_ctx);
     av_frame_free(&frame);
     av_frame_free(&filt_frame);



More information about the ffmpeg-cvslog mailing list