Question / Help [SOLVED] "Desktop audio" doesn't hear certain programs

wilbefast

New Member
Hi all,

I'm currently trying to record footage for the trailer of a game made using Löve 2D on Arch Linux. I need to capture in-game sound and in-game video. So far I'm able to record video from the game, audio from my microphone and audio from other applications (from instance a Youtube video playing on Chrome), but OBS just can't seem to "hear" the game audio except whatever comes back from the speakers as part of what the microphone hears. This would be okay workable if I had decent speakers and a decent microphone, but as it is the in-built microphone audio has a super high-pitched whine to it. Also I need to be careful to not make any sound while recording footage. Not ideal :P

I'm not sure why OBS is not aware of Löve. I can only assume that Löve goes directly to ALSA without going through Pulseaudio or something like that. If for instance I try to launch the game when I have a Youtube video playing I will get no sound and the following message in the console:
Code:
AL lib: (EE) ALCplaybackAlsa_open: Could not open playback device 'default': Device or resource busy

I've been trying to figure this out on and off for a couple of weeks now and it's starting to get me down. Does anyone have any ideas? I'm starting to fiddle around with JACK but so far all I've managed to do it crash OBS :'(

Thanks for reading, please send help if you can!

William :)
 

Attachments

  • 2017-03-20 18-45-17.txt
    5.6 KB · Views: 43

Alexandre Vicenzi

New Member
Hi all,

I'm currently trying to record footage for the trailer of a game made using Löve 2D on Arch Linux. I need to capture in-game sound and in-game video. So far I'm able to record video from the game, audio from my microphone and audio from other applications (from instance a Youtube video playing on Chrome), but OBS just can't seem to "hear" the game audio except whatever comes back from the speakers as part of what the microphone hears. This would be okay workable if I had decent speakers and a decent microphone, but as it is the in-built microphone audio has a super high-pitched whine to it. Also I need to be careful to not make any sound while recording footage. Not ideal :P

I'm not sure why OBS is not aware of Löve. I can only assume that Löve goes directly to ALSA without going through Pulseaudio or something like that. If for instance I try to launch the game when I have a Youtube video playing I will get no sound and the following message in the console:
Code:
AL lib: (EE) ALCplaybackAlsa_open: Could not open playback device 'default': Device or resource busy

I've been trying to figure this out on and off for a couple of weeks now and it's starting to get me down. Does anyone have any ideas? I'm starting to fiddle around with JACK but so far all I've managed to do it crash OBS :'(

Thanks for reading, please send help if you can!

William :)

Open Pulse Audio Manager (paman) and see if the game appear on "Client" tab, it may show "ALSA Playback" or the game name. If it appears on paman it should be captured by OBS (and maybe it's a bug).

If the game doesn't pass by Pulse, I doesn't know what to do. :(

I tried playing and audio useing aplay and it works on OBS.
 

Johan Blome

New Member
There is a solution, but a bit more complicated... You could use jack with a pulseaudio plugin (because the jack plugin for OBS seems to be a bit unstable).
The easiest way of getting this to work is by installing the kxstudio applications (Cadense and Claudia mainly).
When all is installed start jack and then start pulseaudio. Your gaming audio will appear (probably) as an alsa plugin component in Claudia and then you could just patch it to jack-monitor in pulseaudio.
This is how I record all audio in OBS (from an external mixer combined with VLC sound from internal playback).
 

wilbefast

New Member
Open Pulse Audio Manager (paman) and see if the game appear on "Client" tab, it may show "ALSA Playback" or the game name. If it appears on paman it should be captured by OBS (and maybe it's a bug).

If the game doesn't pass by Pulse, I doesn't know what to do. :(

I tried playing and audio useing aplay and it works on OBS.
It doesn't appear in the pulse audio manager - I'd managed to track the issue down that far. Thankfully I've found a solution that doesn't involve Jack - not that I've anything against Jack per say, it's just complicated to use.

Löve 2D uses openal-soft which can be set up using a configuration file in
Code:
/etc/openal/alsoft.conf
or in
Code:
~/.alosoft.conf
. My configuration file simply contained
Code:
drivers=alsa,pulse
which I swapped around so that, by default, OpenAL routs through pulse:
Code:
drivers=pulse,alsa
. Thanks to this I've been able to record OBS footage :)

The only remaining issue is frame-rate: the game lags because OBS is eating the CPU, and OBS then captures the lag. This should be solvable by fiddling around with the setting though :)
 
Top