On Wed,  9 Jan 2013 12:11:58 -0500, Justin Ruggles <[email protected]> 
wrote:
> ---
>  libavcodec/qcelpdec.c |   14 +++++---------
>  1 files changed, 5 insertions(+), 9 deletions(-)
> 
> diff --git a/libavcodec/qcelpdec.c b/libavcodec/qcelpdec.c
> index b702175..48cf555 100644
> --- a/libavcodec/qcelpdec.c
> +++ b/libavcodec/qcelpdec.c
> @@ -53,7 +53,6 @@ typedef enum {
>  } qcelp_packet_rate;
>  
>  typedef struct {
> -    AVFrame           avframe;
>      GetBitContext     gb;
>      qcelp_packet_rate bitrate;
>      QCELPFrame        frame;    /**< unpacked data frame */
> @@ -97,9 +96,6 @@ static av_cold int qcelp_decode_init(AVCodecContext *avctx)
>      for (i = 0; i < 10; i++)
>          q->prev_lspf[i] = (i + 1) / 11.;
>  
> -    avcodec_get_frame_defaults(&q->avframe);
> -    avctx->coded_frame = &q->avframe;
> -
>      return 0;
>  }
>  
> @@ -691,6 +687,7 @@ static int qcelp_decode_frame(AVCodecContext *avctx, void 
> *data,
>      const uint8_t *buf = avpkt->data;
>      int buf_size       = avpkt->size;
>      QCELPContext *q    = avctx->priv_data;
> +    AVFrame *frame     = data;
>      float *outbuffer;
>      int   i, ret;
>      float quantized_lspf[10], lpc[10];
> @@ -698,12 +695,12 @@ static int qcelp_decode_frame(AVCodecContext *avctx, 
> void *data,
>      float *formant_mem;
>  
>      /* get output buffer */
> -    q->avframe.nb_samples = 160;
> -    if ((ret = ff_get_buffer(avctx, &q->avframe)) < 0) {
> +    frame->nb_samples = 160;
> +    if ((ret = ff_get_buffer(avctx, frame)) < 0) {
>          av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
>          return ret;
>      }
> -    outbuffer = (float *)q->avframe.data[0];
> +    outbuffer = (float *)frame->data[0];
>  
>      if ((q->bitrate = determine_bitrate(avctx, buf_size, &buf)) == I_F_Q) {
>          warn_insufficient_frame_quality(avctx, "bitrate cannot be 
> determined.");
> @@ -786,8 +783,7 @@ erasure:
>      memcpy(q->prev_lspf, quantized_lspf, sizeof(q->prev_lspf));
>      q->prev_bitrate  = q->bitrate;
>  
> -    *got_frame_ptr   = 1;
> -    *(AVFrame *)data = q->avframe;
> +    *got_frame_ptr = 1;
>  
>      return buf_size;
>  }
> -- 
> 1.7.1
> 

Ok.

-- 
Anton Khirnov
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to