Skip to content

PyQt5 applet to launch audio effects without latency, can be used as a plugin for xcape.io Room.

License

Notifications You must be signed in to change notification settings

xcape-io/AudioBox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AudioBox

PyQt5 applet to launch audio effects without latency, can be used as a plugin for xcape.io Room.

In the area of Escape Room, we need to kick audio effects that play immediately to ensure the best user experience.

For example, the players complete an escape game challenge and the system must play a winning sound immediately.

To realize this, here's the magic:

  • preload the audio files
  • audio files must be uncompressed in WAV format
  • manage audio output devices (particularly on Windows Updates)

This standalone PyQt5 applet can be used as a plugin for xcape.io Room software.

While Audio Box has been developped for Windows 10, it can run on a Raspberry Pi.

Installation

  1. First install Python 3.8.x in C:\Python38 (Windows x86-64 executable installer from python.org)

  2. Download the code from this GitHub repository as a ZIP file

  3. Unflate it in your plugin folder

  4. Run install.bat with a double-click to create the Python virtual environment (venv).

  5. Set MQTT broker IP address in constants.py

    MQTT_DEFAULT_HOST = 'localhost'  # replace localhost with your broker IP address
  6. Run run.bat to launch AudioBox.

Configuration

Pycharm Community is the free python IDE recommended for hacking the vanilla AudioBox applet.

  1. Copy your audio files in ./audio folder (use aconv.bat to convert files to WAV audio)

  2. Edit definitions.ini to set mqtt-sub-effects MQTT topic (the applet inbox to receive effect launch commands)

  3. Edit constants.py to fill AUDIO_EFFECTS dictionnary

  • More constants:
    ALWAYS_ON_TOP =  True  # the audio box is always on top of other windows
    HIDE_APPLET = True     # the audio box is invisible (recommended when used as a plugin)
    UNSTOPPABLE =  True    # the user can't close the audio box window

Increase .WAV volume

Use ffmpeg to increase .WAV volume by 150%:

ffmpeg -i thunder3.wav -filter:a "volume=1.5" thunder4.wav

Author

Faure Systems (Jul 8th, 2020)

About

PyQt5 applet to launch audio effects without latency, can be used as a plugin for xcape.io Room.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published