mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2026-01-04 13:20:01 +01:00
Merge commit 'c67b449bebbe0b35c73b203683e77a0a649bc765'
* commit 'c67b449bebbe0b35c73b203683e77a0a649bc765': dsputil: Split bswap*_buf() off into a separate context Conflicts: configure libavcodec/4xm.c libavcodec/ac3dec.c libavcodec/ac3dec.h libavcodec/apedec.c libavcodec/eamad.c libavcodec/flacenc.c libavcodec/fraps.c libavcodec/huffyuv.c libavcodec/huffyuvdec.c libavcodec/motionpixels.c libavcodec/truemotion2.c libavcodec/x86/Makefile libavcodec/x86/dsputil_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
|
||||
#include "avcodec.h"
|
||||
#include "get_bits.h"
|
||||
#include "dsputil.h"
|
||||
#include "bswapdsp.h"
|
||||
#include "internal.h"
|
||||
|
||||
#define MAX_HUFF_CODES 16
|
||||
@@ -37,7 +37,7 @@ typedef struct HuffCode {
|
||||
typedef struct MotionPixelsContext {
|
||||
AVCodecContext *avctx;
|
||||
AVFrame *frame;
|
||||
DSPContext dsp;
|
||||
BswapDSPContext bdsp;
|
||||
uint8_t *changes_map;
|
||||
int offset_bits_len;
|
||||
int codes_count, current_codes_count;
|
||||
@@ -76,7 +76,7 @@ static av_cold int mp_decode_init(AVCodecContext *avctx)
|
||||
|
||||
motionpixels_tableinit();
|
||||
mp->avctx = avctx;
|
||||
ff_dsputil_init(&mp->dsp, avctx);
|
||||
ff_bswapdsp_init(&mp->bdsp);
|
||||
mp->changes_map = av_mallocz_array(avctx->width, h4);
|
||||
mp->offset_bits_len = av_log2(avctx->width * avctx->height) + 1;
|
||||
mp->vpt = av_mallocz_array(avctx->height, sizeof(YuvPixel));
|
||||
@@ -297,7 +297,8 @@ static int mp_decode_frame(AVCodecContext *avctx,
|
||||
av_fast_padded_malloc(&mp->bswapbuf, &mp->bswapbuf_size, buf_size);
|
||||
if (!mp->bswapbuf)
|
||||
return AVERROR(ENOMEM);
|
||||
mp->dsp.bswap_buf((uint32_t *)mp->bswapbuf, (const uint32_t *)buf, buf_size / 4);
|
||||
mp->bdsp.bswap_buf((uint32_t *) mp->bswapbuf, (const uint32_t *) buf,
|
||||
buf_size / 4);
|
||||
if (buf_size & 3)
|
||||
memcpy(mp->bswapbuf + (buf_size & ~3), buf + (buf_size & ~3), buf_size & 3);
|
||||
init_get_bits(&gb, mp->bswapbuf, buf_size * 8);
|
||||
|
||||
Reference in New Issue
Block a user