- const uint8_t *src = buf;
- int16_t *samples = data;
- int delta;
-
- buf_size = FFMIN(buf_size, *data_size/2);
+ const uint8_t *buf_end = buf + avpkt->size;
+ int16_t *samples;
+ int delta, ret;
+
+ /* get output buffer */
+ cin->frame.nb_samples = avpkt->size - cin->initial_decode_frame;
+ if ((ret = avctx->get_buffer(avctx, &cin->frame)) < 0) {
+ av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
+ return ret;
+ }
+ samples = (int16_t *)cin->frame.data[0];