libpromeki 1.0.0-alpha
PROfessional MEdia toolKIt
 
Loading...
Searching...
No Matches
pcmsilencefiller.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 <cstddef>
14#include <promeki/audiodesc.h>
15#include <promeki/buffer.h>
16#include <promeki/error.h>
17#include <promeki/namespace.h>
18
19PROMEKI_NAMESPACE_BEGIN
20
60class PcmSilenceFiller {
61 public:
66 PcmSilenceFiller() = default;
67
85 PcmSilenceFiller(const AudioDesc &desc, size_t samplesPerPacket);
86
98 Error reset(const AudioDesc &desc, size_t samplesPerPacket);
99
107 const Buffer &payload() const { return _payload; }
108
111 size_t samplesPerPacket() const { return _samplesPerPacket; }
112
115 const AudioDesc &desc() const { return _desc; }
116
120 size_t size() const { return _payload.size(); }
121
122 private:
123 AudioDesc _desc;
124 size_t _samplesPerPacket = 0;
125 Buffer _payload;
126};
127
128PROMEKI_NAMESPACE_END
129
130#endif // PROMEKI_ENABLE_PROAV