stream-deploy/ZLM/3rdpart/media-server/librtmp/include/rtmp-handshake.h

30 lines
820 B
C++

#ifndef _rtmp_handshake_h_
#define _rtmp_handshake_h_
#include <stdint.h>
#include <stddef.h>
enum
{
RTMP_VERSION = 3,
RTMP_HANDSHAKE_SIZE = 1536,
};
enum
{
RTMP_HANDSHAKE_UNINIT = 0, // Uninitialized
RTMP_HANDSHAKE_0, // received C0/S0, wait C1/S1
RTMP_HANDSHAKE_1, // received C1/S1, wait C2/S2
RTMP_HANDSHAKE_2, // received C2/S2, handshake done
};
int rtmp_handshake_c0(uint8_t* c0, int version);
int rtmp_handshake_c1(uint8_t* c1, uint32_t timestamp);
int rtmp_handshake_c2(uint8_t* c2, uint32_t timestamp, const uint8_t* s1, size_t bytes);
int rtmp_handshake_s0(uint8_t* s0, int version);
int rtmp_handshake_s1(uint8_t* s1, uint32_t timestamp, const uint8_t* c1, size_t bytes);
int rtmp_handshake_s2(uint8_t* s2, uint32_t timestamp, const uint8_t* c1, size_t bytes);
#endif /* !_rtmp_handshake_h_ */