You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-15 14:13:16 +02:00
avcodec/snowdec: remove mpegvideoencdsp dependency
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
2
configure
vendored
2
configure
vendored
@@ -2157,7 +2157,7 @@ rv30_decoder_select="error_resilience golomb h264chroma h264pred h264qpel mpeg_e
|
||||
rv40_decoder_select="error_resilience golomb h264chroma h264pred h264qpel mpeg_er mpegvideo videodsp"
|
||||
shorten_decoder_select="golomb"
|
||||
sipr_decoder_select="lsp"
|
||||
snow_decoder_select="dsputil dwt h264qpel hpeldsp rangecoder mpegvideoenc"
|
||||
snow_decoder_select="dsputil dwt h264qpel hpeldsp rangecoder"
|
||||
snow_encoder_select="aandcttables dsputil dwt h264qpel hpeldsp mpegvideoenc rangecoder"
|
||||
sonic_decoder_select="golomb rangecoder"
|
||||
sonic_encoder_select="golomb rangecoder"
|
||||
|
@@ -433,7 +433,6 @@ av_cold int ff_snow_common_init(AVCodecContext *avctx){
|
||||
ff_videodsp_init(&s->vdsp, 8);
|
||||
ff_dwt_init(&s->dwt);
|
||||
ff_h264qpel_init(&s->h264qpel, 8);
|
||||
ff_mpegvideoencdsp_init(&s->mpvencdsp, avctx);
|
||||
|
||||
#define mcf(dx,dy)\
|
||||
s->qdsp.put_qpel_pixels_tab [0][dy+dx/4]=\
|
||||
@@ -642,20 +641,6 @@ int ff_snow_frame_start(SnowContext *s){
|
||||
int w= s->avctx->width; //FIXME round up to x16 ?
|
||||
int h= s->avctx->height;
|
||||
|
||||
if (s->current_picture->data[0] && !(s->avctx->flags&CODEC_FLAG_EMU_EDGE)) {
|
||||
s->mpvencdsp.draw_edges(s->current_picture->data[0],
|
||||
s->current_picture->linesize[0], w , h ,
|
||||
EDGE_WIDTH , EDGE_WIDTH , EDGE_TOP | EDGE_BOTTOM);
|
||||
if (s->current_picture->data[2]) {
|
||||
s->mpvencdsp.draw_edges(s->current_picture->data[1],
|
||||
s->current_picture->linesize[1], w>>s->chroma_h_shift, h>>s->chroma_v_shift,
|
||||
EDGE_WIDTH>>s->chroma_h_shift, EDGE_WIDTH>>s->chroma_v_shift, EDGE_TOP | EDGE_BOTTOM);
|
||||
s->mpvencdsp.draw_edges(s->current_picture->data[2],
|
||||
s->current_picture->linesize[2], w>>s->chroma_h_shift, h>>s->chroma_v_shift,
|
||||
EDGE_WIDTH>>s->chroma_h_shift, EDGE_WIDTH>>s->chroma_v_shift, EDGE_TOP | EDGE_BOTTOM);
|
||||
}
|
||||
}
|
||||
|
||||
ff_snow_release_buffer(s->avctx);
|
||||
|
||||
tmp= s->last_picture[s->max_ref_frames-1];
|
||||
|
@@ -64,6 +64,8 @@ static av_cold int encode_init(AVCodecContext *avctx)
|
||||
ff_snow_common_end(avctx->priv_data);
|
||||
return ret;
|
||||
}
|
||||
ff_mpegvideoencdsp_init(&s->mpvencdsp, avctx);
|
||||
|
||||
ff_snow_alloc_blocks(s);
|
||||
|
||||
s->version=0;
|
||||
@@ -1602,6 +1604,23 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt,
|
||||
s->lambda = 0;
|
||||
}//else keep previous frame's qlog until after motion estimation
|
||||
|
||||
if (s->current_picture->data[0] && !(s->avctx->flags&CODEC_FLAG_EMU_EDGE)) {
|
||||
int w = s->avctx->width;
|
||||
int h = s->avctx->height;
|
||||
|
||||
s->mpvencdsp.draw_edges(s->current_picture->data[0],
|
||||
s->current_picture->linesize[0], w , h ,
|
||||
EDGE_WIDTH , EDGE_WIDTH , EDGE_TOP | EDGE_BOTTOM);
|
||||
if (s->current_picture->data[2]) {
|
||||
s->mpvencdsp.draw_edges(s->current_picture->data[1],
|
||||
s->current_picture->linesize[1], w>>s->chroma_h_shift, h>>s->chroma_v_shift,
|
||||
EDGE_WIDTH>>s->chroma_h_shift, EDGE_WIDTH>>s->chroma_v_shift, EDGE_TOP | EDGE_BOTTOM);
|
||||
s->mpvencdsp.draw_edges(s->current_picture->data[2],
|
||||
s->current_picture->linesize[2], w>>s->chroma_h_shift, h>>s->chroma_v_shift,
|
||||
EDGE_WIDTH>>s->chroma_h_shift, EDGE_WIDTH>>s->chroma_v_shift, EDGE_TOP | EDGE_BOTTOM);
|
||||
}
|
||||
}
|
||||
|
||||
ff_snow_frame_start(s);
|
||||
avctx->coded_frame= s->current_picture;
|
||||
|
||||
|
Reference in New Issue
Block a user