Video frame decoding.
More...
|
| enum class | VideoCodec : int { UNSPECIFIED = 0
, H264
, H265
} |
| | Video codec. More...
|
| enum class | PixelFmt : int { UNSPECIFIED = 0
, Y8
, RGB24
, GBRP
} |
| | Pixel format. More...
|
| enum class | ScalingQual : int {
UNSPECIFIED = 0
, BILINEAR
, BICUBIC
, LANCZOS
,
SINC
} |
| | Scaling method (only for sw decoding) More...
|
| enum class | HwAccel : uint8_t { UNSPECIFIED = 0
, AUTO = 1
, SW = 2
, HW = 3
} |
| | Hw acceleration. More...
|
◆ VideoFrameDecoderPtr
◆ VideoCodec
Video codec.
| Enumerator |
|---|
| UNSPECIFIED | Unspecified.
|
| H264 | H.264 Advanced Video Coding (AVC)
|
| H265 | H.265 High Efficiency Video Coding (HEVC)
|
Definition at line 43 of file video.hpp.
◆ PixelFmt
Pixel format.
| Enumerator |
|---|
| UNSPECIFIED | Invalid.
|
| Y8 | Planar Y (greyscale), 8bpp (= FFmpeg AV_PIX_FMT_GRAY8)
|
| RGB24 | Packed RGB 8:8:8, 24bpp, RGBRGB... (= FFmpeg AV_PIX_FMT_RGB24)
|
| GBRP | Planar GBR, 24bpp [R][R][R]...[G][G][G]...[B][B][B]... (~ FFmpeg AV_PIX_FMT_GBRP/AV_PIX_FMT_GBR24P)
|
Definition at line 72 of file video.hpp.
◆ ScalingQual
Scaling method (only for sw decoding)
| Enumerator |
|---|
| UNSPECIFIED | Unspecified.
|
| BILINEAR | Low quality, very fast.
|
| BICUBIC | Medium/high quality, fast (B=0.0, C=0.5, "Catmull-Rom")
|
| LANCZOS | High quality, slower (radius=3.0)
|
| SINC | Very high quality, very slow (radius=3.0)
|
Definition at line 102 of file video.hpp.
◆ HwAccel
Hw acceleration.
| Enumerator |
|---|
| UNSPECIFIED | Unspecified.
|
| AUTO | Use hw accel if possible, fallback to SW.
|
| SW | Do not use any hw acceleration, use pure software implementation.
|
| HW | Use hw acceleration (currently, Linux Video Acceleration API, VA-API)
|
Definition at line 133 of file video.hpp.
◆ VideoCodecToStr()
| const char * fpsdk::common::video::VideoCodecToStr |
( |
const VideoCodec | codec | ) |
|
Stringify video codec enum.
- Parameters
-
- Returns
- the stringification of the codec, or "?" for bad enum values
◆ VideoCodecFromStrOr()
Convert codec ID string to enum.
- Parameters
-
| [in] | str | Codec ID string |
| [in] | def | Default codec ID, for bad str |
- Returns
- the codec ID, or def if str was invalid
◆ PixelFmtToStr()
| const char * fpsdk::common::video::PixelFmtToStr |
( |
const PixelFmt | fmt | ) |
|
Stringify pixel format enum.
- Parameters
-
- Returns
- the stringification of the fmt, or "?" for bad enum values
◆ PixelFmtFromStrOr()
| PixelFmt fpsdk::common::video::PixelFmtFromStrOr |
( |
const char * | str, |
|
|
const PixelFmt | def ) |
Convert pixel format string to enum.
- Parameters
-
| [in] | str | Pixel format string |
| [in] | def | Default pixel format, for bad str |
- Returns
- the pixel format, or def if str was invalid
◆ ScalingQualToStr()
| const char * fpsdk::common::video::ScalingQualToStr |
( |
const ScalingQual | qual | ) |
|
Stringify scaling method enum.
- Parameters
-
- Returns
- the stringification of the qual, or "?" for bad enum values
◆ ScalingQualFromStrOr()
Convert scaling method string to enum.
- Parameters
-
| [in] | str | Scaling method string |
| [in] | def | Default pixel format, for bad str |
- Returns
- the scaling method, or def if str was invalid
◆ HwAccelToStr()
| const char * fpsdk::common::video::HwAccelToStr |
( |
const HwAccel | accel | ) |
|
Stringify hw accel method enum.
- Parameters
-
- Returns
- the stringification of the accel, or "?" for bad enum values
◆ HwAccelFromStrOr()
| HwAccel fpsdk::common::video::HwAccelFromStrOr |
( |
const char * | str, |
|
|
const HwAccel | def ) |
Convert scaling method string to enum.
- Parameters
-
| [in] | str | HW acceleration string |
| [in] | def | Default HW acceleration, for bad str |
- Returns
- the HW acceleration, or def if str was invalid
◆ CreateVideoFrameDecoder()
Create a video frame decoder.
- Parameters
-
- Returns
- the video frame decoder instances, or nullptr if it failed (bad params)