Introduction About Site Map

XML
RSS 2 Feed RSS 2 Feed
Navigation

Main Page | Blog Index

Sunday, May 22nd, 2011, 1:39 pm

How We Make TechBytes

Microphone

Summary: How to make Internet-based phonecalls and also record them with Free software and open standards

TECHBYTES has had to do some research into recording shows with Free software. It was actually our intention since the early days of the show (November 2010) to look into a pipeline which is entirely Free software based. Because of convenience or laziness, we settled for and ended up recording the show under Skype, then doing the rest with Free software. We actually started by experimenting with SIP to some extent while simultaneously looking into a recorder which was compatible with Skype for GNU/Linux. As the show involved many guests (especially at the start) we needed to facilitate Skype access and curtailed the pursuit for a SIP replacement until more recently. Then came the time to record with Richard Stallman, which coincided with the disturbing rumour that Facebook would buy Skype. Eventually it was Microsoft, which can be seen as equally bad.

This post summarises my findings and to some extent Tim’s observations too. We spent many long hours researching the subject, testing many packages, testing the process inside many calls, and making a lot of test recordings, then refining them and adjusting parameters including volume levels. Some listeners provided valuable advice. Some gave application recommendations and here is what was found after a fairly thorough exploration.

SIP Communicator

I started using sip-communicator after Gordon Forbes had made the recommendation (about 4 months ago). It is pretty impressive, it is very features-heavy, and it was built with Java, which makes it somewhat heavy too. The version I use is still not very polished. It has some debugging-level code in it. The good thing about it is the built-in recording capability, webcam support (which works well, unlike Skype which never ever worked for me with any webcam), and automatic detection of all the underlying hardware. It worked with my webcam over the network, but not so consistently though. Some buttons seem to not yet have a callback function associated with them, at least in the version I have installed. It is like a development build. But, having said that, it’s a decent cross-platform application with good SIP support, assuming it can connect to the other side successfully.

Linphone

This good client does not appear to support video although Tim claims otherwise and my experience with it is very limited (the binary to run is linphone-3 on *buntu-based systems, not linphone) . It did not quite succeed with the callers I tested it with. It does have echo cancellation, just like Ekiga, which is the main application that I use.

Ekiga

So, that brings me to Ekiga. Fine application, although the toolkit it uses for the UI does not integrate so beautifully into KDE4. Even Skype sorted that out not so long ago (Qt Curve added), but Skype is out of the question here. Ekiga does everything, including video, reasonably well. Its Windows version is not so official however. When it comes to camera support, it does not consistently transport the image to the other side. Sometimes it works, sometimes it does not, for whatever reason. It worked for us with webcam over the network, but most of the time it does not.

Blink

One listener told me about Blink, which is cross-platform and quite good looking. It is abundantly easy to use. I have not had so much time to test it, having installed it from unofficially-approved repositories (quite successfully and without issues though). Its cross-platform support seems like a big advantage considering the fact that Ekiga may not support a lot of platforms reliably. Maybe the Skype exodus will motivate developers to hurry up with such development endeavours. Telephony is one of those areas where multiple sides are involved, so ports to proprietary platforms can be more easily justified.

Mumble

For a call with multiple participants this piece of software can be handy. it is cross-platform, it has wonderful setup wizards, and it is easy to use. We may use it in the future. Asterisk has a reputation of something that is hard to set up for similar tasks. Based on TLLTS, there are also recording quality issues associated with it. This downsamples everyone on the line. Of course, it is always possible to record separately on each side and then merge everything. But this is time-consuming and it requires manual synchronisation work.

Left out from this survey we have lots of GNU-affiliated packages and we of course do not bother with so-called ‘Cloud’ Computing options from Google (or Gizmo), which is Fog Computing and proprietary. It’s hardly better than Skype in that regard, as both are cross-platform.

Recording

Recording is another important part of the pipeline. As an alternative to Skype Call Recorder (which works with GNU/Linux) we considered using SIP Communicator and later Blink, which we were told has some recording facility. We have not found that in the GNU/Linux version yet. In any case, recording all system sounds from PCM seemed reasonable and alsamixer enables this to be done at some lower level, if not other mixers that are graphical. Failing to attain high quality, we may just record locally and then merge at the end, as Linux Outlaws is doing for example.

Audacity

Here are some instructions on how to get things working with Audacity. It may not work on all systems and filters might be needed to compensate for noise. But still, it is better than nothing. Since Audacity is also our editor of choice, integration of this sort is desirable.

GTK RecordMyDesktop

The package gtk-recordmydesktop is a front end to a program which requires some command-line-fu. The settings in the GUI are easy to follow and there are detailed tooltips too (optional). For additional command line options such as strict coordinates from which to capture can be specified in the GUI too, if necessary. Those who developed the product did a fine job simplifying screencasts, which is essentially how we process video-based shows. Encoding can be done at the end of recording in order to lower CPU load, especially if compression is used to compact large videos that are mostly static throughout.

Editing

For editing we have only used Audacity with a bunch of filters that we know help improve the quality of raw audio. The program is good for mixing several tracks, Except for that, my only prolonged editing experience goes back to Windows 3.11 days with Sound Blaster software. As I was about 11 or 12 at the time, that does not count for much. We are still improving and since we never edit any of the speech part (not even editing out or having second takes, the editing is mostly mixing oriented).

Encoding

To re-encode videos we use mencoder and ffmpeg, which are command line utilities that do the job pretty well. Some reasonable commands that we routinely run are gathered in a text files.

Postscript: Tim says that Linphone supports cameras and this Wikipedia page, sent by a reader while working on this text, might be handy.

Regarding phone books management, some applications were simpler to manage than others. My personal choice is Ekiga’s, which also has a complete historical calls trail. It is very useful.

If we left out important options, be sure to tell us.

2 Responses to “How We Make TechBytes”

  1. notzed Says:

    fwiw sip-communicator was renamed to jitsi a couple of months ago. http://www.jitsi.org/

    The lack of wide video support is a bit strange – apart from the codecs which are the same on every platform, the v4l api is extremely nice and easy to code with (much simpler and easier than that other os). For a product like skype you wonder if they were paid to make sure it didn’t work very well, or otherwise deliberately kept the programmers from making it work properly.

  2. Roy Schestowitz Says:

    Skype never worked for me. I wasted about 10 hours of my life trying to get different webcams to work with it (Tim has had the same problem) and with SIP clients the webcams work well (for Tim as well).

    Where SIP is lacking is probably the inertia Skype built with its botnets and “supernodes”.

    Gordon has told me that sip-communicator was renamed, but anyway, I plan to try the latest version. The recorder there seems to work.

Technical Notes About Comments

Comments may include corrections, additions, citations, expressions of consent or even disagreements. They should preferably remain on topic.

Moderation: All genuine comments will be added. If your comment does not appear immediately (a rarity), it awaits moderation as it contained a sensitive word or a URI.

Trackbacks: The URI to TrackBack this entry is:

http://schestowitz.com/Weblog/archives/2011/05/22/making-techbytes/trackback/

Syndication: RSS feed for comments on this post RSS 2

    See also: What are feeds?, Local Feeds

Comments format: Line and paragraph breaks are automatic, E-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Back to top

Retrieval statistics: 21 queries taking a total of 0.139 seconds • Please report low bandwidth using the feedback form
Original styles created by Ian Main (all acknowledgements) • PHP scripts and styles later modified by Roy Schestowitz • Help yourself to a GPL'd copy
|— Proudly powered by W o r d P r e s s — based on a heavily-hacked version 1.2.1 (Mingus) installation —|