Lines Matching defs:avctx

39 static av_cold int encode_init(AVCodecContext *avctx)
41 SnowContext *s = avctx->priv_data;
46 && (avctx->flags & AV_CODEC_FLAG_QSCALE)
47 && avctx->global_quality == 0){
48 av_log(avctx, AV_LOG_ERROR, "The 9/7 wavelet is incompatible with lossless mode.\n");
54 s->mv_scale = (avctx->flags & AV_CODEC_FLAG_QPEL) ? 2 : 4;
55 s->block_max_depth= (avctx->flags & AV_CODEC_FLAG_4MV ) ? 1 : 0;
66 if ((ret = ff_snow_common_init(avctx)) < 0) {
69 ff_mpegvideoencdsp_init(&s->mpvencdsp, avctx);
75 s->m.avctx = avctx;
76 s->m.bit_rate= avctx->bit_rate;
77 s->m.lmin = avctx->mb_lmin;
78 s->m.lmax = avctx->mb_lmax;
79 s->m.mb_num = (avctx->width * avctx->height + 255) / 256; // For ratecontrol
82 s->m.me.scratchpad = av_calloc(avctx->width + 64, 2*16*2*sizeof(uint8_t));
91 s->max_ref_frames = av_clip(avctx->refs, 1, MAX_REF_FRAMES);
93 if(avctx->flags&AV_CODEC_FLAG_PASS1){
94 if(!avctx->stats_out)
95 avctx->stats_out = av_mallocz(256);
97 if (!avctx->stats_out)
100 if((avctx->flags&AV_CODEC_FLAG_PASS2) || !(avctx->flags&AV_CODEC_FLAG_QSCALE)){
105 s->pass1_rc= !(avctx->flags & (AV_CODEC_FLAG_QSCALE|AV_CODEC_FLAG_PASS2));
107 switch(avctx->pix_fmt){
125 ret = av_pix_fmt_get_chroma_sub_sample(avctx->pix_fmt, &s->chroma_h_shift,
130 ret = ff_set_cmp(&s->mecc, s->mecc.me_cmp, s->avctx->me_cmp);
131 ret |= ff_set_cmp(&s->mecc, s->mecc.me_sub_cmp, s->avctx->me_sub_cmp);
255 int qpel= !!(s->avctx->flags & AV_CODEC_FLAG_QPEL); //unused
295 c->penalty_factor = get_penalty_factor(s->lambda, s->lambda2, c->avctx->me_cmp);
296 c->sub_penalty_factor= get_penalty_factor(s->lambda, s->lambda2, c->avctx->me_sub_cmp);
297 c->mb_penalty_factor = get_penalty_factor(s->lambda, s->lambda2, c->avctx->mb_cmp);
624 const int penalty_factor= get_penalty_factor(s->lambda, s->lambda2, s->avctx->me_cmp);
677 if(s->avctx->me_cmp == FF_CMP_W97)
679 else if(s->avctx->me_cmp == FF_CMP_W53)
726 const int penalty_factor= get_penalty_factor(s->lambda, s->lambda2, s->avctx->me_cmp);
836 av_log(s->avctx, AV_LOG_ERROR, "encoded frame too large\n");
1132 int dia_size = s->iterative_dia_size ? s->iterative_dia_size : FFMAX(s->avctx->dia_size, 1);
1176 av_log(s->avctx, AV_LOG_DEBUG, "pass:%d changed:%d\n", pass, change);
1218 av_log(s->avctx, AV_LOG_ERROR, "pass:4mv changed:%d\n", change*4);
1232 av_log(s->avctx, AV_LOG_ERROR, "encoded frame too large\n");
1568 static int encode_frame(AVCodecContext *avctx, AVPacket *pkt,
1571 SnowContext *s = avctx->priv_data;
1574 const int width= s->avctx->width;
1575 const int height= s->avctx->height;
1580 if ((ret = ff_alloc_packet(avctx, pkt, s->b_width*s->b_height*MB_SIZE*MB_SIZE*3 + AV_INPUT_BUFFER_MIN_SIZE)) < 0)
1604 s->m.picture_number= avctx->frame_number;
1605 if(avctx->flags&AV_CODEC_FLAG_PASS2){
1606 s->m.pict_type = pic->pict_type = s->m.rc_context.entry[avctx->frame_number].new_pict_type;
1608 if(!(avctx->flags&AV_CODEC_FLAG_QSCALE)) {
1614 s->keyframe= avctx->gop_size==0 || avctx->frame_number % avctx->gop_size == 0;
1618 if(s->pass1_rc && avctx->frame_number == 0)
1624 if (s->qlog < 0 || (!pic->quality && (avctx->flags & AV_CODEC_FLAG_QSCALE))) {
1630 int w = s->avctx->width;
1631 int h = s->avctx->height;
1660 s->m.avctx= s->avctx;
1676 s->m.me.dia_size = avctx->dia_size;
1677 s->m.quarter_sample= (s->avctx->flags & AV_CODEC_FLAG_QPEL)!=0;
1707 av_log(avctx, AV_LOG_ERROR, "Resolution too low\n");
1714 ff_snow_common_init_after_header(avctx);
1746 && !(avctx->flags&AV_CODEC_FLAG_PASS2)
1832 if(s->avctx->flags&AV_CODEC_FLAG_PSNR){
1842 s->avctx->error[plane_index] += error;
1851 ff_snow_release_buffer(avctx);
1853 s->current_picture->coded_picture_number = avctx->frame_number;
1859 s->m.current_picture.f->coded_picture_number = avctx->frame_number;
1865 if(avctx->flags&AV_CODEC_FLAG_PASS1)
1873 (s->avctx->flags&AV_CODEC_FLAG_PSNR) ? SNOW_MAX_PLANES : 0,
1884 static av_cold int encode_end(AVCodecContext *avctx)
1886 SnowContext *s = avctx->priv_data;
1891 av_freep(&avctx->stats_out);