lavfi: add init_opaque callback
This will be used by filters which require an opaque field to be passed in input. Should be required only for filters which imply a programmatic use. This is possibly a temporary solution, to be removed when we'll have a clearer and better agreememnt of how/if to pass binary data for initializing a filter. See thread: Subject: [FFmpeg-devel][PATCH] lavfi: add init2 callback Date: Fri, 6 Jul 2012 01:22:17 +0200
This commit is contained in:
		
							parent
							
								
									aef9e94f73
								
							
						
					
					
						commit
						21d5609826
					
				| @ -15,6 +15,9 @@ libavutil:     2011-04-18 | |||||||
| 
 | 
 | ||||||
| API changes, most recent first: | API changes, most recent first: | ||||||
| 
 | 
 | ||||||
|  | 2012-07-10 - xxxxxxx - lavfi 3.2.0 - avfilter.h | ||||||
|  |   Add init_opaque() callback to AVFilter struct. | ||||||
|  | 
 | ||||||
| 2012-06-26 - xxxxxxx - lavu 51.63.100 - imgutils.h | 2012-06-26 - xxxxxxx - lavu 51.63.100 - imgutils.h | ||||||
|   Add functions to libavutil/imgutils.h: |   Add functions to libavutil/imgutils.h: | ||||||
|   av_image_get_buffer_size() |   av_image_get_buffer_size() | ||||||
|  | |||||||
| @ -554,7 +554,9 @@ int avfilter_init_filter(AVFilterContext *filter, const char *args, void *opaque | |||||||
| { | { | ||||||
|     int ret=0; |     int ret=0; | ||||||
| 
 | 
 | ||||||
|     if (filter->filter->init) |     if (filter->filter->init_opaque) | ||||||
|  |         ret = filter->filter->init_opaque(filter, args, opaque); | ||||||
|  |     else if (filter->filter->init) | ||||||
|         ret = filter->filter->init(filter, args); |         ret = filter->filter->init(filter, args); | ||||||
|     return ret; |     return ret; | ||||||
| } | } | ||||||
|  | |||||||
| @ -447,6 +447,13 @@ typedef struct AVFilter { | |||||||
|      *          AVERROR(ENOSYS) on unsupported commands |      *          AVERROR(ENOSYS) on unsupported commands | ||||||
|      */ |      */ | ||||||
|     int (*process_command)(AVFilterContext *, const char *cmd, const char *arg, char *res, int res_len, int flags); |     int (*process_command)(AVFilterContext *, const char *cmd, const char *arg, char *res, int res_len, int flags); | ||||||
|  | 
 | ||||||
|  |     /**
 | ||||||
|  |      * Filter initialization function, alternative to the init() | ||||||
|  |      * callback. Args contains the user-supplied parameters, opaque is | ||||||
|  |      * used for providing binary data. | ||||||
|  |      */ | ||||||
|  |     int (*init_opaque)(AVFilterContext *ctx, const char *args, void *opaque); | ||||||
| } AVFilter; | } AVFilter; | ||||||
| 
 | 
 | ||||||
| /** An instance of a filter */ | /** An instance of a filter */ | ||||||
|  | |||||||
| @ -29,7 +29,7 @@ | |||||||
| #include "libavutil/avutil.h" | #include "libavutil/avutil.h" | ||||||
| 
 | 
 | ||||||
| #define LIBAVFILTER_VERSION_MAJOR  3 | #define LIBAVFILTER_VERSION_MAJOR  3 | ||||||
| #define LIBAVFILTER_VERSION_MINOR  1 | #define LIBAVFILTER_VERSION_MINOR  2 | ||||||
| #define LIBAVFILTER_VERSION_MICRO 100 | #define LIBAVFILTER_VERSION_MICRO 100 | ||||||
| 
 | 
 | ||||||
| #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ | #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user