mirror of https://github.com/VERT-sh/VERT.git
parent
1bf93d9a22
commit
1aac50a649
|
|
@ -23,6 +23,33 @@ import { Converter, FormatInfo, type WorkerStatus } from "./converter.svelte";
|
|||
import { ToastManager } from "$lib/util/toast.svelte";
|
||||
import { error, log } from "$lib/util/logger";
|
||||
|
||||
// codec compatibility object, based on docs
|
||||
// https://mediabunny.dev/guide/supported-formats-and-codecs#compatibility-table
|
||||
const codecCompatibility = {
|
||||
video: {
|
||||
mp4: ['avc', 'hevc', 'vp8', 'vp9', 'av1'],
|
||||
m4v: ['avc', 'hevc', 'vp8', 'vp9', 'av1'],
|
||||
f4v: ['avc', 'hevc', 'vp8', 'vp9', 'av1'],
|
||||
'3gp': ['avc', 'hevc', 'vp8', 'vp9', 'av1'],
|
||||
'3g2': ['avc', 'hevc', 'vp8', 'vp9', 'av1'],
|
||||
mkv: ['avc', 'hevc', 'vp8', 'vp9', 'av1'],
|
||||
webm: ['vp8', 'vp9', 'av1'],
|
||||
mov: ['avc', 'hevc', 'vp8', 'vp9', 'av1'],
|
||||
ts: ['avc', 'hevc'],
|
||||
},
|
||||
audio: {
|
||||
mp4: ['aac', 'opus', 'mp3', 'vorbis', 'flac', 'ac3', 'eac3', 'pcm-s16', 'pcm-s16be', 'pcm-s24', 'pcm-s24be', 'pcm-s32', 'pcm-s32be', 'pcm-f32', 'pcm-f64'],
|
||||
m4v: ['aac', 'opus', 'mp3', 'vorbis', 'flac', 'ac3', 'eac3', 'pcm-s16', 'pcm-s16be', 'pcm-s24', 'pcm-s24be', 'pcm-s32', 'pcm-s32be', 'pcm-f32', 'pcm-f64'],
|
||||
f4v: ['aac', 'opus', 'mp3', 'vorbis', 'flac', 'ac3', 'eac3', 'pcm-s16', 'pcm-s16be', 'pcm-s24', 'pcm-s24be', 'pcm-s32', 'pcm-s32be', 'pcm-f32', 'pcm-f64'],
|
||||
'3gp': ['aac', 'opus', 'mp3', 'vorbis', 'flac', 'ac3', 'eac3', 'pcm-s16', 'pcm-s16be', 'pcm-s24', 'pcm-s24be', 'pcm-s32', 'pcm-s32be', 'pcm-f32', 'pcm-f64'],
|
||||
'3g2': ['aac', 'opus', 'mp3', 'vorbis', 'flac', 'ac3', 'eac3', 'pcm-s16', 'pcm-s16be', 'pcm-s24', 'pcm-s24be', 'pcm-s32', 'pcm-s32be', 'pcm-f32', 'pcm-f64'],
|
||||
mkv: ['aac', 'opus', 'mp3', 'vorbis', 'flac', 'ac3', 'eac3', 'pcm-u8', 'pcm-s16', 'pcm-s24', 'pcm-s32', 'pcm-f32', 'pcm-f64'],
|
||||
webm: ['opus', 'vorbis'],
|
||||
mov: ['aac', 'opus', 'mp3', 'vorbis', 'flac', 'ac3', 'eac3', 'pcm-u8', 'pcm-s8', 'pcm-s16', 'pcm-s16be', 'pcm-s24', 'pcm-s24be', 'pcm-s32', 'pcm-s32be', 'pcm-f32', 'pcm-f32be', 'pcm-f64', 'ulaw', 'alaw'],
|
||||
ts: ['aac', 'mp3', 'ac3', 'eac3'],
|
||||
},
|
||||
} as const;
|
||||
|
||||
export class MediabunnyConverter extends Converter {
|
||||
public name = "mediabunny";
|
||||
public status: WorkerStatus = $state("ready");
|
||||
|
|
|
|||
Loading…
Reference in New Issue