libpromeki 1.0.0-alpha
PROfessional MEdia toolKIt
 
Loading...
Searching...
No Matches
videoencodersei.h
Go to the documentation of this file.
1
8#pragma once
9
10
11#include <promeki/config.h>
12#if PROMEKI_ENABLE_PROAV
13#include <promeki/namespace.h>
14#include <promeki/buffer.h>
15#include <promeki/list.h>
16
17PROMEKI_NAMESPACE_BEGIN
18
19class Frame;
20class MasteringDisplay;
21class ContentLightLevel;
22class AncTranslator;
23
53class VideoEncoderSei {
54 public:
56 static constexpr int TypeUserDataRegistered = 4;
58 static constexpr int TypeMasteringDisplay = 137;
60 static constexpr int TypeContentLightLevel = 144;
61
69 struct SeiPayload {
70 int type = 0;
71 Buffer bytes;
72 };
73
95 static List<SeiPayload> captions(const Frame &source, int videoStreamIndex, AncTranslator &translator);
96
105 static SeiPayload masteringDisplay(const MasteringDisplay &md);
106
114 static SeiPayload contentLightLevel(const ContentLightLevel &cll);
115};
116
117PROMEKI_NAMESPACE_END
118
119#endif // PROMEKI_ENABLE_PROAV