Commit 37226285 authored by Anton Khirnov's avatar Anton Khirnov

libschroedingerenc: use the AVFrame API properly.

parent 97168b20
...@@ -49,9 +49,6 @@ typedef struct SchroEncoderParams { ...@@ -49,9 +49,6 @@ typedef struct SchroEncoderParams {
/** Schroedinger frame format */ /** Schroedinger frame format */
SchroFrameFormat frame_format; SchroFrameFormat frame_format;
/** frame being encoded */
AVFrame picture;
/** frame size */ /** frame size */
int frame_size; int frame_size;
...@@ -164,7 +161,9 @@ static av_cold int libschroedinger_encode_init(AVCodecContext *avctx) ...@@ -164,7 +161,9 @@ static av_cold int libschroedinger_encode_init(AVCodecContext *avctx)
avctx->width, avctx->width,
avctx->height); 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) { if (!avctx->gop_size) {
schro_encoder_setting_set_double(p_schro_params->encoder, schro_encoder_setting_set_double(p_schro_params->encoder,
...@@ -432,6 +431,8 @@ static int libschroedinger_encode_close(AVCodecContext *avctx) ...@@ -432,6 +431,8 @@ static int libschroedinger_encode_close(AVCodecContext *avctx)
/* Free the video format structure. */ /* Free the video format structure. */
av_freep(&p_schro_params->format); av_freep(&p_schro_params->format);
av_frame_free(&avctx->coded_frame);
return 0; return 0;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment