mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-03-17 20:17:55 +02:00
avcodec/mpegvideodsp: Make MpegVideoDSP MPEG-4 only
It is only used by gmc/gmc1 which is only used by the MPEG-4 decoder, so move it to Mpeg4DecContext and rename it to Mpeg4VideoDSP. Also compile it iff the MPEG-4 decoder is compiled. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
ac8afdb9b5
commit
4209216ee8
@ -132,7 +132,7 @@ OBJS-$(CONFIG_MPEGAUDIODSP) += mpegaudiodsp.o \
|
|||||||
mpegaudiodsp_float.o
|
mpegaudiodsp_float.o
|
||||||
OBJS-$(CONFIG_MPEGAUDIOHEADER) += mpegaudiodecheader.o mpegaudiotabs.o
|
OBJS-$(CONFIG_MPEGAUDIOHEADER) += mpegaudiodecheader.o mpegaudiotabs.o
|
||||||
OBJS-$(CONFIG_MPEG4AUDIO) += mpeg4audio.o mpeg4audio_sample_rates.o
|
OBJS-$(CONFIG_MPEG4AUDIO) += mpeg4audio.o mpeg4audio_sample_rates.o
|
||||||
OBJS-$(CONFIG_MPEGVIDEO) += mpegvideo.o mpegvideodsp.o rl.o \
|
OBJS-$(CONFIG_MPEGVIDEO) += mpegvideo.o rl.o \
|
||||||
mpegvideo_motion.o \
|
mpegvideo_motion.o \
|
||||||
mpegvideodata.o mpegpicture.o \
|
mpegvideodata.o mpegpicture.o \
|
||||||
to_upper4.o
|
to_upper4.o
|
||||||
@ -523,7 +523,7 @@ OBJS-$(CONFIG_MPEG2_CUVID_DECODER) += cuviddec.o
|
|||||||
OBJS-$(CONFIG_MPEG2_MEDIACODEC_DECODER) += mediacodecdec.o
|
OBJS-$(CONFIG_MPEG2_MEDIACODEC_DECODER) += mediacodecdec.o
|
||||||
OBJS-$(CONFIG_MPEG2_VAAPI_ENCODER) += vaapi_encode_mpeg2.o
|
OBJS-$(CONFIG_MPEG2_VAAPI_ENCODER) += vaapi_encode_mpeg2.o
|
||||||
OBJS-$(CONFIG_MPEG2_V4L2M2M_DECODER) += v4l2_m2m_dec.o
|
OBJS-$(CONFIG_MPEG2_V4L2M2M_DECODER) += v4l2_m2m_dec.o
|
||||||
OBJS-$(CONFIG_MPEG4_DECODER) += xvididct.o
|
OBJS-$(CONFIG_MPEG4_DECODER) += mpeg4videodsp.o xvididct.o
|
||||||
OBJS-$(CONFIG_MPEG4_ENCODER) += mpeg4videoenc.o
|
OBJS-$(CONFIG_MPEG4_ENCODER) += mpeg4videoenc.o
|
||||||
OBJS-$(CONFIG_MPEG4_CUVID_DECODER) += cuviddec.o
|
OBJS-$(CONFIG_MPEG4_CUVID_DECODER) += cuviddec.o
|
||||||
OBJS-$(CONFIG_MPEG4_MEDIACODEC_DECODER) += mediacodecdec.o
|
OBJS-$(CONFIG_MPEG4_MEDIACODEC_DECODER) += mediacodecdec.o
|
||||||
|
@ -72,7 +72,7 @@ static const int mb_type_b_map[4] = {
|
|||||||
MB_TYPE_L0 | MB_TYPE_16x16,
|
MB_TYPE_L0 | MB_TYPE_16x16,
|
||||||
};
|
};
|
||||||
|
|
||||||
static void gmc1_motion(MpegEncContext *s,
|
static void gmc1_motion(MpegEncContext *s, const Mpeg4DecContext *ctx,
|
||||||
uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr,
|
uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr,
|
||||||
uint8_t *const *ref_picture)
|
uint8_t *const *ref_picture)
|
||||||
{
|
{
|
||||||
@ -110,9 +110,9 @@ static void gmc1_motion(MpegEncContext *s,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((motion_x | motion_y) & 7) {
|
if ((motion_x | motion_y) & 7) {
|
||||||
s->mdsp.gmc1(dest_y, ptr, linesize, 16,
|
ctx->mdsp.gmc1(dest_y, ptr, linesize, 16,
|
||||||
motion_x & 15, motion_y & 15, 128 - s->no_rounding);
|
motion_x & 15, motion_y & 15, 128 - s->no_rounding);
|
||||||
s->mdsp.gmc1(dest_y + 8, ptr + 8, linesize, 16,
|
ctx->mdsp.gmc1(dest_y + 8, ptr + 8, linesize, 16,
|
||||||
motion_x & 15, motion_y & 15, 128 - s->no_rounding);
|
motion_x & 15, motion_y & 15, 128 - s->no_rounding);
|
||||||
} else {
|
} else {
|
||||||
int dxy;
|
int dxy;
|
||||||
@ -153,7 +153,7 @@ static void gmc1_motion(MpegEncContext *s,
|
|||||||
ptr = s->sc.edge_emu_buffer;
|
ptr = s->sc.edge_emu_buffer;
|
||||||
emu = 1;
|
emu = 1;
|
||||||
}
|
}
|
||||||
s->mdsp.gmc1(dest_cb, ptr, uvlinesize, 8,
|
ctx->mdsp.gmc1(dest_cb, ptr, uvlinesize, 8,
|
||||||
motion_x & 15, motion_y & 15, 128 - s->no_rounding);
|
motion_x & 15, motion_y & 15, 128 - s->no_rounding);
|
||||||
|
|
||||||
ptr = ref_picture[2] + offset;
|
ptr = ref_picture[2] + offset;
|
||||||
@ -165,11 +165,11 @@ static void gmc1_motion(MpegEncContext *s,
|
|||||||
s->h_edge_pos >> 1, s->v_edge_pos >> 1);
|
s->h_edge_pos >> 1, s->v_edge_pos >> 1);
|
||||||
ptr = s->sc.edge_emu_buffer;
|
ptr = s->sc.edge_emu_buffer;
|
||||||
}
|
}
|
||||||
s->mdsp.gmc1(dest_cr, ptr, uvlinesize, 8,
|
ctx->mdsp.gmc1(dest_cr, ptr, uvlinesize, 8,
|
||||||
motion_x & 15, motion_y & 15, 128 - s->no_rounding);
|
motion_x & 15, motion_y & 15, 128 - s->no_rounding);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void gmc_motion(MpegEncContext *s,
|
static void gmc_motion(MpegEncContext *s, const Mpeg4DecContext *ctx,
|
||||||
uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr,
|
uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr,
|
||||||
uint8_t *const *ref_picture)
|
uint8_t *const *ref_picture)
|
||||||
{
|
{
|
||||||
@ -188,13 +188,13 @@ static void gmc_motion(MpegEncContext *s,
|
|||||||
oy = s->sprite_offset[0][1] + s->sprite_delta[1][0] * s->mb_x * 16 +
|
oy = s->sprite_offset[0][1] + s->sprite_delta[1][0] * s->mb_x * 16 +
|
||||||
s->sprite_delta[1][1] * s->mb_y * 16;
|
s->sprite_delta[1][1] * s->mb_y * 16;
|
||||||
|
|
||||||
s->mdsp.gmc(dest_y, ptr, linesize, 16,
|
ctx->mdsp.gmc(dest_y, ptr, linesize, 16,
|
||||||
ox, oy,
|
ox, oy,
|
||||||
s->sprite_delta[0][0], s->sprite_delta[0][1],
|
s->sprite_delta[0][0], s->sprite_delta[0][1],
|
||||||
s->sprite_delta[1][0], s->sprite_delta[1][1],
|
s->sprite_delta[1][0], s->sprite_delta[1][1],
|
||||||
a + 1, (1 << (2 * a + 1)) - s->no_rounding,
|
a + 1, (1 << (2 * a + 1)) - s->no_rounding,
|
||||||
s->h_edge_pos, s->v_edge_pos);
|
s->h_edge_pos, s->v_edge_pos);
|
||||||
s->mdsp.gmc(dest_y + 8, ptr, linesize, 16,
|
ctx->mdsp.gmc(dest_y + 8, ptr, linesize, 16,
|
||||||
ox + s->sprite_delta[0][0] * 8,
|
ox + s->sprite_delta[0][0] * 8,
|
||||||
oy + s->sprite_delta[1][0] * 8,
|
oy + s->sprite_delta[1][0] * 8,
|
||||||
s->sprite_delta[0][0], s->sprite_delta[0][1],
|
s->sprite_delta[0][0], s->sprite_delta[0][1],
|
||||||
@ -211,7 +211,7 @@ static void gmc_motion(MpegEncContext *s,
|
|||||||
s->sprite_delta[1][1] * s->mb_y * 8;
|
s->sprite_delta[1][1] * s->mb_y * 8;
|
||||||
|
|
||||||
ptr = ref_picture[1];
|
ptr = ref_picture[1];
|
||||||
s->mdsp.gmc(dest_cb, ptr, uvlinesize, 8,
|
ctx->mdsp.gmc(dest_cb, ptr, uvlinesize, 8,
|
||||||
ox, oy,
|
ox, oy,
|
||||||
s->sprite_delta[0][0], s->sprite_delta[0][1],
|
s->sprite_delta[0][0], s->sprite_delta[0][1],
|
||||||
s->sprite_delta[1][0], s->sprite_delta[1][1],
|
s->sprite_delta[1][0], s->sprite_delta[1][1],
|
||||||
@ -219,7 +219,7 @@ static void gmc_motion(MpegEncContext *s,
|
|||||||
(s->h_edge_pos + 1) >> 1, (s->v_edge_pos + 1) >> 1);
|
(s->h_edge_pos + 1) >> 1, (s->v_edge_pos + 1) >> 1);
|
||||||
|
|
||||||
ptr = ref_picture[2];
|
ptr = ref_picture[2];
|
||||||
s->mdsp.gmc(dest_cr, ptr, uvlinesize, 8,
|
ctx->mdsp.gmc(dest_cr, ptr, uvlinesize, 8,
|
||||||
ox, oy,
|
ox, oy,
|
||||||
s->sprite_delta[0][0], s->sprite_delta[0][1],
|
s->sprite_delta[0][0], s->sprite_delta[0][1],
|
||||||
s->sprite_delta[1][0], s->sprite_delta[1][1],
|
s->sprite_delta[1][0], s->sprite_delta[1][1],
|
||||||
@ -231,11 +231,13 @@ void ff_mpeg4_mcsel_motion(MpegEncContext *s,
|
|||||||
uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr,
|
uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr,
|
||||||
uint8_t *const *ref_picture)
|
uint8_t *const *ref_picture)
|
||||||
{
|
{
|
||||||
|
const Mpeg4DecContext *const ctx = (Mpeg4DecContext*)s;
|
||||||
|
|
||||||
if (s->real_sprite_warping_points == 1) {
|
if (s->real_sprite_warping_points == 1) {
|
||||||
gmc1_motion(s, dest_y, dest_cb, dest_cr,
|
gmc1_motion(s, ctx, dest_y, dest_cb, dest_cr,
|
||||||
ref_picture);
|
ref_picture);
|
||||||
} else {
|
} else {
|
||||||
gmc_motion(s, dest_y, dest_cb, dest_cr,
|
gmc_motion(s, ctx, dest_y, dest_cb, dest_cr,
|
||||||
ref_picture);
|
ref_picture);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -3684,6 +3686,7 @@ int ff_mpeg4_frame_end(AVCodecContext *avctx, const uint8_t *buf, int buf_size)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if CONFIG_MPEG4_DECODER
|
||||||
#if HAVE_THREADS
|
#if HAVE_THREADS
|
||||||
static int mpeg4_update_thread_context(AVCodecContext *dst,
|
static int mpeg4_update_thread_context(AVCodecContext *dst,
|
||||||
const AVCodecContext *src)
|
const AVCodecContext *src)
|
||||||
@ -3726,7 +3729,7 @@ static int mpeg4_update_thread_context(AVCodecContext *dst,
|
|||||||
memcpy(s->sprite_shift, s1->sprite_shift, sizeof(s1->sprite_shift));
|
memcpy(s->sprite_shift, s1->sprite_shift, sizeof(s1->sprite_shift));
|
||||||
memcpy(s->sprite_traj, s1->sprite_traj, sizeof(s1->sprite_traj));
|
memcpy(s->sprite_traj, s1->sprite_traj, sizeof(s1->sprite_traj));
|
||||||
|
|
||||||
if (CONFIG_MPEG4_DECODER && !init && s1->xvid_build >= 0)
|
if (!init && s1->xvid_build >= 0)
|
||||||
ff_xvid_idct_init(&s->m.idsp, dst);
|
ff_xvid_idct_init(&s->m.idsp, dst);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@ -3814,6 +3817,8 @@ static av_cold int decode_init(AVCodecContext *avctx)
|
|||||||
|
|
||||||
avctx->chroma_sample_location = AVCHROMA_LOC_LEFT;
|
avctx->chroma_sample_location = AVCHROMA_LOC_LEFT;
|
||||||
|
|
||||||
|
ff_mpeg4videodsp_init(&ctx->mdsp);
|
||||||
|
|
||||||
ff_thread_once(&init_static_once, mpeg4_init_static);
|
ff_thread_once(&init_static_once, mpeg4_init_static);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@ -3873,3 +3878,4 @@ const FFCodec ff_mpeg4_decoder = {
|
|||||||
NULL
|
NULL
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
#endif /* CONFIG_MPEG4_DECODER */
|
||||||
|
@ -27,6 +27,7 @@
|
|||||||
|
|
||||||
#include "get_bits.h"
|
#include "get_bits.h"
|
||||||
#include "mpegvideo.h"
|
#include "mpegvideo.h"
|
||||||
|
#include "mpeg4videodsp.h"
|
||||||
|
|
||||||
|
|
||||||
typedef struct Mpeg4DecContext {
|
typedef struct Mpeg4DecContext {
|
||||||
@ -76,6 +77,8 @@ typedef struct Mpeg4DecContext {
|
|||||||
|
|
||||||
int rgb;
|
int rgb;
|
||||||
|
|
||||||
|
Mpeg4VideoDSPContext mdsp;
|
||||||
|
|
||||||
int32_t block32[12][64];
|
int32_t block32[12][64];
|
||||||
// 0 = DCT, 1 = DPCM top to bottom scan, -1 = DPCM bottom to top scan
|
// 0 = DCT, 1 = DPCM top to bottom scan, -1 = DPCM bottom to top scan
|
||||||
int dpcm_direction;
|
int dpcm_direction;
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "libavutil/attributes.h"
|
#include "libavutil/attributes.h"
|
||||||
#include "libavutil/common.h"
|
#include "libavutil/common.h"
|
||||||
#include "mpegvideodsp.h"
|
#include "mpeg4videodsp.h"
|
||||||
|
|
||||||
static void gmc1_c(uint8_t *dst, const uint8_t *src, int stride, int h,
|
static void gmc1_c(uint8_t *dst, const uint8_t *src, int stride, int h,
|
||||||
int x16, int y16, int rounder)
|
int x16, int y16, int rounder)
|
||||||
@ -107,14 +107,14 @@ void ff_gmc_c(uint8_t *dst, const uint8_t *src, int stride, int h, int ox, int o
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
av_cold void ff_mpegvideodsp_init(MpegVideoDSPContext *c)
|
av_cold void ff_mpeg4videodsp_init(Mpeg4VideoDSPContext *c)
|
||||||
{
|
{
|
||||||
c->gmc1 = gmc1_c;
|
c->gmc1 = gmc1_c;
|
||||||
c->gmc = ff_gmc_c;
|
c->gmc = ff_gmc_c;
|
||||||
|
|
||||||
#if ARCH_PPC
|
#if ARCH_PPC
|
||||||
ff_mpegvideodsp_init_ppc(c);
|
ff_mpeg4videodsp_init_ppc(c);
|
||||||
#elif ARCH_X86
|
#elif ARCH_X86
|
||||||
ff_mpegvideodsp_init_x86(c);
|
ff_mpeg4videodsp_init_x86(c);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
@ -16,8 +16,8 @@
|
|||||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef AVCODEC_MPEGVIDEODSP_H
|
#ifndef AVCODEC_MPEG4VIDEODSP_H
|
||||||
#define AVCODEC_MPEGVIDEODSP_H
|
#define AVCODEC_MPEG4VIDEODSP_H
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
@ -25,7 +25,7 @@ void ff_gmc_c(uint8_t *dst, const uint8_t *src, int stride, int h, int ox, int o
|
|||||||
int dxx, int dxy, int dyx, int dyy, int shift, int r,
|
int dxx, int dxy, int dyx, int dyy, int shift, int r,
|
||||||
int width, int height);
|
int width, int height);
|
||||||
|
|
||||||
typedef struct MpegVideoDSPContext {
|
typedef struct Mpeg4VideoDSPContext {
|
||||||
/**
|
/**
|
||||||
* translational global motion compensation.
|
* translational global motion compensation.
|
||||||
*/
|
*/
|
||||||
@ -38,10 +38,10 @@ typedef struct MpegVideoDSPContext {
|
|||||||
int stride, int h, int ox, int oy,
|
int stride, int h, int ox, int oy,
|
||||||
int dxx, int dxy, int dyx, int dyy,
|
int dxx, int dxy, int dyx, int dyy,
|
||||||
int shift, int r, int width, int height);
|
int shift, int r, int width, int height);
|
||||||
} MpegVideoDSPContext;
|
} Mpeg4VideoDSPContext;
|
||||||
|
|
||||||
void ff_mpegvideodsp_init(MpegVideoDSPContext *c);
|
void ff_mpeg4videodsp_init(Mpeg4VideoDSPContext *c);
|
||||||
void ff_mpegvideodsp_init_ppc(MpegVideoDSPContext *c);
|
void ff_mpeg4videodsp_init_ppc(Mpeg4VideoDSPContext *c);
|
||||||
void ff_mpegvideodsp_init_x86(MpegVideoDSPContext *c);
|
void ff_mpeg4videodsp_init_x86(Mpeg4VideoDSPContext *c);
|
||||||
|
|
||||||
#endif /* AVCODEC_MPEGVIDEODSP_H */
|
#endif /* AVCODEC_MPEG4VIDEODSP_H */
|
@ -277,7 +277,6 @@ static av_cold int dct_init(MpegEncContext *s)
|
|||||||
ff_blockdsp_init(&s->bdsp);
|
ff_blockdsp_init(&s->bdsp);
|
||||||
ff_h264chroma_init(&s->h264chroma, 8); //for lowres
|
ff_h264chroma_init(&s->h264chroma, 8); //for lowres
|
||||||
ff_hpeldsp_init(&s->hdsp, s->avctx->flags);
|
ff_hpeldsp_init(&s->hdsp, s->avctx->flags);
|
||||||
ff_mpegvideodsp_init(&s->mdsp);
|
|
||||||
ff_videodsp_init(&s->vdsp, s->avctx->bits_per_raw_sample);
|
ff_videodsp_init(&s->vdsp, s->avctx->bits_per_raw_sample);
|
||||||
|
|
||||||
if (s->avctx->debug & FF_DEBUG_NOMC) {
|
if (s->avctx->debug & FF_DEBUG_NOMC) {
|
||||||
|
@ -40,7 +40,6 @@
|
|||||||
#include "me_cmp.h"
|
#include "me_cmp.h"
|
||||||
#include "motion_est.h"
|
#include "motion_est.h"
|
||||||
#include "mpegpicture.h"
|
#include "mpegpicture.h"
|
||||||
#include "mpegvideodsp.h"
|
|
||||||
#include "mpegvideoencdsp.h"
|
#include "mpegvideoencdsp.h"
|
||||||
#include "pixblockdsp.h"
|
#include "pixblockdsp.h"
|
||||||
#include "put_bits.h"
|
#include "put_bits.h"
|
||||||
@ -209,7 +208,6 @@ typedef struct MpegEncContext {
|
|||||||
HpelDSPContext hdsp;
|
HpelDSPContext hdsp;
|
||||||
IDCTDSPContext idsp;
|
IDCTDSPContext idsp;
|
||||||
MECmpContext mecc;
|
MECmpContext mecc;
|
||||||
MpegVideoDSPContext mdsp;
|
|
||||||
MpegvideoEncDSPContext mpvencdsp;
|
MpegvideoEncDSPContext mpvencdsp;
|
||||||
PixblockDSPContext pdsp;
|
PixblockDSPContext pdsp;
|
||||||
QpelDSPContext qdsp;
|
QpelDSPContext qdsp;
|
||||||
|
@ -14,8 +14,7 @@ OBJS-$(CONFIG_IDCTDSP) += ppc/idctdsp.o
|
|||||||
OBJS-$(CONFIG_LLVIDDSP) += ppc/lossless_videodsp_altivec.o
|
OBJS-$(CONFIG_LLVIDDSP) += ppc/lossless_videodsp_altivec.o
|
||||||
OBJS-$(CONFIG_ME_CMP) += ppc/me_cmp.o
|
OBJS-$(CONFIG_ME_CMP) += ppc/me_cmp.o
|
||||||
OBJS-$(CONFIG_MPEGAUDIODSP) += ppc/mpegaudiodsp_altivec.o
|
OBJS-$(CONFIG_MPEGAUDIODSP) += ppc/mpegaudiodsp_altivec.o
|
||||||
OBJS-$(CONFIG_MPEGVIDEO) += ppc/mpegvideo_altivec.o \
|
OBJS-$(CONFIG_MPEGVIDEO) += ppc/mpegvideo_altivec.o
|
||||||
ppc/mpegvideodsp.o
|
|
||||||
OBJS-$(CONFIG_MPEGVIDEOENC) += ppc/mpegvideoencdsp.o
|
OBJS-$(CONFIG_MPEGVIDEOENC) += ppc/mpegvideoencdsp.o
|
||||||
OBJS-$(CONFIG_PIXBLOCKDSP) += ppc/pixblockdsp.o
|
OBJS-$(CONFIG_PIXBLOCKDSP) += ppc/pixblockdsp.o
|
||||||
OBJS-$(CONFIG_VC1DSP) += ppc/vc1dsp_altivec.o
|
OBJS-$(CONFIG_VC1DSP) += ppc/vc1dsp_altivec.o
|
||||||
@ -26,6 +25,7 @@ OBJS-$(CONFIG_VP8DSP) += ppc/vp8dsp_altivec.o
|
|||||||
# decoders/encoders
|
# decoders/encoders
|
||||||
OBJS-$(CONFIG_HEVC_DECODER) += ppc/hevcdsp.o
|
OBJS-$(CONFIG_HEVC_DECODER) += ppc/hevcdsp.o
|
||||||
OBJS-$(CONFIG_LLAUDDSP) += ppc/lossless_audiodsp_altivec.o
|
OBJS-$(CONFIG_LLAUDDSP) += ppc/lossless_audiodsp_altivec.o
|
||||||
|
OBJS-$(CONFIG_MPEG4_DECODER) += ppc/mpeg4videodsp.o
|
||||||
OBJS-$(CONFIG_SVQ1_ENCODER) += ppc/svq1enc_altivec.o
|
OBJS-$(CONFIG_SVQ1_ENCODER) += ppc/svq1enc_altivec.o
|
||||||
OBJS-$(CONFIG_VORBIS_DECODER) += ppc/vorbisdsp_altivec.o
|
OBJS-$(CONFIG_VORBIS_DECODER) += ppc/vorbisdsp_altivec.o
|
||||||
OBJS-$(CONFIG_VP7_DECODER) += ppc/vp8dsp_altivec.o
|
OBJS-$(CONFIG_VP7_DECODER) += ppc/vp8dsp_altivec.o
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
#include "libavutil/ppc/cpu.h"
|
#include "libavutil/ppc/cpu.h"
|
||||||
#include "libavutil/ppc/util_altivec.h"
|
#include "libavutil/ppc/util_altivec.h"
|
||||||
|
|
||||||
#include "libavcodec/mpegvideodsp.h"
|
#include "libavcodec/mpeg4videodsp.h"
|
||||||
|
|
||||||
#if HAVE_ALTIVEC
|
#if HAVE_ALTIVEC
|
||||||
/* AltiVec-enhanced gmc1. ATM this code assumes stride is a multiple of 8
|
/* AltiVec-enhanced gmc1. ATM this code assumes stride is a multiple of 8
|
||||||
@ -128,7 +128,7 @@ static void gmc1_altivec(uint8_t *dst /* align 8 */, const uint8_t *src /* align
|
|||||||
}
|
}
|
||||||
#endif /* HAVE_ALTIVEC */
|
#endif /* HAVE_ALTIVEC */
|
||||||
|
|
||||||
av_cold void ff_mpegvideodsp_init_ppc(MpegVideoDSPContext *c)
|
av_cold void ff_mpeg4videodsp_init_ppc(Mpeg4VideoDSPContext *c)
|
||||||
{
|
{
|
||||||
#if HAVE_ALTIVEC
|
#if HAVE_ALTIVEC
|
||||||
if (!PPC_ALTIVEC(av_get_cpu_flags()))
|
if (!PPC_ALTIVEC(av_get_cpu_flags()))
|
@ -27,8 +27,7 @@ OBJS-$(CONFIG_LPC) += x86/lpc_init.o
|
|||||||
OBJS-$(CONFIG_MDCT15) += x86/mdct15_init.o
|
OBJS-$(CONFIG_MDCT15) += x86/mdct15_init.o
|
||||||
OBJS-$(CONFIG_ME_CMP) += x86/me_cmp_init.o
|
OBJS-$(CONFIG_ME_CMP) += x86/me_cmp_init.o
|
||||||
OBJS-$(CONFIG_MPEGAUDIODSP) += x86/mpegaudiodsp.o
|
OBJS-$(CONFIG_MPEGAUDIODSP) += x86/mpegaudiodsp.o
|
||||||
OBJS-$(CONFIG_MPEGVIDEO) += x86/mpegvideo.o \
|
OBJS-$(CONFIG_MPEGVIDEO) += x86/mpegvideo.o
|
||||||
x86/mpegvideodsp.o
|
|
||||||
OBJS-$(CONFIG_MPEGVIDEOENC) += x86/mpegvideoenc.o \
|
OBJS-$(CONFIG_MPEGVIDEOENC) += x86/mpegvideoenc.o \
|
||||||
x86/mpegvideoencdsp_init.o
|
x86/mpegvideoencdsp_init.o
|
||||||
OBJS-$(CONFIG_PIXBLOCKDSP) += x86/pixblockdsp_init.o
|
OBJS-$(CONFIG_PIXBLOCKDSP) += x86/pixblockdsp_init.o
|
||||||
@ -62,7 +61,7 @@ OBJS-$(CONFIG_HEVC_DECODER) += x86/hevcdsp_init.o
|
|||||||
OBJS-$(CONFIG_JPEG2000_DECODER) += x86/jpeg2000dsp_init.o
|
OBJS-$(CONFIG_JPEG2000_DECODER) += x86/jpeg2000dsp_init.o
|
||||||
OBJS-$(CONFIG_LSCR_DECODER) += x86/pngdsp_init.o
|
OBJS-$(CONFIG_LSCR_DECODER) += x86/pngdsp_init.o
|
||||||
OBJS-$(CONFIG_MLP_DECODER) += x86/mlpdsp_init.o
|
OBJS-$(CONFIG_MLP_DECODER) += x86/mlpdsp_init.o
|
||||||
OBJS-$(CONFIG_MPEG4_DECODER) += x86/xvididct_init.o
|
OBJS-$(CONFIG_MPEG4_DECODER) += x86/mpeg4videodsp.o x86/xvididct_init.o
|
||||||
OBJS-$(CONFIG_PNG_DECODER) += x86/pngdsp_init.o
|
OBJS-$(CONFIG_PNG_DECODER) += x86/pngdsp_init.o
|
||||||
OBJS-$(CONFIG_PRORES_DECODER) += x86/proresdsp_init.o
|
OBJS-$(CONFIG_PRORES_DECODER) += x86/proresdsp_init.o
|
||||||
OBJS-$(CONFIG_PRORES_LGPL_DECODER) += x86/proresdsp_init.o
|
OBJS-$(CONFIG_PRORES_LGPL_DECODER) += x86/proresdsp_init.o
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
#include "libavutil/attributes.h"
|
#include "libavutil/attributes.h"
|
||||||
#include "libavutil/cpu.h"
|
#include "libavutil/cpu.h"
|
||||||
#include "libavutil/x86/cpu.h"
|
#include "libavutil/x86/cpu.h"
|
||||||
#include "libavcodec/mpegvideodsp.h"
|
#include "libavcodec/mpeg4videodsp.h"
|
||||||
#include "libavcodec/videodsp.h"
|
#include "libavcodec/videodsp.h"
|
||||||
|
|
||||||
#if HAVE_INLINE_ASM
|
#if HAVE_INLINE_ASM
|
||||||
@ -150,7 +150,7 @@ static void gmc_mmx(uint8_t *dst, const uint8_t *src,
|
|||||||
|
|
||||||
#endif /* HAVE_INLINE_ASM */
|
#endif /* HAVE_INLINE_ASM */
|
||||||
|
|
||||||
av_cold void ff_mpegvideodsp_init_x86(MpegVideoDSPContext *c)
|
av_cold void ff_mpeg4videodsp_init_x86(Mpeg4VideoDSPContext *c)
|
||||||
{
|
{
|
||||||
#if HAVE_INLINE_ASM
|
#if HAVE_INLINE_ASM
|
||||||
int cpu_flags = av_get_cpu_flags();
|
int cpu_flags = av_get_cpu_flags();
|
Loading…
x
Reference in New Issue
Block a user