mirror of
https://github.com/arcodange-org/mediabunny.git
synced 2026-09-29 20:03:48 +02:00
30 lines
798 B
TypeScript
30 lines
798 B
TypeScript
/*!
|
|
* Copyright (c) 2026-present, Vanilagy and contributors
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
*/
|
|
|
|
export const TIMESCALE = 90_000; // MPEG-TS timestamps run on a 90 kHz clock
|
|
export const TS_PACKET_SIZE = 188;
|
|
|
|
export const enum MpegTsStreamType {
|
|
MP3_MPEG1 = 0x03,
|
|
MP3_MPEG2 = 0x04,
|
|
AAC = 0x0f,
|
|
AVC = 0x1b,
|
|
HEVC = 0x24,
|
|
}
|
|
|
|
export const buildMpegTsMimeType = (codecStrings: (string | null)[]) => {
|
|
let string = 'video/MP2T';
|
|
|
|
const uniqueCodecStrings = [...new Set(codecStrings.filter(Boolean))];
|
|
if (uniqueCodecStrings.length > 0) {
|
|
string += `; codecs="${uniqueCodecStrings.join(', ')}"`;
|
|
}
|
|
|
|
return string;
|
|
};
|