diff avcodec.h @ 2874:b6def74f5811 libavcodec

flags and named constants with type checking of course for AVOption spliting AVOption specific stuff out of avcodec.h into opt.h
author michael
date Sun, 11 Sep 2005 14:22:42 +0000
parents 55809f38eb63
children d0b61801ea47
line wrap: on
line diff
--- a/avcodec.h	Sun Sep 11 11:10:25 2005 +0000
+++ b/avcodec.h	Sun Sep 11 14:22:42 2005 +0000
@@ -12,6 +12,7 @@
 #endif
 
 #include "avutil.h"
+#include "opt.h"
 #include <sys/types.h> /* size_t */
 
 //FIXME the following 2 really dont belong in here
@@ -671,44 +672,6 @@
 
 #define DEFAULT_FRAME_RATE_BASE 1001000
 
-enum AVOptionType{
-    FF_OPT_TYPE_INT,
-    FF_OPT_TYPE_INT64,
-    FF_OPT_TYPE_DOUBLE,
-    FF_OPT_TYPE_FLOAT,
-    FF_OPT_TYPE_STRING,
-    FF_OPT_TYPE_RATIONAL,
-    FF_OPT_TYPE_CONST=128,
-};
-
-/**
- * AVOption.
- */
-typedef struct AVOption {
-    const char *name;
-
-    /**
-     * short English text help.
-     * @fixme what about other languages
-     */
-    const char *help;
-    int offset;             ///< offset to context structure where the parsed value should be stored 
-    enum AVOptionType type;
-    
-    double default_val;
-    double min;
-    double max;
-    
-    int flags;
-#define AV_OPT_FLAG_ENCODING_PARAM  1   ///< a generic parameter which can be set by the user for muxing or encoding
-#define AV_OPT_FLAG_DECODING_PARAM  2   ///< a generic parameter which can be set by the user for demuxing or decoding
-#define AV_OPT_FLAG_METADATA        4   ///< some data extracted or inserted into the file like title, comment, ...
-#define AV_OPT_FLAG_AUDIO_PARAM     8
-#define AV_OPT_FLAG_VIDEO_PARAM     16
-#define AV_OPT_FLAG_SUBTITLE_PARAM  32
-//FIXME think about enc-audio, ... style flags
-} AVOption;
-
 /**
  * Used by av_log
  */
@@ -1887,17 +1850,6 @@
     enum AVDiscard skip_frame;
 } AVCodecContext;
 
-AVOption *av_set_string(void *obj, const char *name, const char *val);
-AVOption *av_set_double(void *obj, const char *name, double n);
-AVOption *av_set_q(void *obj, const char *name, AVRational n);
-AVOption *av_set_int(void *obj, const char *name, int64_t n);
-double av_get_double(void *obj, const char *name, AVOption **o_out);
-AVRational av_get_q(void *obj, const char *name, AVOption **o_out);
-int64_t av_get_int(void *obj, const char *name, AVOption **o_out);
-const char *av_get_string(void *obj, const char *name, AVOption **o_out, char *buf, int buf_len);
-AVOption *av_next_option(void *obj, AVOption *last);
-int av_opt_show(void *obj, FILE *f);
-
 /**
  * AVCodec.
  */