@isomp4/box-moof
Version:
Implements encoding and decoding of the moof box type
41 lines (40 loc) • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.mfhd = void 0;
const core_1 = require("@isomp4/core");
class MovieFragmentHeaderBoxEncoding extends core_1.FullBoxEncoding {
constructor() {
super("mfhd");
}
encodingLength(obj) {
return super.encodingLength(obj); // TODO implement
}
encodeTo(obj, buffer) {
const requiredBytes = super.encodeTo(obj, buffer);
if (requiredBytes > 0) {
return requiredBytes;
}
// let offset = this.encodedBytes;
// // TODO implementing encoding
// this.encodedBytes = offset;
return 0;
}
decode(buffer, header) {
const superBox = super.decode(buffer, header);
if (typeof superBox === "number") {
return superBox;
}
let offset = this.decodedBytes;
if (buffer.length < offset + 4) {
return offset + 4;
}
const sequenceNumber = buffer.readUInt32BE(offset);
offset += 4;
this.decodedBytes = offset;
return {
...superBox,
sequenceNumber,
};
}
}
exports.mfhd = new MovieFragmentHeaderBoxEncoding();