I had wanted to record a screencast, but I really wanted audio on it. Unfortunately, the state of Linux audio is (still) fairly sad. So, while I was able to grab a nice USB headset and plug it in and use Audacity with it, screencasting just wasn't happening.
Read the full post for details on how I got this working.
After some mucking about with different software options, all of which seem to be unmaintained, I was able to get the "Istanbul" tool to do a nice job of recording a portion of my screen, with audio!
But not without editing some code... I had to modify the "screencast.py" file, around line 99, to explicitly set the audio source to "autoaudiosrc". Here is the resulting code, the last line is what I added:
if settings["record_sound"]: if Preferences().has_gconf(): asource = 'gconfaudiosrc name=audiosource' else: asource = 'autoaudiosrc name=audiosource' asource = 'autoaudiosrc name=audiosource'
So, I basically copied the "else" clause to after the condition, and made that the value that is used. Previously, I had found that it was using the "gconfaudiosrc" value. I had also tried using the value "alsasrc device=hw:2", but that caused Istanbul to go into a "saving to disc" state after the recording and then just hang there.
Now, I probably also had to set the input, because I was using a USB headset but also had audio through the motherboard, so that it picked the right input. I'm not exactly sure what resolved this, but here's what I did...
First, I ran "gstreamer-properties" and in the "Default Input" I selected the "Device" that matched my USB headset. Unfortunately, they were all listed as "Unknown", but when I selected one it would set the "Pipeline" box which included the name "USB", so I knew it was the second one I needed. The "Test" button didn't do anything that I could tell.
I then ran "gnome-sound-recorder" and did "File -> Open Volume Control", I selected the "Input" tab, and clicked on the USB headset device. That has a input level meter, and it correctly was showing the volume when I spoke.
After these changes, I was able to run "istanbul", and click on the red ball icon in my dock and record video with audio.
Note that I had also tried "recorditnow", and while it did record audio fine, the screen capture was totally broken, often not updating for quite a while. I'm guessing that had to do with my 3D window effects, but I don't know.
So, Istanbul with that one code hack (thank you Python) seems to have done the job.comments powered by Disqus