本文整理汇总了Java中com.coremedia.iso.boxes.StaticChunkOffsetBox.setChunkOffsets方法的典型用法代码示例。如果您正苦于以下问题:Java StaticChunkOffsetBox.setChunkOffsets方法的具体用法?Java StaticChunkOffsetBox.setChunkOffsets怎么用?Java StaticChunkOffsetBox.setChunkOffsets使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.coremedia.iso.boxes.StaticChunkOffsetBox
的用法示例。
在下文中一共展示了StaticChunkOffsetBox.setChunkOffsets方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createStco
import com.coremedia.iso.boxes.StaticChunkOffsetBox; //导入方法依赖的package包/类
protected void createStco(Track track, SampleTableBox stbl) {
ArrayList<Long> chunksOffsets = new ArrayList<>();
long lastOffset = -1;
for (Sample sample : track.getSamples()) {
long offset = sample.getOffset();
if (lastOffset != -1 && lastOffset != offset) {
lastOffset = -1;
}
if (lastOffset == -1) {
chunksOffsets.add(offset);
}
lastOffset = offset + sample.getSize();
}
long[] chunkOffsetsLong = new long[chunksOffsets.size()];
for (int a = 0; a < chunksOffsets.size(); a++) {
chunkOffsetsLong[a] = chunksOffsets.get(a);
}
StaticChunkOffsetBox stco = new StaticChunkOffsetBox();
stco.setChunkOffsets(chunkOffsetsLong);
stbl.addBox(stco);
}
示例2: createStco
import com.coremedia.iso.boxes.StaticChunkOffsetBox; //导入方法依赖的package包/类
private void createStco(Track track, SampleTableBox stbl) {
ArrayList<Long> chunksOffsets = new ArrayList<>();
long lastOffset = -1;
for (Sample sample : track.getSamples()) {
long offset = sample.getOffset();
if (lastOffset != -1 && lastOffset != offset) {
lastOffset = -1;
}
if (lastOffset == -1) {
chunksOffsets.add(offset);
}
lastOffset = offset + sample.getSize();
}
long[] chunkOffsetsLong = new long[chunksOffsets.size()];
for (int a = 0; a < chunksOffsets.size(); a++) {
chunkOffsetsLong[a] = chunksOffsets.get(a);
}
StaticChunkOffsetBox stco = new StaticChunkOffsetBox();
stco.setChunkOffsets(chunkOffsetsLong);
stbl.addBox(stco);
}
示例3: correctChunkOffsets
import com.coremedia.iso.boxes.StaticChunkOffsetBox; //导入方法依赖的package包/类
private void correctChunkOffsets(Container container, long correction)
{
List<Box> chunkOffsetBoxes = Path.getPaths(container, "/moov[0]/trak/mdia[0]/minf[0]/stbl[0]/stco[0]");
for (Box chunkOffsetBox : chunkOffsetBoxes) {
LinkedList<Box> stblChildren = new LinkedList<>(chunkOffsetBox.getParent().getBoxes());
stblChildren.remove(chunkOffsetBox);
long[] cOffsets = ((ChunkOffsetBox) chunkOffsetBox).getChunkOffsets();
for (int i = 0; i < cOffsets.length; i++) {
cOffsets[i] += correction;
}
StaticChunkOffsetBox cob = new StaticChunkOffsetBox();
cob.setChunkOffsets(cOffsets);
stblChildren.add(cob);
chunkOffsetBox.getParent().setBoxes(stblChildren);
}
}
示例4: correctChunkOffsets
import com.coremedia.iso.boxes.StaticChunkOffsetBox; //导入方法依赖的package包/类
private void correctChunkOffsets(Container container, long correction) {
List<Box> chunkOffsetBoxes = Path.getPaths(container, "/moov[0]/trak/mdia[0]/minf[0]/stbl[0]/stco[0]");
for (Box chunkOffsetBox : chunkOffsetBoxes) {
LinkedList<Box> stblChildren = new LinkedList<Box>(chunkOffsetBox.getParent().getBoxes());
stblChildren.remove(chunkOffsetBox);
long[] cOffsets = ((ChunkOffsetBox) chunkOffsetBox).getChunkOffsets();
for (int i = 0; i < cOffsets.length; i++) {
cOffsets[i] += correction;
}
StaticChunkOffsetBox cob = new StaticChunkOffsetBox();
cob.setChunkOffsets(cOffsets);
stblChildren.add(cob);
chunkOffsetBox.getParent().setBoxes(stblChildren);
}
}