fixed includes
This commit is contained in:
parent
b1eb6faba6
commit
aa50c2d8b3
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,85 @@
|
|||
#ifndef AACCODEBOOK_H
|
||||
#define AACCODEBOOK_H
|
||||
|
||||
#include <c++utilities/application/global.h>
|
||||
#include <c++utilities/conversion/types.h>
|
||||
|
||||
namespace Media {
|
||||
|
||||
struct LIB_EXPORT AacHcb
|
||||
{
|
||||
byte offset;
|
||||
byte extraBits;
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacHcb2Pair
|
||||
{
|
||||
byte bits;
|
||||
sbyte x;
|
||||
sbyte y;
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacHcb2Quad
|
||||
{
|
||||
byte bits;
|
||||
sbyte x;
|
||||
sbyte y;
|
||||
sbyte v;
|
||||
sbyte w;
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacHcbBinPair
|
||||
{
|
||||
byte isLeaf;
|
||||
sbyte data[2];
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacHcbBinQuad
|
||||
{
|
||||
byte isLeaf;
|
||||
sbyte data[4];
|
||||
};
|
||||
|
||||
extern const AacHcb *const aacHcbTable[];
|
||||
extern const AacHcb2Pair *const aacHcb2PairTable[];
|
||||
extern const AacHcb2Quad *const aacHcb2QuadTable[];
|
||||
extern const AacHcbBinPair *const aacHcbBinTable[];
|
||||
extern const byte aacHcbN[];
|
||||
extern const int aacHcb2QuadTableSize[];
|
||||
extern const int aacHcb2PairTableSize[];
|
||||
extern const int aacHcbBinTableSize[];
|
||||
|
||||
extern const AacHcb aacHcb1Step1[];
|
||||
extern const AacHcb2Quad aacHcb1Step2[];
|
||||
extern const AacHcb aacHcb2Step1[];
|
||||
extern const AacHcb2Quad aacHcb2Step2[];
|
||||
extern const AacHcbBinQuad aacHcb3[];
|
||||
extern const AacHcb aacHcb4Step1[];
|
||||
extern const AacHcb2Quad aacHcb4Step2[];
|
||||
extern const AacHcbBinPair aacHcb5[];
|
||||
extern const AacHcb aacHcb6Step1[];
|
||||
extern const AacHcb2Pair aacHcb6Step2[];
|
||||
extern const AacHcbBinPair aacHcb7[];
|
||||
extern const AacHcb aacHcb8Step1[];
|
||||
extern const AacHcb2Pair aacHcb8Step2[];
|
||||
extern const AacHcbBinPair aacHcb9[];
|
||||
extern const AacHcb aacHcb10Step1[];
|
||||
extern const AacHcb2Pair aacHcb10Step2[];
|
||||
extern const AacHcb aacHcb11Step1[];
|
||||
extern const AacHcb2Pair aacHcb11Step2[];
|
||||
extern const byte aacHcbSf[][2];
|
||||
|
||||
extern const sbyte tHuffmanEnv15dB[120][2];
|
||||
extern const sbyte fHuffmanEnv15dB[120][2];
|
||||
extern const sbyte tHuffmanEnvBal15dB[48][2];
|
||||
extern const sbyte fHuffmanEnvBal15dB[48][2];
|
||||
extern const sbyte tHuffmanEnv30dB[62][2];
|
||||
extern const sbyte fHuffmanEnv30dB[62][2];
|
||||
extern const sbyte tHuffmanEnvBal30dB[24][2];
|
||||
extern const sbyte fHuffmanEnvBal30dB[24][2];
|
||||
extern const sbyte tHuffmanNoise30dB[62][2];
|
||||
extern const sbyte tHuffmanNoiseBal30dB[24][2];
|
||||
|
||||
}
|
||||
|
||||
#endif // AACCODEBOOK_H
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,565 @@
|
|||
#ifndef AACFRAME_H
|
||||
#define AACFRAME_H
|
||||
|
||||
#include <c++utilities/io/bitreader.h>
|
||||
|
||||
#include <memory>
|
||||
|
||||
namespace Media {
|
||||
|
||||
class AdtsFrame;
|
||||
|
||||
constexpr auto aacMaxChannels = 64;
|
||||
constexpr auto aacMaxSyntaxElements = 48;
|
||||
constexpr auto aacMaxWindowGroups = 8;
|
||||
constexpr auto aacMaxSfb = 51;
|
||||
constexpr auto aacMaxLtpSfb = 40;
|
||||
constexpr auto aacMaxltpSfbS = 8;
|
||||
constexpr auto aacInvalidSbrElement = 0xFF;
|
||||
constexpr auto aacNoTimeSlots960 = 15;
|
||||
constexpr auto aacNoTimeSlots = 16;
|
||||
constexpr auto aacSbrRate = 2;
|
||||
constexpr auto aacSbrM = 49;
|
||||
constexpr auto aacSbrMaxLe = 5;
|
||||
constexpr auto aacSbrMaxNtsrhfg = 40;
|
||||
|
||||
typedef const sbyte (*SbrHuffTab)[2];
|
||||
|
||||
namespace AacSyntaxElementTypes {
|
||||
enum KnownTypes : byte
|
||||
{
|
||||
SingleChannelElement, /**< codes a single audio channel */
|
||||
ChannelPairElement, /**< codes steroe signal */
|
||||
ChannelCouplingElement, /**< something to do with channel coupling (not implemented in libfaad2) */
|
||||
LowFrequencyElement, /**< low-frequency effects? referenced as "special effects" in RTP doc */
|
||||
DataStreamElement, /**< user data */
|
||||
ProgramConfigElement, /**< describes bitstream */
|
||||
FillElement, /**< pad space/extension data */
|
||||
EndOfFrame /**< marks the end of the frame */
|
||||
};
|
||||
}
|
||||
|
||||
namespace AacIcsSequenceTypes {
|
||||
enum KnownTypes : byte {
|
||||
OnlyLongSequence,
|
||||
LongStartSequence,
|
||||
EightShortSequence,
|
||||
LongStopSequence
|
||||
};
|
||||
}
|
||||
|
||||
namespace AacScaleFactorTypes {
|
||||
enum KnownTypes : byte {
|
||||
ZeroHcb = 0,
|
||||
FirstPairHcb = 5,
|
||||
EscHcb = 11,
|
||||
QuadLen = 4,
|
||||
PairLen = 2,
|
||||
NoiseHcb = 13,
|
||||
IntensityHcb2 = 14,
|
||||
IntensityHcb = 15
|
||||
};
|
||||
}
|
||||
|
||||
namespace AacExtensionTypes {
|
||||
enum KnownTypes : byte {
|
||||
Fill = 0,
|
||||
FillData = 1,
|
||||
DataElement = 2,
|
||||
DynamicRange = 11,
|
||||
SacData = 12,
|
||||
SbrData = 13,
|
||||
SbrDataCrc = 14
|
||||
};
|
||||
}
|
||||
|
||||
namespace BsFrameClasses {
|
||||
enum BsFrameClass : byte {
|
||||
FixFix,
|
||||
FixVar,
|
||||
VarFix,
|
||||
VarVar
|
||||
};
|
||||
}
|
||||
|
||||
namespace AacSbrExtensionIds {
|
||||
enum KnownIds : byte {
|
||||
DrmParametricStereo = 0,
|
||||
Ps = 2
|
||||
};
|
||||
}
|
||||
|
||||
struct LIB_EXPORT AacLtpInfo
|
||||
{
|
||||
AacLtpInfo();
|
||||
byte lastBand;
|
||||
byte dataPresent;
|
||||
uint16 lag;
|
||||
byte lagUpdate;
|
||||
byte coef;
|
||||
byte longUsed[aacMaxLtpSfb];
|
||||
byte shortUsed[8];
|
||||
byte shortLagPresent[8];
|
||||
byte shortLag[8];
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacPredictorInfo
|
||||
{
|
||||
AacPredictorInfo();
|
||||
byte maxSfb;
|
||||
byte reset;
|
||||
byte resetGroupNumber;
|
||||
byte predictionUsed[aacMaxSfb];
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacPulseInfo
|
||||
{
|
||||
AacPulseInfo();
|
||||
byte count;
|
||||
byte startSfb;
|
||||
byte offset[4];
|
||||
byte amp[4];
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacTnsInfo
|
||||
{
|
||||
AacTnsInfo();
|
||||
byte filt[8];
|
||||
byte coefRes[8];
|
||||
byte length[8][4];
|
||||
byte order[8][4];
|
||||
byte direction[8][4];
|
||||
byte coefCompress[8][4];
|
||||
byte coef[8][4][32];
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacSsrInfo
|
||||
{
|
||||
AacSsrInfo();
|
||||
byte maxBand;
|
||||
byte adjustNum[4][8];
|
||||
byte alevcode[4][8][8];
|
||||
byte aloccode[4][8][8];
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacDrcInfo
|
||||
{
|
||||
AacDrcInfo();
|
||||
byte present;
|
||||
byte bandCount;
|
||||
byte pceInstanceTag;
|
||||
byte excludedChannelsPresent;
|
||||
byte bandTop[17];
|
||||
byte progRefLevel;
|
||||
byte dynamicRangeSign[17];
|
||||
byte dynamicRangeControl[17];
|
||||
byte excludeMask[aacMaxChannels];
|
||||
byte additionalExcludedChannels[aacMaxChannels];
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacPsInfo
|
||||
{
|
||||
AacPsInfo();
|
||||
byte headerRead;
|
||||
byte use34HybridBands;
|
||||
byte enableIID; // Inter-channel Intensity Difference
|
||||
byte iidMode;
|
||||
byte iidParCount;
|
||||
byte iidopdParCount;
|
||||
// TODO
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacDrmPsInfo
|
||||
{
|
||||
AacDrmPsInfo();
|
||||
byte headerRead;
|
||||
byte use34HybridBands;
|
||||
byte enableIID; // Inter-channel Intensity Difference
|
||||
byte iidMode;
|
||||
byte iidParCount;
|
||||
byte iidopdParCount;
|
||||
// TODO
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacSbrInfo
|
||||
{
|
||||
AacSbrInfo(byte sbrElementType, uint16 samplingFrequency, uint16 frameLength, bool isDrm);
|
||||
|
||||
byte aacElementId;
|
||||
byte samplingFrequency;
|
||||
|
||||
uint32 maxAacLine;
|
||||
|
||||
byte rate;
|
||||
byte justSeeked;
|
||||
byte ret;
|
||||
|
||||
byte ampRes[2];
|
||||
|
||||
byte k0;
|
||||
byte kx;
|
||||
byte m;
|
||||
byte nMaster;
|
||||
byte nHigh;
|
||||
byte nLow;
|
||||
byte nq;
|
||||
byte nl[4];
|
||||
byte n[2];
|
||||
|
||||
byte fMaster[64];
|
||||
byte fTableRes[2][64];
|
||||
byte fTableNoise[64];
|
||||
byte fTableLim[4][64];
|
||||
byte fGroup[5][64];
|
||||
byte ng[5];
|
||||
|
||||
byte tableMapKToG[64];
|
||||
|
||||
byte absBordLead[2];
|
||||
byte absBordTrail[2];
|
||||
byte relLeadCount[2];
|
||||
byte relTrailCount[2];
|
||||
|
||||
byte le[2];
|
||||
byte lePrev[2];
|
||||
byte lq[2];
|
||||
|
||||
byte te[2][aacSbrMaxLe + 1];
|
||||
byte tq[2][3];
|
||||
byte f[2][aacSbrMaxLe + 1];
|
||||
byte fPrev[2];
|
||||
|
||||
//real_t *gTempPrev[2][5];
|
||||
//real_t *qTempPrev[2][5];
|
||||
//sbyte gqRingbufIndex[2];
|
||||
|
||||
int16 e[2][64][aacSbrMaxLe];
|
||||
int16 ePrev[2][64];
|
||||
//real_t eOrig[2][64][aacSbrMaxLe];
|
||||
//real_t eCurr[2][64][aacSbrMaxLe];
|
||||
int32 q[2][64][2];
|
||||
//real_t qDiv[2][64][2];
|
||||
//real_t qDiv2[2][64][2];
|
||||
int32 qPrev[2][64];
|
||||
|
||||
sbyte la[2];
|
||||
sbyte laPrev[2];
|
||||
|
||||
byte bsInvfMode[2][aacSbrMaxLe];
|
||||
byte bsInvfModePrev[2][aacSbrMaxLe];
|
||||
//real_t bwArray[2][64];
|
||||
//real_t bwArrayPrev[2][64];
|
||||
|
||||
byte noPatches;
|
||||
byte patchNoSubbands[64];
|
||||
byte patchStartSubband[64];
|
||||
|
||||
byte bsAddHarmonic[2][64];
|
||||
byte bsAddHarmonicPrev[2][64];
|
||||
|
||||
uint16 indexNoisePrev[2];
|
||||
byte psiIsPrev[2];
|
||||
|
||||
byte bsStartFreqPrev;
|
||||
byte bsStopFreqPrev;
|
||||
byte bsXoverBandPrev;
|
||||
byte bsFreqScalePrev;
|
||||
byte bsAlterScalePrev;
|
||||
byte bsNoiseBandsPrev;
|
||||
|
||||
sbyte prevEnvIsShort[2];
|
||||
|
||||
sbyte kxPrev;
|
||||
byte bsco;
|
||||
byte bscoPrev;
|
||||
byte mPrev;
|
||||
uint16 frameLength;
|
||||
|
||||
byte reset;
|
||||
uint32 frame;
|
||||
uint32 headerCount;
|
||||
|
||||
byte idAac;
|
||||
//qmfa_info *qmfa[2];
|
||||
//qmfs_info *qmfs[2];
|
||||
|
||||
//qmf_t Xsbr[2][aacSbrMaxNtsrhfg][64];
|
||||
|
||||
byte isDrmSbr;
|
||||
std::shared_ptr<AacDrmPsInfo> drmPs;
|
||||
|
||||
byte timeSlotsRateCount;
|
||||
byte timeSlotsCount;
|
||||
byte tHfGen;
|
||||
byte tHfAdj;
|
||||
|
||||
std::shared_ptr<AacPsInfo> ps;
|
||||
byte psUsed;
|
||||
byte psResetFlag;
|
||||
|
||||
byte bsHeaderFlag;
|
||||
byte bsCrcFlag;
|
||||
uint16 bsSbrCrcBits;
|
||||
byte bsProtocolVersion;
|
||||
byte bsAmpRes;
|
||||
byte bsStartFreq;
|
||||
byte bsStopFreq;
|
||||
byte bsXoverBand;
|
||||
byte bsFreqScale;
|
||||
byte bsAlterScale;
|
||||
byte bsNoiseBands;
|
||||
byte bsLimiterBands;
|
||||
byte bsLimiterGains;
|
||||
byte bsInterpolFreq;
|
||||
byte bsSmoothingMode;
|
||||
byte bsSamplerateMode;
|
||||
byte bsAddHarmonicFlag[2];
|
||||
byte bsAddHarmonicFlagPrev[2];
|
||||
byte bsExtendedData;
|
||||
byte bsExtensionId;
|
||||
byte bsExtensionData;
|
||||
byte bsCoupling;
|
||||
byte bsFrameClass[2];
|
||||
byte bsRelBord[2][9];
|
||||
byte bsRelBord0[2][9];
|
||||
byte bsRelBord1[2][9];
|
||||
byte bsPointer[2];
|
||||
byte bsAbsBord0[2];
|
||||
byte bsAbsBord1[2];
|
||||
byte bsRelCount0[2];
|
||||
byte bsRelCount1[2];
|
||||
byte bsDfEnv[2][9];
|
||||
byte bsDfNoise[2][3];
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacProgramConfig
|
||||
{
|
||||
AacProgramConfig();
|
||||
byte elementInstanceTag;
|
||||
byte objectType;
|
||||
byte samplingFrequencyIndex;
|
||||
byte frontChannelElementCount;
|
||||
byte sideChannelElementCount;
|
||||
byte backChannelElementCount;
|
||||
byte lfeChannelElementCount;
|
||||
byte assocDataElementCount;
|
||||
byte validCcElementCount;
|
||||
byte monoMixdownPresent;
|
||||
byte monoMixdownElementNumber;
|
||||
byte stereoMixdownPresent;
|
||||
byte stereoMixdownElementNumber;
|
||||
byte matrixMixdownIdxPresent;
|
||||
byte pseudoSurroundEnable;
|
||||
byte matrixMixdownIdx;
|
||||
byte frontElementIsCpe[16];
|
||||
byte frontElementTagSelect[16];
|
||||
byte sideElementIsCpe[16];
|
||||
byte sideElementTagSelect[16];
|
||||
byte backElementIsCpe[16];
|
||||
byte backElementTagSelect[16];
|
||||
byte lfeElementTagSelect[16];
|
||||
byte assocDataElementTagSelect[16];
|
||||
byte ccElementIsIndSw[16];
|
||||
byte validCcElementTagSelect[16];
|
||||
byte channels;
|
||||
byte commentFieldBytes;
|
||||
byte commentFieldData[257];
|
||||
byte frontChannelCount;
|
||||
byte sideChannelCount;
|
||||
byte backChannelCount;
|
||||
byte lfeChannelCount;
|
||||
byte sceChannel[16];
|
||||
byte cpeChannel[16];
|
||||
};
|
||||
|
||||
struct LIB_EXPORT AacIcsInfo
|
||||
{
|
||||
AacIcsInfo();
|
||||
|
||||
byte maxSfb;
|
||||
|
||||
byte swbCount;
|
||||
byte windowGroupCount;
|
||||
byte windowCount;
|
||||
byte windowSequence;
|
||||
byte windowGroupLengths[8];
|
||||
byte windowShape;
|
||||
byte scaleFactorGrouping;
|
||||
uint16 sectionSfbOffset[8][15 * 8];
|
||||
uint16 swbOffset[52];
|
||||
uint16 maxSwbOffset;
|
||||
|
||||
byte sectionCb[8][15 * 8];
|
||||
uint16 sectionStart[8][15 * 8];
|
||||
uint16 sectionEnd[8][15 * 8];
|
||||
byte sfbCb[8][15 * 8];
|
||||
byte sectionsPerGroup[8];
|
||||
|
||||
byte globalGain;
|
||||
uint16 scaleFactors[8][51];
|
||||
|
||||
byte midSideCodingMaskPresent;
|
||||
byte midSideCodingUsed[aacMaxWindowGroups][aacMaxSfb];
|
||||
|
||||
byte noiseUsed;
|
||||
byte isUsed;
|
||||
|
||||
byte pulseDataPresent;
|
||||
byte tnsDataPresent;
|
||||
byte gainControlPresent;
|
||||
byte predictorDataPresent;
|
||||
|
||||
AacPulseInfo pulse;
|
||||
AacTnsInfo tns;
|
||||
AacPredictorInfo predictor;
|
||||
AacLtpInfo ltp1;
|
||||
AacLtpInfo ltp2;
|
||||
AacSsrInfo ssr;
|
||||
std::shared_ptr<AacSbrInfo> sbr;
|
||||
|
||||
// error resilience
|
||||
uint16 reorderedSpectralDataLength;
|
||||
byte longestCodewordLength;
|
||||
byte sfConcealment;
|
||||
byte revGlobalGain;
|
||||
uint16 rvlcSfLength;
|
||||
uint16 dpcmNoiseNrg;
|
||||
byte sfEscapesPresent;
|
||||
byte rvlcEscapesLength;
|
||||
uint16 dpcmNoiseLastPos;
|
||||
};
|
||||
|
||||
class LIB_EXPORT AacFrameElementParser
|
||||
{
|
||||
public:
|
||||
AacFrameElementParser(byte audioObjectId, byte samplingFrequencyIndex, byte extensionSamplingFrequencyIndex, byte channelConfig, uint16 frameLength = 1024);
|
||||
|
||||
void parse(const AdtsFrame &adtsFrame, std::unique_ptr<char []> &data, std::size_t dataSize);
|
||||
void parse(const AdtsFrame &adtsFrame, std::istream &stream, std::size_t dataSize);
|
||||
|
||||
private:
|
||||
void parseLtpInfo(const AacIcsInfo &ics, AacLtpInfo <p);
|
||||
void parseIcsInfo(AacIcsInfo &ics);
|
||||
void parseSectionData(AacIcsInfo &ics);
|
||||
void decodeScaleFactorData(AacIcsInfo &ics);
|
||||
void decodeRvlcScaleFactorData(AacIcsInfo &ics);
|
||||
void parseScaleFactorData(AacIcsInfo &ics);
|
||||
void parsePulseData(AacIcsInfo &ics);
|
||||
void parseTnsData(AacIcsInfo &ics);
|
||||
void parseGainControlData(AacIcsInfo &ics);
|
||||
void parseSpectralData(AacIcsInfo &ics, int16 *specData);
|
||||
void parseSideInfo(AacIcsInfo &ics, bool scaleFlag);
|
||||
byte parseExcludedChannels();
|
||||
byte parseDynamicRange();
|
||||
static sbyte sbrLog2(const sbyte val);
|
||||
int16 sbrHuffmanDec(SbrHuffTab table);
|
||||
void parseSbrGrid(std::shared_ptr<AacSbrInfo> &sbr, byte channel);
|
||||
void parseSbrDtdf(std::shared_ptr<AacSbrInfo> &sbr, byte channel);
|
||||
void parseInvfMode(std::shared_ptr<AacSbrInfo> &sbr, byte channel);
|
||||
void parseSbrEnvelope(std::shared_ptr<AacSbrInfo> &sbr, byte channel);
|
||||
void parseSbrNoise(std::shared_ptr<AacSbrInfo> &sbr, byte channel);
|
||||
void parseSbrSinusoidalCoding(std::shared_ptr<AacSbrInfo> &sbr, byte channel);
|
||||
uint16 parseSbrExtension(std::shared_ptr<AacSbrInfo> &sbr, byte extensionId, byte bitsLeft);
|
||||
uint16 parsePsData(std::shared_ptr<AacPsInfo> &ps, byte &header);
|
||||
uint16 parseDrmPsData(std::shared_ptr<AacDrmPsInfo> &drmPs);
|
||||
void parseSbrSingleChannelElement(std::shared_ptr<AacSbrInfo> &sbr);
|
||||
void parseSbrChannelPairElement(std::shared_ptr<AacSbrInfo> &sbr);
|
||||
std::shared_ptr<AacSbrInfo> makeSbrInfo(byte sbrElement, bool isDrm = false);
|
||||
void parseSbrExtensionData(byte sbrElement, uint16 count, bool crcFlag);
|
||||
byte parseHuffmanScaleFactor();
|
||||
void parseHuffmanSpectralData(byte cb, int16 *sp);
|
||||
void huffmanSignBits(int16 *sp, byte len);
|
||||
void huffman2StepQuad(byte cb, int16 *sp);
|
||||
void huffmanBinaryQuadSign(byte cb, int16 *sp);
|
||||
void huffmanBinaryPair(byte cb, int16 *sp);
|
||||
void huffman2StepPair(byte cb, int16 *sp);
|
||||
void huffmanBinaryPairSign(byte cb, int16 *sp);
|
||||
void huffman2StepPairSign(byte cb, int16 *sp);
|
||||
int16 huffmanGetEscape(int16 sp);
|
||||
constexpr static int16 huffmanCodebook(byte i);
|
||||
static void vcb11CheckLav(byte cb, int16 *sp);
|
||||
void calculateWindowGroupingInfo(AacIcsInfo &ics);
|
||||
void parseIndividualChannelStream(AacIcsInfo &ics, int16 *specData, bool scaleFlag = false);
|
||||
void parseSingleChannelElement();
|
||||
void parseChannelPairElement();
|
||||
void parseCouplingChannelElement();
|
||||
void parseLowFrequencyElement();
|
||||
void parseDataStreamElement();
|
||||
void parseProgramConfigElement();
|
||||
void parseFillElement(byte sbrElement = aacInvalidSbrElement);
|
||||
void parseRawDataBlock();
|
||||
|
||||
// these fields contain setup information
|
||||
IoUtilities::BitReader m_reader;
|
||||
byte m_mpeg4AudioObjectId;
|
||||
byte m_mpeg4SamplingFrequencyIndex;
|
||||
byte m_mpeg4ExtensionSamplingFrequencyIndex;
|
||||
byte m_mpeg4ChannelConfig;
|
||||
uint16 m_frameLength;
|
||||
byte m_aacSectionDataResilienceFlag;
|
||||
byte m_aacScalefactorDataResilienceFlag;
|
||||
byte m_aacSpectralDataResilienceFlag;
|
||||
// these fields will be parsed
|
||||
byte m_elementId[aacMaxChannels];
|
||||
byte m_channelCount;
|
||||
byte m_elementCount;
|
||||
byte m_elementChannelCount[aacMaxSyntaxElements];
|
||||
//byte m_channel;
|
||||
//int16 m_pairedChannel;
|
||||
byte m_elementInstanceTag[aacMaxSyntaxElements];
|
||||
byte m_commonWindow;
|
||||
AacIcsInfo m_ics1;
|
||||
AacIcsInfo m_ics2;
|
||||
AacDrcInfo m_drc;
|
||||
AacProgramConfig m_pce;
|
||||
byte m_sbrPresentFlag;
|
||||
byte m_forceUpSampling;
|
||||
byte m_downSampledSbr;
|
||||
std::shared_ptr<AacSbrInfo> m_sbrElements[aacMaxSyntaxElements];
|
||||
byte m_psUsed[aacMaxSyntaxElements];
|
||||
byte m_psUsedGlobal;
|
||||
byte m_psResetFlag;
|
||||
};
|
||||
|
||||
/*!
|
||||
* \brief Constructs a new parser with the specified setup information.
|
||||
*/
|
||||
inline AacFrameElementParser::AacFrameElementParser(byte audioObjectId, byte samplingFrequencyIndex, byte extensionSamplingFrequencyIndex, byte channelConfig, uint16 frameLength) :
|
||||
m_reader(nullptr, nullptr),
|
||||
m_mpeg4AudioObjectId(audioObjectId),
|
||||
m_mpeg4SamplingFrequencyIndex(samplingFrequencyIndex),
|
||||
m_mpeg4ExtensionSamplingFrequencyIndex(extensionSamplingFrequencyIndex),
|
||||
m_mpeg4ChannelConfig(channelConfig),
|
||||
m_frameLength(frameLength),
|
||||
m_aacSpectralDataResilienceFlag(0),
|
||||
m_elementId{0},
|
||||
m_channelCount(0),
|
||||
m_elementCount(0),
|
||||
m_elementChannelCount{0},
|
||||
m_elementInstanceTag{0},
|
||||
m_commonWindow(0),
|
||||
//m_channel(0),
|
||||
//m_pairedChannel(0),
|
||||
m_sbrPresentFlag(0),
|
||||
m_forceUpSampling(0),
|
||||
m_downSampledSbr(0),
|
||||
m_sbrElements{0},
|
||||
m_psUsed{0},
|
||||
m_psUsedGlobal(0),
|
||||
m_psResetFlag(0)
|
||||
{}
|
||||
|
||||
inline sbyte AacFrameElementParser::sbrLog2(const sbyte val)
|
||||
{
|
||||
static const int log2tab[] = {0, 0, 1, 2, 2, 3, 3, 3, 3, 4};
|
||||
return (val < 10 && val >= 0) ? log2tab[val] : 0;
|
||||
}
|
||||
|
||||
constexpr int16 AacFrameElementParser::huffmanCodebook(byte i)
|
||||
{
|
||||
return static_cast<int16>(i ? (16428320 & 0xFFFF) : ((16428320 >> 16) & 0xFFFF));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endif // AACFRAME_H
|
|
@ -1,7 +1,7 @@
|
|||
#include "abstractattachment.h"
|
||||
#include "./abstractattachment.h"
|
||||
|
||||
#include "mediafileinfo.h"
|
||||
#include "exceptions.h"
|
||||
#include "./mediafileinfo.h"
|
||||
#include "./exceptions.h"
|
||||
|
||||
#include <sstream>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef MEDIA_ABSTRACTATTACHMENT_H
|
||||
#define MEDIA_ABSTRACTATTACHMENT_H
|
||||
|
||||
#include "statusprovider.h"
|
||||
#include "./statusprovider.h"
|
||||
|
||||
#include <string>
|
||||
#include <iostream>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "abstractchapter.h"
|
||||
#include "./abstractchapter.h"
|
||||
|
||||
#include <sstream>
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
#ifndef MEDIA_ABSTRACTCHAPTER_H
|
||||
#define MEDIA_ABSTRACTCHAPTER_H
|
||||
|
||||
#include "statusprovider.h"
|
||||
#include "localeawarestring.h"
|
||||
#include "./statusprovider.h"
|
||||
#include "./localeawarestring.h"
|
||||
|
||||
#include <c++utilities/chrono/timespan.h>
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "abstractcontainer.h"
|
||||
#include "./abstractcontainer.h"
|
||||
|
||||
using namespace std;
|
||||
using namespace ChronoUtilities;
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#ifndef MEDIA_ABSTRACTCONTAINER_H
|
||||
#define MEDIA_ABSTRACTCONTAINER_H
|
||||
|
||||
#include "statusprovider.h"
|
||||
#include "exceptions.h"
|
||||
#include "tagtarget.h"
|
||||
#include "./statusprovider.h"
|
||||
#include "./exceptions.h"
|
||||
#include "./tagtarget.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
#include "abstracttrack.h"
|
||||
#include "exceptions.h"
|
||||
#include "mediaformat.h"
|
||||
#include "./abstracttrack.h"
|
||||
#include "./exceptions.h"
|
||||
#include "./mediaformat.h"
|
||||
|
||||
#include "mp4/mp4ids.h"
|
||||
#include "./mp4/mp4ids.h"
|
||||
|
||||
#include "mpegaudio/mpegaudioframe.h"
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
#ifndef ABSTRACTTRACK_H
|
||||
#define ABSTRACTTRACK_H
|
||||
|
||||
#include "statusprovider.h"
|
||||
#include "size.h"
|
||||
#include "margin.h"
|
||||
#include "mediaformat.h"
|
||||
#include "./statusprovider.h"
|
||||
#include "./size.h"
|
||||
#include "./margin.h"
|
||||
#include "./mediaformat.h"
|
||||
|
||||
#include <c++utilities/conversion/types.h>
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "adtsframe.h"
|
||||
#include "./adtsframe.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
#include "adtsstream.h"
|
||||
#include "./adtsstream.h"
|
||||
|
||||
#include "tagparser/mp4/mp4ids.h"
|
||||
#include "../mp4/mp4ids.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <string>
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#ifndef MEDIA_ADTSSTREAM_H
|
||||
#define MEDIA_ADTSSTREAM_H
|
||||
|
||||
#include "adtsframe.h"
|
||||
#include "./adtsframe.h"
|
||||
|
||||
#include "tagparser/abstracttrack.h"
|
||||
#include "../abstracttrack.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "avcconfiguration.h"
|
||||
#include "./avcconfiguration.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef AVCCONFIGURATION_H
|
||||
#define AVCCONFIGURATION_H
|
||||
|
||||
#include "avcinfo.h"
|
||||
#include "./avcinfo.h"
|
||||
|
||||
#include <vector>
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "avcinfo.h"
|
||||
#include "./avcinfo.h"
|
||||
|
||||
#include <unordered_map>
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
#ifndef AVCINFO_H
|
||||
#define AVCINFO_H
|
||||
|
||||
#include "tagparser/margin.h"
|
||||
#include "tagparser/size.h"
|
||||
#include "../margin.h"
|
||||
#include "../size.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "bitmapinfoheader.h"
|
||||
#include "./bitmapinfoheader.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#include "backuphelper.h"
|
||||
#include "basicfileinfo.h"
|
||||
#include "./backuphelper.h"
|
||||
#include "./basicfileinfo.h"
|
||||
|
||||
#include <string>
|
||||
#include <fstream>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "basicfileinfo.h"
|
||||
#include "./basicfileinfo.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
|
|
@ -0,0 +1,42 @@
|
|||
#ifndef CASEINSENSITIVECOMPARER
|
||||
#define CASEINSENSITIVECOMPARER
|
||||
|
||||
#include <c++utilities/application/global.h>
|
||||
|
||||
#include <string>
|
||||
|
||||
#include <iostream>
|
||||
|
||||
namespace Media {
|
||||
|
||||
/*!
|
||||
* \brief The CaseInsensitiveCharComparer struct defines a method for case-insensivive character comparsion (less).
|
||||
*/
|
||||
struct LIB_EXPORT CaseInsensitiveCharComparer
|
||||
{
|
||||
static constexpr unsigned char toLower(const unsigned char c)
|
||||
{
|
||||
return (c >= 'A' && c <= 'Z') ? (c + ('a' - 'A')) : c;
|
||||
}
|
||||
|
||||
bool operator()(const unsigned char lhs, const unsigned char rhs) const
|
||||
{
|
||||
return toLower(lhs) < toLower(rhs);
|
||||
}
|
||||
};
|
||||
|
||||
/*!
|
||||
* \brief The CaseInsensitiveStringComparer struct defines a method for case-insensivive string comparsion (less).
|
||||
*/
|
||||
struct LIB_EXPORT CaseInsensitiveStringComparer
|
||||
{
|
||||
bool operator()(const std::string &lhs, const std::string &rhs) const
|
||||
{
|
||||
return std::lexicographical_compare(lhs.cbegin(), lhs.cend(), rhs.cbegin(), rhs.cend(), CaseInsensitiveCharComparer());
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif // CASEINSENSITIVECOMPARER
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
#include "exceptions.h"
|
||||
#include "./exceptions.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef FIELDBASEDTAG_H
|
||||
#define FIELDBASEDTAG_H
|
||||
|
||||
#include "tag.h"
|
||||
#include "./tag.h"
|
||||
|
||||
#include <map>
|
||||
#include <functional>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef MEDIA_GENERICCONTAINER_H
|
||||
#define MEDIA_GENERICCONTAINER_H
|
||||
|
||||
#include "abstractcontainer.h"
|
||||
#include "./abstractcontainer.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <memory>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#ifndef GENERICFILEELEMENT_H
|
||||
#define GENERICFILEELEMENT_H
|
||||
|
||||
#include "notification.h"
|
||||
#include "exceptions.h"
|
||||
#include "statusprovider.h"
|
||||
#include "./notification.h"
|
||||
#include "./exceptions.h"
|
||||
#include "./statusprovider.h"
|
||||
|
||||
#include <c++utilities/conversion/types.h>
|
||||
#include <c++utilities/io/copy.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef TAGFIELD_H
|
||||
#define TAGFIELD_H
|
||||
|
||||
#include "tagvalue.h"
|
||||
#include "./tagvalue.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "id3genres.h"
|
||||
#include "./id3genres.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include "id3v1tag.h"
|
||||
#include "id3genres.h"
|
||||
#include "./id3v1tag.h"
|
||||
#include "./id3genres.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/conversion/conversionexception.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef ID3V1TAG_H
|
||||
#define ID3V1TAG_H
|
||||
|
||||
#include "tagparser/tag.h"
|
||||
#include "../tag.h"
|
||||
|
||||
namespace Media
|
||||
{
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
#include "id3v2frame.h"
|
||||
#include "id3genres.h"
|
||||
#include "id3v2frameids.h"
|
||||
#include "./id3v2frame.h"
|
||||
#include "./id3genres.h"
|
||||
#include "./id3v2frameids.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
#include <c++utilities/misc/memory.h>
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
#ifndef ID3V2FRAME_H
|
||||
#define ID3V2FRAME_H
|
||||
|
||||
#include "id3v2frameids.h"
|
||||
#include "./id3v2frameids.h"
|
||||
|
||||
#include "tagparser/generictagfield.h"
|
||||
#include "tagparser/tagvalue.h"
|
||||
#include "tagparser/statusprovider.h"
|
||||
#include "../generictagfield.h"
|
||||
#include "../tagvalue.h"
|
||||
#include "../statusprovider.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "id3v2frameids.h"
|
||||
#include "./id3v2frameids.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
namespace Media
|
||||
{
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include "id3v2tag.h"
|
||||
#include "id3v2frameids.h"
|
||||
#include "./id3v2tag.h"
|
||||
#include "./id3v2frameids.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#ifndef ID3V2TAG_H
|
||||
#define ID3V2TAG_H
|
||||
|
||||
#include "id3v2frame.h"
|
||||
#include "./id3v2frame.h"
|
||||
|
||||
#include "tagparser/fieldbasedtag.h"
|
||||
#include "../fieldbasedtag.h"
|
||||
|
||||
#include <map>
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#include "ebmlelement.h"
|
||||
#include "ebmlid.h"
|
||||
#include "matroskacontainer.h"
|
||||
#include "matroskaid.h"
|
||||
#include "./ebmlelement.h"
|
||||
#include "./ebmlid.h"
|
||||
#include "./matroskacontainer.h"
|
||||
#include "./matroskaid.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/conversion/types.h>
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
#ifndef EBMLELEMENT_H
|
||||
#define EBMLELEMENT_H
|
||||
|
||||
#include "ebmlid.h"
|
||||
#include "matroskaid.h"
|
||||
#include "./ebmlid.h"
|
||||
#include "./matroskaid.h"
|
||||
|
||||
#include "tagparser/statusprovider.h"
|
||||
#include "tagparser/genericfileelement.h"
|
||||
#include "../statusprovider.h"
|
||||
#include "../genericfileelement.h"
|
||||
|
||||
#include <c++utilities/conversion/types.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include "matroskaattachment.h"
|
||||
#include "matroskacontainer.h"
|
||||
#include "ebmlelement.h"
|
||||
#include "matroskaid.h"
|
||||
#include "./matroskaattachment.h"
|
||||
#include "./matroskacontainer.h"
|
||||
#include "./ebmlelement.h"
|
||||
#include "./matroskaid.h"
|
||||
|
||||
#include <c++utilities/conversion/binaryconversion.h>
|
||||
#include <c++utilities/misc/memory.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef MEDIA_MATROSKAATTACHMENT_H
|
||||
#define MEDIA_MATROSKAATTACHMENT_H
|
||||
|
||||
#include "tagparser/abstractattachment.h"
|
||||
#include "../abstractattachment.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "matroskachapter.h"
|
||||
#include "ebmlelement.h"
|
||||
#include "matroskaid.h"
|
||||
#include "./matroskachapter.h"
|
||||
#include "./ebmlelement.h"
|
||||
#include "./matroskaid.h"
|
||||
|
||||
#include <c++utilities/misc/memory.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef MEDIA_MATROSKACHAPTER_H
|
||||
#define MEDIA_MATROSKACHAPTER_H
|
||||
|
||||
#include "tagparser/abstractchapter.h"
|
||||
#include "../abstractchapter.h"
|
||||
|
||||
#include <memory>
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "matroskacodecid.h"
|
||||
#include "./matroskacodecid.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
#include "matroskacontainer.h"
|
||||
#include "ebmlid.h"
|
||||
#include "matroskaid.h"
|
||||
#include "matroskacues.h"
|
||||
#include "matroskaeditionentry.h"
|
||||
#include "matroskaseekinfo.h"
|
||||
#include "./matroskacontainer.h"
|
||||
#include "./ebmlid.h"
|
||||
#include "./matroskaid.h"
|
||||
#include "./matroskacues.h"
|
||||
#include "./matroskaeditionentry.h"
|
||||
#include "./matroskaseekinfo.h"
|
||||
|
||||
#include "tagparser/mediafileinfo.h"
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "tagparser/backuphelper.h"
|
||||
#include "../mediafileinfo.h"
|
||||
#include "../exceptions.h"
|
||||
#include "../backuphelper.h"
|
||||
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
#include <c++utilities/misc/memory.h>
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
#ifndef MATROSKACONTAINER_H
|
||||
#define MATROSKACONTAINER_H
|
||||
|
||||
#include "ebmlelement.h"
|
||||
#include "matroskatag.h"
|
||||
#include "matroskatrack.h"
|
||||
#include "matroskachapter.h"
|
||||
#include "matroskaattachment.h"
|
||||
#include "./ebmlelement.h"
|
||||
#include "./matroskatag.h"
|
||||
#include "./matroskatrack.h"
|
||||
#include "./matroskachapter.h"
|
||||
#include "./matroskaattachment.h"
|
||||
|
||||
#include "tagparser/genericcontainer.h"
|
||||
#include "../genericcontainer.h"
|
||||
|
||||
#include <c++utilities/conversion/types.h>
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#include "matroskacues.h"
|
||||
#include "matroskacontainer.h"
|
||||
#include "./matroskacues.h"
|
||||
#include "./matroskacontainer.h"
|
||||
|
||||
#include <c++utilities/conversion/binaryconversion.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef MEDIA_MATROSKACUES_H
|
||||
#define MEDIA_MATROSKACUES_H
|
||||
|
||||
#include "ebmlelement.h"
|
||||
#include "./ebmlelement.h"
|
||||
|
||||
#include <map>
|
||||
#include <ostream>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "matroskaeditionentry.h"
|
||||
#include "ebmlelement.h"
|
||||
#include "matroskaid.h"
|
||||
#include "./matroskaeditionentry.h"
|
||||
#include "./ebmlelement.h"
|
||||
#include "./matroskaid.h"
|
||||
|
||||
#include <c++utilities/misc/memory.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef MEDIA_MATROSKAEDITIONENTRY_H
|
||||
#define MEDIA_MATROSKAEDITIONENTRY_H
|
||||
|
||||
#include "matroskachapter.h"
|
||||
#include "./matroskachapter.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#include "ebmlid.h"
|
||||
#include "matroskaid.h"
|
||||
#include "./ebmlid.h"
|
||||
#include "./matroskaid.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include "matroskaseekinfo.h"
|
||||
#include "matroskaid.h"
|
||||
#include "./matroskaseekinfo.h"
|
||||
#include "./matroskaid.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/conversion/binaryconversion.h>
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#ifndef MEDIA_MATROSKASEEKINFO_H
|
||||
#define MEDIA_MATROSKASEEKINFO_H
|
||||
|
||||
#include "ebmlelement.h"
|
||||
#include "./ebmlelement.h"
|
||||
|
||||
#include "tagparser/statusprovider.h"
|
||||
#include "../statusprovider.h"
|
||||
|
||||
#include <utility>
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "matroskatag.h"
|
||||
#include "ebmlelement.h"
|
||||
#include "matroskatagid.h"
|
||||
#include "./matroskatag.h"
|
||||
#include "./ebmlelement.h"
|
||||
#include "./matroskatagid.h"
|
||||
|
||||
#include <map>
|
||||
#include <initializer_list>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#ifndef MEDIA_MATROSKATAG_H
|
||||
#define MEDIA_MATROSKATAG_H
|
||||
|
||||
#include "matroskatagfield.h"
|
||||
#include "./matroskatagfield.h"
|
||||
|
||||
#include "tagparser/fieldbasedtag.h"
|
||||
#include "../fieldbasedtag.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
#include "matroskatagfield.h"
|
||||
#include "ebmlelement.h"
|
||||
#include "matroskacontainer.h"
|
||||
#include "./matroskatagfield.h"
|
||||
#include "./ebmlelement.h"
|
||||
#include "./matroskacontainer.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
#include <c++utilities/misc/memory.h>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
#ifndef MEDIA_MATROSKATAGFIELD_H
|
||||
#define MEDIA_MATROSKATAGFIELD_H
|
||||
|
||||
#include "tagparser/generictagfield.h"
|
||||
#include "tagparser/statusprovider.h"
|
||||
#include "../generictagfield.h"
|
||||
#include "../statusprovider.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "matroskatagid.h"
|
||||
#include "./matroskatagid.h"
|
||||
|
||||
#include <string>
|
||||
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
#include "ebmlelement.h"
|
||||
#include "matroskatrack.h"
|
||||
#include "matroskacontainer.h"
|
||||
#include "matroskaid.h"
|
||||
#include "./ebmlelement.h"
|
||||
#include "./matroskatrack.h"
|
||||
#include "./matroskacontainer.h"
|
||||
#include "./matroskaid.h"
|
||||
|
||||
#include "tagparser/avi/bitmapinfoheader.h"
|
||||
#include "../avi/bitmapinfoheader.h"
|
||||
|
||||
#include "tagparser/wav/waveaudiostream.h"
|
||||
#include "../wav/waveaudiostream.h"
|
||||
|
||||
#include "tagparser/mp4/mp4ids.h"
|
||||
#include "tagparser/mp4/mp4track.h"
|
||||
#include "../mp4/mp4ids.h"
|
||||
#include "../mp4/mp4track.h"
|
||||
|
||||
#include "tagparser/mediaformat.h"
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../mediaformat.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef MEDIA_MATROSKATRACK_H
|
||||
#define MEDIA_MATROSKATRACK_H
|
||||
|
||||
#include "tagparser/abstracttrack.h"
|
||||
#include "../abstracttrack.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,31 +1,31 @@
|
|||
#include "mediafileinfo.h"
|
||||
#include "exceptions.h"
|
||||
#include "tag.h"
|
||||
#include "signature.h"
|
||||
#include "abstracttrack.h"
|
||||
#include "backuphelper.h"
|
||||
#include "./mediafileinfo.h"
|
||||
#include "./exceptions.h"
|
||||
#include "./tag.h"
|
||||
#include "./signature.h"
|
||||
#include "./abstracttrack.h"
|
||||
#include "./backuphelper.h"
|
||||
|
||||
#include "id3/id3v1tag.h"
|
||||
#include "id3/id3v2tag.h"
|
||||
#include "./id3/id3v1tag.h"
|
||||
#include "./id3/id3v2tag.h"
|
||||
|
||||
#include "wav/waveaudiostream.h"
|
||||
#include "./wav/waveaudiostream.h"
|
||||
|
||||
#include "mpegaudio/mpegaudioframestream.h"
|
||||
#include "./mpegaudio/mpegaudioframestream.h"
|
||||
|
||||
#include "adts/adtsstream.h"
|
||||
#include "./adts/adtsstream.h"
|
||||
|
||||
#include "mp4/mp4container.h"
|
||||
#include "mp4/mp4atom.h"
|
||||
#include "mp4/mp4tag.h"
|
||||
#include "mp4/mp4ids.h"
|
||||
#include "mp4/mp4track.h"
|
||||
#include "./mp4/mp4container.h"
|
||||
#include "./mp4/mp4atom.h"
|
||||
#include "./mp4/mp4tag.h"
|
||||
#include "./mp4/mp4ids.h"
|
||||
#include "./mp4/mp4track.h"
|
||||
|
||||
#include "matroska/ebmlelement.h"
|
||||
#include "matroska/matroskacontainer.h"
|
||||
#include "matroska/matroskatag.h"
|
||||
#include "matroska/matroskatrack.h"
|
||||
#include "./matroska/ebmlelement.h"
|
||||
#include "./matroska/matroskacontainer.h"
|
||||
#include "./matroska/matroskatag.h"
|
||||
#include "./matroska/matroskatrack.h"
|
||||
|
||||
#include "ogg/oggcontainer.h"
|
||||
#include "./ogg/oggcontainer.h"
|
||||
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
#include <c++utilities/chrono/timespan.h>
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
#ifndef MEDIAINFO_H
|
||||
#define MEDIAINFO_H
|
||||
|
||||
#include "signature.h"
|
||||
#include "statusprovider.h"
|
||||
#include "basicfileinfo.h"
|
||||
#include "abstractcontainer.h"
|
||||
#include "./signature.h"
|
||||
#include "./statusprovider.h"
|
||||
#include "./basicfileinfo.h"
|
||||
#include "./abstractcontainer.h"
|
||||
|
||||
#include <string>
|
||||
#include <fstream>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "mediaformat.h"
|
||||
#include "./mediaformat.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
#include "mp4track.h"
|
||||
#include "mp4tag.h"
|
||||
#include "mp4atom.h"
|
||||
#include "mp4ids.h"
|
||||
#include "mp4container.h"
|
||||
#include "./mp4track.h"
|
||||
#include "./mp4tag.h"
|
||||
#include "./mp4atom.h"
|
||||
#include "./mp4ids.h"
|
||||
#include "./mp4container.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#ifndef MP4ATOM_H
|
||||
#define MP4ATOM_H
|
||||
|
||||
#include "mp4ids.h"
|
||||
#include "./mp4ids.h"
|
||||
|
||||
#include "tagparser/genericfileelement.h"
|
||||
#include "../genericfileelement.h"
|
||||
|
||||
#include <c++utilities/conversion/types.h>
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#include "mp4container.h"
|
||||
#include "mp4ids.h"
|
||||
#include "./mp4container.h"
|
||||
#include "./mp4ids.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "tagparser/mediafileinfo.h"
|
||||
#include "tagparser/backuphelper.h"
|
||||
#include "../exceptions.h"
|
||||
#include "../mediafileinfo.h"
|
||||
#include "../backuphelper.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
#ifndef MEDIA_MP4CONTAINER_H
|
||||
#define MEDIA_MP4CONTAINER_H
|
||||
|
||||
#include "mp4atom.h"
|
||||
#include "mp4tag.h"
|
||||
#include "mp4track.h"
|
||||
#include "./mp4atom.h"
|
||||
#include "./mp4tag.h"
|
||||
#include "./mp4track.h"
|
||||
|
||||
#include "tagparser/genericcontainer.h"
|
||||
#include "../genericcontainer.h"
|
||||
|
||||
#include <c++utilities/conversion/types.h>
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "mp4ids.h"
|
||||
#include "./mp4ids.h"
|
||||
|
||||
#include "tagparser/mediaformat.h"
|
||||
#include "../mediaformat.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#include "mp4container.h"
|
||||
#include "mp4tag.h"
|
||||
#include "mp4ids.h"
|
||||
#include "mp4atom.h"
|
||||
#include "./mp4container.h"
|
||||
#include "./mp4tag.h"
|
||||
#include "./mp4ids.h"
|
||||
#include "./mp4atom.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#ifndef MP4TAG_H
|
||||
#define MP4TAG_H
|
||||
|
||||
#include "mp4tagfield.h"
|
||||
#include "./mp4tagfield.h"
|
||||
|
||||
#include "tagparser/fieldbasedtag.h"
|
||||
#include "../fieldbasedtag.h"
|
||||
|
||||
namespace Media
|
||||
{
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#include "mp4container.h"
|
||||
#include "mp4tagfield.h"
|
||||
#include "mp4atom.h"
|
||||
#include "mp4ids.h"
|
||||
#include "./mp4container.h"
|
||||
#include "./mp4tagfield.h"
|
||||
#include "./mp4atom.h"
|
||||
#include "./mp4ids.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
#ifndef MP4TAGATOM_H
|
||||
#define MP4TAGATOM_H
|
||||
|
||||
#include "tagparser/generictagfield.h"
|
||||
#include "tagparser/statusprovider.h"
|
||||
#include "../generictagfield.h"
|
||||
#include "../statusprovider.h"
|
||||
|
||||
#include <vector>
|
||||
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
#include "mp4atom.h"
|
||||
#include "mp4container.h"
|
||||
#include "mp4track.h"
|
||||
#include "mp4ids.h"
|
||||
#include "mpeg4descriptor.h"
|
||||
#include "./mp4atom.h"
|
||||
#include "./mp4container.h"
|
||||
#include "./mp4track.h"
|
||||
#include "./mp4ids.h"
|
||||
#include "./mpeg4descriptor.h"
|
||||
|
||||
#include "tagparser/mpegaudio/mpegaudioframe.h"
|
||||
#include "tagparser/mpegaudio/mpegaudioframestream.h"
|
||||
#include "../mpegaudio/mpegaudioframe.h"
|
||||
#include "../mpegaudio/mpegaudioframestream.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "tagparser/mediaformat.h"
|
||||
#include "../exceptions.h"
|
||||
#include "../mediaformat.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
#define MP4TRACK_H
|
||||
|
||||
#ifdef UNDER_CONSTRUCTION
|
||||
#include "tagparser/avc/avcconfiguration.h"
|
||||
#include "../avc/avcconfiguration.h"
|
||||
#endif
|
||||
|
||||
#include "tagparser/abstracttrack.h"
|
||||
#include "../abstracttrack.h"
|
||||
|
||||
#include <vector>
|
||||
#include <memory>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "mpeg4descriptor.h"
|
||||
#include "mp4container.h"
|
||||
#include "mp4ids.h"
|
||||
#include "./mpeg4descriptor.h"
|
||||
#include "./mp4container.h"
|
||||
#include "./mp4ids.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef MPEG4DESCRIPTOR_H
|
||||
#define MPEG4DESCRIPTOR_H
|
||||
|
||||
#include "tagparser/genericfileelement.h"
|
||||
#include "../genericfileelement.h"
|
||||
|
||||
#include <c++utilities/misc/memory.h>
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "mpegaudioframe.h"
|
||||
#include "./mpegaudioframe.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include "mpegaudioframestream.h"
|
||||
#include "./mpegaudioframestream.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "tagparser/mediaformat.h"
|
||||
#include "../exceptions.h"
|
||||
#include "../mediaformat.h"
|
||||
|
||||
#include <sstream>
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#ifndef MPEGAUDIOFRAMESTREAM_H
|
||||
#define MPEGAUDIOFRAMESTREAM_H
|
||||
|
||||
#include "mpegaudioframe.h"
|
||||
#include "./mpegaudioframe.h"
|
||||
|
||||
#include "tagparser/abstracttrack.h"
|
||||
#include "../abstracttrack.h"
|
||||
|
||||
#include <list>
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "notification.h"
|
||||
#include "./notification.h"
|
||||
|
||||
using namespace std;
|
||||
using namespace ChronoUtilities;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include "oggcontainer.h"
|
||||
#include "./oggcontainer.h"
|
||||
|
||||
#include "tagparser/mediafileinfo.h"
|
||||
#include "tagparser/backuphelper.h"
|
||||
#include "../mediafileinfo.h"
|
||||
#include "../backuphelper.h"
|
||||
|
||||
#include <c++utilities/io/copy.h>
|
||||
#include <c++utilities/misc/memory.h>
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
#ifndef MEDIA_OGGCONTAINER_H
|
||||
#define MEDIA_OGGCONTAINER_H
|
||||
|
||||
#include "oggpage.h"
|
||||
#include "oggstream.h"
|
||||
#include "oggiterator.h"
|
||||
#include "./oggpage.h"
|
||||
#include "./oggstream.h"
|
||||
#include "./oggiterator.h"
|
||||
|
||||
#include "tagparser/vorbis/vorbiscomment.h"
|
||||
#include "../vorbis/vorbiscomment.h"
|
||||
|
||||
#include "tagparser/genericcontainer.h"
|
||||
#include "../genericcontainer.h"
|
||||
|
||||
#include <unordered_map>
|
||||
#include <tuple>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "oggiterator.h"
|
||||
#include "./oggiterator.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef MEDIA_OGGITERATOR_H
|
||||
#define MEDIA_OGGITERATOR_H
|
||||
|
||||
#include "oggpage.h"
|
||||
#include "./oggpage.h"
|
||||
|
||||
#include <istream>
|
||||
#include <vector>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "oggpage.h"
|
||||
#include "./oggpage.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/conversion/binaryconversion.h>
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
#include "oggstream.h"
|
||||
#include "oggcontainer.h"
|
||||
#include "./oggstream.h"
|
||||
#include "./oggcontainer.h"
|
||||
|
||||
#include "tagparser/vorbis/vorbispackagetypes.h"
|
||||
#include "tagparser/vorbis/vorbisidentificationheader.h"
|
||||
#include "../vorbis/vorbispackagetypes.h"
|
||||
#include "../vorbis/vorbisidentificationheader.h"
|
||||
|
||||
#include "tagparser/mediafileinfo.h"
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "tagparser/mediaformat.h"
|
||||
#include "../mediafileinfo.h"
|
||||
#include "../exceptions.h"
|
||||
#include "../mediaformat.h"
|
||||
|
||||
#include <c++utilities/chrono/timespan.h>
|
||||
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
#ifndef MEDIA_OGGSTREAM_H
|
||||
#define MEDIA_OGGSTREAM_H
|
||||
|
||||
#include "oggpage.h"
|
||||
#include "abstracttrack.h"
|
||||
#include "./oggpage.h"
|
||||
|
||||
#include "../abstracttrack.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "signature.h"
|
||||
#include "./signature.h"
|
||||
|
||||
#include <c++utilities/conversion/binaryconversion.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef SIGNATURE_H
|
||||
#define SIGNATURE_H
|
||||
|
||||
#include "mediaformat.h"
|
||||
#include "./mediaformat.h"
|
||||
|
||||
#include <c++utilities/conversion/types.h>
|
||||
#include <c++utilities/application/global.h>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "statusprovider.h"
|
||||
#include "./statusprovider.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef STATUSPROVIDER_H
|
||||
#define STATUSPROVIDER_H
|
||||
|
||||
#include "notification.h"
|
||||
#include "./notification.h"
|
||||
|
||||
#include <functional>
|
||||
#include <vector>
|
||||
|
|
6
tag.h
6
tag.h
|
@ -1,9 +1,9 @@
|
|||
#ifndef TAG_H
|
||||
#define TAG_H
|
||||
|
||||
#include "statusprovider.h"
|
||||
#include "tagvalue.h"
|
||||
#include "tagtarget.h"
|
||||
#include "./statusprovider.h"
|
||||
#include "./tagvalue.h"
|
||||
#include "./tagtarget.h"
|
||||
|
||||
#include <c++utilities/conversion/types.h>
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
projectname = tagparser
|
||||
VERSION = 2.0.0
|
||||
appname = "Tag Parser"
|
||||
appauthor = Martchus
|
||||
appurl = "https://github.com/$${appauthor}/$${projectname}"
|
||||
VERSION = 2.0.1
|
||||
|
||||
# include ../../common.pri when building as part of a subdirs project; otherwise include general.pri
|
||||
!include(../../common.pri) {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "tagtarget.h"
|
||||
#include "./tagtarget.h"
|
||||
|
||||
#include "matroska/matroskatagid.h"
|
||||
#include "./matroska/matroskatagid.h"
|
||||
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "tagvalue.h"
|
||||
#include "./tagvalue.h"
|
||||
|
||||
#include "id3/id3genres.h"
|
||||
#include "./id3/id3genres.h"
|
||||
|
||||
#include <c++utilities/conversion/binaryconversion.h>
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef TAGVALUE_H
|
||||
#define TAGVALUE_H
|
||||
|
||||
#include "positioninset.h"
|
||||
#include "./positioninset.h"
|
||||
|
||||
#include <c++utilities/conversion/binaryconversion.h>
|
||||
#include <c++utilities/chrono/timespan.h>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
#include "vorbiscomment.h"
|
||||
#include "vorbiscommentids.h"
|
||||
#include "./vorbiscomment.h"
|
||||
#include "./vorbiscommentids.h"
|
||||
|
||||
#include "tagparser/ogg/oggiterator.h"
|
||||
#include "../ogg/oggiterator.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
#ifndef MEDIA_VORBISCOMMENT_H
|
||||
#define MEDIA_VORBISCOMMENT_H
|
||||
|
||||
#include "vorbiscommentfield.h"
|
||||
#include "./vorbiscommentfield.h"
|
||||
|
||||
#include "tagparser/caseinsensitivecomparer.h"
|
||||
#include "tagparser/fieldbasedtag.h"
|
||||
#include "../caseinsensitivecomparer.h"
|
||||
#include "../fieldbasedtag.h"
|
||||
|
||||
namespace Media {
|
||||
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
#include "vorbiscommentfield.h"
|
||||
#include "vorbiscommentids.h"
|
||||
#include "./vorbiscommentfield.h"
|
||||
#include "./vorbiscommentids.h"
|
||||
|
||||
#include "tagparser/ogg/oggiterator.h"
|
||||
#include "../ogg/oggiterator.h"
|
||||
|
||||
#include "tagparser/id3/id3v2frame.h"
|
||||
#include "../id3/id3v2frame.h"
|
||||
|
||||
#include "tagparser/exceptions.h"
|
||||
#include "../exceptions.h"
|
||||
|
||||
#include <c++utilities/io/binaryreader.h>
|
||||
#include <c++utilities/io/binarywriter.h>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
#ifndef MEDIA_VORBISCOMMENTFIELD_H
|
||||
#define MEDIA_VORBISCOMMENTFIELD_H
|
||||
|
||||
#include "tagparser/generictagfield.h"
|
||||
#include "tagparser/statusprovider.h"
|
||||
#include "../generictagfield.h"
|
||||
#include "../statusprovider.h"
|
||||
|
||||
namespace IoUtilities {
|
||||
class BinaryReader;
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue