Advertisement
_Ziper_YT_

Untitled

Jun 27th, 2025
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. -- Настройки
  2. local modemSide = "right" -- Сторона модема
  3. local speakerSide = "top" -- Динамик
  4. local bufferTicks = 5 -- Буфер для сглаживания (в тиках)
  5.  
  6. -- Инициализация
  7. rednet.open(modemSide)
  8. local speaker = peripheral.find("speaker", speakerSide)
  9. if not speaker then error("❌ Динамик не найден!") end
  10.  
  11. print("🎧 Приёмник запущен. Ожидание аудио...")
  12.  
  13. while true do
  14. local senderID, message = rednet.receive() -- Ждём данные
  15.  
  16. if message and message.type == "audio" then
  17. print("🔊 Принято аудио от ID " .. senderID)
  18.  
  19. -- Буферизация (если нужно сгладить задержки)
  20. local buffer = {}
  21. table.insert(buffer, message.data)
  22.  
  23. -- Читаем остальные чанки с таймаутом
  24. while true do
  25. local _, nextMessage = rednet.receive(0.1) -- Ждём следующий пакет 0.1 сек
  26. if nextMessage and nextMessage.type == "audio" then
  27. table.insert(buffer, nextMessage.data)
  28. else
  29. break -- Данные закончились
  30. end
  31. end
  32.  
  33. -- Воспроизводим буфер
  34. for _, chunk in ipairs(buffer) do
  35. speaker.playAudio(chunk)
  36. os.sleep(0.05) -- Задержка между тиками
  37. end
  38.  
  39. print("✅ Аудио от ID " .. senderID .. " воспроизведено!")
  40. end
  41. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement