1 #ifndef _AV_TRANSCODER_MEDIA_PROPERTY_FILE_PROPERTIES_HPP
2 #define _AV_TRANSCODER_MEDIA_PROPERTY_FILE_PROPERTIES_HPP
41 std::string getFilename()
const;
42 std::string getFormatName()
const;
43 std::string getFormatLongName()
const;
44 bool isRawFormat()
const;
45 std::string getFormatMimeType()
const;
47 size_t getProgramsCount()
const;
48 double getStartTime()
const;
49 float getDuration()
const;
50 size_t getBitRate()
const;
51 size_t getPacketSize()
const;
55 size_t getNbStreams()
const;
73 const std::vector<avtranscoder::StreamProperties*> getStreamProperties()
const;
74 const std::vector<avtranscoder::VideoProperties>&
getVideoProperties()
const {
return _videoStreams; }
75 const std::vector<avtranscoder::AudioProperties>&
getAudioProperties()
const {
return _audioStreams; }
76 const std::vector<avtranscoder::DataProperties>&
getDataProperties()
const {
return _dataStreams; }
79 const std::vector<avtranscoder::UnknownProperties>&
getUnknownProperties()
const {
return _unknownStreams; }
86 std::string allPropertiesAsJson()
const;
87 std::string asJson()
const;
101 catch(
const std::exception& e)
108 void clearStreamProperties();
114 std::map<size_t, StreamProperties*>
const std::vector< avtranscoder::AudioProperties > & getAudioProperties() const
const std::vector< avtranscoder::UnknownProperties > & getUnknownProperties() const
Base class of Progress. Inherit this class to have your own way to manage a progress bar...
const std::vector< avtranscoder::VideoProperties > & getVideoProperties() const
std::vector< std::pair< std::string, std::string > > PropertyVector
PropertyVector is a vector of pair, because the order of properties matters to us.
EAnalyseLevel
Level of file analysis.
std::vector< DataProperties > _dataStreams
Array of properties per data stream.
const std::vector< avtranscoder::SubtitleProperties > & getSubtitleProperties() const
std::vector< AttachementProperties > _attachementStreams
Array of properties per attachement stream.
const std::vector< avtranscoder::AttachementProperties > & getAttachementProperties() const
void add(PropertyVector &propertyVector, const std::string &key, const size_t &value)
const PropertyVector & getMetadatas() const
size_t getNbSubtitleStreams() const
std::vector< SubtitleProperties > _subtitleStreams
Array of properties per subtitle stream.
const AVFormatContext & getAVFormatContext()
std::map< size_t, StreamProperties * > _streams
Map of properties per stream index (of all types) - only references to the following properties...
void addProperty(PropertyVector &data, const std::string &key, T(FileProperties::*getter)(void) const) const
std::map< std::string, std::string > PropertyMap
size_t getNbAudioStreams() const
const FormatContext & getFormatContext()
PropertyVector _metadatas
std::vector< AudioProperties > _audioStreams
Array of properties per audio stream.
const std::vector< avtranscoder::DataProperties > & getDataProperties() const
Wrapper of an AVFormatContext.
std::vector< UnknownProperties > _unknownStreams
Array of properties per unknown stream.
std::vector< VideoProperties > _videoStreams
Array of properties per video stream.
size_t getNbAttachementStreams() const
Virtual based class of properties for all types of stream.
size_t getNbDataStreams() const
size_t getNbUnknownStreams() const
std::ostream & operator<<(std::ostream &flux, const InputFile &input)
const AVFormatContext * _avFormatContext
Has link (no ownership)
const FormatContext * _formatContext
Has link (no ownership)
const std::string propertyValueIfError
size_t getNbVideoStreams() const