libpromeki 1.0.0-alpha
PROfessional MEdia toolKIt
 
Loading...
Searching...
No Matches
rtmpmessage.h
Go to the documentation of this file.
1
8#pragma once
9
10
11#include <promeki/config.h>
12#if PROMEKI_ENABLE_NETWORK
13#include <cstdint>
14#include <promeki/buffer.h>
15#include <promeki/list.h>
16#include <promeki/namespace.h>
17
18PROMEKI_NAMESPACE_BEGIN
19
59class RtmpMessage {
60 public:
71 enum Type : uint8_t {
72 SetChunkSize = 1,
73 AbortMessage = 2,
74 Acknowledgement = 3,
75 UserControl = 4,
76 WindowAckSize = 5,
77 SetPeerBandwidth = 6,
78 AudioMessage = 8,
79 VideoMessage = 9,
80 DataMessageAmf3 = 15,
81 SharedObjectAmf3 = 16,
82 CommandMessageAmf3 = 17,
83 DataMessageAmf0 = 18,
84 SharedObjectAmf0 = 19,
85 CommandMessageAmf0 = 20,
86 AggregateMessage = 22
87 };
88
90 using List = ::promeki::List<RtmpMessage>;
91
93 Type type = AudioMessage;
94
106 uint32_t streamId = 0;
107
116 uint32_t timestamp = 0;
117
127 Buffer payload;
128
138 uint32_t chunkStreamId = 0;
139};
140
141PROMEKI_NAMESPACE_END
142
143#endif // PROMEKI_ENABLE_NETWORK