avfilter/vf_idet: flush internal buffers on parameter changes
This is needed to auto insert the filter by default Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
		
							parent
							
								
									723c37d3b7
								
							
						
					
					
						commit
						56a33b232c
					
				@ -249,6 +249,18 @@ static int filter_frame(AVFilterLink *link, AVFrame *picref)
 | 
			
		||||
        return ff_filter_frame(ctx->outputs[0], picref);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if(   picref->width  != link->w
 | 
			
		||||
       || picref->height != link->h
 | 
			
		||||
       || picref->format != link->format) {
 | 
			
		||||
        link->dst->inputs[0]->format = picref->format;
 | 
			
		||||
        link->dst->inputs[0]->w      = picref->width;
 | 
			
		||||
        link->dst->inputs[0]->h      = picref->height;
 | 
			
		||||
 | 
			
		||||
        av_frame_free(&idet->prev);
 | 
			
		||||
        av_frame_free(&idet->cur );
 | 
			
		||||
        av_frame_free(&idet->next);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (idet->prev)
 | 
			
		||||
        av_frame_free(&idet->prev);
 | 
			
		||||
    idet->prev = idet->cur;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user