| 
    AvTranscoder
    0.9.4
    
   C++APIforLibav/FFmpeg 
   | 
 
Virtual based class of properties for all types of stream. More...
#include <StreamProperties.hpp>
Public Member Functions | |
| StreamProperties (const FormatContext &formatContext, const size_t index) | |
| virtual | ~StreamProperties ()=0 | 
| size_t | getStreamIndex () const | 
| size_t | getStreamId () const | 
| Rational | getTimeBase () const | 
| float | getDuration () const | 
| in seconds  More... | |
| AVMediaType | getStreamType () const | 
| size_t | getCodecId () const | 
| std::string | getCodecName () const | 
| std::string | getCodecLongName () const | 
| const PropertyVector & | getMetadatas () const | 
| const AVFormatContext & | getAVFormatContext () const | 
| std::string | asJson () const | 
| Return all properties as a json format.  More... | |
| PropertyMap | asMap () const | 
| Return all properties as a map (name of property, value)  More... | |
| PropertyVector | asVector () const | 
| Same data with a specific order.  More... | |
| virtual PropertyVector & | fillVector (PropertyVector &data) const | 
| To avoid copy of the vector.  More... | |
Protected Attributes | |
| const AVFormatContext * | _formatContext | 
| Has link (no ownership)  More... | |
| AVCodecContext * | _codecContext | 
| Has link (no ownership)  More... | |
| AVCodec * | _codec | 
| Has link (no ownership)  More... | |
| size_t | _streamIndex | 
| PropertyVector | _metadatas | 
Private Member Functions | |
| template<typename T > | |
| void | addProperty (PropertyVector &dataVector, const std::string &key, T(StreamProperties::*getter)(void) const) const | 
Virtual based class of properties for all types of stream.
Definition at line 12 of file StreamProperties.hpp.
| avtranscoder::StreamProperties::StreamProperties | ( | const FormatContext & | formatContext, | 
| const size_t | index | ||
| ) | 
Definition at line 11 of file StreamProperties.cpp.
References _codec, _codecContext, _formatContext, _metadatas, _streamIndex, and avtranscoder::detail::fillMetadataDictionnary().
      
  | 
  pure virtual | 
Definition at line 35 of file StreamProperties.cpp.
      
  | 
  inlineprivate | 
Definition at line 42 of file StreamProperties.hpp.
References avtranscoder::detail::add(), and avtranscoder::detail::propertyValueIfError.
Referenced by fillVector().
| std::string avtranscoder::StreamProperties::asJson | ( | ) | const | 
Return all properties as a json format.
Definition at line 138 of file StreamProperties.cpp.
References asMap(), and avtranscoder::json::JsonStreamWriter::build().
| PropertyMap avtranscoder::StreamProperties::asMap | ( | ) | const | 
Return all properties as a map (name of property, value)
Definition at line 125 of file StreamProperties.cpp.
References asVector().
Referenced by asJson().
| PropertyVector avtranscoder::StreamProperties::asVector | ( | ) | const | 
Same data with a specific order.
Definition at line 101 of file StreamProperties.cpp.
References fillVector().
Referenced by asMap(), and avtranscoder::operator<<().
      
  | 
  virtual | 
To avoid copy of the vector.
Reimplemented in avtranscoder::VideoProperties, and avtranscoder::AudioProperties.
Definition at line 107 of file StreamProperties.cpp.
References _metadatas, avtranscoder::detail::add(), addProperty(), getCodecId(), getCodecLongName(), getCodecName(), getDuration(), getStreamId(), getStreamIndex(), and getTimeBase().
Referenced by asVector(), avtranscoder::AudioProperties::fillVector(), and avtranscoder::VideoProperties::fillVector().
      
  | 
  inline | 
Definition at line 31 of file StreamProperties.hpp.
| size_t avtranscoder::StreamProperties::getCodecId | ( | ) | const | 
Definition at line 66 of file StreamProperties.cpp.
References _codecContext.
Referenced by fillVector().
| std::string avtranscoder::StreamProperties::getCodecLongName | ( | ) | const | 
Definition at line 87 of file StreamProperties.cpp.
References _codec, and _codecContext.
Referenced by fillVector().
| std::string avtranscoder::StreamProperties::getCodecName | ( | ) | const | 
Definition at line 73 of file StreamProperties.cpp.
References _codec, and _codecContext.
Referenced by fillVector(), and avtranscoder::Transcoder::getProfileFromFile().
| float avtranscoder::StreamProperties::getDuration | ( | ) | const | 
in seconds
Definition at line 53 of file StreamProperties.cpp.
References _formatContext, _streamIndex, and getTimeBase().
Referenced by fillVector(), avtranscoder::StreamTranscoder::getDuration(), avtranscoder::VideoProperties::getNbFrames(), avtranscoder::AudioProperties::getNbSamples(), and avtranscoder::StreamTranscoder::processFrame().
      
  | 
  inline | 
Definition at line 28 of file StreamProperties.hpp.
| size_t avtranscoder::StreamProperties::getStreamId | ( | ) | const | 
Definition at line 39 of file StreamProperties.cpp.
References _formatContext, and _streamIndex.
Referenced by fillVector().
      
  | 
  inline | 
Definition at line 18 of file StreamProperties.hpp.
Referenced by fillVector().
| AVMediaType avtranscoder::StreamProperties::getStreamType | ( | ) | const | 
Definition at line 59 of file StreamProperties.cpp.
References _formatContext, and _streamIndex.
Referenced by avtranscoder::Transcoder::add(), avtranscoder::Transcoder::fillProcessStat(), avtranscoder::Transcoder::getProfileFromFile(), and avtranscoder::StreamTranscoder::StreamTranscoder().
| Rational avtranscoder::StreamProperties::getTimeBase | ( | ) | const | 
Definition at line 46 of file StreamProperties.cpp.
References _formatContext, and _streamIndex.
Referenced by fillVector(), and getDuration().
      
  | 
  protected | 
Has link (no ownership)
Definition at line 58 of file StreamProperties.hpp.
Referenced by avtranscoder::VideoProperties::analyseGopStructure(), avtranscoder::VideoProperties::getBitRate(), getCodecLongName(), getCodecName(), avtranscoder::VideoProperties::getProfileName(), and StreamProperties().
      
  | 
  protected | 
Has link (no ownership)
Definition at line 57 of file StreamProperties.hpp.
Referenced by avtranscoder::VideoProperties::analyseGopStructure(), avtranscoder::AudioProperties::getBitRate(), avtranscoder::VideoProperties::getBitRate(), avtranscoder::AudioProperties::getChannelDescription(), avtranscoder::AudioProperties::getChannelLayout(), avtranscoder::AudioProperties::getChannelName(), avtranscoder::VideoProperties::getChromaSampleLocation(), getCodecId(), getCodecLongName(), getCodecName(), avtranscoder::VideoProperties::getColorPrimaries(), avtranscoder::VideoProperties::getColorRange(), avtranscoder::VideoProperties::getColorspace(), avtranscoder::VideoProperties::getColorTransfert(), avtranscoder::VideoProperties::getDar(), avtranscoder::VideoProperties::getDtgActiveFormat(), avtranscoder::VideoProperties::getFieldOrder(), avtranscoder::VideoProperties::getHeight(), avtranscoder::VideoProperties::getLevel(), avtranscoder::VideoProperties::getMaxBitRate(), avtranscoder::VideoProperties::getMinBitRate(), avtranscoder::AudioProperties::getNbChannels(), avtranscoder::VideoProperties::getProfile(), avtranscoder::VideoProperties::getProfileName(), avtranscoder::VideoProperties::getReferencesFrames(), avtranscoder::AudioProperties::getSampleFormatLongName(), avtranscoder::AudioProperties::getSampleFormatName(), avtranscoder::AudioProperties::getSampleRate(), avtranscoder::VideoProperties::getSar(), avtranscoder::VideoProperties::getStartTimecode(), avtranscoder::AudioProperties::getTicksPerFrame(), avtranscoder::VideoProperties::getTicksPerFrame(), avtranscoder::VideoProperties::getWidth(), avtranscoder::VideoProperties::hasBFrames(), StreamProperties(), and avtranscoder::VideoProperties::VideoProperties().
      
  | 
  protected | 
Has link (no ownership)
Definition at line 56 of file StreamProperties.hpp.
Referenced by avtranscoder::VideoProperties::analyseGopStructure(), avtranscoder::DataProperties::detectAncillaryData(), avtranscoder::VideoProperties::getBitRate(), getDuration(), avtranscoder::VideoProperties::getFps(), avtranscoder::VideoProperties::getNbFrames(), avtranscoder::AudioProperties::getNbSamples(), getStreamId(), getStreamType(), getTimeBase(), and StreamProperties().
      
  | 
  protected | 
Definition at line 61 of file StreamProperties.hpp.
Referenced by fillVector(), and StreamProperties().
      
  | 
  protected | 
Definition at line 60 of file StreamProperties.hpp.
Referenced by avtranscoder::VideoProperties::analyseGopStructure(), avtranscoder::DataProperties::detectAncillaryData(), avtranscoder::VideoProperties::getBitRate(), getDuration(), avtranscoder::VideoProperties::getFps(), avtranscoder::VideoProperties::getNbFrames(), avtranscoder::AudioProperties::getNbSamples(), getStreamId(), getStreamType(), getTimeBase(), and StreamProperties().