Audio processor to map oracle notes in the VoG raid in Destiny 2 to call outs.

Related tags

Audiovog_oracles
Overview

vog_oracles

Audio processor to map oracle notes in the VoG raid in Destiny 2 to call outs.

Huge thanks to mzucker on GitHub for the note detection code. Also thanks to u/brainstormcsgo on reddit for mapping the notes to call outs.

Requirements

  1. Python 3.6, PyAudio, NumPy.
    • Has to be 3.6 as PyAudio hasn't been updated since.
    • Should work with any 3.6.x python version, but I have only tested on 3.6.0
    • If you are new to python PyAudio and NumPy are python packages. To install them try running "pip install NAME", replacing NAME with the package name. If that fails google how to install python packages for your environment, or message me.
  2. Game audio as PC input.
    • I have written instructions for this if you are on PC, please checkout the PC Instructions file.
    • On console I use my monitors output as an audio line in.
    • I haven't tested using speakers from console and a microphone as input, but it could work.
    • Try to avoid routing VC with game audio, as this will make it harder to detect notes.

To use

Set ATHEON constant to true if in Atheon room, false for oracles/templar. Run main.py. Your audio inputs will be listed numbered from 0 upwards, type the number for the audio input you want and press enter.

You will need to modify the constants for better results, use the debug modes to help with tweaking them. DECIBEL_CUTOFF helps to isolate background noise, but if too high it will prevent proper note detection. If you run in DEBUG mode 1 and see no output to the console its likely that DECIBEL_CUTOFF is too high. If it is at 0 and you still get no output to the console it means the audio input you selected has no audio output.

Variables might need to change between rooms, for example I found I had to drop my decibel cutoff from 20 to 15 for Atheon.

You can change the note_to_location function to modify the callouts you want to use. By default it uses 1-7 left to right for oracles, and far/close left/middle/right for Atheon.

I recommend running in a terminal that you can easily clear, to get rid of any incorrect results between cycles.

Usefulness

Script is not perfect, but should help with missed calls, ordering etc. Works a lot better if you are able to isolate the oracle sounds, for example not firing weapons/using abilities.

I have not tested it as much in Atheon room, as you can't easily test it solo and there are fewer videos with good audio for it. Atheon room also has the issue of more sounds / fewer places to avoid damage, making note detection harder. If you sit on the ledge at the back it should work pretty well (if you have tweaked the settings as needed).

Potential future improvements

  1. Improvement to B flat detection
  2. Better filtering out of non oracle sounds
  3. Using both rotations of the notes to figure out call, instead of printing all
  4. Pulling D2 game audio directly (when on PC) without requiring user to take additional steps

If anyone has any suggestions for improvements please let me know! I'm an average player and programmer, but have no music experience, so there are definitely improvements to be made!

Full LAKH MIDI dataset converted to MuseNet MIDI output format (9 instruments + drums)

LAKH MuseNet MIDI Dataset Full LAKH MIDI dataset converted to MuseNet MIDI output format (9 instruments + drums) Bonus: Choir on Channel 10 Please CC

Alex 6 Nov 20, 2022
Python game programming in Jupyter notebooks.

Jupylet Jupylet is a Python library for programming 2D and 3D games, graphics, music and sound synthesizers, interactively in a Jupyter notebook. It i

Nir Aides 178 Dec 09, 2022
cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding for Python

audioread Decode audio files using whichever backend is available. The library currently supports: Gstreamer via PyGObject. Core Audio on Mac OS X via

beetbox 419 Dec 26, 2022
Praat in Python, the Pythonic way

Parselmouth - Praat in Python, the Pythonic way Parselmouth is a Python library for the Praat software. Though other attempts have been made at portin

Yannick Jadoul 786 Jan 09, 2023
spafe: Simplified Python Audio-Features Extraction

spafe aims to simplify features extractions from mono audio files. The library can extract of the following features: BFCC, LFCC, LPC, LPCC, MFCC, IMFCC, MSRCC, NGCC, PNCC, PSRCC, PLP, RPLP, Frequenc

Ayoub Malek 310 Jan 01, 2023
Generating a structured library of .wav samples with Python.

sample-library Scripts for generating a structured sample library with Python Requires Docker about Samples are written to wave files in lib/. Differe

Ben Mangold 1 Nov 11, 2021
MelGAN test on audio decoding

Official repository for the paper MelGAN: Generative Adversarial Networks for Conditional Waveform Synthesis The original work URL: https://github.com

Jurio 1 Apr 29, 2022
Xbot-Music - Bot Play Music and Video in Voice Chat Group Telegram

XBOT-MUSIC A Telegram Music+video Bot written in Python using Pyrogram and Py-Tg

Fariz 2 Jan 20, 2022
Music generation using ml / dl

Data analysis Document here the project: deep_music Description: Project Description Data Source: Type of analysis: Please document the project the be

0 Jul 03, 2022
Vixtify - Python Controlled Music Player

Strumm Sound Playlist : Click me to listen Welcome to GitHub Pages You can use the editor on GitHub to maintain and preview the content for your websi

Vicky Kumar 2 Feb 03, 2022
Audio2midi - Automatic Audio-to-symbolic Arrangement

Automatic Audio-to-symbolic Arrangement This is the repository of the project "Audio-to-symbolic Arrangement via Cross-modal Music Representation Lear

Ziyu Wang 24 Dec 05, 2022
?️ Open Source Audio Matching and Mastering

Matching + Mastering = ❤️ Matchering 2.0 is a novel Containerized Web Application and Python Library for audio matching and mastering. It follows a si

Sergey Grishakov 781 Jan 05, 2023
Convert complex chord names to midi notes

ezchord Simple python script that can convert complex chord names to midi notes Prerequisites pip install midiutil Usage ./ezchord.py Dmin7 G7 C timi

Alex Zhang 2 Dec 20, 2022
Musillow is a music recommender app that finds songs similar to your favourites.

MUSILLOW The music recommender app Check it out now!!! View Demo · Report Bug · Request Feature About The App Musillow is a music recommender app that

3 Feb 03, 2022
🎵 Python sound notifications made easy

chime Python sound notifications made easy. Table of contents Table of contents Motivation Installation Basic usage Theming IPython/Jupyter magic Exce

Max Halford 231 Jan 09, 2023
A Youtube audio player for your terminal

AudioLine A lightweight Youtube audio player for your terminal Explore the docs » View Demo · Report Bug · Request Feature · Send a Pull Request About

Haseeb Khalid 26 Jan 04, 2023
Suyash More 111 Jan 07, 2023
Gammatone-based spectrograms, using gammatone filterbanks or Fourier transform weightings.

Gammatone Filterbank Toolkit Utilities for analysing sound using perceptual models of human hearing. Jason Heeris, 2013 Summary This is a port of Malc

Jason Heeris 188 Dec 14, 2022
Scalable audio processing framework written in Python with a RESTful API

TimeSide : scalable audio processing framework and server written in Python TimeSide is a python framework enabling low and high level audio analysis,

Parisson 340 Jan 04, 2023
Users can transcribe their favorite piano recordings to MIDI files after installation

Users can transcribe their favorite piano recordings to MIDI files after installation

190 Dec 17, 2022