Twitch SDK (Internal)
Classes | Namespaces | Typedefs | Enumerations | Functions
rtmp.h File Reference
#include "twitchsdk/broadcast/internal/muxers/flvformat.h"

Go to the source code of this file.

Classes

struct  ttv::broadcast::ChunkHeader
 
class  ttv::broadcast::RtmpMessageDetails
 

Namespaces

 ttv
 JSON (JavaScript Object Notation).
 
 ttv::broadcast
 

Typedefs

typedef uint8_t ttv::broadcast::RtmpMessageheader[16]
 

Enumerations

enum  { ttv::broadcast::RTMP_DEFAULT_CHUNK_SIZE = 128 }
 
enum  ttv::broadcast::Chunktype : uint8_t { ttv::broadcast::RTMP_CHUNKTYPE_LARGE = 0, ttv::broadcast::RTMP_CHUNKTYPE_MEDIUM, ttv::broadcast::RTMP_CHUNKTYPE_SMALL, ttv::broadcast::RTMP_CHUNKTYPE_NONE }
 
enum  ttv::broadcast::Channel : uint8_t {
  ttv::broadcast::RTMP_CHANNEL_INVALID = 0, ttv::broadcast::RTMP_CHANNEL_NETWORK = 2, ttv::broadcast::RTMP_CHANNEL_SYSTEM, ttv::broadcast::RTMP_CHANNEL_SOURCE,
  ttv::broadcast::RTMP_CHANNEL_NETSTREAM, ttv::broadcast::RTMP_CHANNEL_VIDEO = 8, ttv::broadcast::RTMP_CHANNEL_AUDIO
}
 
enum  ttv::broadcast::PacketType : uint8_t {
  ttv::broadcast::RTMP_PKT_INVALID = 0x00, ttv::broadcast::RTMP_PKT_CHUNK_SIZE = 0x01, ttv::broadcast::RTMP_PKT_ABORT_MSG = 0x02, ttv::broadcast::RTMP_PKT_BYTES_READ = 0x03,
  ttv::broadcast::RTMP_PKT_CONTROL = 0x04, ttv::broadcast::RTMP_PKT_WINACKSIZE = 0x05, ttv::broadcast::RTMP_PKT_PEER_BW = 0x06, ttv::broadcast::RTMP_PKT_EDGE_ORIGIN = 0x07,
  ttv::broadcast::RTMP_PKT_AUDIO = 0x08, ttv::broadcast::RTMP_PKT_VIDEO = 0x09, ttv::broadcast::RTMP_PKT_AMF3_DATA = 0x0F, ttv::broadcast::RTMP_PKT_AMF3_SO = 0x10,
  ttv::broadcast::RTMP_PKT_AMF3 = 0x11, ttv::broadcast::RTMP_PKT_AMF0_DATA = 0x12, ttv::broadcast::RTMP_PKT_AMF0_SO = 0x13, ttv::broadcast::RTMP_PKT_AMF0 = 0x14,
  ttv::broadcast::RTMP_PKT_AGGREGATE = 0x16
}
 
enum  ttv::broadcast::CtlType : uint8_t {
  ttv::broadcast::RTMP_CTL_STREAM_BEGIN = 0, ttv::broadcast::RTMP_CTL_STREAM_EOF, ttv::broadcast::RTMP_CTL_STREAM_DRY, ttv::broadcast::RTMP_CTL_SET_BUFFER_LENGTH,
  ttv::broadcast::RTMP_CTL_STREAM_RECORDED, ttv::broadcast::RTMP_CTL_PING = 6, ttv::broadcast::RTMP_CTL_PONG
}
 

Functions

template<class Inserter >
void ttv::broadcast::InsertBigEndian32 (Inserter it, uint32_t val)
 
template<class Inserter >
void ttv::broadcast::InsertBigEndian (Inserter it, uint32_t val)
 
template<class Inserter >
void ttv::broadcast::InsertBigEndian (Inserter it, uint16_t val)
 
uint32_t ttv::broadcast::BigToLittle (uint32_t source)
 
uint32_t ttv::broadcast::BigToLittle (flv::uint24_t source)
 
size_t ttv::broadcast::GetChunkSize (char firstByteOfChunk)
 
ChunkHeader ttv::broadcast::PopulateChunkHeader (const uint8_t *buffer)
 

Class Documentation

◆ ttv::broadcast::ChunkHeader

struct ttv::broadcast::ChunkHeader
Class Members
uint32_t messageStreamId
PacketType messageType
uint32_t packetLength
uint8_t streamId
uint32_t timestamp
Chunktype type