Ticket #787 (new defect)

Opened 2 years ago

Last modified 6 months ago

recordmydesktop can record audio only from one source at a time

Reported by: luquino Owned by: lennart
Milestone: Component: daemon
Keywords: Cc: legolegs@…

Description

I'm using Ubuntu 9.10 AMD64 with Pulseaudio 0.9.19. When I try to record a clip of my desktop using recordmydesktop I can record audio only from one source at a time (i.e.: the usb microphone, the internal audio). During the recording I have to switch manually the input source from the pavucontrol dialogue. I red somewhere that using Jack I should be able to mix the two input channel in the same sink, but I wish not to install Jack on my pc. Pulseaudio can't mix the channels?

Change History

Changed 6 months ago by legolegs

  • cc legolegs@… added

It was hard to find a right way to do it, but being found once this way is very easy. First you have to add following lines to your ~/.pulse/default.pa (or just run pacmd and type it in):

load-module module-combine sink_name=record_it sink_properties="device.description='To be mixed with microphone'"
load-module module-loopback sink=record_it

I'm assuming you have only one real recording device (or rather only one entry in pavucontrol on tab called Input Devices).

Now you have a special output device called "To be mixed with microphone". Using pavucontrol via tab Playback you have to switch your program (in my case it was a game) from using your real sound card to using thing called "To be mixed with microphone". You can pick several programs at once.

Now you're ready to recording. Run recordmydesktop this way:

PULSE_SOURCE=record_it.monitor recordmydesktop --device default 

or you can use a GUI version: PULSE_SOURCE=record_it.monitor gtk-recordMyDesktop should work too.

Changed 6 months ago by coling

I would be nice to have a module-combine-source to do this a little less hackily but yes, using the loopback allows for your audio from the mic to be mix in with the music.

I'm not really sure what you use module combine for here however? Using loopback to output directly to the h/w card and recording from it's monitor should work pretty much the same, although you do of course have to find that name to add to the PULSE_SOURCE env var which is a little bit of a pain.

Note: See TracTickets for help on using tickets.