]> git.sesse.net Git - vlc/commitdiff
Qt4: implement SAP in the streaming wizard
authorRémi Denis-Courmont <remi@remlab.net>
Tue, 1 Dec 2009 20:42:14 +0000 (22:42 +0200)
committerRémi Denis-Courmont <remi@remlab.net>
Tue, 1 Dec 2009 20:42:49 +0000 (22:42 +0200)
modules/gui/qt4/dialogs/sout.cpp
modules/stream_out/standard.c

index 9410fccaf3bc6ab01d8957c9670a3da3e000e20e..92490bd5f9d7879e7895d85a37efaabca84bb53a 100644 (file)
@@ -245,10 +245,29 @@ void SoutDialog::updateMRL()
 
     mrl = smrl.getMrl();
 
-    /* FIXME, deal with SAP
-    sout.b_sap = ui.sap->isChecked();
-    sout.psz_group = strdup( qtu( ui.sapGroup->text() ) );
-    sout.psz_name = strdup( qtu( ui.sapName->text() ) ); */
+    if( ui.sap->isChecked() )
+    {
+        QString group = ui.sapGroup->text();
+        QString name = ui.sapName->text();
+
+        /* FIXME: This sucks. We should really return a QStringList instead of
+         * (mis)quoting, concatainating and split input item paramters. */
+        name = name.replace( " ", " " );
+        group = group.replace( " ", " " );
+
+        /* We need to add options for both standard and rtp targets */
+        /* This is inelegant but simple and functional */
+        mrl.append( qfu( " :sout-rtp-sap" ) );
+        mrl.append( qfu( " :sout-rtp-name=" ) + name );
+        mrl.append( qfu( " :sout-standard-sap" ) );
+        mrl.append( qfu( " :sout-standard-name=" ) + name );
+        mrl.append( qfu( " :sout-standard-group=" ) + group );
+    }
+    else
+    {
+        mrl.append( qfu( " :no-sout-rtp-sap" ) );
+        mrl.append( qfu( " :no-sout-standard-sap" ) );
+    }
 
     if( ui.soutAll->isChecked() )  mrl.append( " :sout-all" );
 
index 98df6737588faf82b01fe00e6b6e411c04ff3c6a..8225c7d288ef06d5e2667d801b41fd39befc6bc3 100644 (file)
@@ -182,6 +182,8 @@ static int Open( vlc_object_t *p_this )
 
     const char          *psz_mux_byext = NULL;
 
+    (void)p_stream->psz_object_name;
+
     config_ChainParse( p_stream, SOUT_CFG_PREFIX, ppsz_sout_options,
                    p_stream->p_cfg );