1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
/*
This file is part of jellything (https://codeberg.org/metamuffin/jellything)
which is licensed under the GNU Affero General Public License (version 3); see /COPYING.
Copyright (C) 2025 metamuffin <metamuffin.org>
*/
export type FragmentIndex = TimeRange[]
export interface TimeRange { start: number, end: number }
export interface SubtitleCue extends TimeRange {
content: string
}
export interface StreamInfo {
name?: string,
duration: number,
tracks: TrackInfo[],
}
export type TrackKind = "video" | "audio" | "subtitle"
export interface TrackInfo {
name?: string,
language?: string,
kind: TrackKind,
formats: FormatInfo[]
}
export type StreamContainer = "webm" | "matroska" | "mpeg4" | "jvtt" | "webvtt"
export interface FormatInfo {
codec: string,
bitrate: number,
remux: boolean,
containers: StreamContainer[]
width?: number,
height?: number,
channels?: number,
samplerate?: number,
bit_depth?: number,
}
|