| 
				
				
					
				
				
				 | 
			
			 | 
			@@ -4261,7 +4261,7 @@ static int mov_write_ftyp_tag(AVIOContext *pb, AVFormatContext *s) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    return update_size(pb, pos); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			} | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			static void mov_write_uuidprof_tag(AVIOContext *pb, AVFormatContext *s) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			static int mov_write_uuidprof_tag(AVIOContext *pb, AVFormatContext *s) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			{ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    AVStream       *video_st    = s->streams[0]; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    AVCodecParameters *video_par = s->streams[0]->codecpar; | 
		
		
	
	
		
			
				| 
				
				
				
					
				
				 | 
			
			 | 
			@@ -4271,6 +4271,11 @@ static void mov_write_uuidprof_tag(AVIOContext *pb, AVFormatContext *s) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    int audio_kbitrate = audio_par->bit_rate / 1000; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    int video_kbitrate = FFMIN(video_par->bit_rate / 1000, 800 - audio_kbitrate); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    if (frame_rate < 0 || frame_rate > INT32_MAX) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        av_log(s, AV_LOG_ERROR, "Frame rate %f outside supported range\n", frame_rate / (double)0x10000); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        return AVERROR(EINVAL); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    avio_wb32(pb, 0x94); /* size */ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    ffio_wfourcc(pb, "uuid"); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    ffio_wfourcc(pb, "PROF"); | 
		
		
	
	
		
			
				| 
				
					
				
				
					
				
				
				 | 
			
			 | 
			@@ -4321,6 +4326,8 @@ static void mov_write_uuidprof_tag(AVIOContext *pb, AVFormatContext *s) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    avio_wb16(pb, video_par->width); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    avio_wb16(pb, video_par->height); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    avio_wb32(pb, 0x010001); /* ? */ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    return 0; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			} | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			static int mov_write_identification(AVIOContext *pb, AVFormatContext *s) | 
		
		
	
	
		
			
				| 
				
				
				
					
				
				 | 
			
			 | 
			@@ -4345,7 +4352,7 @@ static int mov_write_identification(AVIOContext *pb, AVFormatContext *s) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            av_log(s, AV_LOG_ERROR, "PSP mode need one video and one audio stream\n"); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            return AVERROR(EINVAL); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        mov_write_uuidprof_tag(pb, s); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        return mov_write_uuidprof_tag(pb, s); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    return 0; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			} | 
		
		
	
	
		
			
				| 
				
					
				
				
				
				 | 
			
			 | 
			
  |