|
MistServer
2.5.3-Pro-19-gf5e75b1 ( Generic_64)
|
Contains all functions and classes needed for RTMP connections. More...
Data Structures | |
| class | Chunk |
| Holds a single RTMP chunk, either send or receive direction. More... | |
Functions | |
| bool | doHandshake () |
| Does the handshake. Expects handshake_in to be filled, and fills handshake_out. More... | |
| std::string & | SendChunk (unsigned int cs_id, unsigned char msg_type_id, unsigned int msg_stream_id, std::string data) |
| Packs up a chunk with the given arguments as properties. More... | |
| std::string & | SendCTL (unsigned char type, unsigned int data) |
| Packs up a chunk for a control message with 1 argument. More... | |
| std::string & | SendCTL (unsigned char type, unsigned int data, unsigned char data2) |
| Packs up a chunk for a control message with 2 arguments. More... | |
| std::string & | SendMedia (unsigned char msg_type_id, unsigned char *data, int len, unsigned int ts) |
| Packs up a chunk with media contents. More... | |
| std::string & | SendMedia (FLV::Tag &tag) |
| Packs up a chunk with media contents. More... | |
| std::string & | SendUSR (unsigned char type, unsigned int data) |
| Packs up a chunk for a user control message with 1 argument. More... | |
| std::string & | SendUSR (unsigned char type, unsigned int data, unsigned int data2) |
| Packs up a chunk for a user control message with 2 arguments. More... | |
Variables | |
| unsigned int | chunk_rec_max = 128 |
| Maximum size for a received chunk. More... | |
| unsigned int | chunk_snd_max = 128 |
| Maximum size for a sent chunk. More... | |
| std::string | handshake_in |
| This value should be set to the first 1537 bytes received. More... | |
| std::string | handshake_out |
| This value is the handshake response that is to be sent out. More... | |
| timeval | lastrec |
| Timestamp of last time data was received. More... | |
| std::map< unsigned int, Chunk > | lastrecv |
| Holds the last received chunk for every msg_id. More... | |
| std::map< unsigned int, Chunk > | lastsend |
| Holds the last sent chunk for every msg_id. More... | |
| unsigned int | rec_cnt = 0 |
| Counter for total data received, in bytes. More... | |
| unsigned int | rec_window_at = 0 |
| Current position of the receiving window. More... | |
| unsigned int | rec_window_size = 2500000 |
| Window size for receiving. More... | |
| unsigned int | snd_cnt = 0 |
| Counter for total data sent, in bytes. More... | |
| unsigned int | snd_window_at = 0 |
| Current position of the sending window. More... | |
| unsigned int | snd_window_size = 2500000 |
| Window size for sending. More... | |
Contains all functions and classes needed for RTMP connections.
| bool RTMPStream::doHandshake | ( | ) |
Does the handshake. Expects handshake_in to be filled, and fills handshake_out.
Does the handshake.
Expects handshake_in to be filled, and fills handshake_out. After calling this function, don't forget to read and ignore 1536 extra bytes, these are the handshake response and not interesting for us because we don't do client verification.
| std::string & RTMPStream::SendChunk | ( | unsigned int | cs_id, |
| unsigned char | msg_type_id, | ||
| unsigned int | msg_stream_id, | ||
| std::string | data | ||
| ) |
Packs up a chunk with the given arguments as properties.
| std::string & RTMPStream::SendCTL | ( | unsigned char | type, |
| unsigned int | data | ||
| ) |
Packs up a chunk for a control message with 1 argument.
| std::string & RTMPStream::SendCTL | ( | unsigned char | type, |
| unsigned int | data, | ||
| unsigned char | data2 | ||
| ) |
Packs up a chunk for a control message with 2 arguments.
| std::string & RTMPStream::SendMedia | ( | unsigned char | msg_type_id, |
| unsigned char * | data, | ||
| int | len, | ||
| unsigned int | ts | ||
| ) |
Packs up a chunk with media contents.
| msg_type_id | Type number of the media, as per FLV standard. |
| data | Contents of the media data. |
| len | Length of the media data, in bytes. |
| ts | Timestamp of the media data, relative to current system time. |
| std::string & RTMPStream::SendMedia | ( | FLV::Tag & | tag | ) |
Packs up a chunk with media contents.
| tag | FLV::Tag with media to send. |
| std::string & RTMPStream::SendUSR | ( | unsigned char | type, |
| unsigned int | data | ||
| ) |
Packs up a chunk for a user control message with 1 argument.
| std::string & RTMPStream::SendUSR | ( | unsigned char | type, |
| unsigned int | data, | ||
| unsigned int | data2 | ||
| ) |
Packs up a chunk for a user control message with 2 arguments.
| unsigned int RTMPStream::chunk_rec_max = 128 |
Maximum size for a received chunk.
| unsigned int RTMPStream::chunk_snd_max = 128 |
Maximum size for a sent chunk.
| std::string RTMPStream::handshake_in |
This value should be set to the first 1537 bytes received.
Input for the handshake.
| std::string RTMPStream::handshake_out |
This value is the handshake response that is to be sent out.
Output for the handshake.
| timeval RTMPStream::lastrec |
Timestamp of last time data was received.
| std::map< unsigned int, Chunk > RTMPStream::lastrecv |
Holds the last received chunk for every msg_id.
| std::map< unsigned int, Chunk > RTMPStream::lastsend |
Holds the last sent chunk for every msg_id.
| unsigned int RTMPStream::rec_cnt = 0 |
Counter for total data received, in bytes.
| unsigned int RTMPStream::rec_window_at = 0 |
Current position of the receiving window.
| unsigned int RTMPStream::rec_window_size = 2500000 |
Window size for receiving.
| unsigned int RTMPStream::snd_cnt = 0 |
Counter for total data sent, in bytes.
| unsigned int RTMPStream::snd_window_at = 0 |
Current position of the sending window.
| unsigned int RTMPStream::snd_window_size = 2500000 |
Window size for sending.
1.8.11