From 9a037c8d6aef6a2ae779974fe0e20219cc7d4c3a Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Tue, 21 Dec 2010 16:44:05 +0900 Subject: [PATCH] Some more qtv docs (mostly overview/status). --- doc/qtv.txt | 45 +++++++++++++++++++++++++++++++++++++++++++ doc/quakeforge.dox.in | 1 + doc/quakeforge.txt | 1 + qtv/include/qtv.h | 3 ++- 4 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 doc/qtv.txt diff --git a/doc/qtv.txt b/doc/qtv.txt new file mode 100644 index 000000000..09a17b762 --- /dev/null +++ b/doc/qtv.txt @@ -0,0 +1,45 @@ +//unfortunately, have to wrap the docs in a C comment for doxygen +/** +\page qtv_overview QF QTV overview/status. +OVERVIEW: +\image html qwtv.png +\image latex qwtv.eps "" + +The server is "reserved" for playing clients. Any spectators would be +referees and/or admins (however, this is up to the server admin). + +A qtv proxy connects to the server. The proxy may have spectating clients +and other even other proxies connecting to it. The proxies can chain to any +depth as an upstream proxy will pass on its information to any downstream +proxies. With just a few levels of proxies, it should be possible to have +very large spectator groups. + +STATUS: + +qw-server supports up to two qtv proxy connections: the idea being there +will be only one, with the second in case the proxy drops off and needs to +reconnect before the timeout. The qw-server sends a modified mvd stream to +the qtv proxy. The mvd stream is modified for both easy manipulation by the +qtv server, and more importantly, to be packet-loss tolerant (QF uses mvd +over udp). + +Currently, the qtv proxy can connect to any number of servers (if you use +more than one or two, I hope you have a beefy system/connection). The proxy +supports any number of connecting clients. Connecting clients use +cmd list to get a list of available servers and +cmd connect [SERVERNAME] to finalize the connection to a +server. Clients can use cmd disconnect to "leave" a server in +order to "connect" to a different one without disconnecting from the proxy. + +The proxy and connected clients ride over a server map change. + +TODO: +\li Implement a delay (configurable) between the qw server and the proxy. +\li Add proxy chaining, possibly with configurable delay (redundant?). +\li Demo recording (mvd/enhanced mvd) on the proxy. +\li VOIP with recording to enhanced mvd (mvd and voip streams encapsulated + together). Probably based on FTE. +\li Other? According to community needs. + +\ref qtv +*/ diff --git a/doc/quakeforge.dox.in b/doc/quakeforge.dox.in index 7bb52d55a..e0d96872b 100644 --- a/doc/quakeforge.dox.in +++ b/doc/quakeforge.dox.in @@ -594,6 +594,7 @@ INPUT += @TOPSRC@/doc/dirconf.txt INPUT += @TOPSRC@/doc/faq.txt INPUT += @TOPSRC@/doc/filesystem.txt INPUT += @TOPSRC@/doc/mapformat.txt +INPUT += @TOPSRC@/doc/qtv.txt INPUT += @TOPSRC@/doc/quakeforge.txt INPUT += @TOPSRC@/doc/qw-cap-spec.txt INPUT += @TOPSRC@/doc/qw-download-spec.txt diff --git a/doc/quakeforge.txt b/doc/quakeforge.txt index ca411ea47..f75e84f46 100644 --- a/doc/quakeforge.txt +++ b/doc/quakeforge.txt @@ -16,4 +16,5 @@ of players we can. \li \subpage qw_cap_spec \li \subpage qw_download_spec \li \subpage server_timestampes +\li \subpage qtv_overview */ diff --git a/qtv/include/qtv.h b/qtv/include/qtv.h index a0411e6a5..9e0b4b3cb 100644 --- a/qtv/include/qtv.h +++ b/qtv/include/qtv.h @@ -34,7 +34,8 @@ /** \defgroup qtv QuakeForge QTV Proxy \image html qwtv.png - \image latex qwtv.eps "VM memory map" + \image latex qwtv.eps "" + \ref qtv_overview */ /** \defgroup qtv_general General Functions