You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	ffsrever: Make the status page bitexact if any stream is bitexact
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
		
							
								
								
									
										14
									
								
								ffserver.c
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								ffserver.c
									
									
									
									
									
								
							| @@ -1987,7 +1987,9 @@ static void compute_status(HTTPContext *c) | ||||
|                     sfilename, stream->filename); | ||||
|         avio_printf(pb, "<td align=right> %d <td align=right> ", | ||||
|                     stream->conns_served); | ||||
|         fmt_bytecount(pb, stream->bytes_served); | ||||
|         // TODO: Investigate if we can make http bitexact so it always produces the same count of bytes | ||||
|         if (!config.bitexact) | ||||
|             fmt_bytecount(pb, stream->bytes_served); | ||||
|  | ||||
|         switch(stream->stream_type) { | ||||
|         case STREAM_TYPE_LIVE: { | ||||
| @@ -2140,10 +2142,12 @@ static void compute_status(HTTPContext *c) | ||||
|     } | ||||
|     avio_printf(pb, "</table>\n"); | ||||
|  | ||||
|     /* date */ | ||||
|     ti = time(NULL); | ||||
|     p = ctime(&ti); | ||||
|     avio_printf(pb, "<hr size=1 noshade>Generated at %s", p); | ||||
|     if (!config.bitexact) { | ||||
|         /* date */ | ||||
|         ti = time(NULL); | ||||
|         p = ctime(&ti); | ||||
|         avio_printf(pb, "<hr size=1 noshade>Generated at %s", p); | ||||
|     } | ||||
|     avio_printf(pb, "</body>\n</html>\n"); | ||||
|  | ||||
|     len = avio_close_dyn_buf(pb, &c->pb_buffer); | ||||
|   | ||||
| @@ -1048,6 +1048,7 @@ static int ffserver_parse_config_stream(FFServerConfig *config, const char *cmd, | ||||
|                                        AV_OPT_FLAG_VIDEO_PARAM, config) < 0) | ||||
|             goto nomem; | ||||
|     } else if (!av_strcasecmp(cmd, "BitExact")) { | ||||
|         config->bitexact = 1; | ||||
|         if (ffserver_save_avoption("flags", "+bitexact", AV_OPT_FLAG_VIDEO_PARAM, config) < 0) | ||||
|             goto nomem; | ||||
|     } else if (!av_strcasecmp(cmd, "DctFastint")) { | ||||
|   | ||||
| @@ -122,6 +122,7 @@ typedef struct FFServerConfig { | ||||
|     unsigned int nb_max_connections; | ||||
|     uint64_t max_bandwidth; | ||||
|     int debug; | ||||
|     int bitexact; | ||||
|     char logfilename[1024]; | ||||
|     struct sockaddr_in http_addr; | ||||
|     struct sockaddr_in rtsp_addr; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user