mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
mjpeg: use hpeldsp instead of dsputil for half-pel functions.
This commit is contained in:
parent
b42d594c85
commit
e0a8f31591
1
configure
vendored
1
configure
vendored
@ -1750,6 +1750,7 @@ ljpeg_encoder_select="aandcttables mpegvideoenc"
|
|||||||
loco_decoder_select="golomb"
|
loco_decoder_select="golomb"
|
||||||
mdec_decoder_select="dsputil error_resilience mpegvideo"
|
mdec_decoder_select="dsputil error_resilience mpegvideo"
|
||||||
mimic_decoder_select="dsputil hpeldsp"
|
mimic_decoder_select="dsputil hpeldsp"
|
||||||
|
mjpeg_decoder_select="dsputil hpeldsp"
|
||||||
mjpeg_encoder_select="aandcttables dsputil mpegvideoenc"
|
mjpeg_encoder_select="aandcttables dsputil mpegvideoenc"
|
||||||
mlp_decoder_select="dsputil mlp_parser"
|
mlp_decoder_select="dsputil mlp_parser"
|
||||||
motionpixels_decoder_select="dsputil"
|
motionpixels_decoder_select="dsputil"
|
||||||
|
@ -89,6 +89,7 @@ av_cold int ff_mjpeg_decode_init(AVCodecContext *avctx)
|
|||||||
avcodec_get_frame_defaults(&s->picture);
|
avcodec_get_frame_defaults(&s->picture);
|
||||||
|
|
||||||
s->avctx = avctx;
|
s->avctx = avctx;
|
||||||
|
ff_hpeldsp_init(&s->hdsp, avctx->flags);
|
||||||
ff_dsputil_init(&s->dsp, avctx);
|
ff_dsputil_init(&s->dsp, avctx);
|
||||||
ff_init_scantable(s->dsp.idct_permutation, &s->scantable, ff_zigzag_direct);
|
ff_init_scantable(s->dsp.idct_permutation, &s->scantable, ff_zigzag_direct);
|
||||||
s->buffer_size = 0;
|
s->buffer_size = 0;
|
||||||
@ -992,7 +993,7 @@ static av_always_inline void mjpeg_copy_block(MJpegDecodeContext *s,
|
|||||||
int linesize, int lowres)
|
int linesize, int lowres)
|
||||||
{
|
{
|
||||||
switch (lowres) {
|
switch (lowres) {
|
||||||
case 0: s->dsp.put_pixels_tab[1][0](dst, src, linesize, 8);
|
case 0: s->hdsp.put_pixels_tab[1][0](dst, src, linesize, 8);
|
||||||
break;
|
break;
|
||||||
case 1: copy_block4(dst, src, linesize, linesize, 4);
|
case 1: copy_block4(dst, src, linesize, linesize, 4);
|
||||||
break;
|
break;
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
#include "avcodec.h"
|
#include "avcodec.h"
|
||||||
#include "get_bits.h"
|
#include "get_bits.h"
|
||||||
#include "dsputil.h"
|
#include "dsputil.h"
|
||||||
|
#include "hpeldsp.h"
|
||||||
|
|
||||||
#define MAX_COMPONENTS 4
|
#define MAX_COMPONENTS 4
|
||||||
|
|
||||||
@ -97,6 +98,7 @@ typedef struct MJpegDecodeContext {
|
|||||||
uint64_t coefs_finished[MAX_COMPONENTS]; ///< bitmask of which coefs have been completely decoded (progressive mode)
|
uint64_t coefs_finished[MAX_COMPONENTS]; ///< bitmask of which coefs have been completely decoded (progressive mode)
|
||||||
ScanTable scantable;
|
ScanTable scantable;
|
||||||
DSPContext dsp;
|
DSPContext dsp;
|
||||||
|
HpelDSPContext hdsp;
|
||||||
|
|
||||||
int restart_interval;
|
int restart_interval;
|
||||||
int restart_count;
|
int restart_count;
|
||||||
|
Loading…
Reference in New Issue
Block a user