libpromeki 1.0.0-alpha
PROfessional MEdia toolKIt
 
Loading...
Searching...
No Matches
ffmpegsupport.h
Go to the documentation of this file.
1
12#pragma once
13
14#include <promeki/config.h>
15#if PROMEKI_ENABLE_FFMPEG
16#include <cstddef>
17#include <promeki/namespace.h>
18#include <promeki/string.h>
19#include <promeki/buffer.h>
20#include <promeki/bufferview.h>
21
22// Forward-declare the libav* types we expose by pointer, so this promeki
23// header never pulls in the libavcodec / libavutil headers. Their full
24// definitions are only needed in the .cpp.
25struct AVFrame;
26struct AVPacket;
27struct AVBufferRef;
28
29PROMEKI_NAMESPACE_BEGIN
30
57void ffmpegInstallLogBridge();
58
69String ffmpegErrorString(int rc);
70
91Buffer ffmpegWrapBuffer(AVBufferRef *ref);
92
108BufferView ffmpegWrapPacket(AVPacket *pkt);
109
132BufferView ffmpegWrapFramePlanes(AVFrame *fr, const size_t *planeSizes, size_t planeCount);
133
134PROMEKI_NAMESPACE_END
135
136#endif // PROMEKI_ENABLE_FFMPEG