mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-02-04 06:08:26 +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:
parent
472fee91bc
commit
606702ea34
14
ffserver.c
14
ffserver.c
@ -1987,7 +1987,9 @@ static void compute_status(HTTPContext *c)
|
|||||||
sfilename, stream->filename);
|
sfilename, stream->filename);
|
||||||
avio_printf(pb, "<td align=right> %d <td align=right> ",
|
avio_printf(pb, "<td align=right> %d <td align=right> ",
|
||||||
stream->conns_served);
|
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) {
|
switch(stream->stream_type) {
|
||||||
case STREAM_TYPE_LIVE: {
|
case STREAM_TYPE_LIVE: {
|
||||||
@ -2140,10 +2142,12 @@ static void compute_status(HTTPContext *c)
|
|||||||
}
|
}
|
||||||
avio_printf(pb, "</table>\n");
|
avio_printf(pb, "</table>\n");
|
||||||
|
|
||||||
/* date */
|
if (!config.bitexact) {
|
||||||
ti = time(NULL);
|
/* date */
|
||||||
p = ctime(&ti);
|
ti = time(NULL);
|
||||||
avio_printf(pb, "<hr size=1 noshade>Generated at %s", p);
|
p = ctime(&ti);
|
||||||
|
avio_printf(pb, "<hr size=1 noshade>Generated at %s", p);
|
||||||
|
}
|
||||||
avio_printf(pb, "</body>\n</html>\n");
|
avio_printf(pb, "</body>\n</html>\n");
|
||||||
|
|
||||||
len = avio_close_dyn_buf(pb, &c->pb_buffer);
|
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)
|
AV_OPT_FLAG_VIDEO_PARAM, config) < 0)
|
||||||
goto nomem;
|
goto nomem;
|
||||||
} else if (!av_strcasecmp(cmd, "BitExact")) {
|
} else if (!av_strcasecmp(cmd, "BitExact")) {
|
||||||
|
config->bitexact = 1;
|
||||||
if (ffserver_save_avoption("flags", "+bitexact", AV_OPT_FLAG_VIDEO_PARAM, config) < 0)
|
if (ffserver_save_avoption("flags", "+bitexact", AV_OPT_FLAG_VIDEO_PARAM, config) < 0)
|
||||||
goto nomem;
|
goto nomem;
|
||||||
} else if (!av_strcasecmp(cmd, "DctFastint")) {
|
} else if (!av_strcasecmp(cmd, "DctFastint")) {
|
||||||
|
@ -122,6 +122,7 @@ typedef struct FFServerConfig {
|
|||||||
unsigned int nb_max_connections;
|
unsigned int nb_max_connections;
|
||||||
uint64_t max_bandwidth;
|
uint64_t max_bandwidth;
|
||||||
int debug;
|
int debug;
|
||||||
|
int bitexact;
|
||||||
char logfilename[1024];
|
char logfilename[1024];
|
||||||
struct sockaddr_in http_addr;
|
struct sockaddr_in http_addr;
|
||||||
struct sockaddr_in rtsp_addr;
|
struct sockaddr_in rtsp_addr;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user