AvTranscoder
0.9.4
C++APIforLibav/FFmpeg
|
#include <PixelProperties.hpp>
Public Member Functions | |
PixelProperties (const std::string &avPixelFormat="") | |
PixelProperties (const AVPixelFormat avPixelFormat) | |
std::string | getPixelName () const |
std::string | getPixelFormatName () const |
size_t | getBitsPerPixel () const |
padding bits are not counted More... | |
size_t | getMaxNbBitsInChannels () const |
size_t | getNbComponents () const |
size_t | getChromaWidth () const |
size_t | getChromaHeight () const |
EComponentType | getColorComponents () const |
ESubsamplingType | getSubsampling () const |
bool | isBigEndian () const |
bool | hasAlpha () const |
bool | isPlanar () const |
bool | isIndexedColors () const |
bool | isBitWisePacked () const |
bool | isHardwareAccelerated () const |
bool | isRgbPixelData () const |
bool | isPseudoPaletted () const |
std::vector< Channel > | getChannels () const |
AVPixelFormat | getAVPixelFormat () const |
const AVPixFmtDescriptor * | getAVPixFmtDescriptor () const |
PropertyVector | asVector () const |
Return all pixel properties as a vector (name of property: value) More... | |
PropertyVector & | fillVector (PropertyVector &data) const |
To avoid copy of the vector. More... | |
Private Member Functions | |
void | init (const AVPixelFormat avPixelFormat) |
template<typename T > | |
void | addProperty (PropertyVector &data, const std::string &key, T(PixelProperties::*getter)(void) const) const |
Private Attributes | |
AVPixelFormat | _pixelFormat |
const AVPixFmtDescriptor * | _pixelDesc |
Has link (no ownership) More... | |
Definition at line 46 of file PixelProperties.hpp.
avtranscoder::PixelProperties::PixelProperties | ( | const std::string & | avPixelFormat = "" | ) |
If parameter is an unknown pixel, its format is AV_PIX_FMT_NONE with no access to pixel description.
Definition at line 9 of file PixelProperties.cpp.
References init().
avtranscoder::PixelProperties::PixelProperties | ( | const AVPixelFormat | avPixelFormat | ) |
Definition at line 16 of file PixelProperties.cpp.
References init().
|
inlineprivate |
Definition at line 91 of file PixelProperties.hpp.
References avtranscoder::detail::add(), and avtranscoder::detail::propertyValueIfError.
Referenced by fillVector().
PropertyVector avtranscoder::PixelProperties::asVector | ( | ) | const |
Return all pixel properties as a vector (name of property: value)
Definition at line 236 of file PixelProperties.cpp.
References fillVector().
PropertyVector & avtranscoder::PixelProperties::fillVector | ( | PropertyVector & | data | ) | const |
To avoid copy of the vector.
Definition at line 242 of file PixelProperties.cpp.
References avtranscoder::detail::add(), addProperty(), avtranscoder::eComponentGray, avtranscoder::eComponentRgb, avtranscoder::eComponentYuv, avtranscoder::eComponentYuvA, avtranscoder::eComponentYuvJPEG, avtranscoder::eSubsampling410, avtranscoder::eSubsampling411, avtranscoder::eSubsampling420, avtranscoder::eSubsampling422, avtranscoder::eSubsampling440, avtranscoder::eSubsamplingNone, getBitsPerPixel(), getChannels(), getChromaHeight(), getChromaWidth(), getColorComponents(), getMaxNbBitsInChannels(), getNbComponents(), getPixelFormatName(), getPixelName(), getSubsampling(), hasAlpha(), isBigEndian(), isBitWisePacked(), isHardwareAccelerated(), isIndexedColors(), isPlanar(), isPseudoPaletted(), isRgbPixelData(), and avtranscoder::detail::propertyValueIfError.
Referenced by asVector(), and avtranscoder::VideoProperties::fillVector().
|
inline |
Definition at line 79 of file PixelProperties.hpp.
|
inline |
Definition at line 80 of file PixelProperties.hpp.
size_t avtranscoder::PixelProperties::getBitsPerPixel | ( | ) | const |
padding bits are not counted
Definition at line 52 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
std::vector< Channel > avtranscoder::PixelProperties::getChannels | ( | ) | const |
Definition at line 219 of file PixelProperties.cpp.
References _pixelDesc, avtranscoder::Channel::bitStep, avtranscoder::Channel::chromaHeight, and avtranscoder::Channel::id.
Referenced by fillVector().
size_t avtranscoder::PixelProperties::getChromaHeight | ( | ) | const |
Definition at line 88 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
size_t avtranscoder::PixelProperties::getChromaWidth | ( | ) | const |
Definition at line 81 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
EComponentType avtranscoder::PixelProperties::getColorComponents | ( | ) | const |
Definition at line 95 of file PixelProperties.cpp.
References _pixelDesc, avtranscoder::eComponentGray, avtranscoder::eComponentRgb, avtranscoder::eComponentYuv, avtranscoder::eComponentYuvA, and avtranscoder::eComponentYuvJPEG.
Referenced by fillVector().
size_t avtranscoder::PixelProperties::getMaxNbBitsInChannels | ( | ) | const |
Definition at line 59 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
size_t avtranscoder::PixelProperties::getNbComponents | ( | ) | const |
Definition at line 74 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
std::string avtranscoder::PixelProperties::getPixelFormatName | ( | ) | const |
Definition at line 40 of file PixelProperties.cpp.
References _pixelFormat.
Referenced by fillVector(), and avtranscoder::Transcoder::getProfileFromFile().
std::string avtranscoder::PixelProperties::getPixelName | ( | ) | const |
Definition at line 29 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
ESubsamplingType avtranscoder::PixelProperties::getSubsampling | ( | ) | const |
Definition at line 122 of file PixelProperties.cpp.
References _pixelDesc, avtranscoder::eSubsampling410, avtranscoder::eSubsampling411, avtranscoder::eSubsampling420, avtranscoder::eSubsampling422, avtranscoder::eSubsampling440, and avtranscoder::eSubsamplingNone.
Referenced by fillVector().
bool avtranscoder::PixelProperties::hasAlpha | ( | ) | const |
Definition at line 160 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
|
private |
Definition at line 23 of file PixelProperties.cpp.
References _pixelDesc, and _pixelFormat.
Referenced by PixelProperties().
bool avtranscoder::PixelProperties::isBigEndian | ( | ) | const |
Definition at line 153 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
bool avtranscoder::PixelProperties::isBitWisePacked | ( | ) | const |
Definition at line 186 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
bool avtranscoder::PixelProperties::isHardwareAccelerated | ( | ) | const |
Definition at line 193 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
bool avtranscoder::PixelProperties::isIndexedColors | ( | ) | const |
Definition at line 179 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
bool avtranscoder::PixelProperties::isPlanar | ( | ) | const |
Definition at line 172 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
bool avtranscoder::PixelProperties::isPseudoPaletted | ( | ) | const |
Definition at line 207 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
bool avtranscoder::PixelProperties::isRgbPixelData | ( | ) | const |
Definition at line 200 of file PixelProperties.cpp.
References _pixelDesc.
Referenced by fillVector().
|
private |
Has link (no ownership)
Definition at line 106 of file PixelProperties.hpp.
Referenced by getBitsPerPixel(), getChannels(), getChromaHeight(), getChromaWidth(), getColorComponents(), getMaxNbBitsInChannels(), getNbComponents(), getPixelName(), getSubsampling(), hasAlpha(), init(), isBigEndian(), isBitWisePacked(), isHardwareAccelerated(), isIndexedColors(), isPlanar(), isPseudoPaletted(), and isRgbPixelData().
|
private |
Definition at line 105 of file PixelProperties.hpp.
Referenced by getPixelFormatName(), and init().