Merge commit '778111592bf5f38630858ee6dfcfd097cd6c6da9'
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 20 Jun 2014 15:15:39 +0000 (17:15 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 20 Jun 2014 15:15:39 +0000 (17:15 +0200)
* commit '778111592bf5f38630858ee6dfcfd097cd6c6da9':
  dvenc: initialize the profile only once, at init

Conflicts:
libavcodec/dvenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavcodec/dvenc.c

@@@ -42,10 -46,11 +46,15 @@@ static av_cold int dvvideo_encode_init(
          ff_dv_print_profiles(avctx, AV_LOG_ERROR);
          return AVERROR(EINVAL);
      }
 +    if (avctx->height > 576) {
 +        av_log(avctx, AV_LOG_ERROR, "DVCPRO HD encoding is not supported.\n");
 +        return AVERROR_PATCHWELCOME;
 +    }
+     ret = ff_dv_init_dynamic_tables(s->sys);
+     if (ret < 0) {
+         av_log(avctx, AV_LOG_ERROR, "Error initializing work tables.\n");
+         return ret;
+     }
  
      avctx->coded_frame = av_frame_alloc();
      if (!avctx->coded_frame)
@@@ -665,11 -669,10 +674,8 @@@ static int dvvideo_encode_frame(AVCodec
      DVVideoContext *s = c->priv_data;
      int ret;
  
-     s->sys = avpriv_dv_codec_profile(c);
-     if (!s->sys || ff_dv_init_dynamic_tables(s->sys))
-         return -1;
 -    if ((ret = ff_alloc_packet(pkt, s->sys->frame_size)) < 0) {
 -        av_log(c, AV_LOG_ERROR, "Error getting output packet.\n");
 +    if ((ret = ff_alloc_packet2(c, pkt, s->sys->frame_size)) < 0)
          return ret;
 -    }
  
      c->pix_fmt                = s->sys->pix_fmt;
      s->frame                  = frame;