AV module
VideoConverter
Converts video frames between pixel formats and resolutions.
VideoConverter
#include <icy/av/videoconverter.h>Converts video frames between pixel formats and resolutions.
Public Attributes
| Return | Name | Description |
|---|---|---|
SwsContext * | ctx | libswscale conversion context. |
AVFrame * | oframe | Reusable output frame allocated by create(). |
VideoCodec | iparams | Expected input video parameters. |
VideoCodec | oparams | Target output video parameters. |
ctx
SwsContext * ctxlibswscale conversion context.
oframe
AVFrame * oframeReusable output frame allocated by create().
iparams
VideoCodec iparamsExpected input video parameters.
oparams
VideoCodec oparamsTarget output video parameters.
Public Methods
| Return | Name | Description |
|---|---|---|
VideoConverter | ||
VideoConverter | Deleted constructor. | |
VideoConverter | Deleted constructor. | |
void | create virtual | Initialise the libswscale context and allocate the output frame. Uses iparams and oparams to configure the conversion pipeline. Throws std::runtime_error if already initialised or if parameters are invalid. |
void | close virtual | Free the libswscale context and the output frame. |
AVFrame * | convert virtual | Convert iframe to the output pixel format and resolution. The returned frame is owned by this converter and is overwritten on the next call. |
VideoConverter
VideoConverter()VideoConverter
VideoConverter(const VideoConverter &) = deleteDeleted constructor.
VideoConverter
VideoConverter(VideoConverter &&) = deleteDeleted constructor.
create
virtual
virtual void create()Initialise the libswscale context and allocate the output frame. Uses iparams and oparams to configure the conversion pipeline. Throws std::runtime_error if already initialised or if parameters are invalid.
close
virtual
virtual void close()Free the libswscale context and the output frame.
convert
virtual
virtual AVFrame * convert(AVFrame * iframe)Convert iframe to the output pixel format and resolution. The returned frame is owned by this converter and is overwritten on the next call.
Parameters
iframeThe source AVFrame; must match iparams dimensions and pixel format.
Returns
The converted output AVFrame.
