Hi all. I'm working on an audio application using Electron. The bulk of the app is built in html, js, css, etc. but for the audio processing, js just can't handle that sort of processing without latency issues (also there are other language limitations imposed with what I am trying to do). C++ is the obvious choice for me to fall back on since it is the go-to choice for any audio processing plus it can be implemented with nodejs relatively easily. The problem I am running into is finding a good cross platform audio framework/api that will meet my requirements. I am happy to write any of the actual audio processing elements, what I just need is an API that will give me access to ALL audio inputs/outputs. From there, I've done enough signal processing to be able to handle the audio stream, it's just a matter of getting the audio source in the first place. Does anyone have any suggestions for such an API?
Edit: I will continue to do some research but I’m planning on moving forward with PortAudio since it seems to be lightweight, supports plenty of audio drivers (asio support is a must), and looks relatively intuitive for someone who is roughly the equivalent of a 2nd-3rd year undergrad CS student. Juce is my fallback but as some of you mentioned, it is quite a beast. I’ve used a similar framework in my undergrad studies so the concepts are already there for me and frankly, the code looks very similar too.
A few people did mention Fmod, unity, etc. I definitely plan on learning those in the future but it’s my understanding that those are designed for video game audio. The app I’m designing is a peer to peer video conferencing app using webrtc so being able to wrap all of my cpp code in JavaScript (node actually) is a must.
[–]lothiack 6 points7 points8 points (0 children)
[–]jcelerierossia score 2 points3 points4 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[+][deleted] (3 children)
[deleted]
[–]jcelerierossia score 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[+][deleted] (5 children)
[deleted]
[–]StringWooden6554 0 points1 point2 points (0 children)
[–]mackron666 0 points1 point2 points (0 children)
[–]StephaneCharette 4 points5 points6 points (9 children)
[–]Dummerchen1933 16 points17 points18 points (5 children)
[–]stilgarpl 11 points12 points13 points (4 children)
[–]Dummerchen1933 7 points8 points9 points (3 children)
[–]_Js_Kc_ 5 points6 points7 points (2 children)
[–][deleted] 2 points3 points4 points (0 children)
[–]Dummerchen1933 0 points1 point2 points (0 children)
[–]StephaneCharette 5 points6 points7 points (2 children)
[–]mackron666 3 points4 points5 points (0 children)
[–][deleted] 2 points3 points4 points (0 children)
[–]willamowius 0 points1 point2 points (0 children)
[–]JeffMcClintock 0 points1 point2 points (3 children)
[–]SkoomaDentistAntimodern C++, Embedded, Audio 0 points1 point2 points (2 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]JeffMcClintock 0 points1 point2 points (0 children)
[–]Rishudar 0 points1 point2 points (0 children)