]> git.sesse.net Git - vlc/blobdiff - modules/stream_out/standard.c
* Added group announcing support
[vlc] / modules / stream_out / standard.c
index beecb1aee0abb9366c9587c4355e1dccd1e2d0c7..f8a87116415303a9249d865e784670cf093529b2 100644 (file)
 #define NAME_LONGTEXT N_( \
     "Name of the session that will be announced with SAP or SLP" )
 
+#define GROUP_TEXT N_("Session groupname")
+#define GROUP_LONGTEXT N_( \
+    "Name of the group that will be announced for the session" )
+
 #define SAP_TEXT N_("SAP announcing")
 #define SAP_LONGTEXT N_("Announce this session with SAP")
 
@@ -84,8 +88,10 @@ vlc_module_begin();
                 URL_LONGTEXT, VLC_FALSE );
 
     add_bool( SOUT_CFG_PREFIX "sap", 0, NULL, SAP_TEXT, SAP_LONGTEXT, VLC_TRUE );
-    add_string( SOUT_CFG_PREFIX "name", "", NULL, NAME_TEXT,NAME_LONGTEXT
-                                     , VLC_TRUE );
+    add_string( SOUT_CFG_PREFIX "name", "", NULL, NAME_TEXT, NAME_LONGTEXT,
+                                        VLC_TRUE );
+    add_string( SOUT_CFG_PREFIX "group", "", NULL, GROUP_TEXT, GROUP_LONGTEXT,
+                                        VLC_TRUE );
     add_bool( SOUT_CFG_PREFIX "sap-ipv6", 0, NULL, SAPv6_TEXT, SAPv6_LONGTEXT,
                                         VLC_TRUE );
 
@@ -100,8 +106,8 @@ vlc_module_end();
  *****************************************************************************/
 static const char *ppsz_sout_options[] = {
     "access", "mux", "url",
-    "sap", "name", "sap-ipv6",
-    "slp",NULL
+    "sap", "name", "sap-ipv6", "group",
+    "slp", NULL
 };
 
 #define DEFAULT_IPV6_SCOPE '8'
@@ -325,13 +331,21 @@ static int Open( vlc_object_t *p_this )
         var_Get( p_stream, SOUT_CFG_PREFIX "name", &val );
         if( *val.psz_string )
         {
-            p_session->psz_name = val.psz_string;
+            p_session->psz_name = strdup( val.psz_string );
         }
         else
         {
-            free( val.psz_string );
             p_session->psz_name = strdup( psz_url );
         }
+        free( val.psz_string );
+
+        var_Get( p_stream, SOUT_CFG_PREFIX "group", &val );
+        if( *val.psz_string )
+        {
+            p_session->psz_group = strdup( val.psz_string );
+        }
+        free( val.psz_string );
+
         var_Get( p_stream, SOUT_CFG_PREFIX "sap-ipv6", &val );
         p_method->i_ip_version = val.b_bool ? 6 : 4;