feat: run prettier

This commit is contained in:
JellyBrick
2023-11-30 11:59:27 +09:00
parent 44c42310f1
commit a3104fda4b
116 changed files with 2928 additions and 1254 deletions

View File

@ -13,7 +13,7 @@ export type DownloaderPluginConfig = {
customPresetSetting: Preset;
skipExisting: boolean;
playlistMaxItems?: number;
}
};
export const defaultConfig: DownloaderPluginConfig = {
enabled: false,
@ -37,6 +37,5 @@ export default createPlugin({
renderer: {
start: onRendererLoad,
onPlayerApiReady,
}
},
});

View File

@ -93,7 +93,11 @@ export const getCookieFromWindow = async (win: BrowserWindow) => {
let config: DownloaderPluginConfig;
export const onMainLoad = async ({ window: _win, getConfig, ipc }: BackendContext<DownloaderPluginConfig>) => {
export const onMainLoad = async ({
window: _win,
getConfig,
ipc,
}: BackendContext<DownloaderPluginConfig>) => {
win = _win;
config = await getConfig();
@ -107,7 +111,9 @@ export const onMainLoad = async ({ window: _win, getConfig, ipc }: BackendContex
ipc.on('video-src-changed', (data: GetPlayerResponse) => {
playingUrl = data.microformat.microformatDataRenderer.urlCanonical;
});
ipc.handle('download-playlist-request', async (url: string) => downloadPlaylist(url));
ipc.handle('download-playlist-request', async (url: string) =>
downloadPlaylist(url),
);
};
export const onConfigChange = (newConfig: DownloaderPluginConfig) => {
@ -230,8 +236,7 @@ async function downloadSongUnsafe(
const selectedPreset = config.selectedPreset ?? 'mp3 (256kbps)';
let presetSetting: Preset;
if (selectedPreset === 'Custom') {
presetSetting =
config.customPresetSetting ?? DefaultPresetList['Custom'];
presetSetting = config.customPresetSetting ?? DefaultPresetList['Custom'];
} else if (selectedPreset === 'Source') {
presetSetting = DefaultPresetList['Source'];
} else {
@ -444,8 +449,7 @@ export async function downloadPlaylist(givenUrl?: string | URL) {
}
const playlistId =
getPlaylistID(givenUrl) ||
getPlaylistID(new URL(playingUrl));
getPlaylistID(givenUrl) || getPlaylistID(new URL(playingUrl));
if (!playlistId) {
sendError(new Error('No playlist ID found'));

View File

@ -1,7 +1,8 @@
import { app, BrowserWindow } from 'electron';
import is from 'electron-is';
export const getFolder = (customFolder: string) => customFolder || app.getPath('downloads');
export const getFolder = (customFolder: string) =>
customFolder || app.getPath('downloads');
export const defaultMenuDownloadLabel = 'Download playlist';
export const sendFeedback = (win: BrowserWindow, message?: unknown) => {

View File

@ -9,7 +9,10 @@ import type { MenuTemplate } from '@/menu';
import type { DownloaderPluginConfig } from './index';
export const onMenu = async ({ getConfig, setConfig }: MenuContext<DownloaderPluginConfig>): Promise<MenuTemplate> => {
export const onMenu = async ({
getConfig,
setConfig,
}: MenuContext<DownloaderPluginConfig>): Promise<MenuTemplate> => {
const config = await getConfig();
return [

View File

@ -28,7 +28,9 @@ const menuObserver = new MutationObserver(() => {
return;
}
const menuUrl = document.querySelector<HTMLAnchorElement>('tp-yt-paper-listbox [tabindex="-1"] #navigation-endpoint')?.href;
const menuUrl = document.querySelector<HTMLAnchorElement>(
'tp-yt-paper-listbox [tabindex="-1"] #navigation-endpoint',
)?.href;
if (!menuUrl?.includes('watch?') && doneFirstLoad) {
return;
}
@ -40,14 +42,18 @@ const menuObserver = new MutationObserver(() => {
return;
}
setTimeout(() => doneFirstLoad ||= true, 500);
setTimeout(() => (doneFirstLoad ||= true), 500);
});
export const onRendererLoad = ({ ipc }: RendererContext<DownloaderPluginConfig>) => {
export const onRendererLoad = ({
ipc,
}: RendererContext<DownloaderPluginConfig>) => {
window.download = () => {
let videoUrl = getSongMenu()
// Selector of first button which is always "Start Radio"
?.querySelector('ytmusic-menu-navigation-item-renderer[tabindex="-1"] #navigation-endpoint')
?.querySelector(
'ytmusic-menu-navigation-item-renderer[tabindex="-1"] #navigation-endpoint',
)
?.getAttribute('href');
if (videoUrl) {
if (videoUrl.startsWith('watch?')) {

View File

@ -16,7 +16,7 @@ export const DefaultPresetList: Record<string, Preset> = {
'Custom': {
extension: null,
ffmpegArgs: [],
}
},
};
export interface YouTubeFormat {
@ -31,86 +31,742 @@ export interface YouTubeFormat {
// converted from https://gist.github.com/sidneys/7095afe4da4ae58694d128b1034e01e2#file-youtube_format_code_itag_list-md
export const YoutubeFormatList: YouTubeFormat[] = [
{ itag: 5, container: 'flv', content: 'audio/video', resolution: '240p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 6, container: 'flv', content: 'audio/video', resolution: '270p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 17, container: '3gp', content: 'audio/video', resolution: '144p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 18, container: 'mp4', content: 'audio/video', resolution: '360p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 22, container: 'mp4', content: 'audio/video', resolution: '720p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 34, container: 'flv', content: 'audio/video', resolution: '360p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 35, container: 'flv', content: 'audio/video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 36, container: '3gp', content: 'audio/video', resolution: '180p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 37, container: 'mp4', content: 'audio/video', resolution: '1080p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 38, container: 'mp4', content: 'audio/video', resolution: '3072p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 43, container: 'webm', content: 'audio/video', resolution: '360p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 44, container: 'webm', content: 'audio/video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 45, container: 'webm', content: 'audio/video', resolution: '720p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 46, container: 'webm', content: 'audio/video', resolution: '1080p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 82, container: 'mp4', content: 'audio/video', resolution: '360p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 83, container: 'mp4', content: 'audio/video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 84, container: 'mp4', content: 'audio/video', resolution: '720p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 85, container: 'mp4', content: 'audio/video', resolution: '1080p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 91, container: 'hls', content: 'audio/video', resolution: '144p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 92, container: 'hls', content: 'audio/video', resolution: '240p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 93, container: 'hls', content: 'audio/video', resolution: '360p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 94, container: 'hls', content: 'audio/video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 95, container: 'hls', content: 'audio/video', resolution: '720p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 96, container: 'hls', content: 'audio/video', resolution: '1080p', bitrate: '-', range: '-', vrOr3D: '-' },
{ itag: 100, container: 'webm', content: 'audio/video', resolution: '360p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 101, container: 'webm', content: 'audio/video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 102, container: 'webm', content: 'audio/video', resolution: '720p', bitrate: '-', range: '-', vrOr3D: '3D' },
{ itag: 132, container: 'hls', content: 'audio/video', resolution: '240p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 133, container: 'mp4', content: 'video', resolution: '240p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 134, container: 'mp4', content: 'video', resolution: '360p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 135, container: 'mp4', content: 'video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 136, container: 'mp4', content: 'video', resolution: '720p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 137, container: 'mp4', content: 'video', resolution: '1080p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 138, container: 'mp4', content: 'video', resolution: '2160p60', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 139, container: 'm4a', content: 'audio', resolution: '-', bitrate: '48k', range: '-', vrOr3D: '' },
{ itag: 140, container: 'm4a', content: 'audio', resolution: '-', bitrate: '128k', range: '-', vrOr3D: '' },
{ itag: 141, container: 'm4a', content: 'audio', resolution: '-', bitrate: '256k', range: '-', vrOr3D: '' },
{ itag: 151, container: 'hls', content: 'audio/video', resolution: '72p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 160, container: 'mp4', content: 'video', resolution: '144p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 167, container: 'webm', content: 'video', resolution: '360p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 168, container: 'webm', content: 'video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 169, container: 'webm', content: 'video', resolution: '1080p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 171, container: 'webm', content: 'audio', resolution: '-', bitrate: '128k', range: '-', vrOr3D: '' },
{ itag: 218, container: 'webm', content: 'video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 219, container: 'webm', content: 'video', resolution: '144p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 242, container: 'webm', content: 'video', resolution: '240p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 243, container: 'webm', content: 'video', resolution: '360p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 244, container: 'webm', content: 'video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 245, container: 'webm', content: 'video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 246, container: 'webm', content: 'video', resolution: '480p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 247, container: 'webm', content: 'video', resolution: '720p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 248, container: 'webm', content: 'video', resolution: '1080p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 249, container: 'webm', content: 'audio', resolution: '-', bitrate: '50k', range: '-', vrOr3D: '' },
{ itag: 250, container: 'webm', content: 'audio', resolution: '-', bitrate: '70k', range: '-', vrOr3D: '' },
{ itag: 251, container: 'webm', content: 'audio', resolution: '-', bitrate: '160k', range: '-', vrOr3D: '' },
{ itag: 264, container: 'mp4', content: 'video', resolution: '1440p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 266, container: 'mp4', content: 'video', resolution: '2160p60', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 271, container: 'webm', content: 'video', resolution: '1440p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 272, container: 'webm', content: 'video', resolution: '4320p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 278, container: 'webm', content: 'video', resolution: '144p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 298, container: 'mp4', content: 'video', resolution: '720p60', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 299, container: 'mp4', content: 'video', resolution: '1080p60', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 302, container: 'webm', content: 'video', resolution: '720p60', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 303, container: 'webm', content: 'video', resolution: '1080p60', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 308, container: 'webm', content: 'video', resolution: '1440p60', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 313, container: 'webm', content: 'video', resolution: '2160p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 315, container: 'webm', content: 'video', resolution: '2160p60', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 330, container: 'webm', content: 'video', resolution: '144p60', bitrate: '-', range: 'hdr', vrOr3D: '' },
{ itag: 331, container: 'webm', content: 'video', resolution: '240p60', bitrate: '-', range: 'hdr', vrOr3D: '' },
{ itag: 332, container: 'webm', content: 'video', resolution: '360p60', bitrate: '-', range: 'hdr', vrOr3D: '' },
{ itag: 333, container: 'webm', content: 'video', resolution: '480p60', bitrate: '-', range: 'hdr', vrOr3D: '' },
{ itag: 334, container: 'webm', content: 'video', resolution: '720p60', bitrate: '-', range: 'hdr', vrOr3D: '' },
{ itag: 335, container: 'webm', content: 'video', resolution: '1080p60', bitrate: '-', range: 'hdr', vrOr3D: '' },
{ itag: 336, container: 'webm', content: 'video', resolution: '1440p60', bitrate: '-', range: 'hdr', vrOr3D: '' },
{ itag: 337, container: 'webm', content: 'video', resolution: '2160p60', bitrate: '-', range: 'hdr', vrOr3D: '' },
{ itag: 272, container: 'webm', content: 'video', resolution: '2880p/4320p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 399, container: 'mp4', content: 'video', resolution: '1080p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 400, container: 'mp4', content: 'video', resolution: '1440p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 401, container: 'mp4', content: 'video', resolution: '2160p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 402, container: 'mp4', content: 'video', resolution: '2880p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 571, container: 'mp4', content: 'video', resolution: '3840p', bitrate: '-', range: '-', vrOr3D: '' },
{ itag: 702, container: 'mp4', content: 'video', resolution: '3840p', bitrate: '-', range: '-', vrOr3D: '' },
{
itag: 5,
container: 'flv',
content: 'audio/video',
resolution: '240p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 6,
container: 'flv',
content: 'audio/video',
resolution: '270p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 17,
container: '3gp',
content: 'audio/video',
resolution: '144p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 18,
container: 'mp4',
content: 'audio/video',
resolution: '360p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 22,
container: 'mp4',
content: 'audio/video',
resolution: '720p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 34,
container: 'flv',
content: 'audio/video',
resolution: '360p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 35,
container: 'flv',
content: 'audio/video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 36,
container: '3gp',
content: 'audio/video',
resolution: '180p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 37,
container: 'mp4',
content: 'audio/video',
resolution: '1080p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 38,
container: 'mp4',
content: 'audio/video',
resolution: '3072p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 43,
container: 'webm',
content: 'audio/video',
resolution: '360p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 44,
container: 'webm',
content: 'audio/video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 45,
container: 'webm',
content: 'audio/video',
resolution: '720p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 46,
container: 'webm',
content: 'audio/video',
resolution: '1080p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 82,
container: 'mp4',
content: 'audio/video',
resolution: '360p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 83,
container: 'mp4',
content: 'audio/video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 84,
container: 'mp4',
content: 'audio/video',
resolution: '720p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 85,
container: 'mp4',
content: 'audio/video',
resolution: '1080p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 91,
container: 'hls',
content: 'audio/video',
resolution: '144p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 92,
container: 'hls',
content: 'audio/video',
resolution: '240p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 93,
container: 'hls',
content: 'audio/video',
resolution: '360p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 94,
container: 'hls',
content: 'audio/video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 95,
container: 'hls',
content: 'audio/video',
resolution: '720p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 96,
container: 'hls',
content: 'audio/video',
resolution: '1080p',
bitrate: '-',
range: '-',
vrOr3D: '-',
},
{
itag: 100,
container: 'webm',
content: 'audio/video',
resolution: '360p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 101,
container: 'webm',
content: 'audio/video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 102,
container: 'webm',
content: 'audio/video',
resolution: '720p',
bitrate: '-',
range: '-',
vrOr3D: '3D',
},
{
itag: 132,
container: 'hls',
content: 'audio/video',
resolution: '240p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 133,
container: 'mp4',
content: 'video',
resolution: '240p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 134,
container: 'mp4',
content: 'video',
resolution: '360p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 135,
container: 'mp4',
content: 'video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 136,
container: 'mp4',
content: 'video',
resolution: '720p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 137,
container: 'mp4',
content: 'video',
resolution: '1080p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 138,
container: 'mp4',
content: 'video',
resolution: '2160p60',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 139,
container: 'm4a',
content: 'audio',
resolution: '-',
bitrate: '48k',
range: '-',
vrOr3D: '',
},
{
itag: 140,
container: 'm4a',
content: 'audio',
resolution: '-',
bitrate: '128k',
range: '-',
vrOr3D: '',
},
{
itag: 141,
container: 'm4a',
content: 'audio',
resolution: '-',
bitrate: '256k',
range: '-',
vrOr3D: '',
},
{
itag: 151,
container: 'hls',
content: 'audio/video',
resolution: '72p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 160,
container: 'mp4',
content: 'video',
resolution: '144p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 167,
container: 'webm',
content: 'video',
resolution: '360p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 168,
container: 'webm',
content: 'video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 169,
container: 'webm',
content: 'video',
resolution: '1080p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 171,
container: 'webm',
content: 'audio',
resolution: '-',
bitrate: '128k',
range: '-',
vrOr3D: '',
},
{
itag: 218,
container: 'webm',
content: 'video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 219,
container: 'webm',
content: 'video',
resolution: '144p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 242,
container: 'webm',
content: 'video',
resolution: '240p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 243,
container: 'webm',
content: 'video',
resolution: '360p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 244,
container: 'webm',
content: 'video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 245,
container: 'webm',
content: 'video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 246,
container: 'webm',
content: 'video',
resolution: '480p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 247,
container: 'webm',
content: 'video',
resolution: '720p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 248,
container: 'webm',
content: 'video',
resolution: '1080p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 249,
container: 'webm',
content: 'audio',
resolution: '-',
bitrate: '50k',
range: '-',
vrOr3D: '',
},
{
itag: 250,
container: 'webm',
content: 'audio',
resolution: '-',
bitrate: '70k',
range: '-',
vrOr3D: '',
},
{
itag: 251,
container: 'webm',
content: 'audio',
resolution: '-',
bitrate: '160k',
range: '-',
vrOr3D: '',
},
{
itag: 264,
container: 'mp4',
content: 'video',
resolution: '1440p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 266,
container: 'mp4',
content: 'video',
resolution: '2160p60',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 271,
container: 'webm',
content: 'video',
resolution: '1440p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 272,
container: 'webm',
content: 'video',
resolution: '4320p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 278,
container: 'webm',
content: 'video',
resolution: '144p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 298,
container: 'mp4',
content: 'video',
resolution: '720p60',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 299,
container: 'mp4',
content: 'video',
resolution: '1080p60',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 302,
container: 'webm',
content: 'video',
resolution: '720p60',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 303,
container: 'webm',
content: 'video',
resolution: '1080p60',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 308,
container: 'webm',
content: 'video',
resolution: '1440p60',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 313,
container: 'webm',
content: 'video',
resolution: '2160p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 315,
container: 'webm',
content: 'video',
resolution: '2160p60',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 330,
container: 'webm',
content: 'video',
resolution: '144p60',
bitrate: '-',
range: 'hdr',
vrOr3D: '',
},
{
itag: 331,
container: 'webm',
content: 'video',
resolution: '240p60',
bitrate: '-',
range: 'hdr',
vrOr3D: '',
},
{
itag: 332,
container: 'webm',
content: 'video',
resolution: '360p60',
bitrate: '-',
range: 'hdr',
vrOr3D: '',
},
{
itag: 333,
container: 'webm',
content: 'video',
resolution: '480p60',
bitrate: '-',
range: 'hdr',
vrOr3D: '',
},
{
itag: 334,
container: 'webm',
content: 'video',
resolution: '720p60',
bitrate: '-',
range: 'hdr',
vrOr3D: '',
},
{
itag: 335,
container: 'webm',
content: 'video',
resolution: '1080p60',
bitrate: '-',
range: 'hdr',
vrOr3D: '',
},
{
itag: 336,
container: 'webm',
content: 'video',
resolution: '1440p60',
bitrate: '-',
range: 'hdr',
vrOr3D: '',
},
{
itag: 337,
container: 'webm',
content: 'video',
resolution: '2160p60',
bitrate: '-',
range: 'hdr',
vrOr3D: '',
},
{
itag: 272,
container: 'webm',
content: 'video',
resolution: '2880p/4320p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 399,
container: 'mp4',
content: 'video',
resolution: '1080p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 400,
container: 'mp4',
content: 'video',
resolution: '1440p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 401,
container: 'mp4',
content: 'video',
resolution: '2160p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 402,
container: 'mp4',
content: 'video',
resolution: '2880p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 571,
container: 'mp4',
content: 'video',
resolution: '3840p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
{
itag: 702,
container: 'mp4',
content: 'video',
resolution: '3840p',
bitrate: '-',
range: '-',
vrOr3D: '',
},
];