added trun box

This commit is contained in:
Erik Zandvliet 2012-09-18 14:26:56 +02:00 committed by Thulinma
parent b2b8491655
commit 837b7068c4
2 changed files with 131 additions and 5 deletions

View file

@ -124,6 +124,7 @@ namespace MP4{
public:
MFHD();
void setSequenceNumber( long newSequenceNumber );
std::string toPrettyString(int indent = 0);
};//MFHD Box
class MOOF : public Box {
@ -131,7 +132,30 @@ namespace MP4{
MOOF();
void addContent( Box* newContent );
void regenerate( );
std::string toPrettyString(int indent = 0);
private:
std::deque<Box*> content;
};//MOOF Box
struct trunSampleInformation {
long sampleDuration;
long sampleSize;
long sampleFlags;
long sampleCompositionTimeOffset;
};
class TRUN : public Box {
public:
TRUN();
void setFlags( long newFlags );
void setDataOffset( long newOffset );
void setFirstSampleFlags( char sampleDependsOn, char sampleIsDependedOn, char sampleHasRedundancy, char sampleIsDifferenceSample );
void addSampleInformation( long newDuration, long newSize, char sampleDependsOn, char sampleIsDependedOn, char sampleHasRedundancy,char sampleIsDifferenceSample, long newCompositionTimeOffset );
void regenerate();
private:
long getSampleFlags( char sampleDependsOn, char sampleIsDependedOn, char sampleHasRedundancy, char sampleIsDifferenceSample );
long dataOffset;
long firstSampleFlags;
std::deque<trunSampleInformation> allSamples;
};
};