The iOS-compatible video may not be the best quality. Add a separate quality option to accommodate people who want the best available versus the best compatible with iOS's strict requirements. Testing with https://www.youtube.com/watch?v=YiRMs5ZhcH4 where the best quality video is 2160p and not iOS-compatible. With best quality, the VP9 video format is used (better quality but not iOS-compatible): ``` % ffprobe -hide_banner Who\ Can\ Find\ the\ Weirdest\ PC\ Parts\ on\ AliExpress?.mp4 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Who Can Find the Weirdest PC Parts on AliExpress?.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2mp41 encoder : Lavf60.16.100 Duration: 00:19:02.72, start: 0.000000, bitrate: 10941 kb/s Stream #0:0[0x1](und): Video: vp9 (Profile 0) (vp09 / 0x39307076), yuv420p(tv, bt709), 3840x1920, 10805 kb/s, 29.97 fps, 29.97 tbr, 16k tbn (default) Metadata: handler_name : ISO Media file produced by Google Inc. Created on: 06/15/2024. vendor_id : [0][0][0][0] Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default) Metadata: handler_name : ISO Media file produced by Google Inc. vendor_id : [0][0][0][0] ``` With "Best (iOS)" quality, the H264 video (lower quality but iOS-compatible) is used: ``` % ffprobe -hide_banner Who\ Can\ Find\ the\ Weirdest\ PC\ Parts\ on\ AliExpress?.mp4 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Who Can Find the Weirdest PC Parts on AliExpress?.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : Lavf60.16.100 Duration: 00:19:02.72, start: 0.000000, bitrate: 1846 kb/s Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x960 [SAR 1:1 DAR 2:1], 1710 kb/s, 29.97 fps, 29.97 tbr, 30k tbn (default) Metadata: handler_name : ISO Media file produced by Google Inc. vendor_id : [0][0][0][0] Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default) Metadata: handler_name : ISO Media file produced by Google Inc. vendor_id : [0][0][0][0] ``` Included a README note about the new quality option.
77 lines
1.5 KiB
TypeScript
77 lines
1.5 KiB
TypeScript
export interface Format {
|
|
id: string;
|
|
text: string;
|
|
qualities: Quality[];
|
|
}
|
|
|
|
export interface Quality {
|
|
id: string;
|
|
text: string;
|
|
}
|
|
|
|
export const Formats: Format[] = [
|
|
{
|
|
id: 'any',
|
|
text: 'Any',
|
|
qualities: [
|
|
{ id: 'best', text: 'Best' },
|
|
{ id: '1440', text: '1440p' },
|
|
{ id: '1080', text: '1080p' },
|
|
{ id: '720', text: '720p' },
|
|
{ id: '480', text: '480p' },
|
|
{ id: 'audio', text: 'Audio Only' },
|
|
],
|
|
},
|
|
{
|
|
id: 'mp4',
|
|
text: 'MP4',
|
|
qualities: [
|
|
{ id: 'best', text: 'Best' },
|
|
{ id: 'best_ios', text: 'Best (iOS)' },
|
|
{ id: '1440', text: '1440p' },
|
|
{ id: '1080', text: '1080p' },
|
|
{ id: '720', text: '720p' },
|
|
{ id: '480', text: '480p' },
|
|
],
|
|
},
|
|
{
|
|
id: 'm4a',
|
|
text: 'M4A',
|
|
qualities: [
|
|
{ id: 'best', text: 'Best' },
|
|
{ id: '192', text: '192 kbps' },
|
|
{ id: '128', text: '128 kbps' },
|
|
],
|
|
},
|
|
{
|
|
id: 'mp3',
|
|
text: 'MP3',
|
|
qualities: [
|
|
{ id: 'best', text: 'Best' },
|
|
{ id: '320', text: '320 kbps' },
|
|
{ id: '192', text: '192 kbps' },
|
|
{ id: '128', text: '128 kbps' },
|
|
],
|
|
},
|
|
{
|
|
id: 'opus',
|
|
text: 'OPUS',
|
|
qualities: [{ id: 'best', text: 'Best' }],
|
|
},
|
|
{
|
|
id: 'wav',
|
|
text: 'WAV',
|
|
qualities: [{ id: 'best', text: 'Best' }],
|
|
},
|
|
{
|
|
id: 'flac',
|
|
text: 'FLAC',
|
|
qualities: [{ id: 'best', text: 'Best' }],
|
|
},
|
|
{
|
|
id: 'thumbnail',
|
|
text: 'Thumbnail',
|
|
qualities: [{ id: 'best', text: 'Best' }],
|
|
},
|
|
];
|