protected DataInformationBox createDinf(Movie movie, Track track) { DataInformationBox dinf = new DataInformationBox(); DataReferenceBox dref = new DataReferenceBox(); dinf.addBox(dref); DataEntryUrlBox url = new DataEntryUrlBox(); url.setFlags(1); dref.addBox(url); return dinf; }
private void createMfhd(long sequenceNumber, MovieFragmentBox moof) { MovieFragmentHeaderBox mfhd = new MovieFragmentHeaderBox(); mfhd.setSequenceNumber(sequenceNumber); moof.addBox(mfhd); }
public String getHandler() { return trackBox.getMediaBox().getHandlerBox().getHandlerType(); }
protected ParsableBox createStbl(Movie movie, Track track) { SampleTableBox stbl = new SampleTableBox(); createStsd(track, stbl); stbl.addBox(new TimeToSampleBox()); stbl.addBox(new SampleToChunkBox()); stbl.addBox(new SampleSizeBox()); stbl.addBox(new StaticChunkOffsetBox()); return stbl; }
public long getTimescale() { return trackBox.getMediaBox().getMediaHeaderBox().getTimescale(); }
public String getLanguage() { return trackBox.getMediaBox().getMediaHeaderBox().getLanguage(); }
@Override public int size() { return l2i(trackBox.getSampleTableBox().getSampleSizeBox().getSampleCount()); }
public SampleDescriptionBox getSampleDescriptionBox() { return trackBox.getSampleTableBox().getSampleDescriptionBox(); }
public ChunkOffsetBox getChunkOffsetBox() { for (Box box : getBoxes()) { if (box instanceof ChunkOffsetBox) { return (ChunkOffsetBox) box; } } return null; }
public void setDuration(long duration) { this.duration = duration; if (duration >= (1L << 32)) { setVersion(1); } }
public int getSize() { int size = 2; if (getVersion() == 1) { size += 2; } size += 2; size += baseOffsetSize; size += 2; for (Extent extent : extents) { size += extent.getSize(); } return size; }
public short getSize(int index) { if (getDefaultSampleInfoSize() == 0) { return sampleInfoSizes[index]; } else { return defaultSampleInfoSize; } }
@Override protected long getContentSize() { long size = 8; for (Item item : items) { size += item.getSize(); } return size; }
@Override public long getSize() { long s = getContainerSize(); long t = 6; // bytes to container start return s + t + ((largeBox || (s + t) >= (1L << 32)) ? 16 : 8); } }
protected long getContentSize() { long contentSize = 4; if (getVersion() == 1) { contentSize += 28; } else { contentSize += 16; } contentSize += 80; return contentSize; }
@Override public long getSize() { long s = getContainerSize(); long t = quickTimeFormat ? 0 : 4; // bytes to container start return s + t + ((largeBox || (s + t) >= (1L << 32)) ? 16 : 8); } }
protected Box createStbl(StreamingTrack streamingTrack) { SampleTableBox stbl = new SampleTableBox(); stbl.addBox(streamingTrack.getSampleDescriptionBox()); stbl.addBox(new TimeToSampleBox()); stbl.addBox(new SampleToChunkBox()); stbl.addBox(new SampleSizeBox()); stbl.addBox(new StaticChunkOffsetBox()); return stbl; }
protected DataInformationBox createDinf() { DataInformationBox dinf = new DataInformationBox(); DataReferenceBox dref = new DataReferenceBox(); dinf.addBox(dref); DataEntryUrlBox url = new DataEntryUrlBox(); url.setFlags(1); dref.addBox(url); return dinf; }
protected void createMfhd(long startSample, long endSample, Track track, int sequenceNumber, MovieFragmentBox parent) { MovieFragmentHeaderBox mfhd = new MovieFragmentHeaderBox(); mfhd.setSequenceNumber(sequenceNumber); parent.addBox(mfhd); }