]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/wmv2enc.c
Declare WMV1/WMV2/VC-1 decoder dependency on the H.263 decoder in configure.
[ffmpeg] / libavcodec / wmv2enc.c
index 641f0dc8544977cb992eb158d6d8a92c38f55ad0..71436435944826089c2490702b4ef221d2cff033 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002 The FFmpeg Project.
+ * Copyright (c) 2002 The FFmpeg Project
  *
  * This file is part of FFmpeg.
  *
@@ -51,7 +51,7 @@ static int encode_ext_header(Wmv2Context *w){
     return 0;
 }
 
-static int wmv2_encode_init(AVCodecContext *avctx){
+static av_cold int wmv2_encode_init(AVCodecContext *avctx){
     Wmv2Context * const w= avctx->priv_data;
 
     if(MPV_encode_init(avctx) < 0)
@@ -66,32 +66,18 @@ static int wmv2_encode_init(AVCodecContext *avctx){
     return 0;
 }
 
-#if 0 /* unused, remove? */
-static int wmv2_encode_end(AVCodecContext *avctx){
-
-    if(MPV_encode_end(avctx) < 0)
-        return -1;
-
-    avctx->extradata_size= 0;
-    av_freep(&avctx->extradata);
-
-    return 0;
-}
-#endif
-
 int ff_wmv2_encode_picture_header(MpegEncContext * s, int picture_number)
 {
     Wmv2Context * const w= (Wmv2Context*)s;
 
     put_bits(&s->pb, 1, s->pict_type - 1);
-    if(s->pict_type == I_TYPE){
+    if(s->pict_type == FF_I_TYPE){
         put_bits(&s->pb, 7, 0);
     }
     put_bits(&s->pb, 5, s->qscale);
 
     s->dc_table_index = 1;
     s->mv_table_index = 1; /* only if P frame */
-//    s->use_skip_mb_code = 1; /* only if P frame */
     s->per_mb_rl_table = 0;
     s->mspel= 0;
     w->per_mb_abt=0;
@@ -100,7 +86,7 @@ int ff_wmv2_encode_picture_header(MpegEncContext * s, int picture_number)
 
     assert(s->flipflop_rounding);
 
-    if (s->pict_type == I_TYPE) {
+    if (s->pict_type == FF_I_TYPE) {
         assert(s->no_rounding==1);
         if(w->j_type_bit) put_bits(&s->pb, 1, w->j_type);
 
@@ -203,12 +189,8 @@ void ff_wmv2_encode_mb(MpegEncContext * s,
             }
             coded_cbp |= val << (5 - i);
         }
-#if 0
-        if (coded_cbp)
-            printf("cbp=%x %x\n", cbp, coded_cbp);
-#endif
 
-        if (s->pict_type == I_TYPE) {
+        if (s->pict_type == FF_I_TYPE) {
             put_bits(&s->pb,
                      ff_msmp4_mb_i_table[coded_cbp][1], ff_msmp4_mb_i_table[coded_cbp][0]);
         } else {
@@ -236,5 +218,6 @@ AVCodec wmv2_encoder = {
     wmv2_encode_init,
     MPV_encode_picture,
     MPV_encode_end,
-    .pix_fmts= (enum PixelFormat[]){PIX_FMT_YUV420P, -1},
+    .pix_fmts= (const enum PixelFormat[]){PIX_FMT_YUV420P, PIX_FMT_NONE},
+    .long_name= NULL_IF_CONFIG_SMALL("Windows Media Video 8"),
 };