--- a/scctl_src/scctl.cpp
+++ b/scctl_src/scctl.cpp
@@ -81,6 +81,7 @@
 #define OPT_x 0x200
 #define OPT_i 0x400
 #define OPT_I 0x800
+#define OPT_X 0x1000
 
 static const string sep("||");
 
@@ -148,6 +149,12 @@
         if (args.size() < 1)
             return 1;
         stopReceivers(args);
+#ifdef HAVE_SETRECEIVERSPLAYING_IN_LINN
+    } else if (opflags & OPT_X) {
+        if (args.size() < 1)
+            return 1;
+        setReceiversPlaying(args);
+#endif
 #ifdef HAVE_SETSOURCEINDEX_IN_LINN
     } else if ((opflags & OPT_i)) {
         if (args.size() < 2)
@@ -176,6 +183,10 @@
 " -s <master> <slave> [slave ...] : Set up the slaves renderers as Songcast\n"
 "    Receivers and make them play from the same uri as the master receiver\n"
 " -x <renderer> [renderer ...] Reset renderers from Songcast to Playlist\n"
+#ifdef HAVE_SETRECEIVERSPLAYING_IN_LINN
+" -X <renderer> [renderer ...] Set renderers to Songcast (requires usage of\n"
+"    screceiverstatefile in the config file)\n"
+#endif
 " -r <sender> <renderer> <renderer> : set up the renderers in Receiver mode\n"
 "    playing data from the sender. This is like -s but we get the uri from \n"
 "    the sender instead of a sibling receiver\n"
@@ -206,7 +217,7 @@
     thisprog = argv[0];
 
     int ret;
-    while ((ret = getopt(argc, argv, "fhmLlrsSxiI")) != -1) {
+    while ((ret = getopt(argc, argv, "fhmLlrsSxXiI")) != -1) {
         switch (ret) {
         case 'f': op_flags |= OPT_f; break;
         case 'h': Usage(stdout); break;
@@ -217,6 +228,7 @@
         case 's': op_flags |= OPT_s; break;
         case 'S': op_flags |= OPT_S; break;
         case 'x': op_flags |= OPT_x; break;
+        case 'X': op_flags |= OPT_X; break;
         case 'i': op_flags |= OPT_i; break;
         case 'I': op_flags |= OPT_I; break;
         default: Usage();