Using infrared remote controls with Rosegarden
Rosegarden can use infrared remote controls for some functions like transport buttons and track navigation. At a low level, support for infrared remote controls is provided by LIRC (Linux Infrared Remote Control). There is a daemon named "lircd" that serves messages from the IR remotes to client aplications. You can find more information about LIRC in their web site at http://www.lirc.org
At a higher level, KDE applications may use an application named IRKick (the KDE LIRC Server daemon) to manage the remote control behavior when used with KDE applications. Using this program, KDE applications can receive LIRC messages without needing to be implemented explicitly as LIRC clients. You can find this program in your Linux distribution as a package named "kdelirc", or belonging to "kdeutils".
Rosegarden has both an internal LIRC client, that can be optionally compiled into the program, and also has support for IRKick. The internal LIRC support may be useful when you don't use the KDE desktop with Rosegarden, or when you don't want to use IRKick. If you already use an infrared remote control with other KDE applications with IRKick, you may use also Rosegarden in the same way.
1. LIRC Daemon Setup
First, it is necessary to install and configure the LIRC daemon. See http://www.lirc.org/html documentation to find information about how to configure the lircd daemon. The details are different depending on the infrared receiver that you use, and the remote control model.
As an example, here is the howto for a modern digital TV USB receiver: http://mcentral.de/wiki/index.php/LircRemote
2. LIRC Client
If you want to use the internal LIRC client compiled into Rosegarden, you need to provide a configuration file. It is usually located in your home directory with the name ".lircrc", and here is where you define the bindings between the remote control buttons and the application functions. Here is an example of such configuration.
# ---------------------------------------------------------------------------- # lircrc.rosegarden # # Example .lircrc config file for rosegarden. # Adjust the "button =" lines to your remote control in your ~/.lircrc # ---------------------------------------------------------------------------- begin rosegarden # ------------------------------ # rosegarden transport # ------------------------------ begin prog = rosegarden button = FORWARD config = FORWARD end begin prog = rosegarden button = REWIND config = REWIND end begin prog = rosegarden button = PLAY config = PLAY end begin prog = rosegarden button = STOP config = STOP end begin prog = rosegarden button = RECORD config = RECORD end # (mis-)use volume up/down for jumping to beginning/end begin prog = rosegarden button = VOLUMEUP config = FORWARDTOEND end begin prog = rosegarden button = VOLUMEDOWN config = REWINDTOBEGINNING end # ------------------------------ # track navigation # ------------------------------ begin prog = rosegarden button = CHANNELUP config = TRACK- end begin prog = rosegarden button = CHANNELDOWN config = TRACK+ end # track LED's begin prog = rosegarden button = MUTE config = TRACK-MUTE end begin prog = rosegarden button = MENU config = TRACK-RECORD end # redo/undo begin prog = rosegarden button = REDO config = REDO end begin prog = rosegarden button = UNDO config = UNDO end end rosegarden
3. IRKick support
The IRKick profile was already installed in your system when you installed Rosegarden. You only need to start the IRKick program, and use the configuration dialog to bind the buttons of your remote control to the actions provided by Rosegarden. You may also bind a remote button to any Rosegarden function exported in a DCOP interface.
You can find IRKick somewhere in your K menu. The exact place depends on your KDE distribution and version, look at System/Desktop Applet or System/Configuration.
Once you have both LIRC and IRKick running, you need to bind the remote control buttons to Rosegarden actions. To do so, use the "Configure" dialog, which is also available as a KControl module. Press the "add..." button to open a wizard. The first step is to select Rosegarden in the applications list. Next, choose a remote control button name, and press next. Then, select the function which you want to perform with the remote control button. The last page allows to select some options. You can repeat the procedure for each button, but you don't need to use all of them.