1 #ifndef _AV_TRANSCODER_MEDIA_PROPERTY_STREAM_PROPERTIES_HPP
2 #define _AV_TRANSCODER_MEDIA_PROPERTY_STREAM_PROPERTIES_HPP
19 size_t getStreamId()
const;
21 float getDuration()
const;
22 AVMediaType getStreamType()
const;
24 size_t getCodecId()
const;
25 std::string getCodecName()
const;
26 std::string getCodecLongName()
const;
34 std::string asJson()
const;
48 catch(
const std::exception& e)
std::vector< std::pair< std::string, std::string > > PropertyVector
PropertyVector is a vector of pair, because the order of properties matters to us.
const AVFormatContext * _formatContext
Has link (no ownership)
const AVFormatContext & getAVFormatContext() const
void add(PropertyVector &propertyVector, const std::string &key, const size_t &value)
AVCodec * _codec
Has link (no ownership)
const PropertyVector & getMetadatas() const
std::map< std::string, std::string > PropertyMap
PropertyVector _metadatas
Wrapper of an AVFormatContext.
AVCodecContext * _codecContext
Has link (no ownership)
Virtual based class of properties for all types of stream.
void addProperty(PropertyVector &dataVector, const std::string &key, T(StreamProperties::*getter)(void) const) const
std::ostream & operator<<(std::ostream &flux, const InputFile &input)
size_t getStreamIndex() const
const std::string propertyValueIfError