2022-11-12 23:08:28 -05:00
#!/usr/bin/env node
"use-strict" ;
const fs = require ( "fs" )
const objSerialize = ( obj , keys , cb ) => {
let a = Object . create ( null )
for ( const key of keys )
a [ key ] = obj [ key ]
if ( cb )
2022-12-17 13:59:49 -05:00
return cb ( a , obj )
2022-11-12 23:08:28 -05:00
return a
}
2022-11-13 23:55:58 -05:00
const objBulkSet = ( obj , target , pairs ) => {
if ( typeof obj [ target ] != "object" )
obj [ target ] = Object . create ( null )
for ( const key in pairs )
if ( pairs [ key ] != undefined )
obj [ target ] [ key ] = pairs [ key ]
}
2022-12-07 19:29:36 -05:00
const notNullElse = ( a , fallback ) => a != null && a != undefined ? a : fallback
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ constructor
* @ params { string } id
* @ returns { RadioItem }
* /
2022-11-12 23:08:28 -05:00
const RadioItem = function ( id ) {
this . id = id
this . metadata = undefined
this . tags = undefined
this . sources = [ ]
return this
}
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ params { string } id
* @ returns { RadioItem }
* /
2022-11-12 23:08:28 -05:00
RadioItem . new = id => new RadioItem ( id )
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ params { string | undefined } title
* @ params { string | undefined } artist
* @ params { URL | string | undefined } [ href ] href
* @ params { string } [ extra ] extra Playback effects . i . e : Pitch , speed
* @ returns { RadioItem }
* /
RadioItem . prototype . setMetadata = function ( title , artist , href , extra ) {
if ( ! this . metadata )
this . metadata = RadioMetadata . new ( )
objBulkSet ( this , "metadata" , { title , artist , href , extra } ) ;
return this
}
/ * *
* @ public
* @ params { string [ ] } tags
* @ returns { RadioItem }
* /
2022-11-13 23:55:58 -05:00
RadioItem . prototype . addTags = function ( tags ) { this . tags = this . tags ? [ ... ( this . tags ) , ... tags ] : tags ; return this }
2022-12-17 13:59:49 -05:00
/ * *
* Alias for addTags ; prefixes all items with "radio-media-style-"
* @ public
* @ params { string [ ] } tags
* @ returns { RadioItem }
* @ see RadioItem . prototype . addTags
* /
2022-12-09 13:41:14 -05:00
RadioItem . prototype . addStyleTags = function ( tags ) { return this . addTags ( tags . map ( a => ` radio-media-style- ${ a } ` ) ) ; return this }
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ params { RadioSource } source
* @ returns { RadioItem }
* /
2022-11-12 23:08:28 -05:00
RadioItem . prototype . addSource = function ( source ) { this . sources . push ( source ) ; return this }
2022-12-17 13:59:49 -05:00
/ * *
* Set metadata for songs that were previously on nigge . rs ; adds the "niggers" tag .
* @ public
* @ params { string | undefined } nigid
* @ params { string | undefined } nigkey
* @ returns { RadioItem }
* /
2022-11-13 23:55:58 -05:00
RadioItem . prototype . setNiggadata = function ( nigid , nigkey ) {
this . setMetadata ( )
this . metadata . _nigid = nigid
this . metadata . _nigkey = nigkey
this . addTags ( [ "niggers" ] )
return this
}
2022-12-17 13:59:49 -05:00
/ * *
* @ deprecated
* @ returns { Object }
* /
2022-11-12 23:08:28 -05:00
RadioItem . prototype . serialize = function ( ) {
return objSerialize ( this , [
"id" ,
"tags" ,
"metadata"
] , obj => ( { ... obj , "sources" : this . sources . map ( source => source . serialize ( ) ) } ) )
}
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ readonly
* @ enum { number }
* /
2022-11-17 13:06:32 -05:00
const EDisplayType = {
2022-11-12 23:08:28 -05:00
"NATIVE" : - 1 ,
2022-11-16 04:56:20 -05:00
"LANDSCAPE" : 0 ,
"SQUARE" : 1 ,
"STRETCH" : 2
2022-11-12 23:08:28 -05:00
}
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ constructor
* @ params { string } type
* @ params { string [ ] } [ codecs ] codecs
* @ returns { RadioSource }
* /
2022-12-14 04:55:17 -05:00
const RadioSource = function ( type , codecs ) {
2022-11-12 23:08:28 -05:00
this . type = type
2022-12-07 19:29:36 -05:00
this . uri = null
this . previews = [ ]
2022-12-14 04:55:17 -05:00
this . setTypeWCodec ( type , codecs )
2022-11-12 23:08:28 -05:00
return this
}
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ params { string } type
* @ params { string [ ] } [ codecs ] codecs
* @ returns { RadioSource }
* /
2022-12-14 04:55:17 -05:00
RadioSource . new = ( type , codecs ) => new RadioSource ( type , codecs )
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ params { string } uri
* @ returns { RadioSource }
* /
2022-12-07 19:29:36 -05:00
RadioSource . prototype . setURI = function ( uri ) { this . uri = uri ; return this }
2022-12-17 13:59:49 -05:00
/ * *
* Set metadata that specifically applies to * this * source . Used for items where the audio has a different attribution than
* the video .
* @ public
* @ params { string | undefined } title
* @ params { string | undefined } artist
* @ params { URL | string | undefined } [ href ] href
* @ params { string } [ extra ] extra Playback effects . i . e : Pitch , speed
* @ returns { RadioSource }
* /
RadioSource . prototype . setMetadata = function ( title , artist , href , extra ) {
if ( ! this . metadata )
this . metadata = RadioMetadata . new ( )
objBulkSet ( this , "metadata" , { title , artist , href , extra } ) ;
return this
}
/ * *
* @ public
* @ params { RadioPlaybackInfo } playbackInfo
* @ returns { RadioSource }
* /
RadioSource . prototype . setPlaybackInfo = function ( playbackInfo ) { this . playbackinfo = playbackInfo ; return this ; }
/ * *
* @ public
* @ params { string } uri
* @ returns { RadioSource }
* /
2022-12-14 04:55:17 -05:00
RadioSource . prototype . setTypeWCodec = function ( type , codecs ) {
this . type = type
this . codecs = codecs ? . length ? codecs : undefined
return this
}
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ params { string } uri
* @ params { string } type
* @ params { string } size
* @ params { EDisplayType } [ displayType ] displayType
* @ returns { RadioSource }
* /
/ * *
* @ public
* @ params { string } uri
* @ params { string } type
* @ params { string [ ] } codecs
* @ params { String } size
* @ params { EDisplayType } [ displayType ] displayType
* @ returns { RadioSource }
* /
2022-12-14 04:55:17 -05:00
RadioSource . prototype . addPreview = function ( ) {
let uri , type , codecs , size , displayType
if ( typeof arguments [ 0 ] == "string" && typeof arguments [ 1 ] == "string" && arguments [ 2 ] instanceof Array ) {
uri = arguments [ 0 ]
type = arguments [ 1 ]
codecs = arguments [ 2 ]
size = arguments [ 3 ]
2022-12-15 02:49:47 -05:00
displayType = arguments [ 4 ]
2022-12-14 04:55:17 -05:00
} else if ( typeof arguments [ 0 ] == "string" && typeof arguments [ 1 ] == "string" && typeof arguments [ 2 ] == "string" ) {
uri = arguments [ 0 ]
type = arguments [ 1 ]
size = arguments [ 2 ]
displayType = arguments [ 3 ]
} else
throw new TypeError ( "Could not recognize arguments. Expecting [ LString, LString, LString, ...?] or [ LString, LString, LString[], ...?]" )
this . previews . push ( RadioPreview . new ( uri , type , codecs , size , displayType ) )
2022-11-17 13:06:32 -05:00
return this
}
2022-12-17 13:59:49 -05:00
/ * *
* @ deprecated
* @ returns { Object }
* /
2022-11-12 23:08:28 -05:00
RadioSource . prototype . serialize = function ( ) {
return objSerialize ( this , [
"type" ,
2022-12-14 04:55:17 -05:00
"codecs" ,
2022-12-07 19:29:36 -05:00
"uri"
2022-12-17 13:59:49 -05:00
] , ( obj , self ) => ( {
... obj ,
"metadata" : self . metadata ? self . metadata . serialize ( ) : undefined ,
"playbackinfo" : self . playbackinfo ? self . playbackinfo . serialize ( ) : undefined ,
"previews" : this . previews . map ( preview => preview . serialize ( obj ) )
} ) )
2022-12-07 19:29:36 -05:00
}
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ constructor
* @ params { string } uri
* @ params { string } type
* @ params { string [ ] } codecs
* @ params { String } size
* @ params { EDisplayType } [ displayType = null ] size
* @ returns { RadioPreview }
* /
2022-12-14 04:55:17 -05:00
const RadioPreview = function ( uri , type , codecs , size , displayType = null ) {
2022-12-07 19:29:36 -05:00
this . uri = uri
this . type = type
2022-12-14 04:55:17 -05:00
this . codecs = codecs ? . length ? codecs : undefined
2022-12-07 19:29:36 -05:00
this . size = size . replace ( /x/g , "× " )
2022-12-08 09:29:33 -05:00
this . display _type = displayType
2022-12-07 19:29:36 -05:00
return this
}
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ params { string } uri
* @ params { string } type
* @ params { string [ ] } codecs
* @ params { String } size
* @ params { EDisplayType } [ displayType = null ] size
* @ returns { RadioPreview }
* /
2022-12-14 04:55:17 -05:00
RadioPreview . new = ( uri , type , codecs , size , displayType ) => new RadioPreview ( uri , type , codecs , size , displayType )
2022-12-17 13:59:49 -05:00
/ * *
* @ deprecated
* @ params { RadioSource } radioSource
* @ returns { Object }
* /
2022-12-08 09:29:33 -05:00
RadioPreview . prototype . serialize = function ( radioSource ) {
this . display _type = notNullElse ( this . display _type , radioSource . type . startsWith ( "video/" ) ? EDisplayType . NATIVE : EDisplayType . SQUARE )
2022-12-07 19:29:36 -05:00
return objSerialize ( this , [
2022-11-17 13:06:32 -05:00
"display_type" ,
2022-12-07 19:29:36 -05:00
"type" ,
2022-12-14 04:55:17 -05:00
"codecs" ,
"size" ,
"uri"
2022-11-12 23:08:28 -05:00
] )
}
2022-12-17 13:59:49 -05:00
/ * *
* @ public
* @ constructor
* @ params { string | undefined } title
* @ params { string | undefined } artist
* @ params { URL | string | undefined } [ href ] href
* @ params { string } [ extra ] extra Playback effects . i . e : Pitch , speed
* @ returns { RadioMetadata }
* /
const RadioMetadata = function ( title , artist , href , extra ) {
this . title = title
this . artist = artist
this . href = href
this . extra = extra
return this
}
/ * *
* @ public
* @ params { string | undefined } title
* @ params { string | undefined } artist
* @ params { URL | string | undefined } [ href ] href
* @ params { string } [ extra ] extra Playback effects . i . e : Pitch , speed
* @ returns { RadioMetadata }
* /
RadioMetadata . new = ( title , artist , href , extra ) => new RadioMetadata ( title , artist , href , extra )
/ * *
* @ deprecated
* @ params { RadioSource } radioSource
* @ returns { Object }
* /
RadioMetadata . prototype . serialize = function ( ) {
return objSerialize ( this , [
"title" ,
"artist" ,
"href" ,
"extra"
] )
}
/ * *
* @ public
* @ constructor
* @ returns { RadioPlaybackInfo }
* /
const RadioPlaybackInfo = function ( ) {
this . volume = undefined
return this
}
/ * *
* @ public
* @ param { number } volume - Playback volume . Crude version of ReplayGain
* @ returns { RadioPlaybackInfo }
* /
RadioPlaybackInfo . prototype . setPlaybackVolume = function ( volume ) { this . volume = volume ; return this ; }
/ * *
* @ public
* @ returns { RadioPlaybackInfo }
* /
RadioPlaybackInfo . new = ( ) => new RadioPlaybackInfo ( )
/ * *
* @ deprecated
* @ returns { Object }
* /
RadioPlaybackInfo . prototype . serialize = function ( ) {
return objSerialize ( this , [
"volume"
] )
}
2022-11-17 13:06:32 -05:00
const mediaItems = [
2022-11-12 23:08:28 -05:00
RadioItem . new ( "nightinjunitaki" )
2022-12-16 17:34:34 -05:00
. setMetadata ( "Night In Junitaki" , "Wünsche" , "https://soundcloud.com/samuelwunsche/night-in-junitaki" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/night_in_junitaki_-_waves.mp3" )
. addPreview ( "mxc://glowers.club/HCiiIVMOekjPZtiEaexDdUsD" , "image/jpg" , "400x400" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "goodbyeautumn" )
2022-12-16 17:34:34 -05:00
. setMetadata ( "Goodbye Autumn" , "Tomppabeats" , "https://tomppabeats.bandcamp.com/track/goodbye-autumn" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/goodbye_autumn.mp3" )
2022-12-17 16:07:24 -05:00
. addPreview ( "mxc://glowers.club/JslhZSsDpgtrnmWhSqYMEUDL" , "image/jpg" , "500x500" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "balmy" )
2022-12-16 17:34:34 -05:00
. setMetadata ( "Balmy" , "90sFlav" , "https://90sflav.bandcamp.com/track/balmy" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/balmy90sblav.mp3" )
. addPreview ( "mxc://glowers.club/kDNCBjvQxfPvtJVmfEMmcdov" , "image/jpg" , "999x999" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "springletter" )
2022-12-16 17:34:34 -05:00
. setMetadata ( "Spring Letter" , "90sFlav" , "https://90sflav.bandcamp.com/track/spring-letter" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/spring_letter.mp3" )
. addPreview ( "mxc://glowers.club/wTLwzrymoDeNGdJLEpDoEBtZ" , "image/jpg" , "500x500" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "weep" )
2022-12-16 17:34:34 -05:00
. setMetadata ( "Weep" , "90sFlav" , "https://90sflav.bandcamp.com/track/weep" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/weep.mp3" )
. addPreview ( "mxc://glowers.club/jIkXGOSECsPPyJTvgrxPhRoq" , "image/jpg" , "500x500" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "whenimetyou" )
2022-12-16 17:34:34 -05:00
. setMetadata ( "When I Met You" , "90sFlav" , "https://90sflav.bandcamp.com/track/when-i-met-you" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/when_i_met_you.mp3" )
. addPreview ( "mxc://glowers.club/ntDKDFtqeQCmIVoRtzRQdvEC" , "image/jpg" , "500x500" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "sevenofnine" )
2022-12-16 17:34:34 -05:00
. setMetadata ( "Seven of Nine" , "90sFlav" , "https://90sflav.bandcamp.com/track/seven-of-nine" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/seven_of_nine.mp3" )
. addPreview ( "mxc://glowers.club/kDNCBjvQxfPvtJVmfEMmcdov" , "image/jpg" , "999x999" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "callme" )
2022-12-16 17:34:34 -05:00
. setMetadata ( "Call Me" , "90sFlav" , "https://90sflav.bandcamp.com/track/call-me" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/call_me.mp3" )
. addPreview ( "mxc://glowers.club/kDNCBjvQxfPvtJVmfEMmcdov" , "image/jpg" , "999x999" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "midnightsession" )
2022-12-16 17:34:34 -05:00
. setMetadata ( "Midnight Session" , "90sFlav" , "https://90sflav.bandcamp.com/track/-" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/по лу но чна я_с е с с ия.mp3" )
. addPreview ( "mxc://glowers.club/pLexnITqTOhJUXBOKtDAiZzv" , "image/jpg" , "288x288" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "southdakota" )
2022-11-14 05:08:50 -05:00
. setMetadata ( "South Dakota" , "Keeloh" , "https://soundcloud.com/keelohproducer/southdakota" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://wiki/southdakota.mp3" )
. addPreview ( "mxc://glowers.club/FJfFhscJavurBvoEuRbykpmM" , "image/jpg" , "500x500" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "dobson" )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64000D" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/mRtnfcoHYkyAOXSkYvrnbZgX" )
. addPreview ( "mxc://glowers.club/eHKVfIITgdRKERhVOPSTDQAc" , "image/jpg" , "432x426" ) ) ,
2022-11-12 23:08:28 -05:00
2022-12-14 04:55:17 -05:00
// FIXME: Original audio source found, not remix source or video source
2022-11-12 23:08:28 -05:00
RadioItem . new ( "poljacked" )
2022-12-09 17:09:53 -05:00
. setMetadata ( "BLACK BLADE" , "Seyit Akbas" , "https://youtu.be/6RnNXLZ2rfw" , "1.15%, pitched up" )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64001E" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/stlNnyEIUVGluyhpPSGhtjJg" )
2022-12-08 13:26:08 -05:00
. addPreview ( "mxc://glowers.club/BczfFtojBhwMxTNjoZfhemam" , "image/jpg" , "638x360" )
2022-12-15 02:49:47 -05:00
. addPreview ( "mxc://glowers.club/wVLvTOIodRqOcasDAFxkqHaG" , "video/mp4" , [ "avc1.4D401F" ] , "358x360" , EDisplayType . SQUARE )
2022-12-08 13:26:08 -05:00
. addPreview ( "mxc://glowers.club/EBQRprvJmkNfsZTzCzDkPVTv" , "image/gif" , "320x320" , EDisplayType . SQUARE ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "video/webm" , [ "vp8" , "vorbis" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/xnYQdrroEheIZBfigHGZferu" )
2022-12-08 13:26:08 -05:00
. addPreview ( "mxc://glowers.club/BczfFtojBhwMxTNjoZfhemam" , "image/jpg" , "638x360" )
2022-12-15 02:49:47 -05:00
. addPreview ( "mxc://glowers.club/wVLvTOIodRqOcasDAFxkqHaG" , "video/mp4" , [ "avc1.4D401F" ] , "358x360" , EDisplayType . SQUARE )
2022-12-08 13:26:08 -05:00
. addPreview ( "mxc://glowers.club/EBQRprvJmkNfsZTzCzDkPVTv" , "image/gif" , "320x320" , EDisplayType . SQUARE ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "femalecops" )
2022-12-08 09:29:33 -05:00
. addTags ( [ "misc" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64001F" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/ZSyUyEGvOLOoUaqFVoCYPTif" )
. addPreview ( "mxc://glowers.club/BVQhXkWSYbvFcSerzVZFgfrn" , "image/jpg" , "600x600" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "video/webm" , [ "vp9" , "opus" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/RYjIfTiZKSKBdYBvjGtyBILa" )
. addPreview ( "mxc://glowers.club/BVQhXkWSYbvFcSerzVZFgfrn" , "image/jpg" , "600x600" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "autisticclowns" )
2022-12-08 09:29:33 -05:00
. addTags ( [ "misc" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.640015" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/fGszYTUkpyWsKuxphzJSfAZk" )
. addPreview ( "mxc://glowers.club/esDPBgpoTvTtqekHAQJRwqtK" , "image/jpg" , "480x272" ) )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/quicktime" , [ "avc1.4D0015" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/WqYtubpqVplLjSxxmaxNeQir" )
. addPreview ( "mxc://glowers.club/esDPBgpoTvTtqekHAQJRwqtK" , "image/jpg" , "480x272" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "ifuckinglovescience" )
2022-12-16 05:55:52 -05:00
. setMetadata ( "I FUCKING LOVE SCIENCE" , "Hank Green" , "https://booru.soy/post/view/20571" )
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D4029" , "mp4a.40.2" ] )
. setURI ( "mxc://glowers.club/tLnDwRvJDckOIopncgUfodAn" )
. addPreview ( "mxc://glowers.club/burAaUYSveyoVMHrijAsAxlL" , "image/jpg" , "768x432" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "video/webm" , [ "vp9" , "opus" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/abgQasVrghOSkpRZTIfHMFyF" )
. addPreview ( "mxc://glowers.club/IhivpcDssjnjSDHBdMEGGwVp" , "image/jpg" , "320x180" ) )
2022-12-16 05:55:52 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/uoohwSBNmaXjTLZFwodmEwwr" )
2022-12-17 13:59:49 -05:00
. setMetadata ( "I FUCKING LOVE SCIENCE" , "Hank Green" , "https://youtu.be/RECuQaaGGfA" )
2022-12-16 05:55:52 -05:00
. addPreview ( "mxc://glowers.club/aAYxVtwfHuIqXzYkrVwHZDjl" , "image/jpg" , "500x500" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "dootnukem" )
2022-12-09 18:05:42 -05:00
. setMetadata ( "Doot Nukem" , "Sylva" , "https://youtu.be/cHJQ6LqZ4ks" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/xsuBJwyAUwuDoASbmqjZWrLO" )
2022-12-08 09:39:35 -05:00
. addPreview ( "mxc://glowers.club/ymWgXucYRzhsgdiecjBkFvmz" , "image/jpg" , "1600x1800" , EDisplayType . STRETCH ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "hyperborea" )
. setMetadata ( "Somebody That I Used to Know" , "VelvetCasca" )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D401F" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/egAyPBuGNFPYyvnMWMxySLiX" )
. addPreview ( "mxc://glowers.club/dOxJvUWRlGqRRxJdpDRZyeko" , "image/jpg" , "640x360" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "feizhou" )
2022-11-14 04:17:22 -05:00
. setMetadata ( "Without the Communist Party, There Would Be No New China" , "Brother Hao" , "https://youtu.be/5tCMI0uKbBE" )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.42C015" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/fVKJZgWpIHRmilhZLboFXOIK" )
. addPreview ( "mxc://glowers.club/EuYQZnqLjRGPMocgqGqtKFpJ" , "image/jpg" , "366x240" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "video/webm" , [ "vp8" , "vorbis" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/EVRGpqeefZdsjVawOvSkOdvZ" )
. addPreview ( "mxc://glowers.club/GywrCPMpcpsLFJQAuYoZRuzq" , "image/jpg" , "366x240" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "breathe" )
. setMetadata ( "Breathe (in the Air)" , "Pink Floyd" )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64001E" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/MOyzIHtapiyrpxaYRoiQqMqf" )
. addPreview ( "mxc://glowers.club/KytvUDmLWCFKQWwHemdDTksd" , "image/jpg" , "640x360" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "video/webm" , [ "vp8" , "vorbis" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/HAGTNySLRemaDfjZMSmpktDj" )
. addPreview ( "mxc://glowers.club/KytvUDmLWCFKQWwHemdDTksd" , "image/jpg" , "640x360" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "fuckjuice" )
. setMetadata ( "Fuck Jannies and Fuck Juice" , "The Crystal Crypt" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/bxMoRJmYFteVNNntNhqrniNJ" )
. addPreview ( "mxc://glowers.club/YgeFvRPLguZOCGtUJFJednNj" , "image/jpg" , "276x240" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "onegame" )
. setMetadata ( "ONE GAME" , "Chris Voiceman" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/iejQiyaVtnqhuSSCuXqviAIN" )
. addPreview ( "mxc://glowers.club/bZonXMZjhadXyazpKscvRBiP" , "image/jpg" , "255x255" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "imaginebeingdruckmann" )
. setMetadata ( "Imagine Being Druckmann" , "Chris Voiceman" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/wRsCVvtUiLzFnDjwwgkCnXzN" )
. addPreview ( "mxc://glowers.club/ipWDVreHeWKOqefUBuvyFxjj" , "image/jpg" , "255x255" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "copeacabana" )
. setMetadata ( "Cope-a-Cabana" , "Chris Voiceman" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/zEmMFUyaIBmuqAeogVZAMrmO" )
. addPreview ( "mxc://glowers.club/WBhXYzFgTyMVTTEWKwzDfsgF" , "image/jpg" , "512x512" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "jihad" )
. setMetadata ( "Heyaw Rijal Al Qassam" , "Inshad Ensemble" )
2022-12-09 13:41:14 -05:00
. addStyleTags ( [ "artwork-box-no-shadow" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://gnujihad.mp3" )
. addPreview ( "x-gwm://chromiumjihad.gif" , "image/gif" , "420x236" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "thisistheinfowar" )
. setMetadata ( "In the House, In a Heartbeat" , "John Murphy" )
2022-12-09 18:05:42 -05:00
. addTags ( [ "metadata-prefer-id" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64001E" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/HVZUugkUhbJEPDncuTpAnOfh" )
. addPreview ( "mxc://glowers.club/klXuXEwYNmYvsZhNOaXsDGJq" , "image/jpg" , "640x360" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "video/webm" , [ "vp8" , "vorbis" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/znoCPlczXEXaEAVaiKHopnAV" )
. addPreview ( "mxc://glowers.club/klXuXEwYNmYvsZhNOaXsDGJq" , "image/jpg" , "640x360" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "floyd" )
. setMetadata ( "Paralyzer" , "Finger Seven" )
2022-12-08 09:29:33 -05:00
. addTags ( [ "misc" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.640020" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/qtBuqQBqBrpyusCsWYXlgmtE" )
. addPreview ( "mxc://glowers.club/JjsGuJkEGAbudLaYvbAcxryQ" , "image/jpg" , "600x600" ) )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/quicktime" , [ "avc1.640020" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/IusHmBCOyJZFGHxsGjRkYqXf" )
. addPreview ( "mxc://glowers.club/JjsGuJkEGAbudLaYvbAcxryQ" , "image/jpg" , "600x600" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "amd" )
. setMetadata ( "Svetovid" , "Jan Janko Močnik" )
2022-12-08 09:29:33 -05:00
. addTags ( [ "misc" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64001F" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/wgQPrdTCUUTnKgpnwDVlEakc" )
. addPreview ( "mxc://glowers.club/GccquMupQGvDXYNeifUbxfuy" , "image/jpg" , "800x450" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "video/webm" , [ "vp8" , "vorbis" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/RBvSWrEWiFtIuDUCoxZbCDTW" )
. addPreview ( "mxc://glowers.club/GccquMupQGvDXYNeifUbxfuy" , "image/jpg" , "800x450" ) ) ,
2022-11-12 23:08:28 -05:00
// TODO: Add thumbnail
RadioItem . new ( "israel" )
. setMetadata ( "Shake Israel's Security" , "National Radio" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/cJMVPnPpkSZFHIRHtzXRrvna" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "honorary" )
. setMetadata ( "Erika" , "Major Han Friess" )
2022-12-09 18:05:42 -05:00
. addTags ( [ "metadata-prefer-id" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64001E" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/cQgzwWXtxDSqqOlwGZYShVXS" )
. addPreview ( "mxc://glowers.club/aENkwWEKXIztqyBTJrBHCmRQ" , "image/jpg" , "800x450" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "video/webm" , [ "vp8" , "vorbis" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/qMkbHHunSgPzkFpcoOuYeIuE" )
. addPreview ( "mxc://glowers.club/aENkwWEKXIztqyBTJrBHCmRQ" , "image/jpg" , "800x450" ) ) ,
2022-11-12 23:08:28 -05:00
RadioItem . new ( "bashar" )
2022-11-14 03:17:47 -05:00
. setMetadata ( "God, Syria, and Bashar" , "Rami Kazour" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/egmaXMIHsNmblfDjyTGHdyas" )
. addPreview ( "mxc://glowers.club/wpwHKoSFsxkNttaNyaNFzhMk" , "image/jpg" , "794x582" ) ) ,
2022-11-12 23:08:28 -05:00
2022-11-13 23:55:58 -05:00
RadioItem . new ( "hatethem" )
. setMetadata ( "Niggerz Bop" , "Mike David" , "https://youtu.be/VkcAXS9IKdc" )
. setNiggadata ( "hatethem" , "585a286c042231244a73b19e" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/kYKpgAelvgRjDOVHJYKIYwdS" )
. addPreview ( "mxc://glowers.club/IbShqtSWZksFbnOdFiVDFwqD" , "image/jpg" , "609x600" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/ogg" , [ "opus" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/wdflEjUfqAkoyOyCDBXebDkw" )
. addPreview ( "mxc://glowers.club/IbShqtSWZksFbnOdFiVDFwqD" , "image/jpg" , "609x600" ) ) ,
2022-11-13 23:55:58 -05:00
RadioItem . new ( "wishmaster" )
. setMetadata ( "Wishmaster" , "Van Canto" , "https://youtu.be/XCGQiGEYl4Y" )
. setNiggadata ( "wishmaster" , "570550d318f3c6dc5677b9f6" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/TWmjcXRxqaVOfYnWPItiPAcd" )
2022-12-08 09:39:35 -05:00
. addPreview ( "mxc://glowers.club/OKTbfAlagYXulaeBmgwkNwii" , "image/jpg" , "352x288" , EDisplayType . STRETCH ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/ogg" , [ "vorbis" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/uaxDKxCUtRVXMWAJgoKeiNcJ" )
2022-12-08 09:39:35 -05:00
. addPreview ( "mxc://glowers.club/OKTbfAlagYXulaeBmgwkNwii" , "image/jpg" , "352x288" , EDisplayType . STRETCH ) ) ,
2022-11-13 23:55:58 -05:00
RadioItem . new ( "negromancy" )
. setMetadata ( undefined , undefined , "https://youtu.be/PxjA-jq1e7E" )
2022-12-08 09:29:33 -05:00
. addTags ( [ "misc" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64001E" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/kYDmqwhymAidlTbdFHHliXrk" )
. addPreview ( "mxc://glowers.club/qAtvGoVERlYfFnNWeizoYiGP" , "image/jpg" , "640x360" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "video/webm" , [ "vp9" , "opus" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/hRDjowdyaPRkdrRkHtCeqGug" )
. addPreview ( "mxc://glowers.club/qAtvGoVERlYfFnNWeizoYiGP" , "image/jpg" , "640x360" ) ) ,
2022-11-13 23:55:58 -05:00
2022-11-14 03:17:47 -05:00
RadioItem . new ( "crocodilechop" )
. setMetadata ( "Crocodile Chop" , "Neil Cicierega" , "https://soundcloud.com/neilcic/crocodile-chop" )
. setNiggadata ( "crocodilechop" , "570550d318f3c6dc5677b9d1" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/CIwbaGcPmsbqvZtdILxJxdHN" )
. addPreview ( "mxc://glowers.club/ITHVCToEENFZhXGKaYuHplFV" , "image/jpg" , "500x500" ) ) ,
2022-11-14 03:43:51 -05:00
RadioItem . new ( "tapeworms" )
2022-11-19 06:49:47 -05:00
. setMetadata ( "I Staple Tapeworms on my Penis" , "SillyJenny9000" , "https://youtu.be/v21iDJeWfVE" )
2022-11-14 03:43:51 -05:00
. setNiggadata ( "tapeworms" , "570550d318f3c6dc5677b9b0" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/NnrVJeWXXzqEUDhDQazMDYrr" )
. addPreview ( "mxc://glowers.club/jKmUwOLJMGPAhdJGusuWCJgQ" , "image/jpg" , "652x619" ) ) ,
2022-11-14 03:43:51 -05:00
RadioItem . new ( "withoutcosby" )
. setMetadata ( "without cosby" , "bong iguana" , "https://soundcloud.com/bong-iguana/without-cosby" )
. setNiggadata ( "withoutcosby" , "570550d318f3c6dc5677b9e9" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/ERjkVBvKLvTIBEhOsEkWHENM" )
. addPreview ( "mxc://glowers.club/xgoxdfvMRtmobnPMTrdqsQic" , "image/jpg" , "500x500" ) ) ,
2022-11-14 03:43:51 -05:00
RadioItem . new ( "niggatorial" )
. setMetadata ( "I'm The 2007 YouTube Tutorial" , "▲A▲" , "https://soundcloud.com/kraiqyttyj/im-the-2007-youtube-tutorial" )
. setNiggadata ( "tutorial" , "570550d318f3c6dc5677b9d7" )
2022-12-09 18:05:42 -05:00
. addTags ( [ "metadata-prefer-id" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/XZGliHHOkhcxCSUxKoIkgUlI" )
. addPreview ( "mxc://glowers.club/nAaKRXuNBjltAYJbsLnjGusH" , "image/jpg" , "899x715" ) ) ,
2022-11-14 05:08:50 -05:00
RadioItem . new ( "imposterd" )
. setMetadata ( "Among Us Eurobeat Remix" , "maki ligon" , "https://soundcloud.com/maki-ligon-deez-nutz/among-us-drip-eurobeat-remix" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" , "sus" ] )
2022-12-09 13:41:14 -05:00
. addStyleTags ( [ "background-noblur-nobgsize" , "artwork-nobox" , "artwork-box-no-shadow" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "x-gwm://include/imposterd.mp3" )
. addPreview ( "x-gwm://include/crewmate.gif" , "image/gif" , "128x108" ) ) ,
2022-11-14 05:08:50 -05:00
RadioItem . new ( "dripmachine" )
. setMetadata ( "Amogus Drip Machine" , "maki ligon" , "https://soundcloud.com/maki-ligon-deez-nutz/amogus-drip-machine" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" , "sus" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/DyboACFryZTCDeIgHtcRaBpL" )
. addPreview ( "mxc://glowers.club/VFehbVZaCVcNhQTYWuWRYTiM" , "image/jpg" , "500x500" ) ) ,
2022-11-14 05:08:50 -05:00
RadioItem . new ( "loneimposter" )
2022-11-19 06:49:47 -05:00
. setMetadata ( "Lone Impostor" , "maki ligon" , "https://youtu.be/QbIckU4sXBM" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" , "sus" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/oswdiINtTUUbQYEMEKpVmsHN" )
. addPreview ( "mxc://glowers.club/jYlptPwURJXVMBNivxlBFPuP" , "image/jpg" , "1440x1440" ) ) ,
2022-11-14 05:08:50 -05:00
RadioItem . new ( "amogusdrip" )
. setMetadata ( "Among Us Drip Theme Song" , "Leonz" , "https://youtu.be/grd-K33tOSM" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" , "sus" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/xQHxUgpRUMtIkiBaszXiGAvh" )
. addPreview ( "mxc://glowers.club/erMHzidVOoqoWFXIxXAcozqW" , "image/jpg" , "512x512" ) ) ,
2022-11-14 05:08:50 -05:00
RadioItem . new ( "crewmate" )
. setMetadata ( "Among Us (Lofi Hip Hop Remix)" , "Leonz" , "https://youtu.be/gU39w8s54_Q" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" , "sus" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/txMHzslGxRyDmNVsUCObJRzc" )
. addPreview ( "mxc://glowers.club/PfEBpatFHatQubohkgQThOor" , "image/jpg" , "632x632" ) ) ,
2022-11-14 05:08:50 -05:00
RadioItem . new ( "GETOUTOFMYHEAD" )
. setMetadata ( "GETOUTOFMYHEAD" , "placeboing" , "https://youtu.be/Xnv38FnLkbM" )
2022-12-09 14:20:21 -05:00
. addTags ( [ "splash-song" , "sus" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D401F" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/sEtheeOyZlztUtQuHOzOJpOk" )
. addPreview ( "mxc://glowers.club/bJveZSEIXFsnEKdjDvwmmENo" , "image/jpg" , "800x450" ) ) ,
2022-11-16 04:56:20 -05:00
RadioItem . new ( "gay" )
. setMetadata ( "I Am Gay" , "Holland Boys" , "https://youtu.be/cZs_nP1WufE" )
2022-12-08 09:29:33 -05:00
. addTags ( [ "gay" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/FAaatrvlEjJFljvNHhDhcNGl" )
. addPreview ( "mxc://glowers.club/KrefLQCybeCNwLIFZwzWVolF" , "image/png" , "489x512" ) ) ,
2022-11-16 04:56:20 -05:00
RadioItem . new ( "floydtrix" )
. setMetadata ( "Clubbed to Death" , "Rob Dougan" , "https://youtu.be/pFS4zYWxzNA" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/YUqRzRddNWuXQaAlPPMpwvse" )
. addPreview ( "mxc://glowers.club/mFyOeCDaBRhxZCXeeMxDmZhD" , "image/jpg" , "588x634" ) ) ,
2022-11-16 04:56:20 -05:00
RadioItem . new ( "hotline" )
. setMetadata ( "Gangster Party Line" , "Brent Weinbach" , "https://youtu.be/Cx1J2CzNnS8" )
. setNiggadata ( "hotline" , undefined )
2022-11-16 07:40:29 -05:00
. addTags ( [ "misc" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D401F" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/gnZElBwskTnBXkeZPiINVtSB" )
. addPreview ( "mxc://glowers.club/iPoGcvVbhmElZgaZuEdNQDBJ" , "image/jpg" , "480x356" ) ) ,
2022-11-16 04:56:20 -05:00
RadioItem . new ( "bldm" )
2022-11-16 04:56:38 -05:00
. setMetadata ( "Black Lives (Don't) Matter" , "Moonman" )
2022-12-08 09:29:33 -05:00
. addTags ( [ "moonman" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/OXoYKzSBuKWHXcHDzZIaMfja" )
. addPreview ( "mxc://glowers.club/SYLXjGHjuXzBnReqrfoRnuhg" , "image/jpg" , "1024x966" ) ) ,
2022-11-16 04:56:20 -05:00
RadioItem . new ( "amogusfloyd" )
. setMetadata ( undefined , undefined , "https://www.bitchute.com/video/PJXAu4xA4SUt/" )
2022-12-08 09:29:33 -05:00
. addTags ( [ "misc" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/SzqNmhQOxaReaTmOegUItcHY" )
2022-12-08 09:39:35 -05:00
. addPreview ( "mxc://glowers.club/aHWNIqMTUjXZRGZUqZCuOgbi" , "image/jpg" , "898x480" , EDisplayType . LANDSCAPE ) ) ,
2022-11-14 03:17:47 -05:00
2022-11-16 07:40:29 -05:00
RadioItem . new ( "whenblackissus" )
. setMetadata ( "Among Us theme song but it's in the style of Metallica's Black Album" , "rex" , "https://youtu.be/tA2Sr6GgbWo" )
2022-12-09 18:05:42 -05:00
. addTags ( [ "sus" , "metadata-prefer-id" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/VDXDeYltzQOhTChQtmsZaybu" )
. addPreview ( "mxc://glowers.club/JAWtHKTIefGJzYadLOUofaWl" , "image/jpg" , "1080x1080" ) ) ,
2022-11-17 13:06:32 -05:00
RadioItem . new ( "doot" )
. setMetadata ( "Knee Deep in the Doot" , "Nick Ino" , "https://youtu.be/hzPpWInAiOg" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/HvYByMgvFKONqIPmujCGaIIp" )
. addPreview ( "mxc://glowers.club/dXELpQnsrrcwHuElSQHEPaRn" , "image/jpg" , "512x512" ) ) ,
2022-11-17 13:06:32 -05:00
RadioItem . new ( "ywnbaw" )
. setMetadata ( "Professor proves SICKS are the best weapons" , "Shadiversity" , "https://youtu.be/mPnscZFUuog" )
2022-12-09 18:05:42 -05:00
. addTags ( [ "misc" , "metadata-prefer-id" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D401F" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/qYCbeFblMeBUMDZEiuBWuFnX" )
. addPreview ( "mxc://glowers.club/dDbuzhpAoewNQoKHCejeQqdk" , "image/jpg" , "800x450" ) ) ,
2022-11-16 07:40:29 -05:00
2022-11-17 13:23:34 -05:00
RadioItem . new ( "feedandseed" )
. addTags ( [ "misc" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64001E" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/vsMepElCpNKFgLltczQRjxfJ" )
. addPreview ( "mxc://glowers.club/zUXbbLOCCxZoZDRIwVCzHFYC" , "image/jpg" , "654x480" ) ) ,
2022-11-17 13:23:34 -05:00
2022-11-19 06:49:47 -05:00
RadioItem . new ( "yatta" )
. setMetadata ( "YATTA!" , "HAPPATAI!" , "https://youtu.be/rW6M8D41ZWU" )
. setNiggadata ( "yatta" , "570550d318f3c6dc5677b9bc" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/oKXrDvGUNQJWzBsmwYwjsCZs" )
. addPreview ( "mxc://glowers.club/dBJtIlaEcsZoflXYqPnihooO" , "image/jpg" , "374x374" ) ) ,
RadioItem . new ( "alexjones" )
. setMetadata ( "Alex Jones Remix: Renai Circulation" , "Triple-Q" , "https://youtu.be/ODZE5peUfWQ" )
. setNiggadata ( "alexjones" , "5796ca3646f17bf005a01be3" )
2022-12-09 18:05:42 -05:00
. addTags ( [ "metadata-prefer-id" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D401F" , "mp4a.40.2" ] )
2022-12-07 19:29:36 -05:00
. setURI ( "mxc://glowers.club/vADMHcSVAzikHdjSRXKsmllx" )
. addPreview ( "mxc://glowers.club/igLcLQjIYWSzTCRAPDMxSAmh" , "image/jpg" , "853x480" )
2022-12-07 23:54:19 -05:00
. addPreview ( "mxc://glowers.club/dcqgSxtEyYBQNpYLfpXkxADL" , "image/jpg" , "500x500" , EDisplayType . SQUARE ) ) ,
RadioItem . new ( "avemaria" )
. setMetadata ( "Ave Maria" , "Daniel Perret" , "https://youtu.be/4swAeQGBvAs" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-07 23:54:19 -05:00
. setURI ( "x-gwm://wiki/avemaria.mp3" )
2022-12-08 09:29:33 -05:00
. addPreview ( "mxc://glowers.club/UvQPlQTYoDjufDtdjZnPShmm" , "image/png" , "546x546" ) ) ,
RadioItem . new ( "thelinuxexperience" )
. addTags ( [ "misc" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.64001F" , "mp4a.40.2" ] )
2022-12-08 09:29:33 -05:00
. setURI ( "mxc://glowers.club/kzIdHQbGtQIdEitOruQHrXnM" )
2022-12-11 02:46:14 -05:00
. addPreview ( "mxc://glowers.club/wKPEYlKdaZiSdCDbImBInvxm" , "image/jpg" , "936x558" ) ) ,
RadioItem . new ( "mywifesblackson" )
. setMetadata ( "My Wife's Black Son" , "Morrakiu" , "https://youtu.be/7NpfbX5coqA" )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D401F" , "mp4a.40.2" ] )
2022-12-11 02:46:14 -05:00
. setURI ( "mxc://glowers.club/aJsmUUQuUDQMVbtKfagCjFQi" )
. addPreview ( "mxc://glowers.club/JbyoUSTYQcQaLbEspdRcDhpM" , "image/jpg" , "936x558" ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-11 02:46:14 -05:00
. setURI ( "mxc://glowers.club/aQgNmIbxNluQUxtMXBHMScQK" )
. addPreview ( "mxc://glowers.club/yTuLtqURfBNcQdUOzDYrndAa" , "image/jpg" , "720x720" , EDisplayType . SQUARE ) ) ,
RadioItem . new ( "papermoms" )
. setMetadata ( "paper moms" , "DOGGIFY" , "https://youtu.be/J1rREd1Mx30" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-11 02:46:14 -05:00
. setURI ( "mxc://glowers.club/roFLNfJtjRcySTTKorwTnUXE" )
. addPreview ( "mxc://glowers.club/YOWZcLaAVpfhvbJWkPIviEJG" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "dngyamom" )
. setMetadata ( "Dynamite by BTS but it's Doin' Your Mom" , "DOGGIFY" , "https://youtu.be/P5UHstVXfTo" )
. addTags ( [ "metadata-prefer-id" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-11 02:46:14 -05:00
. setURI ( "mxc://glowers.club/hYvOhMKYzPMDsFuxLAmRzgyt" )
. addPreview ( "mxc://glowers.club/jJdYBFoiPzJIApBvxsPtgkiy" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "doinurmom" )
. setMetadata ( "around your mom" , "DOGGIFY" , "https://youtu.be/HOZaPGzUVfE" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-11 02:46:14 -05:00
. setURI ( "mxc://glowers.club/IDOxAAnfqKDqaPwRRHTOCfiG" )
. addPreview ( "mxc://glowers.club/TrqWMwgxFtAZYkwmwzzAQzwa" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "morshufugue" )
. setMetadata ( "Morshu Fugue" , "DOGGIFY" , "https://youtu.be/jxEA1rdQacQ" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-11 02:46:14 -05:00
. setURI ( "mxc://glowers.club/zPHRyVPopUarJWZrZVdKRZfu" )
. addPreview ( "mxc://glowers.club/aaRfbfVYHCmYGzGIGMpGOFvJ" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "letsgetittoya" )
. setMetadata ( "Let's Get It To Ya" , "DOGGIFY" , "https://youtu.be/04f5Kb2iznA" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-11 02:46:14 -05:00
. setURI ( "mxc://glowers.club/rWlzEKkPIxxpkRPDnouLijPm" )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. addPreview ( "mxc://glowers.club/WFtHpbtgVSNjqnfwZpvwaPgo" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "indialexjones" )
. setMetadata ( "INDIALEX JONES" , "LENNOZ" , "https://youtu.be/Vhzzt4SK7zw" )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D401F" , "mp4a.40.2" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/abqGBuacMfwsfTBBONIyPpGt" )
. addPreview ( "mxc://glowers.club/ScZuHjnVjYmIWYTuoTMsYnPh" , "image/jpg" , "853x480" )
. addPreview ( "mxc://glowers.club/GiGkhVoVXtPHWYXrTICNDOho" , "image/jpg" , "500x500" , EDisplayType . SQUARE ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/xYyAOUmNYGLmLQGtLalyaawr" )
. addPreview ( "mxc://glowers.club/GiGkhVoVXtPHWYXrTICNDOho" , "image/jpg" , "500x500" , EDisplayType . SQUARE ) ) ,
RadioItem . new ( "nothinwrongwithme" )
. setMetadata ( "nothin wrong with me" , "LENNOZ" , "https://soundcloud.com/mistalenoz/nothin-wrong-with-me" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/wCaKTMGjInkxJZlDHOvmVvQj" )
. addPreview ( "mxc://glowers.club/LyHkbBYYHEfWZaDqDSLcJhFG" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "cutecute" )
. setMetadata ( "cutecute" , "LENNOZ" , "https://soundcloud.com/mistalenoz/cutecute" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/yBTztNIxTznUNQiXyNlVEOwW" )
. addPreview ( "mxc://glowers.club/QtptSXlBkUgsKYIhcksFFZwn" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "humbletower" )
. setMetadata ( "Humble Tower" , "LENNOZ" , "https://soundcloud.com/mistalenoz/humble-tower" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/hovFlQXesRfzhwuvXauxuvYj" )
. addPreview ( "mxc://glowers.club/hRwuxtUsNhXPuQLITioKvbTt" , "image/jpg" , "500x500" ) ) ,
// FIXME: Dead source, highest quality was nigge.rs
RadioItem . new ( "lowbrawl" )
. setMetadata ( "How Low Can You Brawl" , "DatNiggaOvaDer" , "https://soundcloud.com/datniggaovader/how-low-can-you-brawl" )
. setNiggadata ( "lowbrawl" , "570550d318f3c6dc5677b9c7" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/JInznJPrTfiXUvQflZYAjsEt" )
. addPreview ( "mxc://glowers.club/mieZMZQsCToujzcFnnsRMnfP" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "smokeonme" )
. setMetadata ( "Smoke On Me" , "RedScreen" , "https://soundcloud.com/alexmashup/smoke-on-me" )
. setNiggadata ( "smokeonme" , "570550d318f3c6dc5677b9c1" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/YknxSPlNxSIoyAdRPhtxoJpM" )
. addPreview ( "mxc://glowers.club/yjsnEeACeyLtDPiGNgVYEoKS" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "slamtris" )
. setMetadata ( "Slamtris - Quad City DJs vs Hirokazu Tanaka" , "comeonandslam" , "https://youtu.be/TZv71qYVoJM" )
. setNiggadata ( "slamtris" , "570550d318f3c6dc5677b9a6" )
. addTags ( [ "metadata-prefer-id" ] )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/bFBMRKTVpzrscifHWtiEIEQO" )
. addPreview ( "mxc://glowers.club/SNTFtMEjYkqarTVlZYRxvFUn" , "image/jpg" , "500x500" ) ) ,
// TODO: Better artwork
RadioItem . new ( "selonlud" )
. setMetadata ( "It's My Life" , "Село і Люди" , "https://youtu.be/d-VVnhwB4Gw" )
. setNiggadata ( "selonlud" , "570550d318f3c6dc5677b9a2" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/QbPYwLTBToYdNySFTWqlPcYA" )
. addPreview ( "mxc://glowers.club/leiVVHimwUdzqExdgGAenVjH" , "image/jpg" , "480x480" ) ) ,
RadioItem . new ( "hymn" )
. setMetadata ( "TempleOS Hymn Risen (Remix)" , "Dave Eddy" , "https://youtu.be/IdYMA6hY_74" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/xEceAHSVDIhMgZMEIOhJZlmS" )
. addPreview ( "mxc://glowers.club/IQiMcCemNZIvtlbXIkxPyXty" , "image/jpg" , "720x720" ) ) ,
RadioItem . new ( "smokezelda" )
. setMetadata ( "Play Zelda Everyday" , "MC Fresh Dawg 3000" , "https://soundcloud.com/mcfreshdawg3000/play-zelda-everyday" )
. setNiggadata ( "smokezelda" , "570550d318f3c6dc5677b9c2" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/nGtHiLaIQgTLsmSGFqsuqkST" )
. addPreview ( "mxc://glowers.club/BmEUsNOXaNKSrXdLRcVaLqoa" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "katyusha" )
. setMetadata ( "カチューシャ" , "浜口史郎" , "https://youtu.be/NGkXEGH0V1Y" )
. setNiggadata ( "panzer" , "570550d318f3c6dc5677b99a" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
generate.js: add indialexjones, nothinwrongwithme, cutecute, humbletower, lowbrawl, smokeonme, slamtris, selonlud, hymn, smokezelda, katyusha
2022-12-11 08:04:59 -05:00
. setURI ( "mxc://glowers.club/aJJKZCrBvRDcbrUQXoWiSLfL" )
2022-12-11 08:27:04 -05:00
. addPreview ( "mxc://glowers.club/KGlWUXAnjOQOfnaGGaGMbdnz" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "ohshitimfeelingit" )
. setMetadata ( "OH SHIT I'M FEELING IT" , "yung wenli" , "https://soundcloud.com/yung_wenli/oh-shit-im-feeling-it" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-11 08:27:04 -05:00
. setURI ( "mxc://glowers.club/OoDDxMutNpVzlTMbPiBfIvSp" )
2022-12-12 16:14:49 -05:00
. addPreview ( "mxc://glowers.club/VrEtpPvDRBhlrxevPuIMAQLp" , "image/jpg" , "500x500" ) ) ,
2022-12-12 16:42:31 -05:00
RadioItem . new ( "killallthe" )
2022-12-12 16:14:49 -05:00
. setMetadata ( "KILL ALL THE GAYS AND THE FAGGOTS" , "Mike David" , "https://archive.org/details/killallthegaysandthefaggots451904565" )
2022-12-12 16:42:31 -05:00
. setNiggadata ( "killallthe" , "570550d318f3c6dc5677ba01" )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-12 16:14:49 -05:00
. setURI ( "mxc://glowers.club/CbLUdYNkCDzYrgwzszgfQBsk" )
2022-12-13 00:17:27 -05:00
. addPreview ( "mxc://glowers.club/qnAjqhGYzBLrEmlhzbxreoUC" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "piebotnik" )
. setMetadata ( "dr robotnik bakes a pie" , "KnightOfGames" , "https://youtu.be/jqKVLZ9wA24" )
2022-12-22 19:47:23 -05:00
. addTags ( [ "ylyl" ] )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D4028" , "mp4a.40.2" ] )
2022-12-13 00:17:27 -05:00
. setURI ( "mxc://glowers.club/YUjleEpsnUnjnQPscgAzVPzX" )
. addPreview ( "mxc://glowers.club/jJqCgRDjBVfCHfWzkNnFXuyF" , "image/jpg" , "800x450" )
. addPreview ( "mxc://glowers.club/ZGGXHgsznHoqVrHotiPzpoGq" , "image/jpg" , "500x500" , EDisplayType . SQUARE ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-13 00:17:27 -05:00
. setURI ( "mxc://glowers.club/JzNiDnSObgTxugOfEJOpHVHH" )
. addPreview ( "mxc://glowers.club/ZGGXHgsznHoqVrHotiPzpoGq" , "image/jpg" , "500x500" , EDisplayType . SQUARE ) ) ,
RadioItem . new ( "donarudo" )
. setMetadata ( "【ドナルド】もうランランルーしか聞こえない【東方】※立体視可能" , "Hoshi-Kun" , "https://www.nicovideo.jp/watch/sm3179171" )
2022-12-15 02:49:47 -05:00
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D4029" , "mp4a.40.2" ] )
2022-12-14 04:55:17 -05:00
. setURI ( "mxc://glowers.club/XNhgwibiPmHJARjWafsNhSlq" , "v" )
2022-12-13 00:17:27 -05:00
. addPreview ( "mxc://glowers.club/XwEnNcCEcufMhpmDzxJARYgY" , "image/jpg" , "853x480" )
2022-12-15 02:49:47 -05:00
. addPreview ( "mxc://glowers.club/NBCRNrPnlJmUwiyCTAvKKkzd" , "video/mp4" , [ "avc1.4D4029" ] , "384x384" , EDisplayType . SQUARE )
2022-12-13 00:17:27 -05:00
. addPreview ( "mxc://glowers.club/WBuCuaxhOHahCzgSHrDBnyrV" , "image/gif" , "384x384" , EDisplayType . SQUARE ) )
2022-12-14 04:55:17 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
2022-12-13 00:17:27 -05:00
. setURI ( "mxc://glowers.club/CIfeVQBVYpBqZRxdVVJWfNJf" )
2022-12-15 02:49:47 -05:00
. addPreview ( "mxc://glowers.club/NBCRNrPnlJmUwiyCTAvKKkzd" , "video/mp4" , [ "avc1.4D4029" ] , "384x384" , EDisplayType . SQUARE )
2022-12-15 08:10:53 -05:00
. addPreview ( "mxc://glowers.club/WBuCuaxhOHahCzgSHrDBnyrV" , "image/gif" , "384x384" , EDisplayType . SQUARE ) ) ,
RadioItem . new ( "elonmusk" )
. setMetadata ( "Elon Musk" , "Kirino Kōsaka" , "https://soundcloud.com/kirinokosaka/elon-musk" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/UeZJLHulmquZpzVMDLZJVEHu" )
. addPreview ( "mxc://glowers.club/BCMoaoUANfsbKttHbjbKxHyS" , "image/jpg" , "500x500" ) ) ,
// TODO: Artwork could be better
RadioItem . new ( "greenday" )
. setMetadata ( "That Hip New Meme Those Boys Are Talking About Today" , "Dabunky" , "https://soundcloud.com/dabunky/that-hip-new-meme-those-boys-are-talking-about-today" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/ADNlzFLkpvlfUmGULvOfwVLH" )
. addPreview ( "mxc://glowers.club/RhnfTvhvuQNqbqQSZDCYDhOf" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "heavengrips" )
. setMetadata ( "Rhythm Heaven Grips" , "Kirino Kōsaka" , "https://soundcloud.com/kirinokosaka/rhythm-heaven-grips" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/fDmHjgmrYQcYjIiMIwAjUelF" )
. addPreview ( "mxc://glowers.club/KIqvgGfUnrjGhhapMEWahlHM" , "image/jpg" , "500x500" ) ) ,
// TODO: Artwork could be better. White bordering
RadioItem . new ( "gangnam" )
. setMetadata ( "now thats what i call murder" , "Kirino Kōsaka" , "https://soundcloud.com/kirinokosaka/ok-pls-stop" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/qfHznoOiNjEfBjwWzgZJarGL" )
. addPreview ( "mxc://glowers.club/msHrqYpLIReBYqWtcGrizMZy" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "wearheadphones" )
. setMetadata ( "I made this 2 months too late" , "~Equalizee" , "https://soundcloud.com/djequalizee/i-made-this-2-months-too-late" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/WAPutdfyEeQWvgumweMUMkmx" )
. addPreview ( "mxc://glowers.club/BqLFkwPPXOmpuGapmwBKQYWx" , "image/jpg" , "500x500" ) ) ,
// FIXME: Source is reupload, not original
RadioItem . new ( "gnuquest" )
. setMetadata ( "GNU/STALLMAN QUEST" , undefined , "https://youtu.be/Dn8gealMDsg" )
. addSource ( RadioSource . new ( "video/webm" , [ "vp9" , "vorbis" ] )
. setURI ( "mxc://glowers.club/PDbLjvNYeRTEpHMnYiGNFNBu" )
. addPreview ( "mxc://glowers.club/BTiOylzdZcWrrxLGuCpQYcMK" , "image/jpg" , "562x312" ) )
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D4029" , "mp4a.40.2" ] )
. setURI ( "mxc://glowers.club/yVvqUBGrZPxzIylwGXBsZtlw" )
. addPreview ( "mxc://glowers.club/BTiOylzdZcWrrxLGuCpQYcMK" , "image/jpg" , "562x312" ) )
. addSource ( RadioSource . new ( "audio/ogg" , [ "vorbis" ] )
. setURI ( "mxc://glowers.club/hsjIhOxVpcHwlaHbmfSKmmrI" )
. addPreview ( "mxc://glowers.club/gGvSqctfUJWHEYxYfbZEwQpn" , "image/jpg" , "416x416" ) )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/fJQxNXitNpwnFpnLRWoVBoFN" )
. addPreview ( "mxc://glowers.club/gGvSqctfUJWHEYxYfbZEwQpn" , "image/jpg" , "416x416" ) ) ,
2022-11-19 06:49:47 -05:00
2022-12-15 21:09:36 -05:00
RadioItem . new ( "wiphop" )
. setMetadata ( "[SP] WIP HOP" , "CodeZombie" , "https://soundcloud.com/codezombie/wip-hop" )
. addTags ( [ "splash-song" ] )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/CCsidQsdYksctdyCnlvfTDxx" )
. addPreview ( "mxc://glowers.club/jJkVfsELEmptqtsJipFpmwxO" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "lofibeatstorelaxandoppto" )
. setMetadata ( "Gangnam Lofi" , "Jayden Greig" , "https://triple-q.bandcamp.com/track/gangnam-lofi" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/tYDWGHZGOPOFvKWBRNwCtPpJ" )
. addPreview ( "mxc://glowers.club/JQaLfBTNmuiHfszGxsvgqSHI" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "hansolo" )
. setMetadata ( "I'm Han Solo" , "Ben Afflack" , "https://soundcloud.com/kevinafflack/im-han-solo" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/BEZIgyGkIhVFiWzgCQADPDIT" )
. addPreview ( "mxc://glowers.club/PiuHxoREZUkjstGdOPcbLwpr" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "therhythmrises" )
. setMetadata ( "Rhythm Heaven - Bane Interview" , "Brocartoon" , "https://youtu.be/9S3YXXp6bOM" )
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D4029" , "mp4a.40.2" ] )
. setURI ( "mxc://glowers.club/PNHAYakhyOXJTztenoQsALeN" )
. addPreview ( "mxc://glowers.club/YVGalEuZMXeqBfxnBjVAqHHF" , "image/jpg" , "800x450" ) )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/rBFanZsHSDRBfnsAACphydqD" )
. addPreview ( "mxc://glowers.club/mBDjCbTFATCwsHKuPpGHFuiL" , "image/jpg" , "500x500" ) ) ,
// FIXME: No source
RadioItem . new ( "penis" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/oWQQYoSSPiRwHMVPXsMDcCOb" )
. addPreview ( "mxc://glowers.club/obrTGFVOQBuRhaZZNsmAvDuI" , "image/jpg" , "750x750" ) ) ,
// TODO: album art edit sucks lol
RadioItem . new ( "partyrockapple" )
. setMetadata ( "Party Rock Apple!!" , "Triple-Q" , "https://triple-q.bandcamp.com/track/party-rock-apple" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/ngNYSFAkLNDIMwlGsnVmwDpS" )
. addPreview ( "mxc://glowers.club/QemTpdTrUYfKEoaWgrkUChIz" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "fnaf" )
. setMetadata ( "gangnam style joke" , "Kirino Kōsaka" , "https://soundcloud.com/kirinokosaka/gangnam-style-joke-1" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/bmzxkzwFHChruYIjszvDrdRj" )
2022-12-16 17:24:36 -05:00
. addPreview ( "mxc://glowers.club/TkvoCbwQQQAwOzKwaFARDmRH" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "mail" )
. setMetadata ( "AOLNATION - Mail" , "Personal Pong" , "https://soundcloud.com/personalpong/aolnation-mail" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/HEDaNdMsVFzIgYDkymkxnhob" )
2022-12-17 16:07:24 -05:00
. setPlaybackInfo ( RadioPlaybackInfo . new ( ) . setPlaybackVolume ( . 4 ) )
2022-12-22 13:06:17 -05:00
. addPreview ( "mxc://glowers.club/vBvnVioYcHeIGtvHRAaWWCab" , "image/jpg" , "500x500" ) ) ,
2022-12-15 21:09:36 -05:00
2022-12-17 20:05:37 -05:00
RadioItem . new ( "thisislazytown" )
2022-12-17 20:15:08 -05:00
. setMetadata ( "This Is Lazy Town" , "Soundclown Crimes Against Humanity" , "https://soundcloud.com/thesoundclowncriminal/this-is-lazy-town" )
2022-12-17 20:05:37 -05:00
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/XKaBjJLglqeAgkkPgEclMBIS" )
2022-12-22 13:11:58 -05:00
. addPreview ( "mxc://glowers.club/KcFqpISqthZSOFhntXAhkWIr" , "image/jpg" , "500x500" ) ) ,
2022-12-15 21:09:36 -05:00
2022-12-22 13:06:17 -05:00
RadioItem . new ( "isisman" )
. setMetadata ( "ISISman" , "Triple-Q" , "https://triple-q.bandcamp.com/track/isisman" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/pvVRMPsnBzCadKCSaZdMmluy" )
. addPreview ( "mxc://glowers.club/zYqsUaZgAmqNDWymTPhdGJRi" , "image/jpg" , "500x500" ) ) ,
2022-12-15 21:09:36 -05:00
2022-12-22 19:47:23 -05:00
RadioItem . new ( "takyonmachine" )
. setMetadata ( "Wintergrips - Takyon Machine (music instrument using a very angry man)" , "Uncle Ned" , "https://youtu.be/gSQyPdYz4f4" )
. addTags ( [ "metadata-prefer-id" ] )
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D4029" , "mp4a.40.2" ] )
. setURI ( "mxc://glowers.club/khtMKBJAxrJgOQclpdzHDTzp" )
. addPreview ( "mxc://glowers.club/RqnJOOLKBNBlXnHOWziASTkN" , "image/jpg" , "800x450" ) )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/zUxmXPHvOAXxMwxUsRpVBucq" )
. addPreview ( "mxc://glowers.club/VcwimKRasxlYLJMqYtJpOJGi" , "image/jpg" , "500x500" ) ) ,
RadioItem . new ( "ghostpieght" )
. setMetadata ( "Ghost Pieght" , "uncrumpled" , "https://youtu.be/SDQ-Vvdqa3s" )
. addTags ( [ "ylyl" ] )
. addSource ( RadioSource . new ( "video/mp4" , [ "avc1.4D4029" , "mp4a.40.2" ] )
. setURI ( "mxc://glowers.club/bVJrnYxFEUzZnebnClncWYxK" )
. addPreview ( "mxc://glowers.club/jJFRlPmcGmjDhnYDziBAmytm" , "image/jpg" , "800x450" ) )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/PQENpluityBQawDQxZlJidYD" )
. addPreview ( "mxc://glowers.club/OcyarqkcuWucgkXOGtcgpJAa" , "image/jpg" , "250x250" ) ) ,
RadioItem . new ( "moonbase" )
. setMetadata ( "MOONBASE BABY (ft. Hatsune Miku)" , "KnightOfGames" , "https://youtu.be/MIxowl5YuaQ" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/AybVVfwhrAOCWTkGtMeIxkdB" )
. addPreview ( "mxc://glowers.club/NuOKRVCYsxywWAsmRdoSVJfX" , "image/jpg" , "500x500" ) ) ,
2022-12-24 11:52:11 -05:00
RadioItem . new ( "blsdm" )
. setMetadata ( "Black Lives (Still Don't) Matter" , "Moonman" )
. addSource ( RadioSource . new ( "audio/mp3" , [ "mp3" ] )
. setURI ( "mxc://glowers.club/GfcCntGLSZsYkkzzkaoJrUWx" )
2022-12-24 12:00:18 -05:00
. addPreview ( "mxc://glowers.club/yyWJVkClXhWIFqgayFFtZZDJ" , "image/jpg" , "500x500" ) ) ,
2022-12-24 11:52:11 -05:00
2022-11-12 23:08:28 -05:00
] . filter ( Boolean ) . map ( a => a . serialize ( ) ) . sort ( ( a , b ) => a . id . localeCompare ( b . id ) )
2022-12-14 04:55:17 -05:00
const lintCodecWarnings = {
"video/mp4" : [
2022-12-15 02:49:47 -05:00
[ "warn" , "avc1" , "vague, however browsers will accept it. See MDN for format details" ] ,
2022-12-14 04:55:17 -05:00
[ "error" , "mp4a" , "too vague; Browsers will not accept it! See MDN for format details" ] ,
[ "error" , "aac" , "invalid! The correct codec is mp4a. See MDN for format details" ]
]
}
const lintLikelyCodecs = {
"video/mp4" : 'codecs may be "avc1" with "mp4a.40.2" (AAC-LC)' ,
"audio/mp3" : 'codec is probably "mp3"'
}
2022-11-17 13:06:32 -05:00
for ( const item of mediaItems ) {
2022-12-15 08:10:53 -05:00
const hasAudioSource = item . sources . some ( a => a . type . startsWith ( "audio/" ) )
2022-11-17 13:06:32 -05:00
for ( const index in item . sources ) {
2022-12-07 19:29:36 -05:00
const source = item . sources [ index ]
2022-12-15 08:10:53 -05:00
if ( ! hasAudioSource && source . type . startsWith ( "video/" ) && ! source . previews . some ( item => item . display _type != EDisplayType . NATIVE ) ) {
2022-12-14 04:55:17 -05:00
const logType = item . tags ? . includes ( "misc" ) ? "warn" : "error"
2022-12-15 08:10:53 -05:00
console . warn ( ` ${ logType [ 0 ] . toUpperCase ( ) } : [previews] [ ${ item . id } : ${ index } ] No audio fallback preview set! ` )
2022-12-14 04:55:17 -05:00
}
if ( source . codecs ? . length )
for ( const [ logType , codec , reason ] of ( Object . hasOwn ( lintCodecWarnings , source . type ) ? lintCodecWarnings [ source . type ] : [ ] ) ) {
if ( ! source . codecs . includes ( codec ) )
continue
const msg = ` ${ logType [ 0 ] . toUpperCase ( ) } : [codecs] [ ${ item . id } : ${ index } ] The declaration " ${ codec } " is ${ reason } `
console [ logType ] ( msg )
}
else
console . warn ( ` W: [codecs] [ ${ item . id } : ${ index } ] No codec declarations are set! ${ Object . hasOwn ( lintLikelyCodecs , source . type ) ? ` The ${ lintLikelyCodecs [ source . type ] } , check with ffprobe. ` : '' } ` )
2022-12-07 19:29:36 -05:00
for ( const p _index in source . previews ) {
const preview = item . sources [ index ] . previews [ p _index ]
if ( ! preview . type )
2022-12-14 04:55:17 -05:00
console . warn ( ` W: [previews] [ ${ item . id } : ${ index } ] No type set for preview ${ p _index } source ${ index } of ${ item . id } ` )
2022-12-07 19:29:36 -05:00
if ( ! preview . size )
2022-12-14 04:55:17 -05:00
console . warn ( ` W: [previews] [ ${ item . id } : ${ index } ] No size set for preview ${ p _index } source ${ index } of ${ item . id } ` )
2022-12-07 19:29:36 -05:00
}
2022-11-17 13:06:32 -05:00
}
}
2022-11-13 23:55:58 -05:00
const radioObj = {
2022-12-07 19:29:36 -05:00
"version" : 5 ,
2022-11-17 13:06:32 -05:00
"songs" : mediaItems
2022-11-13 23:55:58 -05:00
}
2022-12-15 08:10:53 -05:00
console . info ( ` I: Version ${ radioObj . version } with ${ radioObj . songs . length } entries ` )
2022-12-07 19:29:36 -05:00
//console.info(require("util").inspect(mediaItems[0], { colors: true, depth: Infinity }))
2022-11-13 23:55:58 -05:00
fs . writeFileSync ( "./data/songs.json" , JSON . stringify ( radioObj ) )
//fs.writeFileSync("./data/songs.js", `glowersRadioSongsCallback(${JSON.stringify(radioObj)})`)
//fs.writeFileSync("./data/songs.html", `<html><script>glowersRadioSongsCallback(${JSON.stringify(radioObj)})</script></html>`)