dsputil: Split bswap*_buf() off into a separate context

This commit is contained in:
Diego Biurrun
2014-02-13 17:57:05 +01:00
parent 7b9ef8d701
commit c67b449beb
40 changed files with 266 additions and 162 deletions

View File

@@ -33,7 +33,7 @@
#include "mpeg4audio.h"
#include "bytestream.h"
#include "bgmc.h"
#include "dsputil.h"
#include "bswapdsp.h"
#include "internal.h"
#include "libavutil/samplefmt.h"
#include "libavutil/crc.h"
@@ -192,7 +192,7 @@ typedef struct {
AVCodecContext *avctx;
ALSSpecificConfig sconf;
GetBitContext gb;
DSPContext dsp;
BswapDSPContext bdsp;
const AVCRC *crc_table;
uint32_t crc_org; ///< CRC value of the original input data
uint32_t crc; ///< CRC value calculated from decoded data
@@ -1536,9 +1536,9 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame_ptr,
sample++)
*dest++ = av_bswap16(src[sample]);
} else {
ctx->dsp.bswap_buf((uint32_t*)ctx->crc_buffer,
(uint32_t *)frame->data[0],
ctx->cur_frame_length * avctx->channels);
ctx->bdsp.bswap_buf((uint32_t *) ctx->crc_buffer,
(uint32_t *) frame->data[0],
ctx->cur_frame_length * avctx->channels);
}
crc_source = ctx->crc_buffer;
} else {
@@ -1756,7 +1756,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
}
}
ff_dsputil_init(&ctx->dsp, avctx);
ff_bswapdsp_init(&ctx->bdsp);
return 0;