POST /stream/<name> or PUT /stream/<name>
Broadcast a WebM video/audio file. Accepted input: valid WebM split into arbitrarily many requests in absolutely any way. Multiple files can be concatenated into a single stream as long as they contain exactly the same tracks (i.e. their number, codecs, and dimensions. Otherwise any connected decoders will error and have to restart. Changing, for example, bitrate or tags is fine.)
Receive a published WebM stream. Note that the server makes no attempt at buffering; if the stream is being broadcast faster than its native framerate, the client will have to buffer and/or drop frames.
GET /stream/<name> [Upgrade: websocket]
Connect to a JSON-RPC v2.0 node. Methods of `Chat`: * `SetName(string)`: assign a (unique) name to this client. This is required to... * `SendMessage(string)`: broadcast a simple text message to all viewers. * `RequestHistory()`: ask the server to emit notifications containing the last few broadcasted text messages. TODO Methods of `Stream`. Notifications: * `Chat.AcquiredName(user string)`: upon a successful `SetName`. May be emitted automatically at the start of a connection if already logged in. * `Chat.Message(user string, text string)`: a broadcasted text message.
Open a simple HTML5-based player with a stream-local chat.
View a list of previously recorded streams.
Watch a particular recording in the HTML5 player.
GET /user/ POST /user/
>> password-old string, username, displayname, email, password, about optional[string]
>> username, password, email string
>> username, password string
>> username string OR email string
>> password string