changeset 9246:18b83dac1221 libavcodec

Split AVCodec declarations for PAM/PBM/PGM/PGMYUV/PPM decoders and encoders so that they can be enabled and disabled individually.
author diego
date Sun, 22 Mar 2009 22:50:22 +0000
parents b5d1395879a0
children ef4444d8b2fc
files Makefile allcodecs.c pnmenc.c
diffstat 3 files changed, 90 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Sun Mar 22 22:50:19 2009 +0000
+++ b/Makefile	Sun Mar 22 22:50:22 2009 +0000
@@ -156,15 +156,19 @@
 OBJS-$(CONFIG_NELLYMOSER_DECODER)      += nellymoserdec.o nellymoser.o
 OBJS-$(CONFIG_NELLYMOSER_ENCODER)      += nellymoserenc.o nellymoser.o
 OBJS-$(CONFIG_NUV_DECODER)             += nuv.o rtjpeg.o
-OBJS-$(CONFIG_PAM_ENCODER)             += pnmenc.o pnm.o
-OBJS-$(CONFIG_PBM_ENCODER)             += pnmenc.o pnm.o
+OBJS-$(CONFIG_PAM_DECODER)             += pnmenc.o pnm.o
+OBJS-$(CONFIG_PAM_ENCODER)             += pnmenc.o
+OBJS-$(CONFIG_PBM_DECODER)             += pnmenc.o pnm.o
+OBJS-$(CONFIG_PBM_ENCODER)             += pnmenc.o
 OBJS-$(CONFIG_PCX_DECODER)             += pcx.o
-OBJS-$(CONFIG_PCX_ENCODER)             += pcxenc.o
-OBJS-$(CONFIG_PGM_ENCODER)             += pnmenc.o pnm.o
-OBJS-$(CONFIG_PGMYUV_ENCODER)          += pnmenc.o pnm.o
+OBJS-$(CONFIG_PGM_DECODER)             += pnmenc.o pnm.o
+OBJS-$(CONFIG_PGM_ENCODER)             += pnmenc.o
+OBJS-$(CONFIG_PGMYUV_DECODER)          += pnmenc.o pnm.o
+OBJS-$(CONFIG_PGMYUV_ENCODER)          += pnmenc.o
 OBJS-$(CONFIG_PNG_DECODER)             += png.o pngdec.o
 OBJS-$(CONFIG_PNG_ENCODER)             += png.o pngenc.o
-OBJS-$(CONFIG_PPM_ENCODER)             += pnmenc.o pnm.o
+OBJS-$(CONFIG_PPM_DECODER)             += pnmenc.o pnm.o
+OBJS-$(CONFIG_PPM_ENCODER)             += pnmenc.o
 OBJS-$(CONFIG_PTX_DECODER)             += ptx.o
 OBJS-$(CONFIG_QCELP_DECODER)           += qcelpdec.o qcelp_lsp.o celp_math.o celp_filters.o acelp_vectors.o
 OBJS-$(CONFIG_QDM2_DECODER)            += qdm2.o mpegaudiodec.o mpegaudiodecheader.o mpegaudio.o mpegaudiodata.o
--- a/allcodecs.c	Sun Mar 22 22:50:19 2009 +0000
+++ b/allcodecs.c	Sun Mar 22 22:50:22 2009 +0000
@@ -125,13 +125,13 @@
     REGISTER_DECODER (MSVIDEO1, msvideo1);
     REGISTER_DECODER (MSZH, mszh);
     REGISTER_DECODER (NUV, nuv);
-    REGISTER_ENCODER (PAM, pam);
-    REGISTER_ENCODER (PBM, pbm);
+    REGISTER_ENCDEC  (PAM, pam);
+    REGISTER_ENCDEC  (PBM, pbm);
     REGISTER_ENCDEC  (PCX, pcx);
-    REGISTER_ENCODER (PGM, pgm);
-    REGISTER_ENCODER (PGMYUV, pgmyuv);
+    REGISTER_ENCDEC  (PGM, pgm);
+    REGISTER_ENCDEC  (PGMYUV, pgmyuv);
     REGISTER_ENCDEC  (PNG, png);
-    REGISTER_ENCODER (PPM, ppm);
+    REGISTER_ENCDEC  (PPM, ppm);
     REGISTER_DECODER (PTX, ptx);
     REGISTER_DECODER (QDRAW, qdraw);
     REGISTER_DECODER (QPEG, qpeg);
--- a/pnmenc.c	Sun Mar 22 22:50:19 2009 +0000
+++ b/pnmenc.c	Sun Mar 22 22:50:22 2009 +0000
@@ -361,6 +361,21 @@
 #endif
 
 
+#if CONFIG_PGM_DECODER
+AVCodec pgm_decoder = {
+    "pgm",
+    CODEC_TYPE_VIDEO,
+    CODEC_ID_PGM,
+    sizeof(PNMContext),
+    common_init,
+    NULL,
+    NULL,
+    pnm_decode_frame,
+    .pix_fmts= (enum PixelFormat[]){PIX_FMT_GRAY8, PIX_FMT_GRAY16BE, PIX_FMT_NONE},
+    .long_name= NULL_IF_CONFIG_SMALL("PGM (Portable GrayMap) image"),
+};
+#endif
+
 #if CONFIG_PGM_ENCODER
 AVCodec pgm_encoder = {
     "pgm",
@@ -369,13 +384,26 @@
     sizeof(PNMContext),
     common_init,
     pnm_encode_frame,
-    NULL, //encode_end,
-    pnm_decode_frame,
     .pix_fmts= (enum PixelFormat[]){PIX_FMT_GRAY8, PIX_FMT_GRAY16BE, PIX_FMT_NONE},
     .long_name= NULL_IF_CONFIG_SMALL("PGM (Portable GrayMap) image"),
 };
 #endif // CONFIG_PGM_ENCODER
 
+#if CONFIG_PGMYUV_DECODER
+AVCodec pgmyuv_decoder = {
+    "pgmyuv",
+    CODEC_TYPE_VIDEO,
+    CODEC_ID_PGMYUV,
+    sizeof(PNMContext),
+    common_init,
+    NULL,
+    NULL,
+    pnm_decode_frame,
+    .pix_fmts= (enum PixelFormat[]){PIX_FMT_YUV420P, PIX_FMT_NONE},
+    .long_name= NULL_IF_CONFIG_SMALL("PGMYUV (Portable GrayMap YUV) image"),
+};
+#endif
+
 #if CONFIG_PGMYUV_ENCODER
 AVCodec pgmyuv_encoder = {
     "pgmyuv",
@@ -384,13 +412,26 @@
     sizeof(PNMContext),
     common_init,
     pnm_encode_frame,
-    NULL, //encode_end,
-    pnm_decode_frame,
     .pix_fmts= (enum PixelFormat[]){PIX_FMT_YUV420P, PIX_FMT_NONE},
     .long_name= NULL_IF_CONFIG_SMALL("PGMYUV (Portable GrayMap YUV) image"),
 };
 #endif // CONFIG_PGMYUV_ENCODER
 
+#if CONFIG_PPM_DECODER
+AVCodec ppm_decoder = {
+    "ppm",
+    CODEC_TYPE_VIDEO,
+    CODEC_ID_PPM,
+    sizeof(PNMContext),
+    common_init,
+    NULL,
+    NULL,
+    pnm_decode_frame,
+    .pix_fmts= (enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGB48BE, PIX_FMT_NONE},
+    .long_name= NULL_IF_CONFIG_SMALL("PPM (Portable PixelMap) image"),
+};
+#endif
+
 #if CONFIG_PPM_ENCODER
 AVCodec ppm_encoder = {
     "ppm",
@@ -399,13 +440,26 @@
     sizeof(PNMContext),
     common_init,
     pnm_encode_frame,
-    NULL, //encode_end,
-    pnm_decode_frame,
     .pix_fmts= (enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGB48BE, PIX_FMT_NONE},
     .long_name= NULL_IF_CONFIG_SMALL("PPM (Portable PixelMap) image"),
 };
 #endif // CONFIG_PPM_ENCODER
 
+#if CONFIG_PBM_DECODER
+AVCodec pbm_decoder = {
+    "pbm",
+    CODEC_TYPE_VIDEO,
+    CODEC_ID_PBM,
+    sizeof(PNMContext),
+    common_init,
+    NULL,
+    NULL,
+    pnm_decode_frame,
+    .pix_fmts= (enum PixelFormat[]){PIX_FMT_MONOWHITE, PIX_FMT_NONE},
+    .long_name= NULL_IF_CONFIG_SMALL("PBM (Portable BitMap) image"),
+};
+#endif
+
 #if CONFIG_PBM_ENCODER
 AVCodec pbm_encoder = {
     "pbm",
@@ -414,13 +468,26 @@
     sizeof(PNMContext),
     common_init,
     pnm_encode_frame,
-    NULL, //encode_end,
-    pnm_decode_frame,
     .pix_fmts= (enum PixelFormat[]){PIX_FMT_MONOWHITE, PIX_FMT_NONE},
     .long_name= NULL_IF_CONFIG_SMALL("PBM (Portable BitMap) image"),
 };
 #endif // CONFIG_PBM_ENCODER
 
+#if CONFIG_PAM_DECODER
+AVCodec pam_decoder = {
+    "pam",
+    CODEC_TYPE_VIDEO,
+    CODEC_ID_PAM,
+    sizeof(PNMContext),
+    common_init,
+    NULL,
+    NULL,
+    pnm_decode_frame,
+    .pix_fmts= (enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGB32, PIX_FMT_GRAY8, PIX_FMT_MONOWHITE, PIX_FMT_NONE},
+    .long_name= NULL_IF_CONFIG_SMALL("PAM (Portable AnyMap) image"),
+};
+#endif
+
 #if CONFIG_PAM_ENCODER
 AVCodec pam_encoder = {
     "pam",
@@ -429,8 +496,6 @@
     sizeof(PNMContext),
     common_init,
     pam_encode_frame,
-    NULL, //encode_end,
-    pnm_decode_frame,
     .pix_fmts= (enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGB32, PIX_FMT_GRAY8, PIX_FMT_MONOWHITE, PIX_FMT_NONE},
     .long_name= NULL_IF_CONFIG_SMALL("PAM (Portable AnyMap) image"),
 };