This commit is contained in:
Jaroslav Kysela 2018-03-05 21:37:06 +01:00
parent 446acbadbc
commit 17110b0b95
4 changed files with 39 additions and 105 deletions

View File

@ -33,7 +33,7 @@ KMODULES = drivers/usb/serial/cp210x.ko \
MINISATIP_COMMIT=54df9348e7bd7e6075f54f1b93ec4ad36429abe0
MINISATIP5_COMMIT=67e88c2d743d6df9c4a96aad772414169f61b764
MINISATIP7_COMMIT=d22ba0dfe3c706c3ab6ad86486d8a9e913080f7e
MINISATIP8_COMMIT=07b4dd8e606b0e27761f1531c83386f1e5b4b2d0
MINISATIP8_COMMIT=2ec668f16527d35a2162d5518fbdef2a3bda6712
BUSYBOX=busybox-1.26.2

View File

@ -4,6 +4,6 @@ vm.vfs_cache_pressure = 20
vm.dirty_ratio = 40
net.core.rmem_max=524288
net.core.wmem_max=524288
net.core.wmem_max=12582912
net.ipv4.tcp_rmem=4096 65536 65536
net.ipv4.tcp_wmem=65536 65536 524288

View File

@ -297,7 +297,7 @@ index 375a820..0445820 100755
void set_nopm_adapters(char *o);
void set_adapter_dmxsource(char *o);
diff --git a/axe.c b/axe.c
index 486b2f8..1373ba7 100755
index 486b2f8..b77b62d 100755
--- a/axe.c
+++ b/axe.c
@@ -47,10 +47,7 @@
@ -555,6 +555,15 @@ index 486b2f8..1373ba7 100755
ad->type = ADAPTER_DVB;
close(fd);
na++;
@@ -622,7 +763,7 @@ void free_axe_input(adapter *ad)
adapter *ad2;
for (aid = 0; aid < 4; aid++) {
- ad2 = get_adapter(aid);
+ ad2 = get_configured_adapter(aid);
if(ad2)
ad2->axe_used &= ~(1 << ad->id);
}
@@ -715,7 +856,6 @@ adapter *axe_vdevice_sync(int aid)
char buf[1024], *p;
int64_t t;

View File

@ -1,85 +1,35 @@
diff --git a/src/adapter.c b/src/adapter.c
index 0baf965..37fb791 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -515,7 +515,7 @@ int getAdaptersCount()
tuner_t2 = tt2;
if (!opts.force_cadapter)
tuner_c = tc;
- if (!opts.force_cadapter)
+ if (!opts.force_tadapter)
tuner_t = tt;
tuner_at = tat;
tuner_ac = tac;
@@ -881,7 +881,6 @@ int tune(int aid, int sid)
{
adapter *ad = get_adapter(aid);
int rv = 0, flush_data = 0;
- SPid *p;
if (!ad)
return -400;
@@ -913,7 +912,7 @@ int tune(int aid, int sid)
}
}
#ifndef DISABLE_PMT
- p = find_pid(aid, 0);
+ SPid *p = find_pid(aid, 0);
SPid *p_all = find_pid(aid, 8192);
if ((!p || p->flags == 3) && (!p_all || p_all->flags == 3)) // add pid 0 if not explicitly added
{
diff --git a/src/axe.c b/src/axe.c
index c4f2c6d..9383d7c 100644
index 9383d7c..e999a53 100644
--- a/src/axe.c
+++ b/src/axe.c
@@ -669,14 +669,14 @@ fe_delivery_system_t axe_delsys(int aid, int fd, fe_delivery_system_t *sys)
@@ -48,7 +48,7 @@
void axe_get_signal(adapter *ad)
{
- uint16_t strength = 0, snr = 0;
- uint32_t status = 0, ber = 0, tmp;
+ int strength = 0, snr = 0;
+ int status = 0, ber = 0, tmp;
get_signal(ad, &status, &ber, &strength, &snr);
#ifndef DISABLE_LINUXDVB
-void get_signal(adapter *ad, uint32_t *status, uint32_t *ber, uint16_t *strength, uint16_t *snr);
+void get_signal(adapter *ad, int *status, int *ber, int *strength, int *snr);
int send_jess(adapter *ad, int fd, int freq, int pos, int pol, int hiband, diseqc *d);
int send_unicable(adapter *ad, int fd, int freq, int pos, int pol, int hiband, diseqc *d);
int send_diseqc(adapter *ad, int fd, int pos, int pos_change, int pol, int hiband, diseqc *d);
@@ -819,9 +819,11 @@ void free_axe_input(adapter *ad)
for (aid = 0; aid < 4; aid++)
{
- ad2 = get_adapter(aid);
- if (ad2)
+ ad2 = get_configured_adapter(aid);
+ if (ad2) {
ad2->axe_used &= ~(1 << ad->id);
+ LOGM("axe: free input %d : %04x", ad2->id, ad2->axe_used);
+ }
}
}
strength = strength * 240 / 24000;
if (strength > 240)
strength = 240;
- tmp = (uint32_t)snr * 255 / 54000;
+ tmp = snr * 255 / 54000;
if (tmp > 255)
tmp = 255;
if (tmp <= 15)
diff --git a/src/minisatip.c b/src/minisatip.c
index 5f369ff..909072a 100644
index 0f47290..909072a 100644
--- a/src/minisatip.c
+++ b/src/minisatip.c
@@ -112,6 +112,7 @@ int rtsp, http, si, si1, ssdp1;
#define SIGNALMULTIPLIER_OPT 'M'
#define DEVICEID_OPT 'D'
#define DEMUXDEV_OPT '1'
+#define TCPMAXPACK_OPT '2'
static const struct option long_options[] =
{
@@ -156,6 +157,7 @@ static const struct option long_options[] =
{"dmx-source", required_argument, NULL, '9'},
{"lnb", required_argument, NULL, 'L'},
{"xml", required_argument, NULL, 'X'},
+ {"tcp-max-pack", required_argument, NULL, '2'},
{"help", no_argument, NULL, 'h'},
{"version", no_argument, NULL, 'V'},
#ifdef AXE
@@ -276,6 +278,8 @@ Help\n\
* -B X : set the app socket write buffer to X KB. \n\
* eg: -B 10000 - to set the socket buffer to 10MB\n\
\n\
+* -2 --tcp-max-pack X : set the TCP data chunk size in MPEG-TS packets (188 bytes), default value is 42\n\
+\n\
* -d --diseqc ADAPTER1:COMMITTED1-UNCOMMITTED1[,ADAPTER2:COMMITTED2-UNCOMMITTED2[,...]\n\
\t* The first argument is the adapter number, second is the number of committed packets to send to a Diseqc 1.0 switch, third the number of uncommitted commands to sent to a Diseqc 1.1 switch\n\
\tThe higher number between the committed and uncommitted will be sent first.\n\
@@ -547,14 +551,14 @@ void set_options(int argc, char *argv[])
@@ -551,7 +551,7 @@ void set_options(int argc, char *argv[])
#endif
#ifdef AXE
opts.no_threads = 1;
@ -88,33 +38,8 @@ index 5f369ff..909072a 100644
#define AXE_OPTS "7:QW:8:A:"
#else
#define AXE_OPTS ""
#endif
- while ((opt = getopt_long(argc, argv, "fl:v:r:a:td:w:p:s:n:hB:b:H:m:p:e:x:u:j:o:gy:i:q:D:NVR:S:TX:Y:OL:EP:Z:0:F:M:1:" AXE_OPTS, long_options, NULL)) != -1)
+ while ((opt = getopt_long(argc, argv, "fl:v:r:a:td:w:p:s:n:hB:b:H:m:p:e:x:u:j:o:gy:i:q:D:NVR:S:TX:Y:OL:EP:Z:0:F:M:1:2:" AXE_OPTS, long_options, NULL)) != -1)
{
// printf("options %d %c %s\n",opt,opt,optarg);
switch (opt)
@@ -700,6 +704,16 @@ void set_options(int argc, char *argv[])
break;
}
+ case TCPMAXPACK_OPT:
+ {
+ opts.tcp_max_pack = atoi(optarg);
+ if (opts.tcp_max_pack < 7)
+ opts.tcp_max_pack = 7;
+ else if (opts.tcp_max_pack > 697)
+ opts.tcp_max_pack = 697;
+ break;
+ }
+
case DVBS2_ADAPTERS_OPT:
{
sscanf(optarg, "%d:%d:%d", &opts.force_sadapter,
diff --git a/src/minisatip.h b/src/minisatip.h
index 3797f5a..3def916 100644
index 3797f5a..0d73411 100644
--- a/src/minisatip.h
+++ b/src/minisatip.h
@@ -9,7 +9,7 @@
@ -122,12 +47,12 @@ index 3797f5a..3def916 100644
#define VERSION_BUILD "15"
#define CC(a, b, c) #a b #c
-#define VERSION CC(0.7., VERSION_BUILD, )
+#define VERSION CC(0.7., VERSION_BUILD, -axe206)
+#define VERSION CC(0.7., VERSION_BUILD, -axe207)
void set_options(int argc, char *argv[]);
diff --git a/src/stream.c b/src/stream.c
index 879a788..f82a5e3 100644
index 35102f4..c85a2d6 100644
--- a/src/stream.c
+++ b/src/stream.c
@@ -973,7 +973,7 @@ int process_dmx(sockets *s)