diff -rup live/testProgs/openRTSP.cpp live.new/testProgs/openRTSP.cpp
--- live/testProgs/openRTSP.cpp	2013-07-16 08:19:26.000000000 +0200
+++ live.new/testProgs/openRTSP.cpp	2013-07-16 16:02:10.140944102 +0200
@@ -41,8 +41,8 @@ void getSDPDescription(RTSPClient::respo
   ourRTSPClient->sendDescribeCommand(afterFunc, ourAuthenticator);
 }
 
-void setupSubsession(MediaSubsession* subsession, Boolean streamUsingTCP, RTSPClient::responseHandler* afterFunc) {
-  Boolean forceMulticastOnUnspecified = False;
+void setupSubsession(MediaSubsession* subsession, Boolean streamUsingTCP, Boolean forceMulticastOnUnspecified, RTSPClient::responseHandler* afterFunc) {
+  
   ourRTSPClient->sendSetupCommand(*subsession, afterFunc, False, streamUsingTCP, forceMulticastOnUnspecified, ourAuthenticator);
 }
 
diff -rup live/testProgs/playCommon.cpp live.new/testProgs/playCommon.cpp
--- live/testProgs/playCommon.cpp	2013-07-16 08:19:26.000000000 +0200
+++ live.new/testProgs/playCommon.cpp	2013-07-16 16:09:06.751553274 +0200
@@ -88,6 +88,7 @@ Boolean sendOptionsRequestOnly = False;
 Boolean oneFilePerFrame = False;
 Boolean notifyOnPacketArrival = False;
 Boolean streamUsingTCP = False;
+Boolean forceMulticastOnUnspecified = False;
 unsigned short desiredPortNum = 0;
 portNumBits tunnelOverHTTPPortNum = 0;
 char* username = NULL;
@@ -466,6 +467,11 @@ int main(int argc, char** argv) {
       break;
     }
 
+    case 'W': {
+      forceMulticastOnUnspecified = True;
+      break;
+    }
+
     default: {
       *env << "Invalid option: " << opt << "\n";
       usage();
@@ -722,7 +728,7 @@ void setupStreams() {
     // We have another subsession left to set up:
     if (subsession->clientPortNum() == 0) continue; // port # was not set
 
-    setupSubsession(subsession, streamUsingTCP, continueAfterSETUP);
+    setupSubsession(subsession, streamUsingTCP, forceMulticastOnUnspecified, continueAfterSETUP);
     return;
   }
 
diff -rup live/testProgs/playCommon.hh live.new/testProgs/playCommon.hh
--- live/testProgs/playCommon.hh	2013-07-16 08:19:26.000000000 +0200
+++ live.new/testProgs/playCommon.hh	2013-07-16 16:02:34.601418834 +0200
@@ -28,7 +28,7 @@ extern void getOptions(RTSPClient::respo
 
 extern void getSDPDescription(RTSPClient::responseHandler* afterFunc);
 
-extern void setupSubsession(MediaSubsession* subsession, Boolean streamUsingTCP, RTSPClient::responseHandler* afterFunc);
+extern void setupSubsession(MediaSubsession* subsession, Boolean streamUsingTCP, Boolean forceMulticastOnUnspecified, RTSPClient::responseHandler* afterFunc);
 
 extern void startPlayingSession(MediaSession* session, double start, double end, float scale, RTSPClient::responseHandler* afterFunc);
 
diff -rup live/testProgs/playSIP.cpp live.new/testProgs/playSIP.cpp
--- live/testProgs/playSIP.cpp	2013-07-16 08:19:26.000000000 +0200
+++ live.new/testProgs/playSIP.cpp	2013-07-16 16:02:51.442585509 +0200
@@ -97,7 +97,7 @@ void getSDPDescription(RTSPClient::respo
   afterFunc(NULL, resultCode, strDup(result));
 }
 
-void setupSubsession(MediaSubsession* subsession, Boolean /*streamUsingTCP*/, RTSPClient::responseHandler* afterFunc) {
+void setupSubsession(MediaSubsession* subsession, Boolean /*streamUsingTCP*/, Boolean /*forceMulticastOnUnspecified*/,RTSPClient::responseHandler* afterFunc) {
   subsession->setSessionId("mumble"); // anything that's non-NULL will work
 
   ////////// BEGIN hack code that should really be implemented in SIPClient //////////
Seulement dans live.new/testProgs/: testRTSPClient.cpp.save
