Advertisement
KedrikFeeD

player.lua

Feb 12th, 2025 (edited)
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 0.76 KB | None | 0 0
  1. local dfpwm = require("cc.audio.dfpwm")
  2. local speaker = peripheral.find("speaker")
  3. local player = {}
  4.  
  5. function player.playSoundByPath(path)
  6.     if not speaker then
  7.         return "speaker not found"
  8.     end
  9.  
  10.     local decoder = dfpwm.make_decoder()
  11.  
  12.     if not decoder then
  13.         return error("decoder not found")
  14.     end
  15.  
  16.     for chunk in io.lines(path, 16 * 1024) do
  17.         local buffer = decoder(chunk)
  18.  
  19.         while not speaker.playAudio(buffer) do
  20.             os.pullEvent("speaker_audio_empty")
  21.         end
  22.     end
  23.  
  24.     return "sound played"
  25. end
  26.  
  27. function player.playNotice()
  28.     player.playSoundByPath("sounds/icq_sms-1.dfpwm");
  29. end
  30.  
  31. function player.playStartup()
  32.     player.playSoundByPath("sounds/startup-sound.dfpwm");
  33. end
  34.  
  35. return player
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement