Change audio output - audio

So I want to run multiple instances of a game, and be able to detect when one of the game makes a sound. To do so I want every game to be on a diffrent audio output. Cause I cant thinmk of any other way.
However CheVolume and IndieVolume does not work cause they cant seperate between instances of the same game, any clue what I can do?

Related

Capture voice from a stream and translate it

I hoped that potentially there is something that will help me do it with just one step, however there might be other steps for it.
The problem is, that there is a game I follow, however all the major informations (devblogs and streams) is passed over mostly in french. Today there is one stream on Twitch that I would love to understand, however French has never crossed my path outside of the game. I was hoping there would be a way for me to launch the stream, capture the text spoken during it and translate it to English.
So far, the best idea that came to my mind would be to open up google translate, turn the volume up and let it speak to itself, however I hoped there would be something that listens to an application/window inside the system without the use of the actual microphone and speaker.
Enjoy your day, all!

Making an audio equalizer video

I need to make a video of an audio equalizer.
So i need a script that analyses audio every frame, and extracts the frequency apectrum so i can draw that somehow and make an equalizer.
The first part of the problem is easily solvable on frontend as there is a myriad of open source equalizer visualisations in canvas.
The thing works nicely in browser but i have a problem to make an mp4 of that.
Ive tried using headless browsers(pupeteer and phantomjs) to capture frames from canvas, but i could not get the framerate above 10fps, resulting in unacceptable video quality and sync issues when connecting the jpg frames and mp3 via ffmpeg. The plan was to speed it up, so you dont have to wait for the full audio length to finish to get an mp4, but i cant even get it to show above 10fps on regular playback speed.
I feel the tech i thought would work is not there yet, and i might be in need of a different approach.
The only condition is that it has to run as a script on a linux server. So any programmimg language or any equalizer design will work.
Any ideas or resources are more than welcome. Thanks

Computer keyboard into piano keyboard with AutoHotkey

I want to be able to use my computer keyboard as a piano keyboard, however the default version of AutoHotkey only supports one "voice" at a time. I tried running an instance for each note, but that doesn't fix it if I press the same note repeatedly.
I found this thread on how this might be solved with the BASS library, but I'm pretty green when it comes to coding and so I'm not certain how to incorporate the library into my simple code.
Here's another similar forum that might solve things, but it has a delay and the overlapping solution doesn't really solve my issue.
This is such a simple idea (play sound when a button is pressed), but somehow it's way out of my depth. Currently my code looks like this:
~1::
SoundPlay, C:\Users\Fires\Downloads\2489__jobro__piano-ff\39187__jobro__piano-ff-040.wav
for each note
Edit:
~a::
FileDelete, %A_ScriptDIR%\Sound1.AHK
FileAppend,
(
SoundPlay, C:\Users\Fires\Desktop\New folder (4)\043.wav, Wait
), %A_ScriptDir%\Sound1.AHK
Run, %A_ScriptDIR%\Sound1.AHK
Return
is what I am using now, but it's still iffy when two are pressed at the same time.
Its likely due to the "Wait". according to the documentation:
https://autohotkey.com/docs/commands/SoundPlay.htm
"If a file is playing and the current script plays a second file, the first file will be stopped so that the second one can play. On some systems, certain file types might stop playing even when an entirely separate script plays a new file."
It looks like this is an "issue" with AutoHotKey. And its not possible to open multiple "voices" or simultaneous sounds. it is completely possible to make a C# program that does the same thing, I've done it before. and i have bits of the code now still (it plays midi sounds, instead of wavs, but same concept play notes asynchronously).

HTML5 web audio getting stuck (buffering issue?)

I am working on a (weekly radio show) audio website and I keep getting the same problem, the audio files that are up to 1hr long keep getting stuck.
I have tested several different players, both the flash player Wimpy Player, and HTML5 players such as Audio5js, jPlayer, and pickle player.
AND I have tested to sample the sound in different bit rates, 8,24,64,128 but the sound files keeps getting stuck. Not always, but often enough to be a serious problem.
The file starts playing but a bit in (all from a few seconds to almost at the end of the 1 hr show) it just stops and the only way to keep playing it is to reload the file. To me it seems like a buffering problem.
I don't understand why.
If anyone has ever had a similar problem, please tell me what I am missing.
I got the answer myself to this one.
After double-, triple-, quadruple-checking everything it hit me, the site was hosted by GoDaddy and I know that it is not the best quality you can expect from them. (Actually they are really bad in more than one way. Never go with GoDaddy if you can avoid it. Just my personal opinion.)
We changed the hosting and the problem was gone.
To bad it had cost me days of work for nothing.

ALSA async callbacks?

The ALSA documentation seems to be very lacking... Basically, I need to play sounds asynchronously, be able to stop (all) sounds, and get a callback when one has finished playing successfully.
I can mostly do the first 2, its just the latter I'm having trouble with.
Does anyone know any snippets that may enlighten me?
Further Details:
Basically the user will be browsing a collection of sounds, when they hover over one, it should play it, and when they go onto the next one, that one should stop very quickly, and the next should play etc.... This will happen fast. The last one they heard in its entirety should be selected (hence why I need the callback if a whole sound plays successfully, as atm the one selected isn't necessarily the one they least heard, due to threading)
I don't really want to use any libraries other than libasound.

Resources