diff -Nru -x PLUGINS vdr-1.3.11/svdrp.c vdr-run/svdrp.c
--- vdr-1.3.11/svdrp.c	2004-06-13 15:38:38.000000000 +0200
+++ vdr-run/svdrp.c	2004-07-10 02:33:43.940551104 +0200
@@ -35,6 +35,7 @@
 #include "timers.h"
 #include "tools.h"
 #include "videodir.h"
+#include "menu.h"
 
 // --- cSocket ---------------------------------------------------------------
 
@@ -1091,6 +1092,23 @@
      Reply(250, "Audio volume is %d", cDevice::CurrentVolume());
 }
 
+void cSVDRP::CmdPLAY(const char *Option)
+{
+	Recordings.Load();
+  if (*Option) {
+	   cRecording *rec = Recordings.GetByName(Option);
+		 if (rec) {
+		    cReplayControl::SetRecording(rec->FileName(), rec->Title());
+				cControl::Launch(new cReplayControl);
+				Reply(250, "Replay started");
+		    }
+		 else
+		    Reply(500, "Unknown recording: \"%s\"", Option);
+		 }
+	else
+	   Reply(500, "Missing option");
+}
+
 #define CMD(c) (strcasecmp(Cmd, c) == 0)
 
 void cSVDRP::Execute(char *Cmd)
@@ -1137,6 +1155,7 @@
   else if (CMD("STAT"))  CmdSTAT(s);
   else if (CMD("UPDT"))  CmdUPDT(s);
   else if (CMD("VOLU"))  CmdVOLU(s);
+  else if (CMD("PLAY"))  CmdPLAY(s);
   else if (CMD("QUIT"))  Close();
   else                   Reply(500, "Command unrecognized: \"%s\"", Cmd);
 }
diff -Nru -x PLUGINS vdr-1.3.11/svdrp.h vdr-run/svdrp.h
--- vdr-1.3.11/svdrp.h	2004-01-17 14:30:52.000000000 +0100
+++ vdr-run/svdrp.h	2004-07-10 01:46:51.347130296 +0200
@@ -77,6 +77,7 @@
   void CmdSTAT(const char *Option);
   void CmdUPDT(const char *Option);
   void CmdVOLU(const char *Option);
+	void CmdPLAY(const char *Option);
   void Execute(char *Cmd);
 public:
   cSVDRP(int Port);
