00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef TAGLIB_MP4PROPERTIES_H
00023 #define TAGLIB_MP4PROPERTIES_H
00024
00025 #include <audioproperties.h>
00026 #include <tstring.h>
00027 #include <mp4.h>
00028
00029
00030 #undef VERSION
00031 #undef PACKAGE
00032
00033 namespace TagLib {
00034
00035 namespace MP4 {
00036
00037 class File;
00038
00044 class Properties : public AudioProperties
00045 {
00046 public:
00050 Properties(Properties::ReadStyle style);
00051
00055 virtual ~Properties();
00056
00057
00058
00059 virtual int length() const;
00060 virtual int bitrate() const;
00061 virtual int sampleRate() const;
00062 virtual int channels() const;
00063
00064 void readMP4Properties(MP4FileHandle mp4File);
00065
00066
00067 private:
00068 void readAudioTrackProperties(MP4FileHandle mp4File, MP4TrackId trackId );
00069 friend class MP4::File;
00070
00071 int m_length;
00072 int m_bitrate;
00073 int m_sampleRate;
00074 int m_channels;
00075
00076 Properties(const Properties &);
00077 Properties &operator=(const Properties &);
00078
00079 void read();
00080 };
00081
00082 }
00083
00084 }
00085
00086 #endif