Add .gitignore to exclude all node packages and lock files
This commit is contained in:
Generated
Vendored
+57
@@ -0,0 +1,57 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.getSamplePositions = void 0;
|
||||
const getSamplePositions = ({ stcoBox, stszBox, stscBox, stssBox, sttsBox, cttsBox, }) => {
|
||||
var _a;
|
||||
const sttsDeltas = [];
|
||||
for (const distribution of sttsBox.sampleDistribution) {
|
||||
for (let i = 0; i < distribution.sampleCount; i++) {
|
||||
sttsDeltas.push(distribution.sampleDelta);
|
||||
}
|
||||
}
|
||||
const cttsEntries = [];
|
||||
for (const entry of (_a = cttsBox === null || cttsBox === void 0 ? void 0 : cttsBox.entries) !== null && _a !== void 0 ? _a : [
|
||||
{ sampleCount: sttsDeltas.length, sampleOffset: 0 },
|
||||
]) {
|
||||
for (let i = 0; i < entry.sampleCount; i++) {
|
||||
cttsEntries.push(entry.sampleOffset);
|
||||
}
|
||||
}
|
||||
let dts = 0;
|
||||
const chunks = stcoBox.entries;
|
||||
const samples = [];
|
||||
let samplesPerChunk = 1;
|
||||
for (let i = 0; i < chunks.length; i++) {
|
||||
const hasEntry = stscBox.entries.get(i + 1);
|
||||
if (hasEntry !== undefined) {
|
||||
samplesPerChunk = hasEntry;
|
||||
}
|
||||
let offsetInThisChunk = 0;
|
||||
for (let j = 0; j < samplesPerChunk; j++) {
|
||||
const size = stszBox.countType === 'fixed'
|
||||
? stszBox.sampleSize
|
||||
: stszBox.entries[samples.length];
|
||||
const isKeyframe = stssBox
|
||||
? stssBox.sampleNumber.has(samples.length + 1)
|
||||
: true;
|
||||
const delta = sttsDeltas[samples.length];
|
||||
const ctsOffset = cttsEntries[samples.length];
|
||||
const cts = dts + ctsOffset;
|
||||
samples.push({
|
||||
offset: Number(chunks[i]) + offsetInThisChunk,
|
||||
size,
|
||||
isKeyframe,
|
||||
decodingTimestamp: dts,
|
||||
timestamp: cts,
|
||||
duration: delta,
|
||||
chunk: i,
|
||||
bigEndian: false,
|
||||
chunkSize: null,
|
||||
});
|
||||
dts += delta;
|
||||
offsetInThisChunk += size;
|
||||
}
|
||||
}
|
||||
return samples;
|
||||
};
|
||||
exports.getSamplePositions = getSamplePositions;
|
||||
Reference in New Issue
Block a user