Add .gitignore to exclude all node packages and lock files

This commit is contained in:
Adolfo Reyna
2026-02-23 21:56:04 -05:00
parent faae96c9ed
commit dcc5c6c044
9747 changed files with 1555105 additions and 2 deletions
@@ -0,0 +1,149 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getDisplayAspectRatio = exports.applyAspectRatios = exports.applyTkhdBox = exports.getColrBox = exports.getSampleAspectRatio = exports.getHvccBox = exports.getPaspBox = exports.getAv1CBox = exports.getVpccBox = exports.getAvccBox = exports.getStsdVideoConfig = void 0;
const traversal_1 = require("./containers/iso-base-media/traversal");
const getStsdVideoConfig = (trakBox) => {
const stsdBox = (0, traversal_1.getStsdBox)(trakBox);
if (!stsdBox) {
return null;
}
const videoConfig = stsdBox.samples.find((s) => s.type === 'video');
if (!videoConfig || videoConfig.type !== 'video') {
return null;
}
return videoConfig;
};
exports.getStsdVideoConfig = getStsdVideoConfig;
const getAvccBox = (trakBox) => {
const videoConfig = (0, exports.getStsdVideoConfig)(trakBox);
if (!videoConfig) {
return null;
}
const avccBox = videoConfig.descriptors.find((c) => c.type === 'avcc-box');
if (!avccBox || avccBox.type !== 'avcc-box') {
return null;
}
return avccBox;
};
exports.getAvccBox = getAvccBox;
const getVpccBox = (trakBox) => {
const videoConfig = (0, exports.getStsdVideoConfig)(trakBox);
if (!videoConfig) {
return null;
}
const vpccBox = videoConfig.descriptors.find((c) => c.type === 'vpcc-box');
if (!vpccBox || vpccBox.type !== 'vpcc-box') {
return null;
}
return vpccBox;
};
exports.getVpccBox = getVpccBox;
const getAv1CBox = (trakBox) => {
const videoConfig = (0, exports.getStsdVideoConfig)(trakBox);
if (!videoConfig) {
return null;
}
const av1cBox = videoConfig.descriptors.find((c) => c.type === 'av1C-box');
if (!av1cBox || av1cBox.type !== 'av1C-box') {
return null;
}
return av1cBox;
};
exports.getAv1CBox = getAv1CBox;
const getPaspBox = (trakBox) => {
const videoConfig = (0, exports.getStsdVideoConfig)(trakBox);
if (!videoConfig) {
return null;
}
const paspBox = videoConfig.descriptors.find((c) => c.type === 'pasp-box');
if (!paspBox || paspBox.type !== 'pasp-box') {
return null;
}
return paspBox;
};
exports.getPaspBox = getPaspBox;
const getHvccBox = (trakBox) => {
const videoConfig = (0, exports.getStsdVideoConfig)(trakBox);
if (!videoConfig) {
return null;
}
const hvccBox = videoConfig.descriptors.find((c) => c.type === 'hvcc-box');
if (!hvccBox || hvccBox.type !== 'hvcc-box') {
return null;
}
return hvccBox;
};
exports.getHvccBox = getHvccBox;
const getSampleAspectRatio = (trakBox) => {
const paspBox = (0, exports.getPaspBox)(trakBox);
if (!paspBox) {
return {
numerator: 1,
denominator: 1,
};
}
return {
numerator: paspBox.hSpacing,
denominator: paspBox.vSpacing,
};
};
exports.getSampleAspectRatio = getSampleAspectRatio;
const getColrBox = (videoSample) => {
const colrBox = videoSample.descriptors.find((c) => c.type === 'colr-box');
if (!colrBox || colrBox.type !== 'colr-box') {
return null;
}
return colrBox;
};
exports.getColrBox = getColrBox;
const applyTkhdBox = (aspectRatioApplied, tkhdBox) => {
if (tkhdBox === null || tkhdBox.rotation === 0) {
return {
displayAspectWidth: aspectRatioApplied.width,
displayAspectHeight: aspectRatioApplied.height,
width: aspectRatioApplied.width,
height: aspectRatioApplied.height,
rotation: 0,
};
}
return {
width: tkhdBox.width,
height: tkhdBox.height,
rotation: tkhdBox.rotation,
displayAspectWidth: aspectRatioApplied.width,
displayAspectHeight: aspectRatioApplied.height,
};
};
exports.applyTkhdBox = applyTkhdBox;
const applyAspectRatios = ({ dimensions, sampleAspectRatio, displayAspectRatio, }) => {
if (displayAspectRatio.numerator === 0) {
return dimensions;
}
if (displayAspectRatio.denominator === 0) {
return dimensions;
}
const newWidth = Math.round((dimensions.width * sampleAspectRatio.numerator) /
sampleAspectRatio.denominator);
const newHeight = Math.floor(newWidth / (displayAspectRatio.numerator / displayAspectRatio.denominator));
return {
width: Math.floor(newWidth),
height: newHeight,
};
};
exports.applyAspectRatios = applyAspectRatios;
function gcd(a, b) {
return b === 0 ? a : gcd(b, a % b);
}
function reduceFraction(numerator, denominator) {
const greatestCommonDivisor = gcd(Math.abs(numerator), Math.abs(denominator));
return {
numerator: numerator / greatestCommonDivisor,
denominator: denominator / greatestCommonDivisor,
};
}
const getDisplayAspectRatio = ({ sampleAspectRatio, nativeDimensions, }) => {
const num = Math.round(nativeDimensions.width * sampleAspectRatio.numerator);
const den = Math.round(nativeDimensions.height * sampleAspectRatio.denominator);
return reduceFraction(num, den);
};
exports.getDisplayAspectRatio = getDisplayAspectRatio;