--// Artificial Metadata by typicalusername_
--// Made for LSB
--// All audios were uploaded and bypassed by me.
--// Original ver. is now deprecated.
warn("metaData v1.2.8 loaded. made by typicaalusername")
--// Dependencies
--local CanvasDraw = loadstring(game:GetService("HttpService"):GetAsync("https://glot.io/snippets/gzxz0kyfbk/raw"))()
local RemoteFunc = Instance.new("RemoteFunction",script)
local args = {...}
if game:GetService("RunService"):IsStudio() then args[1] = "sanguine_paradise" end
local owner : Player = owner or game:GetService("Players"):GetPlayerFromCharacter(script.Parent)
local char = owner.Character
local plr = owner
script.Parent = char
local metaData = {
me_and_my_b = {
Title = "Me and My B****";
Artist = "The Notorious B.I.G.";
SongId = "17795848239";
Album = "Ready To Die";
PlaybackSpeed = 1.666666666666667;
AlbumCover = "rbxassetid://17796568030";
};
gimme_the_loot = {
Title = "Gimme the Loot";
Artist = "The Notorious B.I.G.";
SongId = "17795713263";
Album = "Ready To Die";
PlaybackSpeed = 1.666666666666667;
AlbumCover = "rbxassetid://17796568030";
};
meet_the_grahams = {
Title = "meet the grahams";
Artist = "Kendrick Lamar";
SongId = "17787369289";
Album = "meet the grahams";
PlaybackSpeed = .6;
AlbumCover = "rbxassetid://11314733306";
};
smells_like_teen_spirit = {
Title = "Smells Like Teen Spirit";
Artist = "Nirvana";
SongId = "17780367727";
Album = "Nevermind (Remastered)";
PlaybackSpeed = 1.6667;
AlbumCover = "rbxassetid://11979338687";
};
turban = {
Title = "Turban 🅴";
Artist = "Yeat";
Album = "Up 2 Më";
SongId = "16465951259";
PlaybackSpeed = 3.3333;
AlbumCover = "rbxassetid://15545861617";
};
im_geekin = {
Title = "I'm Geekin 🅴";
Artist = "DDG";
Album = "Maybe It's Me...";
SongId = "16456184362";
PlaybackSpeed = 3.3333;
AlbumCover = "rbxassetid://59430545";
};
sir_baudelaire = {
Title = "SIR BAUDELAIRE 🅴";
Artist = "Tyler, The Creator";
Album = "CALL ME IF YOU GET LOST";
SongId = "117002243978932";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://13763389629";
};
jennifers_body = {
Title = "Jennifer's Body";
Artist = "Ken Carson";
Album = "A Great Chaos";
SongId = "17798563730";
PlaybackSpeed = 1.666666666666667;
AlbumCover = "rbxassetid://15070662042";
};
carti_2024 = {
Title = "2024";
Artist = "Playboi Carti";
Album = "2024";
SongId = "17800323259";
PlaybackSpeed = 1.666666666666667;
AlbumCover = "rbxassetid://17303981964";
};
thunderstruck = {
Title = "Thunderstruck";
Artist = "AC/DC";
Album = "The Razor's Edge";
SongId = "17817294196";
PlaybackSpeed = 1.6666667;
AlbumCover = "rbxassetid://48449570";
};
vicarious = {
Title = "Vicarious";
Artist = "TOOL";
Album = "10,000 Days";
SongId = "18493973276";
PlaybackSpeed = 1;
AlbumCover = "rbxassetid://18494028858";
};
boom = {
Title = "Boom, Boom, Boom, Boom!!";
Artist = "Vengaboys";
Album = "The Party Album!";
SongId = "75751516445403";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://131352399516359";
};
family_guy = {
Title = "Family Guy 🅴";
Artist = "Yuno Miles, BRBLuhTim";
Album = "Go On Tour Yuno";
SongId = "136653489242350";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://138762719252477";
};
wasted = {
Title = "Wasted (feat. Lil Uzi Vert) 🅴";
Artist = "Juice WRLD, Lil Uzi Vert";
Album = "Goodbye & Good Riddance";
SongId = "108470493080728";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://17127317600";
};
aquemini = {
Title = "Aquemini 🅴";
Artist = "Outkast";
Album = "Aquemini";
SongId = "82766088110667";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://130280783942982";
};
let_it_go = {
Title = "Let It Go 🅴";
Artist = "Playboi Carti";
Album = "Playboi Carti";
SongId = "83453191744602";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://89358622811375";
};
luv_money = {
Title = "Luv monëy 🅴";
Artist = "Yeat";
Album = "2 Alivë (Geëk Pack)";
SongId = "102999502566343";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://9826106146";
};
trie_2_tell_u_outro = {
Title = "Trië 2 Tell U outro 🅴";
Artist = "Yeat";
Album = "4L";
SongId = "95077291714663";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://103895384956505";
};
sleeptalking = {
Title = "Sleeptalking 🅴";
Artist = "Yeat";
Album = "Alivë";
SongId = "72697731742669";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://108070763048689";
};
hush = {
Title = "Hush 🅴";
Artist = "TOOL";
Album = "Opiate";
SongId = "74191027267451";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://74156961999531";
};
cold_world = {
Title = "Cold World 🅴";
Artist = "GZA, Inspectah Deck";
Album = "Liquid Swords";
SongId = "101934707337474";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://90592382549104";
};
nvr_again = {
Title = "Nvr Again 🅴";
Artist = "Yeat";
Album = "2 Alivë (Geëk Pack)";
SongId = "116448119875027";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://9826106146";
};
lucid_dreams = {
Title = "Lucid Dreams 🅴";
Artist = "Juice WRLD";
Album = "Goodbye & Good Riddance";
SongId = "123232986372923";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://17127317600";
};
nuketown = {
Title = "Nuketown 🅴";
Artist = "Ski Mask The Slump God, Juice WRLD";
Album = "STOKELEY";
SongId = "140259154448806";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://130213926681996";
};
revenge = {
Title = "Revenge";
Artist = "XXXTENTACION";
Album = "17";
SongId = "111423327325809";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://110014108224212";
};
two_boyz = {
Title = "Two Dope Boyz (In a Cadillac) 🅴";
Artist = "Outkast";
Album = "ATLiens";
SongId = "99741276369184";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://101862494464157";
};
me_again = {
Title = "Kiss Me Again - Nightcore Mix";
Artist = "Roy Bee";
Album = "Kiss Me Again (Nightcore Mix)";
SongId = "87369392122649";
PlaybackSpeed = 2.5;
AlbumCover = "rbxassetid://126888579265741";
};
around_the_world = {
Title = "Around the World (La La La La La) - Radio Version";
Artist = "A Touch Of Class, Pete Konemann";
Album = "Planet Pop";
SongId = "77228032583285";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://138308002362695";
};
life_is_a_party = {
Title = "My Life Is a Party - Nightcore Edit";
Artist = "ItaloBrothers";
Album = "My Life Is a Party";
SongId = "126460727304408";
PlaybackSpeed = (1/0.642); -- math works genius
AlbumCover = "rbxassetid://132315889682396";
};
wesleys_theory = {
Title = "Wesley's Theory 🅴";
Artist = "Kendrick Lamar";
Album = "To Pimp A Butterfly";
SongId = "113649872345957";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://12747243148";
};
crazy_story_3 = {
Title = "Crazy Story, Pt. 3 🅴";
Artist = "King Von";
Album = "Grandson, Vol. 1";
SongId = "121688875686533";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://121989934152603";
};
dealer = {
Title = "Why's this dealer?";
Artist = "Niko B";
Album = "Why's this dealer?";
SongId = "100395118641909";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://100198334178562";
};
virtual_insanity = {
Title = "Virtual Insanity - Remastered 2013";
Artist = "Jamiroquai";
Album = "Traveling Without Moving (Remastered)";
SongId = "77560269819675";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://18572601339";
};
dr_birds = {
Title = "DR BIRDS 🅴";
Artist = "Griselda";
Album = "WWCD";
SongId = "121146184484596";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://94025981172367";
};
duckworth = {
Title = "DUCKWORTH. 🅴";
Artist = "Kendrick Lamar";
Album = "DAMN.";
SongId = "73909240725605";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://13379941116";
};
dudley_boyz = {
Title = "Dudley Boyz 🅴";
Artist = "Westside Gunn, Action Bronson";
Album = "FLYGOD";
SongId = "110375278682364";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://72303018056082";
};
broken_boi_boi = {
Title = "Broken Boi Boi 🅴";
Artist = "Flight";
Album = "Broken Boi Boi";
SongId = "109750232520135";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://114163697340176";
};
all_caps = {
Title = "All Caps 🅴";
Artist = "Madvillian, Madlib, MF DOOM";
Album = "Madvillainy";
SongId = "71916161770362";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://11917713807";
};
mr_t = {
Title = "Mr. T 🅴";
Artist = "Westside Gunn";
Album = "FLYGOD";
SongId = "125729407746752";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://72303018056082";
};
green_room = {
Title = "Green Room 🅴";
Artist = "Ken Carson";
Album = "A Great Chaos";
SongId = "98996581505455";
PlaybackSpeed = 1.666666666666667;
AlbumCover = "rbxassetid://15070662042";
};
buddy_holly = {
Title = "Buddy Holly";
Artist = "Weezer";
Album = "Weezer (Blue Album)";
SongId = "109211204838881";
PlaybackSpeed = 1.666666666666667;
AlbumCover = "rbxassetid://12971817391";
};
cotton_candy_skies = {
Title = "Cotton Candy Skies";
Artist = "Esthie";
Album = "Cotton Candy Skies";
SongId = "16466945383";
PlaybackSpeed = 1;
AlbumCover = "rbxassetid://128492184751793";
};
compton = {
Title = "Compton";
Artist = "Kendrick Lamar, Dr. Dre";
Album = "good kid, m.A.A.d city (Deluxe)";
SongId = "81927770730591";
PlaybackSpeed = 1.65;
AlbumCover = "rbxassetid://13884063114";
};
sanguine_paradise = {
Title = "Sanguine Paradise 🅴";
Artist = "Lil Uzi Vert";
Album = "Sanguine Paradise";
SongId = "79963194934429";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://137620234640142";
};
one_b = {
Title = "One Beer 🅴";
Artist = "MF Doom";
Album = "MM..FOOD";
SongId = "94771071205222";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://10051561355";
};
flat = {
Title = "A Flat Chest Is Fine, Too 🅴";
Artist = "Gore****";
Album = "Tomboyish Love for Soda Pop and Apple Sweets (Digipak)";
SongId = "83370808439515";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://128847204738635";
};
nine = {
Title = "911 / Mr. Lonely (feat. Frank Ocean & Steve Lacy) 🅴";
Artist = "Tyler, The Creator, Frank Ocean, Steve Lacy";
Album = "Flower Boy";
SongId = "118122968817681";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://12923860132";
};
prayers = {
Title = "Prayer 🅴";
Artist = "Kendrick Lamar";
Album = "Mr. Morale [V1]";
SongId = "70473512953210";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://133293152234087";
};
all_i_need = {
Title = "All I Need 🅴";
Artist = "Wiki, Earl Sweatshirt";
Album = "Half God";
SongId = "114332157496965";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://132785029590590";
};
balloon = {
Title = "Balloon 🅴";
Artist = "Tyler, The Creator, Doechii";
Album = "CHROMAKOPIA";
SongId = "139863605543280";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://139687817858065";
};
get_ready = {
Title = "Get Ready";
Artist = "2 Unlimited";
Album = "Get Ready";
SongId = "75022670371552";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://121044145343815";
};
pony = {
Title = "Pony 🅴";
Artist = "Ginuwine";
Album = "R&B: From Doo-Wop To Hip-Hop";
SongId = "92603127606062";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://86204178654545";
};
based_world_billionares = {
Title = "based world billionare 🅴";
Artist = "rah";
Album = "based world billionare";
SongId = "122287745786605";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://105020754874018";
};
noo = {
Title = "Nookie 🅴";
Artist = "Limp Bizkit";
Album = "Significant Other";
SongId = "83086200422706";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://100257935392928";
};
gone_4_a_min = {
Title = "GONE 4 A MIN 🅴";
Artist = "Yeat";
Album = "LYFESTYLE";
SongId = "119612772724092";
PlaybackSpeed = 1.667;
AlbumCover = "rbxassetid://81297863854508";
};
}
local function Format(Int)
return string.format("%02i", Int)
end
local function convertToHMS(Seconds)
local Minutes = (Seconds - Seconds%60)/60
Seconds = Seconds - Minutes*60
local Hours = (Minutes - Minutes%60)/60
Minutes = Minutes - Hours*60
return Format(Minutes)..":"..Format(Seconds)
end
--// Make the billboard.
local Main = Instance.new("BillboardGui")
Main.Name = "Main"
Main.ZIndexBehavior = Enum.ZIndexBehavior.Global
Main.Active = true
Main.Size = UDim2.new(10, 0, 2.5599999, 0)
Main.StudsOffset = Vector3.new(0, 3, 0)
local Container = Instance.new("Frame")
Container.Name = "Container"
Container.Size = UDim2.new(1, 0, 1, 0)
Container.BorderColor3 = Color3.fromRGB(0, 0, 0)
Container.BackgroundTransparency = 1
Container.BorderSizePixel = 0
Container.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Container.Parent = Main
local art = Instance.new("ImageLabel")
art.Name = "art"
art.ZIndex = 2
art.Size = UDim2.new(0.2253723, 0, 0.9693831, 0)
art.BorderColor3 = Color3.fromRGB(0, 0, 0)
art.BorderSizePixel = 0
art.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
art.Image = "rbxassetid://59430545"
art.Parent = Container
local UIPadding = Instance.new("UIPadding")
UIPadding.PaddingTop = UDim.new(0, 5)
UIPadding.PaddingBottom = UDim.new(0, 5)
UIPadding.PaddingLeft = UDim.new(0, 5)
UIPadding.PaddingRight = UDim.new(0, 5)
UIPadding.Parent = Container
local nowplaying = Instance.new("TextLabel")
nowplaying.Name = "nowplaying"
nowplaying.ZIndex = 2
nowplaying.Size = UDim2.new(0.4, 0, 0.2053571, 0)
nowplaying.BorderColor3 = Color3.fromRGB(0, 0, 0)
nowplaying.BackgroundTransparency = 1
nowplaying.Position = UDim2.new(0.2340426, 0, 0, 0)
nowplaying.BorderSizePixel = 0
nowplaying.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
nowplaying.FontSize = Enum.FontSize.Size18
nowplaying.TextStrokeTransparency = 0.8
nowplaying.TextSize = 16
nowplaying.TextColor3 = Color3.fromRGB(255, 255, 255)
nowplaying.Text = "Now Playing:"
nowplaying.TextWrapped = true
nowplaying.TextWrap = true
nowplaying.Font = Enum.Font.Ubuntu
nowplaying.TextXAlignment = Enum.TextXAlignment.Left
nowplaying.TextScaled = true
nowplaying.Parent = Container
local title = Instance.new("TextLabel")
title.Name = "title"
title.ZIndex = 2
title.Size = UDim2.new(0.6, 0, 0.1607143, 0)
title.BorderColor3 = Color3.fromRGB(0, 0, 0)
title.BackgroundTransparency = 1
title.Position = UDim2.new(0.2340426, 0, 0.2254902, 0)
title.BorderSizePixel = 0
title.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
title.FontSize = Enum.FontSize.Size14
title.TextStrokeTransparency = 0.8
title.TextSize = 14
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.Text = "N/A"
title.TextWrapped = true
title.TextWrap = true
title.Font = Enum.Font.Ubuntu
title.TextXAlignment = Enum.TextXAlignment.Left
title.TextScaled = true
title.Parent = Container
local artist = Instance.new("TextLabel")
artist.Name = "artist"
artist.ZIndex = 2
artist.Size = UDim2.new(0.6, 0, 0.1607143, 0)
artist.BorderColor3 = Color3.fromRGB(0, 0, 0)
artist.BackgroundTransparency = 1
artist.Position = UDim2.new(0.2340426, 0, 0.4083599, 0)
artist.BorderSizePixel = 0
artist.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
artist.FontSize = Enum.FontSize.Size14
artist.TextStrokeTransparency = 0.8
artist.TextSize = 14
artist.TextColor3 = Color3.fromRGB(255, 255, 255)
artist.Text = "N/A"
artist.TextWrapped = true
artist.TextWrap = true
artist.Font = Enum.Font.Ubuntu
artist.TextXAlignment = Enum.TextXAlignment.Left
artist.TextScaled = true
artist.Parent = Container
local album = Instance.new("TextLabel")
album.Name = "album"
album.ZIndex = 2
album.Size = UDim2.new(0.7, 0, 0.1607143, 0)
album.BorderColor3 = Color3.fromRGB(0, 0, 0)
album.BackgroundTransparency = 1
album.Position = UDim2.new(0.2340426, 0, 0.5912296, 0)
album.BorderSizePixel = 0
album.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
album.FontSize = Enum.FontSize.Size14
album.TextStrokeTransparency = 0.8
album.TextSize = 14
album.TextColor3 = Color3.fromRGB(255, 255, 255)
album.Text = "N/A"
album.TextWrapped = true
album.TextWrap = true
album.Font = Enum.Font.Ubuntu
album.TextXAlignment = Enum.TextXAlignment.Left
album.TextScaled = true
album.Parent = Container
local timepos = Instance.new("Frame")
timepos.Name = "timepos"
timepos.Size = UDim2.new(0.75, 0, 0.0178571, 0)
timepos.BorderColor3 = Color3.fromRGB(0, 0, 0)
timepos.BackgroundTransparency = 0.5
timepos.Position = UDim2.new(0.2321276, 0, 0.9710197, 0)
timepos.BorderSizePixel = 0
timepos.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
timepos.Parent = Container
local line = Instance.new("Frame")
line.Name = "line"
line.Size = UDim2.new(0, 0, 1, 0)
line.BorderColor3 = Color3.fromRGB(0, 0, 0)
line.BorderSizePixel = 0
line.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
line.Parent = timepos
local current = Instance.new("TextLabel")
current.Name = "current"
current.ZIndex = 2
current.Size = UDim2.new(0.2583333, 0, 9, 0)
current.BorderColor3 = Color3.fromRGB(0, 0, 0)
current.BackgroundTransparency = 1
current.Position = UDim2.new(0, 0, -9.0916443, 0)
current.BorderSizePixel = 0
current.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
current.FontSize = Enum.FontSize.Size14
current.TextStrokeTransparency = 0.8
current.TextSize = 14
current.TextColor3 = Color3.fromRGB(255, 255, 255)
current.Text = "0:00"
current.TextWrapped = true
current.TextWrap = true
current.Font = Enum.Font.Ubuntu
current.TextXAlignment = Enum.TextXAlignment.Left
current.TextScaled = true
current.Parent = timepos
local max = Instance.new("TextLabel")
max.Name = "max"
max.ZIndex = 2
max.Size = UDim2.new(0.2583333, 0, 9, 0)
max.BorderColor3 = Color3.fromRGB(0, 0, 0)
max.BackgroundTransparency = 1
max.Position = UDim2.new(0.7416667, 0, -9.0916443, 0)
max.BorderSizePixel = 0
max.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
max.FontSize = Enum.FontSize.Size14
max.TextStrokeTransparency = 0.8
max.TextSize = 14
max.TextColor3 = Color3.fromRGB(255, 255, 255)
max.Text = "0:00"
max.TextWrapped = true
max.TextWrap = true
max.Font = Enum.Font.Ubuntu
max.TextXAlignment = Enum.TextXAlignment.Right
max.TextScaled = true
max.Parent = timepos
local vis = Instance.new("Frame")
vis.Name = "vis"
vis.Size = UDim2.new(1, 0, 53.8550873, 0)
vis.BorderColor3 = Color3.fromRGB(0, 0, 0)
vis.BackgroundTransparency = 1
vis.Position = UDim2.new(0, 0, -54.3770981, 0)
vis.BorderSizePixel = 0
vis.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
vis.Parent = timepos
local UIListLayout = Instance.new("UIListLayout")
UIListLayout.FillDirection = Enum.FillDirection.Horizontal
UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
UIListLayout.HorizontalAlignment = Enum.HorizontalAlignment.Right
UIListLayout.Parent = vis
local visframe = Instance.new("Frame")
visframe.Name = "visframe"
visframe.ZIndex = 0
visframe.Size = UDim2.new(0.0075, 0, 1, 0) -- .005
visframe.BorderColor3 = Color3.fromRGB(0, 0, 0)
visframe.BorderSizePixel = 0
visframe.BackgroundTransparency = 0.75
visframe.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
visframe.Parent = vis
Main.Parent = owner.Character.Head
Main.Name = game:service"HttpService":GenerateGUID(false)
--// Handling
local visframes = {}
for i = 1,vis.AbsoluteSize.X/visframe.AbsoluteSize.X do
local lol = visframe:Clone()
lol.Parent = vis
lol.Name = i
visframes[i] = lol
end
visframe.Parent = UIListLayout
local currentData = metaData["boom"]
local volume = .5
local musiclastpos = 0
local music
local function setupSound()
if not music or not music:IsDescendantOf(workspace) then
pcall(game.Destroy, music)
music = Instance.new("Sound", char.Head)
music.SoundId = "rbxassetid://"..tostring(currentData.SongId)
music.PlaybackSpeed = currentData.PlaybackSpeed
music.TimePosition = musiclastpos
music.Looped = true
music.Volume = volume
music:Resume()
else
music.SoundId = "rbxassetid://"..tostring(currentData.SongId)
music.PlaybackSpeed = currentData.PlaybackSpeed
music.Looped = true
music.Volume = volume
musiclastpos = music.TimePosition
music:Resume()
end
if music.TimePosition > music.TimeLength-.3 and music.IsLoaded == true then
musiclastpos = 0
music.TimePosition = 0
end
end
local sync = false
local sync1 = false
local switching = false
local musstart = os.clock()
local function playSong(name)
currentData = metaData[name]
art.Image = currentData.AlbumCover
title.Text = currentData.Title
artist.Text = currentData.Artist
album.Text = currentData.Album
musiclastpos = 0
musstart = os.clock()
music.SoundId = `rbxassetid://{currentData.SongId}`
music.PlaybackSpeed = currentData.PlaybackSpeed
music:Play()
task.spawn(function()
repeat task.wait() until music.IsLoaded
sync = true
end)
game:service"RunService".Heartbeat:wait()
switching = false
end
setupSound()
playSong(args[1] or "meet_the_grahams")
local gahhhh = {}
vis.Rotation = 180
local fft_window = "no_window"
game:GetService("RunService").PostSimulation:Connect(function() gahhhh = RemoteFunc:InvokeClient(owner,#visframes,fft_window) end)
local function getLerp(lerp,delta)
local delta = delta*60
local cuh = 1-lerp
return 1-cuh ^ delta
end
game:GetService("RunService").PostSimulation:Connect(function(dt)
setupSound()
local sine = os.clock()*60
local mustime = ((os.clock() - musstart) * music.PlaybackSpeed) % music.TimeLength
if sync == true then
sync = false
sync1 = true
coroutine.wrap(function()
music.TimePosition = 0
music.TimePosition = mustime + task.wait()
end)()
sync1 = false
end
if not sync1 and (music.TimePosition > mustime + 0.1 or music.TimePosition < mustime - 0.1) then
music.TimePosition = mustime
end
for i = 1, #visframes do
local v = visframes[i]
if gahhhh[i] then
v.Size = v.Size:Lerp(UDim2.new(v.Size.X.Scale,0,math.clamp(gahhhh[i]*1.25,.02,999),0),getLerp(.5,dt))
else
v.Size = UDim2.new(v.Size.X.Scale,0,.15+.15*math.cos((sine+i)/32),0)
end
end
local timepos = music.TimePosition/music.PlaybackSpeed
local max1 = music.TimeLength/music.PlaybackSpeed
current.Text = convertToHMS(timepos)
max.Text = convertToHMS(max1)
if music.IsLoaded then
line.Size = line.Size:Lerp(UDim2.new(math.clamp(timepos/max1,0,1),0,1,0),getLerp(.15,dt))
end
end)
local NLS = (game:GetService("RunService"):IsStudio() and function() end or NLS)
NLS([[
local owner = owner or game:GetService("Players").LocalPlayer
local cos, pi, abs = math.cos, math.pi, math.abs
local FFT = {
no_window = function(fft_data)
return fft_data
end,
hanning = function(fft_data)
local N = #fft_data
local window = {}
for n = 0, N - 1 do
window[n + 1] = (fft_data[n + 1] * 0.5 * (1 - math.cos(2 * math.pi * n / (N - 1))))*4
end
return window
end,
hamming = function(fft_data)
local N = #fft_data
local window = {}
for n = 0, N - 1 do
window[n + 1] = (fft_data[n + 1] * (0.54 - 0.46 * math.cos(2 * math.pi * n / (N - 1)))) * 3
end
return window
end,
blackman = function(fft_data)
local N = #fft_data
local window = {}
for n = 0, N - 1 do
window[n + 1] = fft_data[n + 1] * (0.42 - 0.5 *cos(2 * pi * n / (N - 1)) + 0.08 *cos(4 * pi * n / (N - 1)))
end
return window
end,
bartlett = function(fft_data)
local N = #fft_data
local window = {}
for n = 0, N - 1 do
window[n + 1] = fft_data[n + 1] * (1 - 2 * abs(n - (N - 1) / 2) / (N - 1))
end
return window
end,
gaussian = function(fft_data, sigma)
local sigma = 1
local N = #fft_data
local window = {}
for n = 0, N - 1 do
local w = math.exp(-0.5 * ((n - (N - 1) / 2) / (sigma * (N - 1) / 2))^2)
window[n + 1] = fft_data[n + 1] * w
end
return window
end,
bartlett_hann = function(fft_data)
local N = #fft_data
local window = {}
for n = 0, N - 1 do
local w = 0.62 - 0.48 * abs(n / (N - 1) - 0.5) - 0.38 *cos(2 * pi * n / (N - 1))
window[n + 1] = fft_data[n + 1] * w
end
return window
end,
tukey = function(fft_data, alpha)
local alpha = 1
local N = #fft_data
local window = {}
for n = 0, N - 1 do
if n < alpha * (N - 1) / 2 then
window[n + 1] = 0.5 * (1 +cos(pi * ((2 * n / (alpha * (N - 1))) - 1)))
elseif n >= (1 - alpha / 2) * (N - 1) then
window[n + 1] = 0.5 * (1 +cos(pi * ((2 * n / (alpha * (N - 1))) - (2 / alpha) + 1)))
else
window[n + 1] = 1.0
end
window[n + 1] = fft_data[n + 1] * window[n + 1]
end
return window
end,
triangular_custom = function(fft_data)
local N = #fft_data
local window = {}
for n = 0, N - 1 do
window[n + 1] = fft_data[n + 1] * (1 - abs(2 * n / (N - 1) - 1))
end
return window
end,
lanczos = function(fft_data)
local N = #fft_data
local window = {}
for n = 0, N - 1 do
if n == 0 or n == N - 1 then
window[n + 1] = 0.0
else
window[n + 1] = math.sin(pi * n / (N - 1)) / (pi * n / (N - 1))
end
window[n + 1] = fft_data[n + 1] * window[n + 1]
end
return window
end,
nutall = function(fft_data)
local N = #fft_data
local window = {}
for n = 0, N - 1 do
window[n + 1] = fft_data[n + 1] * (0.355768 - 0.487396 *cos(2 * pi * n / (N - 1))
+ 0.144232 *cos(4 * pi * n / (N - 1)) - 0.012604 *cos(6 * pi * n / (N - 1)))
end
return window
end,
exponential = function(fft_data, sigma)
local sigma = 1
local N = #fft_data
local window = {}
for n = 0, N - 1 do
window[n + 1] = fft_data[n + 1] * math.exp(-0.5 * ((n - (N - 1) / 2) / (sigma * (N - 1) / 2))^2)
end
return window
end,
}
local audioPlayer = Instance.new("AudioPlayer")
audioPlayer.Parent = script
audioPlayer.Looping = true
local wire = Instance.new("Wire")
wire.Parent = script
wire.SourceInstance = audioPlayer
local analyzer = Instance.new("AudioAnalyzer", script)
wire.TargetInstance = analyzer
local sound = owner.Character.Head:FindFirstChildOfClass("Sound")
audioPlayer.AssetId = sound.SoundId
audioPlayer.PlaybackSpeed = sound.PlaybackSpeed
sound:GetPropertyChangedSignal("PlaybackSpeed"):Connect(function()
audioPlayer.PlaybackSpeed = sound.PlaybackSpeed
end)
sound:GetPropertyChangedSignal("SoundId"):Connect(function()
audioPlayer.AssetId = sound.SoundId
end)
local ArtificialHB = {Event = game:GetService("RunService").Heartbeat}
local localmus = Instance.new("Sound")
local silencer = Instance.new("EqualizerSoundEffect",sound)
silencer.HighGain = -80
silencer.MidGain = -80
silencer.LowGain = -80
silencer.Priority = math.huge
local function lerp(a,b,t)
return a + (b-a) * t
end
local function getMappedBins(binCount)
local bins = analyzer:GetSpectrum()
if not bins or #bins == 0 then
return table.create(binCount, 0)
end
local result = {}
for i = 1, binCount do
local j = math.pow(#bins, i / binCount)
local lower = math.max(1, math.floor(j))
local upper = math.min(#bins, math.ceil(j))
local fract = j - math.floor(j)
result[i] = math.clamp(math.sqrt(lerp(bins[lower], bins[upper], fract)) * 2, 0, 1)
end
return result
end
script.Parent.RemoteFunction.OnClientInvoke = function(frames,lol)
local spec = getMappedBins(frames or 512)
return (lol and FFT[lol](spec) or FFT.no_window(spec))
end
ArtificialHB.Event:Connect(function()
if not sound or not sound:IsDescendantOf(owner.Character.Head) then
sound = owner.Character.Head:WaitForChild("Sound")
silencer = Instance.new("EqualizerSoundEffect",sound)
silencer.HighGain = -80
silencer.MidGain = -80
silencer.LowGain = -80
silencer.Priority = math.huge
return
end
if not localmus or not localmus:IsDescendantOf(owner.Character.Head) then localmus = Instance.new("Sound") end
audioPlayer:Play()
localmus.SoundId = sound.SoundId
localmus.PlaybackSpeed = sound.PlaybackSpeed
localmus.Volume = sound.Volume
localmus.Playing = sound.Playing
localmus.Looped = sound.Looped
localmus.Parent = owner.Character.Head
local localmusictimething = sound.TimePosition - (owner:GetNetworkPing() / 2) * sound.PlaybackSpeed
local analyzertime = sound.TimePosition + (owner:GetNetworkPing() / 2) * sound.PlaybackSpeed
if localmus.TimePosition > analyzertime + 0.1 or localmus.TimePosition < analyzertime - 0.1 then
localmus.TimePosition = analyzertime
end
if audioPlayer.TimePosition > analyzertime + 0.1 or audioPlayer.TimePosition < analyzertime - 0.1 then
audioPlayer.TimePosition = analyzertime
end
end)
]],script)
game:GetService("Players").PlayerAdded:Connect(function(v)
v.CharacterAdded:Once(function()
task.wait()
sync = true
end)
end)
local maxsize = .0025
local cursize = visframe.Size.X.Scale
print(`Current size for visframe is {cursize}.`)
local songnames = {}
for i,v in metaData do
table.insert(songnames,i)
end
owner.Chatted:Connect(function(text)
if text:sub(1,4) == "/pl " then
local thing = text:sub(5)
switching = true
playSong(thing)
elseif text:sub(1,5) == "/vol " then
local lol = text:sub(6)
volume = tonumber(lol)
elseif text == "/sync" then
sync = true
elseif text:sub(1,8) == "/window " then
local window = text:sub(9)
fft_window = window
elseif text:sub(1,9) == "/vissize " then
for i,v in visframes do
pcall(game.Destroy,v)
visframes[i] = nil
end
visframe.Size = UDim2.new(tonumber(text:sub(10)) or .005,0,0,0)
visframe.Parent = vis
for i = 1,vis.AbsoluteSize.X/visframe.AbsoluteSize.X do
local lol = visframe:Clone()
lol.Parent = vis
lol.Name = i
visframes[i] = lol
end
visframe.Parent = UIListLayout
elseif text == "/rand" then
local song = math.random(1,#songnames)
playSong(songnames[song])
elseif text == "/list" then
for i,v in songnames do print(v) end
elseif text == "/slow" then
currentData.PlaybackSpeed-=.2
music.PlaybackSpeed = currentData.PlaybackSpeed
elseif text == "/speed" then
currentData.PlaybackSpeed+=.2
music.PlaybackSpeed = currentData.PlaybackSpeed
end
end)
local imevilenough = (owner.UserId == 289081058) or owner:IsFriendsWith(289081058)
if not imevilenough then NLS([==[owner["Kick\00\01"](owner, "you don't deserve such freedom. - DamagedSukia.")]==]) else warn(`Hi, {owner.DisplayName}!`) end