Amarok/Archives/RemoteControl
IRman
Use the IRman Controller script.
Another easy way to get remote control on Amarok with IRman is to get a copy of uird, and use learn-mode to associate the keys you want with the Amarok DCOP Functions and save this as your uird.conf file.
This is very simple to set up (in fact, shockingly so). Here's the procedure:
Hook up your IRman to /dev/ttySxx Download the uird tar ball unpack the tar ball using: tar tzf uird-1.1.tgz cd uird; make ./uird -L -t /dev/ttySxx follow the prompts to teach uird what to do for your remote buttons using the Amarok DCOP documentation for a reference how to make Amarok do things for you. start up uird as ./uird -N -t /dev/ttySxx -f uird.conf -p NONE and test your remote control functions.
An annotated sample uird.conf file is shown below:
# # NAD 450 remote control (came with their C470 receiver) # # This control controls most NAD stereo components from a few years back. # We map the buttons for the CD player and dual tape deck # into Amarok things # # CD player buttons 225-62-82-173-0-0: dcop amarok player pause 225-62-64-191-0-0: dcop amarok player stop 225-62-128-127-0-0: dcop amarok player playPause 225-62-96-159-0-0: dcop amarok player next 225-62-160-95-0-0: dcop amarok player prev # Map the "Next disc" button to toggle the playlist 225-62-232-23-0-0: dcop amarok playlist togglePlaylist # # Tape Deck A controls: # Reverse Direction button - skip 5 seconds back 225-62-42-213-0-0: dcop amarok player seekRelative -5 # Forward Direction button - skip 5 seconds forward 225-62-202-53-0-0: dcop amarok player seekRelative 5 # # Tape Deck B controls: # Reverse Direction button - skip 10 seconds back 225-62-123-132-0-0: dcop amarok player seekRelative -10 # Forward Direction button - skip 10 seconds forward 225-62-57-198-0-0: dcop amarok player seekRelative 10
Lirc
A homebrew IR-receiver box using the schematics from The LIRC Project will also work. What you'll need to do is to install lircd and setup your /etc/lircd.conf. This is described in the Lirc Documentation. Then you'll have to define what you want the remote to do. This is specified in your ${HOME}/.lircrc file.
Here is a section of my .lircrc file, it is designed to use the Hauppauge remote control, but you can change it to use whatever remote you got.
begin prog = irexec remote = hauppauge_pvr button = Play config = dcop amarok player play end
begin prog = irexec remote = hauppauge_pvr button = Stop config = dcop amarok player stop end
begin prog = irexec remote = hauppauge_pvr button = Pause config = dcop amarok player playPause end
begin prog = irexec remote = hauppauge_pvr button = Vol- repeat = 2 config = dcop amarok player volumeDown end
begin prog = irexec remote = hauppauge_pvr button = Vol+ repeat = 2 config = dcop amarok player volumeUp end
begin prog = irexec remote = hauppauge_pvr button = Forward repeat = 3 config = dcop amarok player seekRelative 5 end
begin prog = irexec remote = hauppauge_pvr button = Rewind repeat = 3 config = dcop amarok player seekRelative -5 end
begin prog = irexec remote = hauppauge_pvr button = Blank config = dcop amarok playlist clearPlaylist end
begin prog = irexec remote = hauppauge_pvr button = Mute config = dcop amarok player mute end
begin prog = irexec remote = hauppauge_pvr button = Skip repeat = 3 config = dcop amarok player next end
begin prog = irexec remote = hauppauge_pvr button = Replay repeat = 3 config = dcop amarok player prev end
begin prog = irexec remote = hauppauge_pvr button = Full repeat = 3 config = dcop amarok player showOSD end
When all this is done you'll need to make sure that the lircd and irexec is running.
lircd is a system process and it is started with /etc/init.d/lircd (gentoo). irexec should not be run as root, the best thing is to autostart it with your desktop.
Here are a couple more interesting remote control recipes. The first one programs an Internet radio station to the remote control button "1"; substitute the name you've given to the radio stream in Amarok accordingly. The second recipe is for text-to-speech synthesis of the currently playing song using Festival -- useful for checking out the name of a good song when your monitor is off.
begin remote = SONY button = 1 prog = irexec config = dcop amarok playlistbrowser loadPlaylist '1. ETN.fm (Trance)'; sleep 3; dcop amarok player play end begin remote = SONY button = recall prog = irexec config = prev_volume=`dcop amarok player getVolume`; dcop amarok player setVolume `expr $prev_volume / 3`;
(dcop amarok player artist; echo ' '; dcop amarok player title) | text2wave -F 44100 -scale 3 | aplay; dcop amarok player setVolume $prev_volume end
IRKick
To be completed