You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	lavu: remove disabled avoptions cruft
This commit is contained in:
		
							
								
								
									
										147
									
								
								libavutil/opt.c
									
									
									
									
									
								
							
							
						
						
									
										147
									
								
								libavutil/opt.c
									
									
									
									
									
								
							| @@ -34,28 +34,6 @@ | ||||
| #include "log.h" | ||||
| #include "mathematics.h" | ||||
|  | ||||
| #if FF_API_FIND_OPT | ||||
| //FIXME order them and do a bin search | ||||
| const AVOption *av_find_opt(void *v, const char *name, const char *unit, int mask, int flags) | ||||
| { | ||||
|     AVClass *c= *(AVClass**)v; //FIXME silly way of storing AVClass | ||||
|     const AVOption *o= c->option; | ||||
|  | ||||
|     for (; o && o->name; o++) { | ||||
|         if (!strcmp(o->name, name) && (!unit || (o->unit && !strcmp(o->unit, unit))) && (o->flags & mask) == flags) | ||||
|             return o; | ||||
|     } | ||||
|     return NULL; | ||||
| } | ||||
| #endif | ||||
|  | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
| const AVOption *av_next_option(void *obj, const AVOption *last) | ||||
| { | ||||
|     return av_opt_next(obj, last); | ||||
| } | ||||
| #endif | ||||
|  | ||||
| const AVOption *av_opt_next(void *obj, const AVOption *last) | ||||
| { | ||||
|     AVClass *class = *(AVClass**)obj; | ||||
| @@ -221,16 +199,6 @@ static int set_string_number(void *obj, const AVOption *o, const char *val, void | ||||
|     return 0; | ||||
| } | ||||
|  | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
| int av_set_string3(void *obj, const char *name, const char *val, int alloc, const AVOption **o_out) | ||||
| { | ||||
|     const AVOption *o = av_opt_find(obj, name, NULL, 0, 0); | ||||
|     if (o_out) | ||||
|         *o_out = o; | ||||
|     return av_opt_set(obj, name, val, 0); | ||||
| } | ||||
| #endif | ||||
|  | ||||
| int av_opt_set(void *obj, const char *name, const char *val, int search_flags) | ||||
| { | ||||
|     void *dst, *target_obj; | ||||
| @@ -284,32 +252,6 @@ static int set_number(void *obj, const char *name, double num, int den, int64_t | ||||
|     return write_number(obj, o, dst, num, den, intnum); | ||||
| } | ||||
|  | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
| const AVOption *av_set_double(void *obj, const char *name, double n) | ||||
| { | ||||
|     const AVOption *o = av_opt_find(obj, name, NULL, 0, 0); | ||||
|     if (set_number(obj, name, n, 1, 1, 0) < 0) | ||||
|         return NULL; | ||||
|     return o; | ||||
| } | ||||
|  | ||||
| const AVOption *av_set_q(void *obj, const char *name, AVRational n) | ||||
| { | ||||
|     const AVOption *o = av_opt_find(obj, name, NULL, 0, 0); | ||||
|     if (set_number(obj, name, n.num, n.den, 1, 0) < 0) | ||||
|         return NULL; | ||||
|     return o; | ||||
| } | ||||
|  | ||||
| const AVOption *av_set_int(void *obj, const char *name, int64_t n) | ||||
| { | ||||
|     const AVOption *o = av_opt_find(obj, name, NULL, 0, 0); | ||||
|     if (set_number(obj, name, 1, 1, n, 0) < 0) | ||||
|         return NULL; | ||||
|     return o; | ||||
| } | ||||
| #endif | ||||
|  | ||||
| int av_opt_set_int(void *obj, const char *name, int64_t val, int search_flags) | ||||
| { | ||||
|     return set_number(obj, name, 1, 1, val, search_flags); | ||||
| @@ -354,46 +296,6 @@ int av_opt_set_bin(void *obj, const char *name, const uint8_t *val, int len, int | ||||
|     return 0; | ||||
| } | ||||
|  | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
| /** | ||||
|  * | ||||
|  * @param buf a buffer which is used for returning non string values as strings, can be NULL | ||||
|  * @param buf_len allocated length in bytes of buf | ||||
|  */ | ||||
| const char *av_get_string(void *obj, const char *name, const AVOption **o_out, char *buf, int buf_len) | ||||
| { | ||||
|     const AVOption *o = av_opt_find(obj, name, NULL, 0, 0); | ||||
|     void *dst; | ||||
|     uint8_t *bin; | ||||
|     int len, i; | ||||
|     if (!o) | ||||
|         return NULL; | ||||
|     if (o->type != AV_OPT_TYPE_STRING && (!buf || !buf_len)) | ||||
|         return NULL; | ||||
|  | ||||
|     dst= ((uint8_t*)obj) + o->offset; | ||||
|     if (o_out) *o_out= o; | ||||
|  | ||||
|     switch (o->type) { | ||||
|     case AV_OPT_TYPE_FLAGS:     snprintf(buf, buf_len, "0x%08X",*(int    *)dst);break; | ||||
|     case AV_OPT_TYPE_INT:       snprintf(buf, buf_len, "%d" , *(int    *)dst);break; | ||||
|     case AV_OPT_TYPE_INT64:     snprintf(buf, buf_len, "%"PRId64, *(int64_t*)dst);break; | ||||
|     case AV_OPT_TYPE_FLOAT:     snprintf(buf, buf_len, "%f" , *(float  *)dst);break; | ||||
|     case AV_OPT_TYPE_DOUBLE:    snprintf(buf, buf_len, "%f" , *(double *)dst);break; | ||||
|     case AV_OPT_TYPE_RATIONAL:  snprintf(buf, buf_len, "%d/%d", ((AVRational*)dst)->num, ((AVRational*)dst)->den);break; | ||||
|     case AV_OPT_TYPE_STRING:    return *(void**)dst; | ||||
|     case AV_OPT_TYPE_BINARY: | ||||
|         len = *(int*)(((uint8_t *)dst) + sizeof(uint8_t *)); | ||||
|         if (len >= (buf_len + 1)/2) return NULL; | ||||
|         bin = *(uint8_t**)dst; | ||||
|         for (i = 0; i < len; i++) snprintf(buf + i*2, 3, "%02X", bin[i]); | ||||
|         break; | ||||
|     default: return NULL; | ||||
|     } | ||||
|     return buf; | ||||
| } | ||||
| #endif | ||||
|  | ||||
| int av_opt_get(void *obj, const char *name, int search_flags, uint8_t **out_val) | ||||
| { | ||||
|     void *dst, *target_obj; | ||||
| @@ -459,44 +361,6 @@ error: | ||||
|     return -1; | ||||
| } | ||||
|  | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
| double av_get_double(void *obj, const char *name, const AVOption **o_out) | ||||
| { | ||||
|     int64_t intnum=1; | ||||
|     double num=1; | ||||
|     int den=1; | ||||
|  | ||||
|     if (get_number(obj, name, o_out, &num, &den, &intnum, 0) < 0) | ||||
|         return NAN; | ||||
|     return num*intnum/den; | ||||
| } | ||||
|  | ||||
| AVRational av_get_q(void *obj, const char *name, const AVOption **o_out) | ||||
| { | ||||
|     int64_t intnum=1; | ||||
|     double num=1; | ||||
|     int den=1; | ||||
|  | ||||
|     if (get_number(obj, name, o_out, &num, &den, &intnum, 0) < 0) | ||||
|         return (AVRational){0, 0}; | ||||
|     if (num == 1.0 && (int)intnum == intnum) | ||||
|         return (AVRational){intnum, den}; | ||||
|     else | ||||
|         return av_d2q(num*intnum/den, 1<<24); | ||||
| } | ||||
|  | ||||
| int64_t av_get_int(void *obj, const char *name, const AVOption **o_out) | ||||
| { | ||||
|     int64_t intnum=1; | ||||
|     double num=1; | ||||
|     int den=1; | ||||
|  | ||||
|     if (get_number(obj, name, o_out, &num, &den, &intnum, 0) < 0) | ||||
|         return -1; | ||||
|     return num*intnum/den; | ||||
| } | ||||
| #endif | ||||
|  | ||||
| int av_opt_get_int(void *obj, const char *name, int search_flags, int64_t *out_val) | ||||
| { | ||||
|     int64_t intnum = 1; | ||||
| @@ -633,19 +497,8 @@ int av_opt_show2(void *obj, void *av_log_obj, int req_flags, int rej_flags) | ||||
|  | ||||
| void av_opt_set_defaults(void *s) | ||||
| { | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
|     av_opt_set_defaults2(s, 0, 0); | ||||
| } | ||||
|  | ||||
| void av_opt_set_defaults2(void *s, int mask, int flags) | ||||
| { | ||||
| #endif | ||||
|     const AVOption *opt = NULL; | ||||
|     while ((opt = av_opt_next(s, opt)) != NULL) { | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
|         if ((opt->flags & mask) != flags) | ||||
|             continue; | ||||
| #endif | ||||
|         switch (opt->type) { | ||||
|             case AV_OPT_TYPE_CONST: | ||||
|                 /* Nothing to be done here */ | ||||
|   | ||||
| @@ -225,17 +225,6 @@ enum AVOptionType{ | ||||
|     AV_OPT_TYPE_RATIONAL, | ||||
|     AV_OPT_TYPE_BINARY,  ///< offset must point to a pointer immediately followed by an int for the length | ||||
|     AV_OPT_TYPE_CONST = 128, | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
|     FF_OPT_TYPE_FLAGS = 0, | ||||
|     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_BINARY,  ///< offset must point to a pointer immediately followed by an int for the length | ||||
|     FF_OPT_TYPE_CONST=128, | ||||
| #endif | ||||
| }; | ||||
|  | ||||
| /** | ||||
| @@ -287,66 +276,6 @@ typedef struct AVOption { | ||||
|     const char *unit; | ||||
| } AVOption; | ||||
|  | ||||
| #if FF_API_FIND_OPT | ||||
| /** | ||||
|  * Look for an option in obj. Look only for the options which | ||||
|  * have the flags set as specified in mask and flags (that is, | ||||
|  * for which it is the case that opt->flags & mask == flags). | ||||
|  * | ||||
|  * @param[in] obj a pointer to a struct whose first element is a | ||||
|  * pointer to an AVClass | ||||
|  * @param[in] name the name of the option to look for | ||||
|  * @param[in] unit the unit of the option to look for, or any if NULL | ||||
|  * @return a pointer to the option found, or NULL if no option | ||||
|  * has been found | ||||
|  * | ||||
|  * @deprecated use av_opt_find. | ||||
|  */ | ||||
| attribute_deprecated | ||||
| const AVOption *av_find_opt(void *obj, const char *name, const char *unit, int mask, int flags); | ||||
| #endif | ||||
|  | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
| /** | ||||
|  * Set the field of obj with the given name to value. | ||||
|  * | ||||
|  * @param[in] obj A struct whose first element is a pointer to an | ||||
|  * AVClass. | ||||
|  * @param[in] name the name of the field to set | ||||
|  * @param[in] val The value to set. If the field is not of a string | ||||
|  * type, then the given string is parsed. | ||||
|  * SI postfixes and some named scalars are supported. | ||||
|  * If the field is of a numeric type, it has to be a numeric or named | ||||
|  * scalar. Behavior with more than one scalar and +- infix operators | ||||
|  * is undefined. | ||||
|  * If the field is of a flags type, it has to be a sequence of numeric | ||||
|  * scalars or named flags separated by '+' or '-'. Prefixing a flag | ||||
|  * with '+' causes it to be set without affecting the other flags; | ||||
|  * similarly, '-' unsets a flag. | ||||
|  * @param[out] o_out if non-NULL put here a pointer to the AVOption | ||||
|  * found | ||||
|  * @param alloc this parameter is currently ignored | ||||
|  * @return 0 if the value has been set, or an AVERROR code in case of | ||||
|  * error: | ||||
|  * AVERROR_OPTION_NOT_FOUND if no matching option exists | ||||
|  * AVERROR(ERANGE) if the value is out of range | ||||
|  * AVERROR(EINVAL) if the value is not valid | ||||
|  * @deprecated use av_opt_set() | ||||
|  */ | ||||
| attribute_deprecated | ||||
| int av_set_string3(void *obj, const char *name, const char *val, int alloc, const AVOption **o_out); | ||||
|  | ||||
| attribute_deprecated const AVOption *av_set_double(void *obj, const char *name, double n); | ||||
| attribute_deprecated const AVOption *av_set_q(void *obj, const char *name, AVRational n); | ||||
| attribute_deprecated const AVOption *av_set_int(void *obj, const char *name, int64_t n); | ||||
|  | ||||
| attribute_deprecated double av_get_double(void *obj, const char *name, const AVOption **o_out); | ||||
| attribute_deprecated AVRational av_get_q(void *obj, const char *name, const AVOption **o_out); | ||||
| attribute_deprecated int64_t av_get_int(void *obj, const char *name, const AVOption **o_out); | ||||
| attribute_deprecated const char *av_get_string(void *obj, const char *name, const AVOption **o_out, char *buf, int buf_len); | ||||
| attribute_deprecated const AVOption *av_next_option(void *obj, const AVOption *last); | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|  * Show the obj options. | ||||
|  * | ||||
| @@ -365,11 +294,6 @@ int av_opt_show2(void *obj, void *av_log_obj, int req_flags, int rej_flags); | ||||
|  */ | ||||
| void av_opt_set_defaults(void *s); | ||||
|  | ||||
| #if FF_API_OLD_AVOPTIONS | ||||
| attribute_deprecated | ||||
| void av_opt_set_defaults2(void *s, int mask, int flags); | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|  * Parse the key/value pairs list in opts. For each key/value pair | ||||
|  * found, stores the value in the field in ctx that is named like the | ||||
|   | ||||
| @@ -61,15 +61,9 @@ | ||||
|  * @{ | ||||
|  */ | ||||
|  | ||||
| #ifndef FF_API_FIND_OPT | ||||
| #define FF_API_FIND_OPT                 (LIBAVUTIL_VERSION_MAJOR < 52) | ||||
| #endif | ||||
| #ifndef FF_API_AV_FIFO_PEEK | ||||
| #define FF_API_AV_FIFO_PEEK             (LIBAVUTIL_VERSION_MAJOR < 52) | ||||
| #endif | ||||
| #ifndef FF_API_OLD_AVOPTIONS | ||||
| #define FF_API_OLD_AVOPTIONS            (LIBAVUTIL_VERSION_MAJOR < 52) | ||||
| #endif | ||||
| #ifndef FF_API_PIX_FMT | ||||
| #define FF_API_PIX_FMT                  (LIBAVUTIL_VERSION_MAJOR < 53) | ||||
| #endif | ||||
|   | ||||
		Reference in New Issue
	
	Block a user