| 
				
				
					
				
				
				 | 
			
			 | 
			@@ -1293,9 +1293,19 @@ static int mpeg_decode_postinit(AVCodecContext *avctx){ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            avctx->ticks_per_frame=2; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        //MPEG-2 aspect | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            if(s->aspect_ratio_info > 1){ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                //we ignore the spec here as reality does not match the spec, see for example | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                AVRational dar= | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    av_mul_q( | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        av_div_q( | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                            ff_mpeg2_aspect[s->aspect_ratio_info], | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                            (AVRational){s1->pan_scan.width, s1->pan_scan.height} | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        ), | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        (AVRational){s->width, s->height}); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                //we ignore the spec here and guess a bit as reality does not match the spec, see for example | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                // res_change_ffmpeg_aspect.ts and sequence-display-aspect.mpg | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                if( (s1->pan_scan.width == 0 )||(s1->pan_scan.height == 0) || 1){ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                //issue1613, 621, 562 | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                if( (s1->pan_scan.width == 0 )||(s1->pan_scan.height == 0) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                   || (av_cmp_q(dar,(AVRational){4,3})&&av_cmp_q(dar,(AVRational){16,9}))){ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    s->avctx->sample_aspect_ratio= | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        av_div_q( | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                         ff_mpeg2_aspect[s->aspect_ratio_info], | 
		
		
	
	
		
			
				| 
				
				
				
					
				
				 | 
			
			 | 
			@@ -1307,6 +1317,12 @@ static int mpeg_decode_postinit(AVCodecContext *avctx){ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                         ff_mpeg2_aspect[s->aspect_ratio_info], | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                         (AVRational){s1->pan_scan.width, s1->pan_scan.height} | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                        ); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			//issue1613 4/3 16/9 -> 16/9 | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			//res_change_ffmpeg_aspect.ts 4/3 225/44 ->4/3 | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			//widescreen-issue562.mpg 4/3 16/9 -> 16/9 | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			//                    s->avctx->sample_aspect_ratio= av_mul_q(s->avctx->sample_aspect_ratio, (AVRational){s->width, s->height}); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			//av_log(NULL, AV_LOG_ERROR, "A %d/%d\n",ff_mpeg2_aspect[s->aspect_ratio_info].num, ff_mpeg2_aspect[s->aspect_ratio_info].den); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			//av_log(NULL, AV_LOG_ERROR, "B %d/%d\n",s->avctx->sample_aspect_ratio.num, s->avctx->sample_aspect_ratio.den); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            }else{ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                s->avctx->sample_aspect_ratio= | 
		
		
	
	
		
			
				| 
				
					
				
				
				
				 | 
			
			 | 
			
  |