mirror of
				https://github.com/nyanmisaka/mpp.git
				synced 2025-10-31 20:42:53 +08:00 
			
		
		
		
	[vproc]: Fix output frame repeated problem
For IEP2, the first two frames will be deinterlaced at I1O1 mode. I5O2 mode only works when the 3rd frame arrived. Thus the 2nd frame will be deinterlaced twice and PTS will be repeated as following pattern: ------------------------------------- IEP in : 0 1 2 3 4 IEP out : 0 1 0.5 1 2.5 3 3.5 ------------------------------------- To fix this, just skip the 2nd frame processing. Change-Id: I2d66951a941a664da093f1b9edbdd73855c57060 Signed-off-by: Johnson Ding <johnson.ding@rock-chips.com>
This commit is contained in:
		 Johnson Ding
					Johnson Ding
				
			
				
					committed by
					
						 Herman Chen
						Herman Chen
					
				
			
			
				
	
			
			
			 Herman Chen
						Herman Chen
					
				
			
						parent
						
							5d3623ac29
						
					
				
				
					commit
					f07778c8c1
				
			| @@ -497,6 +497,18 @@ static void dec_vproc_set_dei_v2(MppDecVprocCtxImpl *ctx, MppFrame frm) | |||||||
|             ctx->pd_mode = 1; |             ctx->pd_mode = 1; | ||||||
|             ctx->detection = 0; |             ctx->detection = 0; | ||||||
|         } |         } | ||||||
|  |     } else if (ctx->prev_frm0 && ! ctx->prev_frm1) { | ||||||
|  |         vproc_dbg_status("Wait for next frame to turn into I5O2"); | ||||||
|  |  | ||||||
|  |         if (ctx->out_buf0) { | ||||||
|  |             mpp_buffer_put(ctx->out_buf0); | ||||||
|  |             ctx->out_buf0 = NULL; | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         if (ctx->out_buf1) { | ||||||
|  |             mpp_buffer_put(ctx->out_buf1); | ||||||
|  |             ctx->out_buf1 = NULL; | ||||||
|  |         } | ||||||
|     } else { |     } else { | ||||||
|         struct iep2_api_params params; |         struct iep2_api_params params; | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user