<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span>well that messes up my "eit to another ip", i used 'k'</span></div><div><br><span></span></div><div><span>joolz<br></span></div><div><br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"><div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"><font size="2" face="Arial"><hr size="1"><b><span style="font-weight:bold;">From:</span></b> Georgi Chorbadzhiyski <gf@unixsol.org><br><b><span style="font-weight: bold;">To:</span></b> Mailing list for DVBlast developers <dvblast-devel@videolan.org><br><b><span style="font-weight: bold;">Sent:</span></b> Friday, 11 November 2011, 20:59<br><b><span style="font-weight: bold;">Subject:</span></b> Re:
 [dvblast-devel] dvb-s2 multistream<br></font><br>On 11/11/11 7:58 PM, Вячеслав Адаманов wrote:<br>> Are there any plans support multistream transponders?!<br><br>Well aren't you a very impatient guy :) The patch for mis support<br>is only two weeks old and have not found it's way into Linux yet<br>(I'm looking at 3.2-rc1-git from today). I'm talking about the<br>patch(es) at: <a href="http://www.tbsdtv.com/forum/viewtopic.php?f=26&t=1874" target="_blank">http://www.tbsdtv.com/forum/viewtopic.php?f=26&t=1874</a><br><br>Any way, attached is a test patch for dvblast that implements<br>multisteam support. It is only compile tested.<br><br>-- Georgi Chorbadzhiyski<br><a href="http://georgi.unixsol.org/" target="_blank">http://georgi.unixsol.org/</a><br><br>From 39d2a66a9cc800d843e91c04aba8fb7e19b9d5d4 Mon Sep 17 00:00:00 2001<br>From: Georgi Chorbadzhiyski <<a ymailto="mailto:gf@unixsol.org"
 href="mailto:gf@unixsol.org">gf@unixsol.org</a>><br>Date: Fri, 11 Nov 2011 21:55:40 +0200<br>Subject: [PATCH] Add test support for DVB-S2 multistream.<br><br>---<br> dvb.c     |   12 ++++++++++--<br> dvblast.c |   13 ++++++++++---<br> dvblast.h |   11 +++++++++++<br> 3 files changed, 31 insertions(+), 5 deletions(-)<br><br>diff --git a/dvb.c b/dvb.c<br>index 557b7d3..f603030 100644<br>--- a/dvb.c<br>+++ b/dvb.c<br>@@ -781,6 +781,9 @@ static struct dtv_property dvbs2_cmdargs[] = {<br>     { .cmd = DTV_DELIVERY_SYSTEM, .u.data = SYS_DVBS2 },<br>     { .cmd = DTV_PILOT,           .u.data = PILOT_AUTO },<br>     { .cmd = DTV_ROLLOFF,         .u.data = ROLLOFF_AUTO },<br>+#if DVBS2_MIS_IS_SUPPORTED<br>+    { .cmd = DTV_DVBS2_MIS_ID,    .u.data = 0 },<br>+#endif<br>     { .cmd = DTV_TUNE },<br> };<br> static struct
 dtv_properties dvbs2_cmdseq = {<br>@@ -842,6 +845,7 @@ static struct dtv_properties atsc_cmdseq = {<br> #define PILOT 6<br> #define TRANSMISSION 7<br> #define ROLLOFF 7<br>+#define MIS 8<br> #define HIERARCHY 8<br> <br> struct dtv_property pclear[] = {<br>@@ -916,6 +920,9 @@ static void FrontendSet( bool b_init )<br>             p->props[MODULATION].u.data = GetModulation();<br>             p->props[PILOT].u.data = GetPilot();<br>             p->props[ROLLOFF].u.data = GetRollOff();<br>+#if DVBS2_MIS_IS_SUPPORTED<br>+            p->props[MIS].u.data = i_mis;<br>+#endif<br>         }<br>         else<br>             p = &dvbs_cmdseq;<br>@@ -925,9 +932,10 @@ static void FrontendSet( bool b_init )<br>        
 p->props[FEC_INNER].u.data = GetFECInner(info.caps);<br>         p->props[FREQUENCY].u.data = FrontendDoDiseqc();<br> <br>-        msg_Dbg( NULL, "tuning QPSK frontend to f=%d srate=%d inversion=%d fec=%d rolloff=%d modulation=%s pilot=%d",<br>+        msg_Dbg( NULL, "tuning QPSK frontend to f=%d srate=%d inversion=%d fec=%d rolloff=%d modulation=%s pilot=%d mis=%d",<br>                  i_frequency, i_srate, i_inversion, i_fec, i_rolloff,<br>-                 psz_modulation == NULL ? "legacy" : psz_modulation, i_pilot );<br>+                 psz_modulation == NULL ? "legacy" : psz_modulation, i_pilot,<br>+                 i_mis );<br>         break;<br> <br>     case FE_ATSC:<br>diff --git
 a/dvblast.c b/dvblast.c<br>index 93a2dea..2e38135 100644<br>--- a/dvblast.c<br>+++ b/dvblast.c<br>@@ -73,6 +73,7 @@ int b_tone = 0;<br> int i_bandwidth = 8;<br> char *psz_modulation = NULL;<br> int i_pilot = -1;<br>+int i_mis = 0;<br> int i_fec_lp = 999;<br> int i_guard = -1;<br> int i_transmission = -1;<br>@@ -452,7 +453,7 @@ void usage()<br>         "[-i <RT priority>] [-a <adapter>] [-n <frontend number>] [-S <diseqc>] "<br>         "[-f <frequency>|-D [<src host>[:<src port>]@]<src mcast>[:<port>][/<opts>]*|-A <ASI adapter>] "<br>         "[-s <symbol rate>] [-v <0|13|18>] [-p] [-b <bandwidth>] [-I <inversion>] "<br>-        "[-F <fec inner>] [-m <modulation] [-R <rolloff>] [-P <pilot>] [-K <fec lp>] "<br>+        "[-F <fec
 inner>] [-m <modulation] [-R <rolloff>] [-P <pilot>] [-K <fec lp>] [-k <dvbs2_mutistream_id>] "<br>         "[-G <guard interval>] [-H <hierarchy>] [-X <transmission>] [-O <lock timeout>] "<br>         "[-u] [-w] [-U] [-L <latency>] [-E <retention>] [-d <dest IP>[<:port>][/<opts>]*] "<br>         "[-z] [-C [-e] [-M <network name] [-N <network ID>]] [-T] [-j <system charset>] "<br>@@ -477,6 +478,7 @@ void usage()<br>     msg_Raw( NULL, "  -P --pilot            DVB-S2 Pilot (-1 auto, 0 off, 1 on)" );<br>     msg_Raw( NULL, "  -R --rolloff          DVB-S2 Rolloff value" );<br>     msg_Raw( NULL, "    DVB-S2 35=0.35|25=0.25|20=0.20|0=AUTO (default: 35)" );<br>+    msg_Raw( NULL, " 
 -k --multistream-id   DVB-S2 multistream id (0-255, default: 0) /Only with DVB API >= 5.5?/" );<br>     msg_Raw( NULL, "  -K --fec-lp           DVB-T low priority FEC (default auto)" );<br>     msg_Raw( NULL, "  -G --guard            DVB-T guard interval" );<br>     msg_Raw( NULL, "    DVB-T  32 (1/32)|16 (1/16)|8 (1/8)|4 (1/4)|-1 (auto, default)" );<br>@@ -542,7 +544,7 @@ int main( int i_argc, char **pp_argv )<br>         usage();<br> <br>     /*<br>-     * The only short options left are: ky0123456789<br>+     * The only short options left are: y0123456789<br>      * Use them wisely.<br>      */<br>     static const struct option long_options[] =<br>@@ -565,6 +567,7 @@ int main( int i_argc, char **pp_argv )<br>         {
 "inversion",       required_argument, NULL, 'I' },<br>         { "modulation",      required_argument, NULL, 'm' },<br>         { "pilot",           required_argument, NULL, 'P' },<br>+        { "mutistream-id",   required_argument, NULL, 'k' },<br>         { "fec-lp",          required_argument, NULL, 'K' },<br>         { "guard",           required_argument, NULL, 'G' },<br>         { "hierarchy",       required_argument, NULL, 'H' },<br>@@ -600,7 +603,7 @@ int main( int i_argc, char **pp_argv )<br>         { 0, 0, 0, 0 }<br>     };<br> <br>-    while ( (c = getopt_long(i_argc, pp_argv,
 "q::c:r:t:o:i:a:n:f:F:R:s:S:v:pb:I:m:P:K:G:H:X:O:uwUTL:E:d:D:A:lg:zCWYeM:N:j:J:B:x:Q:hVZ:", long_options, NULL)) != -1 )<br>+    while ( (c = getopt_long(i_argc, pp_argv, "q::c:r:t:o:i:a:n:f:F:R:s:S:v:pb:I:m:P:k:K:G:H:X:O:uwUTL:E:d:D:A:lg:zCWYeM:N:j:J:B:x:Q:hVZ:", long_options, NULL)) != -1 )<br>     {<br>         switch ( c )<br>         {<br>@@ -711,6 +714,10 @@ int main( int i_argc, char **pp_argv )<br>             i_pilot = strtol( optarg, NULL, 0 );<br>             break;<br> <br>+        case 'k':<br>+            i_mis = strtol( optarg, NULL, 0 );<br>+            break;<br>+<br>         case 'K':<br>             i_fec_lp = strtol( optarg, NULL, 0 );<br>            
 break;<br>diff --git a/dvblast.h b/dvblast.h<br>index 40ce4c4..19b64ca 100644<br>--- a/dvblast.h<br>+++ b/dvblast.h<br>@@ -24,6 +24,16 @@<br> #include <netdb.h><br> #include <sys/socket.h><br> <br>+#if DVBAPI_VERSION >= 505<br>+    #define DVBS2_MIS_IS_SUPPORTED 1<br>+#endif<br>+<br>+/* Debug code to test mutistream with older DVB headers */<br>+#if 1 && DVBAPI_VERSION < 505<br>+    #define DVBS2_MIS_IS_SUPPORTED 1<br>+    #define DTV_DVBS2_MIS_ID 44<br>+#endif<br>+<br> #define HAVE_CLOCK_NANOSLEEP<br> #define HAVE_ICONV<br> <br>@@ -167,6 +177,7 @@ extern int i_bandwidth;<br> extern int i_inversion;<br> extern char *psz_modulation;<br> extern int i_pilot;<br>+extern int i_mis;<br> extern int i_fec_lp;<br> extern int i_guard;<br> extern int i_transmission;<br>-- <br>1.7.5.1<br><br><br>_______________________________________________<br>dvblast-devel mailing list<br><a
 ymailto="mailto:dvblast-devel@videolan.org" href="mailto:dvblast-devel@videolan.org">dvblast-devel@videolan.org</a><br><a href="http://mailman.videolan.org/listinfo/dvblast-devel" target="_blank">http://mailman.videolan.org/listinfo/dvblast-devel</a><br><br><br></div></div></blockquote></div></div></body></html>