mirror of
https://github.com/pikvm/ustreamer.git
synced 2026-03-14 11:33:43 +00:00
X-UStreamer-{Width,Height}
This commit is contained in:
14
src/http.c
14
src/http.c
@@ -219,7 +219,7 @@ static void _http_callback_ping(struct evhttp_request *request, void *v_server)
|
|||||||
static void _http_callback_snapshot(struct evhttp_request *request, void *v_server) {
|
static void _http_callback_snapshot(struct evhttp_request *request, void *v_server) {
|
||||||
struct http_server_t *server = (struct http_server_t *)v_server;
|
struct http_server_t *server = (struct http_server_t *)v_server;
|
||||||
struct evbuffer *buf;
|
struct evbuffer *buf;
|
||||||
char time_buf[64];
|
char header_buf[64];
|
||||||
|
|
||||||
PROCESS_HEAD_REQUEST;
|
PROCESS_HEAD_REQUEST;
|
||||||
|
|
||||||
@@ -234,11 +234,16 @@ static void _http_callback_snapshot(struct evhttp_request *request, void *v_serv
|
|||||||
ADD_HEADER("Expires", "Mon, 3 Jan 2000 12:34:56 GMT");
|
ADD_HEADER("Expires", "Mon, 3 Jan 2000 12:34:56 GMT");
|
||||||
|
|
||||||
# define ADD_TIME_HEADER(_key, _value) \
|
# define ADD_TIME_HEADER(_key, _value) \
|
||||||
{ sprintf(time_buf, "%.06Lf", _value); ADD_HEADER(_key, time_buf); }
|
{ sprintf(header_buf, "%.06Lf", _value); ADD_HEADER(_key, header_buf); }
|
||||||
|
|
||||||
|
# define ADD_UNSIGNED_HEADER(_key, _value) \
|
||||||
|
{ sprintf(header_buf, "%u", _value); ADD_HEADER(_key, header_buf); }
|
||||||
|
|
||||||
ADD_TIME_HEADER("X-Timestamp", get_now_real());
|
ADD_TIME_HEADER("X-Timestamp", get_now_real());
|
||||||
|
|
||||||
ADD_HEADER("X-UStreamer-Online", bool_to_string(EXPOSED(online)));
|
ADD_HEADER("X-UStreamer-Online", bool_to_string(EXPOSED(online)));
|
||||||
|
ADD_UNSIGNED_HEADER("X-UStreamer-Width", EXPOSED(width));
|
||||||
|
ADD_UNSIGNED_HEADER("X-UStreamer-Height", EXPOSED(height));
|
||||||
ADD_TIME_HEADER("X-UStreamer-Grab-Time", EXPOSED(picture.grab_time));
|
ADD_TIME_HEADER("X-UStreamer-Grab-Time", EXPOSED(picture.grab_time));
|
||||||
ADD_TIME_HEADER("X-UStreamer-Encode-Begin-Time", EXPOSED(picture.encode_begin_time));
|
ADD_TIME_HEADER("X-UStreamer-Encode-Begin-Time", EXPOSED(picture.encode_begin_time));
|
||||||
ADD_TIME_HEADER("X-UStreamer-Encode-End-Time", EXPOSED(picture.encode_end_time));
|
ADD_TIME_HEADER("X-UStreamer-Encode-End-Time", EXPOSED(picture.encode_end_time));
|
||||||
@@ -248,6 +253,7 @@ static void _http_callback_snapshot(struct evhttp_request *request, void *v_serv
|
|||||||
ADD_TIME_HEADER("X-UStreamer-Send-Time", get_now_monotonic());
|
ADD_TIME_HEADER("X-UStreamer-Send-Time", get_now_monotonic());
|
||||||
|
|
||||||
# undef ADD_TIME_HEADER
|
# undef ADD_TIME_HEADER
|
||||||
|
# undef ADD_UNSUGNED_HEADER
|
||||||
|
|
||||||
ADD_HEADER("Content-Type", "image/jpeg");
|
ADD_HEADER("Content-Type", "image/jpeg");
|
||||||
|
|
||||||
@@ -404,6 +410,8 @@ static void _http_callback_stream_write(struct bufferevent *buf_event, void *v_c
|
|||||||
if (client->extra_headers) {
|
if (client->extra_headers) {
|
||||||
assert(evbuffer_add_printf(buf,
|
assert(evbuffer_add_printf(buf,
|
||||||
"X-UStreamer-Online: %s" RN
|
"X-UStreamer-Online: %s" RN
|
||||||
|
"X-UStreamer-Width: %u" RN
|
||||||
|
"X-UStreamer-Height: %u" RN
|
||||||
"X-UStreamer-Client-FPS: %u" RN
|
"X-UStreamer-Client-FPS: %u" RN
|
||||||
"X-UStreamer-Grab-Time: %.06Lf" RN
|
"X-UStreamer-Grab-Time: %.06Lf" RN
|
||||||
"X-UStreamer-Encode-Begin-Time: %.06Lf" RN
|
"X-UStreamer-Encode-Begin-Time: %.06Lf" RN
|
||||||
@@ -414,6 +422,8 @@ static void _http_callback_stream_write(struct bufferevent *buf_event, void *v_c
|
|||||||
"X-UStreamer-Send-Time: %.06Lf" RN
|
"X-UStreamer-Send-Time: %.06Lf" RN
|
||||||
RN,
|
RN,
|
||||||
bool_to_string(EXPOSED(online)),
|
bool_to_string(EXPOSED(online)),
|
||||||
|
EXPOSED(width),
|
||||||
|
EXPOSED(height),
|
||||||
client->fps,
|
client->fps,
|
||||||
EXPOSED(picture.grab_time),
|
EXPOSED(picture.grab_time),
|
||||||
EXPOSED(picture.encode_begin_time),
|
EXPOSED(picture.encode_begin_time),
|
||||||
|
|||||||
Reference in New Issue
Block a user