Index: trunk/src/org/openstreetmap/josm/actions/audio/AudioBackAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/audio/AudioBackAction.java	(revision 627)
+++ trunk/src/org/openstreetmap/josm/actions/audio/AudioBackAction.java	(revision 1023)
@@ -11,11 +11,13 @@
 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer;
 import org.openstreetmap.josm.tools.AudioPlayer;
+import org.openstreetmap.josm.tools.ShortCut;
 
 public class AudioBackAction extends JosmAction {
 
 	private double amount; // note, normally negative, i.e. jump backwards in time
-	
+
 	public AudioBackAction() {
-		super(tr("Back"), "audio-back", tr("Jump back."), KeyEvent.VK_F6, 0, true);
+		super(tr("Back"), "audio-back", tr("Jump back."),
+		ShortCut.registerShortCut("audio:back", tr("Audio: Back"), KeyEvent.VK_F6, ShortCut.GROUP_DIRECT), true);
 		try {
 			amount = - Double.parseDouble(Main.pref.get("audio.forwardbackamount","10.0"));
Index: trunk/src/org/openstreetmap/josm/actions/audio/AudioFastSlowAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/audio/AudioFastSlowAction.java	(revision 627)
+++ trunk/src/org/openstreetmap/josm/actions/audio/AudioFastSlowAction.java	(revision 1023)
@@ -7,9 +7,22 @@
 import org.openstreetmap.josm.actions.JosmAction;
 import org.openstreetmap.josm.tools.AudioPlayer;
+import org.openstreetmap.josm.tools.ShortCut;
 
 abstract public class AudioFastSlowAction extends JosmAction {
 
 	private double multiplier;
-	
+
+	public AudioFastSlowAction(String name, String iconName, String tooltip, ShortCut shortcut, boolean fast) {
+		super(name, iconName, tooltip, shortcut, true);
+		try {
+			multiplier = Double.parseDouble(Main.pref.get("audio.fastfwdmultiplier","1.3"));
+		} catch (NumberFormatException e) {
+			multiplier = 1.3;
+		}
+		if (! fast)
+			multiplier = 1.0 / multiplier;
+	}
+
+	@Deprecated
 	public AudioFastSlowAction(String name, String iconName, String tooltip, int shortcut, int modifier, boolean fast) {
 		super(name, iconName, tooltip, shortcut, modifier, true);
@@ -19,5 +32,5 @@
 			multiplier = 1.3;
 		}
-		if (! fast) 
+		if (! fast)
 			multiplier = 1.0 / multiplier;
 	}
@@ -25,5 +38,5 @@
 	public void actionPerformed(ActionEvent e) {
 		double speed = AudioPlayer.speed();
-		if (speed * multiplier <= 0.1) 
+		if (speed * multiplier <= 0.1)
 			return;
 		try {
Index: trunk/src/org/openstreetmap/josm/actions/audio/AudioFasterAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/audio/AudioFasterAction.java	(revision 627)
+++ trunk/src/org/openstreetmap/josm/actions/audio/AudioFasterAction.java	(revision 1023)
@@ -3,11 +3,13 @@
 
 import static org.openstreetmap.josm.tools.I18n.tr;
+import org.openstreetmap.josm.tools.ShortCut;
 
 import java.awt.event.KeyEvent;
 
 public class AudioFasterAction extends AudioFastSlowAction {
-	
+
 	public AudioFasterAction() {
-		super(tr("Faster"), "audio-faster", tr("Faster Forward"), KeyEvent.VK_F9, 0, true);
+		super(tr("Faster"), "audio-faster", tr("Faster Forward"),
+		ShortCut.registerShortCut("audio:faster", tr("Audio: Faster"), KeyEvent.VK_F9, ShortCut.GROUP_DIRECT), true);
 	}
 }
Index: trunk/src/org/openstreetmap/josm/actions/audio/AudioFwdAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/audio/AudioFwdAction.java	(revision 627)
+++ trunk/src/org/openstreetmap/josm/actions/audio/AudioFwdAction.java	(revision 1023)
@@ -11,11 +11,13 @@
 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer;
 import org.openstreetmap.josm.tools.AudioPlayer;
+import org.openstreetmap.josm.tools.ShortCut;
 
 public class AudioFwdAction extends JosmAction {
 
 	private double amount;
-	
+
 	public AudioFwdAction() {
-		super(tr("Forward"), "audio-fwd", tr("Jump forward"), KeyEvent.VK_F7, 0, true);
+		super(tr("Forward"), "audio-fwd", tr("Jump forward"),
+		ShortCut.registerShortCut("audio:forward", tr("Audio: Forward"), KeyEvent.VK_F7, ShortCut.GROUP_DIRECT), true);
 		try {
 			amount = Double.parseDouble(Main.pref.get("audio.forwardbackamount","10.0"));
Index: trunk/src/org/openstreetmap/josm/actions/audio/AudioNextAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/audio/AudioNextAction.java	(revision 627)
+++ trunk/src/org/openstreetmap/josm/actions/audio/AudioNextAction.java	(revision 1023)
@@ -9,9 +9,11 @@
 import org.openstreetmap.josm.actions.JosmAction;
 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer;
+import org.openstreetmap.josm.tools.ShortCut;
 
 public class AudioNextAction extends JosmAction {
 
 	public AudioNextAction() {
-		super(tr("Next Marker"), "audio-next", tr("Play next marker."), KeyEvent.VK_F8, 0, true);
+		super(tr("Next Marker"), "audio-next", tr("Play next marker."),
+		ShortCut.registerShortCut("audio:next", tr("Audio: Next"), KeyEvent.VK_F8, ShortCut.GROUP_DIRECT), true);
 	}
 
Index: trunk/src/org/openstreetmap/josm/actions/audio/AudioPlayPauseAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/audio/AudioPlayPauseAction.java	(revision 627)
+++ trunk/src/org/openstreetmap/josm/actions/audio/AudioPlayPauseAction.java	(revision 1023)
@@ -11,9 +11,11 @@
 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer;
 import org.openstreetmap.josm.tools.AudioPlayer;
+import org.openstreetmap.josm.tools.ShortCut;
 
 public class AudioPlayPauseAction extends JosmAction {
 
 	public AudioPlayPauseAction() {
-		super(tr("Play/pause"), "audio-playpause", tr("Play/pause audio."), KeyEvent.VK_PERIOD, 0, true);
+		super(tr("Play/pause"), "audio-playpause", tr("Play/pause audio."),
+		ShortCut.registerShortCut("audio:pause", tr("Audio: Play/Pause"), KeyEvent.VK_PERIOD, ShortCut.GROUP_DIRECT), true);
 	}
 
@@ -35,4 +37,4 @@
 			AudioPlayer.audioMalfunction(ex);
 		}
-	}	
+	}
 }
Index: trunk/src/org/openstreetmap/josm/actions/audio/AudioPrevAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/audio/AudioPrevAction.java	(revision 627)
+++ trunk/src/org/openstreetmap/josm/actions/audio/AudioPrevAction.java	(revision 1023)
@@ -9,9 +9,11 @@
 import org.openstreetmap.josm.actions.JosmAction;
 import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer;
+import org.openstreetmap.josm.tools.ShortCut;
 
 public class AudioPrevAction extends JosmAction {
 
 	public AudioPrevAction() {
-		super(tr("Previous Marker"), "audio-prev", tr("Play previous marker."), KeyEvent.VK_F5, 0, true);
+		super(tr("Previous Marker"), "audio-prev", tr("Play previous marker."),
+		ShortCut.registerShortCut("audio:prev", tr("Audio: Previous"), KeyEvent.VK_F5, ShortCut.GROUP_DIRECT), true);
 	}
 
Index: trunk/src/org/openstreetmap/josm/actions/audio/AudioSlowerAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/audio/AudioSlowerAction.java	(revision 627)
+++ trunk/src/org/openstreetmap/josm/actions/audio/AudioSlowerAction.java	(revision 1023)
@@ -5,9 +5,11 @@
 
 import java.awt.event.KeyEvent;
+import org.openstreetmap.josm.tools.ShortCut;
 
 public class AudioSlowerAction extends AudioFastSlowAction {
-	
+
 	public AudioSlowerAction() {
-		super(tr("Slower"), "audio-slower", tr("Slower Forward"), KeyEvent.VK_F9, KeyEvent.SHIFT_MASK, false);
+		super(tr("Slower"), "audio-slower", tr("Slower Forward"),
+		ShortCut.registerShortCut("audio:slower", tr("Audio: Slower"), KeyEvent.VK_F9, ShortCut.GROUP_DIRECT), true);
 	}
 }
