[SCM] Mumudvb packaging branch, upstream, updated. 24c2efb080b56abb8e7be67bae30ba7fe457759e
Brice DUBOST
braice at braice.net
Sat Nov 1 13:31:05 UTC 2008
The following commit has been merged in the upstream branch:
commit 56e10a08e70814eb5f227fdf0c3744dbab668903
Author: Brice DUBOST <braice at braice.net>
Date: Sun Oct 19 14:27:55 2008 +0200
New option : multicast_ttl to override the default ttl
diff --git a/Changelog b/Changelog
index ec11825..6688c01 100644
--- a/Changelog
+++ b/Changelog
@@ -1,3 +1,11 @@
+-- Mumudvb 1.5.3 --
+
+New features :
+ * Option multicast_ttl to override default ttl
+
+Bugs corrected :
+ * Better conformances to RFC for sap announces (this correct issues with VLC < 0.8.6f)
+
-- Mumudvb 1.5.2 --
New features :
diff --git a/doc/README_CONF b/doc/README_CONF
index 63d5cc1..e5f0941 100644
--- a/doc/README_CONF
+++ b/doc/README_CONF
@@ -22,6 +22,7 @@ All parameters are in the form : name=value
||timeout_accord ||tuning timeout (in seconds) (default : 300 (5min)) ||
||timeout_no_diff ||if the program doesn't stream any chanels, he will kill himself at the end of this time (in seconds) (default : 600 (10min)) ||
||common_port ||If you don't want to specify the port for each channel, it will be the default port (if you use autoconfiguration=2 default : 1234) ||
+||multicast_ttl ||If you want to override the default multicast ttl, use this option. ||
||rewrite_pat ||specify if we wants the PAT rewriting feature ||
||cam_support ||specify if we wants the support for scrambled channels ||
||cam_number ||the number of the CAM we want to use (default 0) ||
diff --git a/doc/README_CONF-fr b/doc/README_CONF-fr
index 14a1f19..d9385cb 100644
--- a/doc/README_CONF-fr
+++ b/doc/README_CONF-fr
@@ -21,6 +21,7 @@ Tous les param
||timeout_accord ||temps que l'on laisse à la carte pour s'accorder sur la fréquence (en secondes) (défaut : 300 (5min)) ||
||timeout_no_diff ||si le programme ne diffuse aucune chaîne, il se tuera au bout de ce temps (en secondes) (défaut : 600 (10min)) ||
||common_port ||Si vous ne voulez pas spécifier le port pour chaque chaine c'est le port qui sera utilisé par défaut (si vous utilisez autoconfiguration=2, défaut : 1234) ||
+||multicast_ttl ||Si vous voulez utiliser un Time to Live différent de celui par défaut. ||
||rewrite_pat ||Spécifie si l'on veut la réécriture du PID PAT à la volée ||
||cam_support ||Spécifie si l'on veut le support pour les chaines cryptées ||
||cam_number ||Le numéro du module cam (défaut : 0) ||
@@ -46,7 +47,7 @@ Tous les param
== Note ==
-Vous devez spécifier
+Si vous n'utilisez pas l'autoconfiguration, vous devez spécifier
* Le pid audio
* Le pid Vidéo
* Le pid PMT
diff --git a/src/mumudvb.c b/src/mumudvb.c
index e67a89b..5953693 100644
--- a/src/mumudvb.c
+++ b/src/mumudvb.c
@@ -56,6 +56,8 @@
extern uint32_t crc32_table[256];
+int multicast_ttl=DEFAULT_TTL;
+
/* Signal handling code shamelessly copied from VDR by Klaus Schmidinger
- see http://www.cadsoft.de/people/kls/vdr/index.htm */
@@ -499,6 +501,11 @@ main (int argc, char **argv)
substring = strtok (NULL, delimiteurs);
common_port = atoi (substring);
}
+ else if (!strcmp (substring, "multicast_ttl"))
+ {
+ substring = strtok (NULL, delimiteurs);
+ multicast_ttl = atoi (substring);
+ }
else if (!strcmp (substring, "port"))
{
substring = strtok (NULL, delimiteurs);
@@ -971,7 +978,7 @@ main (int argc, char **argv)
{
//we use makeclientsocket in order to join the multicast group associated with the channel
//Some switches (like HP Procurve 26xx) broadcast multicast traffic when there is no client to the group
- channels[curr_channel].socketOut = makeclientsocket (channels[curr_channel].ipOut, channels[curr_channel].portOut, DEFAULT_TTL, &channels[curr_channel].sOut);
+ channels[curr_channel].socketOut = makeclientsocket (channels[curr_channel].ipOut, channels[curr_channel].portOut, multicast_ttl, &channels[curr_channel].sOut);
}
@@ -1076,7 +1083,7 @@ main (int argc, char **argv)
set_ts_filt (fds.fd[curr_channel][0], channels[curr_channel].pids[0], DMX_PES_OTHER);
// Init udp
//TODO explain
- channels[curr_channel].socketOut = makeclientsocket (channels[curr_channel].ipOut, channels[curr_channel].portOut, DEFAULT_TTL, &channels[curr_channel].sOut);
+ channels[curr_channel].socketOut = makeclientsocket (channels[curr_channel].ipOut, channels[curr_channel].portOut, multicast_ttl, &channels[curr_channel].sOut);
}
log_message(MSG_DEBUG,"Autoconf : Step TWO, we get the video ond audio PIDs\n");
@@ -1348,8 +1355,7 @@ int mumudvb_close(int Interrupted, mumudvb_ts_packet_t *cam_pmt_ptr)
* This function also catches SIGPIPE and SIGUSR1
*
******************************************************/
-static void
-SignalHandler (int signum)
+static void SignalHandler (int signum)
{
struct timeval tv;
diff --git a/src/sap.c b/src/sap.c
index 21d1e83..93be8a4 100644
--- a/src/sap.c
+++ b/src/sap.c
@@ -29,6 +29,7 @@
extern char sap_sending_ip[20];
+extern int multicast_ttl;
//SAP_send : send the sap message
void sap_send(mumudvb_sap_message_t *sap_messages, int num_messages)
@@ -139,7 +140,7 @@ int sap_add_program(mumudvb_channel_t channel, mumudvb_sap_message_t *sap_messag
sprintf(temp_string,"v=0\r\no=%s %d %d IN IP4 %s\r\ns=%s\r\nc=IN IP4 %s/%d\r\n",
sap_organisation, sap_serial, sap_message->version, channel.ipOut,
channel.name,
- channel.ipOut, DEFAULT_TTL);
+ channel.ipOut, multicast_ttl);
if( (sap_message->len+payload_len+strlen(temp_string))>1024)
{
log_message(MSG_WARN,"Warning : SAP message too long for channel %s\n",channel.name);
--
Mumudvb packaging
More information about the pkg-vdr-dvb-changes
mailing list