[FFmpeg-cvslog] libschroedingerenc: use the AVFrame API properly.
Anton Khirnov
git at videolan.org
Sun Nov 17 13:03:41 CET 2013
ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Sat Nov 9 10:14:46 2013 +0100| [372262853b31cfde542ce1e3e1c154e590e35476] | committer: Anton Khirnov
libschroedingerenc: use the AVFrame API properly.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=372262853b31cfde542ce1e3e1c154e590e35476
---
libavcodec/libschroedingerenc.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/libavcodec/libschroedingerenc.c b/libavcodec/libschroedingerenc.c
index e4789ee..11cc0eb 100644
--- a/libavcodec/libschroedingerenc.c
+++ b/libavcodec/libschroedingerenc.c
@@ -49,9 +49,6 @@ typedef struct SchroEncoderParams {
/** Schroedinger frame format */
SchroFrameFormat frame_format;
- /** frame being encoded */
- AVFrame picture;
-
/** frame size */
int frame_size;
@@ -164,7 +161,9 @@ static av_cold int libschroedinger_encode_init(AVCodecContext *avctx)
avctx->width,
avctx->height);
- avctx->coded_frame = &p_schro_params->picture;
+ avctx->coded_frame = av_frame_alloc();
+ if (!avctx->coded_frame)
+ return AVERROR(ENOMEM);
if (!avctx->gop_size) {
schro_encoder_setting_set_double(p_schro_params->encoder,
@@ -432,6 +431,8 @@ static int libschroedinger_encode_close(AVCodecContext *avctx)
/* Free the video format structure. */
av_freep(&p_schro_params->format);
+ av_frame_free(&avctx->coded_frame);
+
return 0;
}
More information about the ffmpeg-cvslog
mailing list