annotate libmpdemux/dvb_tune.c @ 18150:710d4bc5f8c9

Using channel count, samplerate and input bps values from the container instead of the decoder breaks some DTS samples where the container says the audio has 6 channels but the decoder gives 2. In this case take the number of channels from the decoder instead, the output will almost certainly be badly garbled anyway if the number of channels is wrong. patch by Uoti Urpala, uoti <<.>> urpala <<@>> pp1 <<.>> inet <<.>> fi
author diego
date Wed, 19 Apr 2006 20:12:01 +0000
parents 6ff3379a0862
children 15fbdb09330f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
1 /* dvbtune - tune.c
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
2
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
3 Copyright (C) Dave Chapman 2001,2002
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
4
15178
8dd7a656eaf8 Mark modified imported files as such to comply more closely with GPL ¡ø2a.
diego
parents: 14382
diff changeset
5 Modified for use with MPlayer, for details see the CVS changelog at
8dd7a656eaf8 Mark modified imported files as such to comply more closely with GPL ¡ø2a.
diego
parents: 14382
diff changeset
6 http://www.mplayerhq.hu/cgi-bin/cvsweb.cgi/main/
8dd7a656eaf8 Mark modified imported files as such to comply more closely with GPL ¡ø2a.
diego
parents: 14382
diff changeset
7 $Id$
8dd7a656eaf8 Mark modified imported files as such to comply more closely with GPL ¡ø2a.
diego
parents: 14382
diff changeset
8
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
9 This program is free software; you can redistribute it and/or
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
10 modify it under the terms of the GNU General Public License
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
11 as published by the Free Software Foundation; either version 2
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
12 of the License, or (at your option) any later version.
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
13
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
14 This program is distributed in the hope that it will be useful,
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
17 GNU General Public License for more details.
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
18
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
19 You should have received a copy of the GNU General Public License
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
20 along with this program; if not, write to the Free Software
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
21 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
22 Or, point your browser to http://www.gnu.org/copyleft/gpl.html
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
23
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
24 */
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
25
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
26 #include <stdio.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
27 #include <stdlib.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
28 #include <ctype.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
29 #include <sys/ioctl.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
30 #include <sys/poll.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
31 #include <unistd.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
32 #include <fcntl.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
33 #include <error.h>
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
34 #include <time.h>
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
35 #include <errno.h>
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
36 #include "config.h"
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
37
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
38 #ifdef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
39 #include <linux/dvb/dmx.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
40 #include <linux/dvb/frontend.h>
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
41 char* dvb_frontenddev[4]={"/dev/dvb/adapter0/frontend0","/dev/dvb/adapter1/frontend0","/dev/dvb/adapter2/frontend0","/dev/dvb/adapter3/frontend0"};
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
42 char* dvb_dvrdev[4]={"/dev/dvb/adapter0/dvr0","/dev/dvb/adapter1/dvr0","/dev/dvb/adapter2/dvr0","/dev/dvb/adapter3/dvr0"};
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
43 char* dvb_demuxdev[4]={"/dev/dvb/adapter0/demux0","/dev/dvb/adapter1/demux0","/dev/dvb/adapter2/demux0","/dev/dvb/adapter3/demux0"};
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
44 static char* dvb_secdev[4]={"","","",""}; //UNUSED, ONLY FOR UNIFORMITY
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
45 #else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
46 #include <ost/dmx.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
47 #include <ost/sec.h>
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
48 #include <ost/frontend.h>
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
49 char* dvb_frontenddev[4]={"/dev/ost/frontend0","/dev/ost/frontend1","/dev/ost/frontend2","/dev/ost/frontend3"};
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
50 char* dvb_dvrdev[4]={"/dev/ost/dvr0","/dev/ost/dvr1","/dev/ost/dvr2","/dev/ost/dvr3"};
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
51 static char* dvb_secdev[4]={"/dev/ost/sec0","/dev/ost/sec1","/dev/ost/sec2","/dev/ost/sec3"};
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
52 char* dvb_demuxdev[4]={"/dev/ost/demux0","/dev/ost/demux1","/dev/ost/demux2","/dev/ost/demux3"};
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
53 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
54
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
55 #include "dvbin.h"
17012
6ff3379a0862 Unify include path handling, -I.. is in CFLAGS.
diego
parents: 15178
diff changeset
56 #include "mp_msg.h"
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
57
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
58
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
59
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
60 int dvb_get_tuner_type(int fe_fd)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
61 {
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
62 #ifdef HAVE_DVB_HEAD
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
63 struct dvb_frontend_info fe_info;
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
64 #else
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
65 FrontendInfo fe_info;
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
66 #endif
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
67
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
68 int res;
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
69
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
70 res = ioctl(fe_fd, FE_GET_INFO, &fe_info);
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
71 if(res < 0)
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
72 {
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
73 mp_msg(MSGT_DEMUX, MSGL_ERR, "FE_GET_INFO error: %d, FD: %d\n\n", errno, fe_fd);
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
74 return 0;
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
75 }
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
76
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
77 switch(fe_info.type)
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
78 {
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
79 case FE_OFDM:
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
80 mp_msg(MSGT_DEMUX, MSGL_V, "TUNER TYPE SEEMS TO BE DVB-T\n");
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
81 return TUNER_TER;
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
82
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
83 case FE_QPSK:
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
84 mp_msg(MSGT_DEMUX, MSGL_V, "TUNER TYPE SEEMS TO BE DVB-S\n");
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
85 return TUNER_SAT;
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
86
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
87 case FE_QAM:
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
88 mp_msg(MSGT_DEMUX, MSGL_V, "TUNER TYPE SEEMS TO BE DVB-C\n");
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
89 return TUNER_CBL;
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
90
14382
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
91 #ifdef DVB_ATSC
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
92 case FE_ATSC:
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
93 mp_msg(MSGT_DEMUX, MSGL_V, "TUNER TYPE SEEMS TO BE DVB-ATSC\n");
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
94 return TUNER_ATSC;
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
95 #endif
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
96 default:
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
97 mp_msg(MSGT_DEMUX, MSGL_ERR, "UNKNOWN TUNER TYPE\n");
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
98 return 0;
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
99 }
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
100
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
101 }
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
102
12803
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
103 int dvb_set_ts_filt(int fd, uint16_t pid, dmx_pes_type_t pestype);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
104
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
105 int dvb_open_devices(dvb_priv_t *priv, int n, int demux_cnt, int *pids)
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
106 {
12803
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
107 int i;
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
108
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
109 priv->fe_fd = open(dvb_frontenddev[n], O_RDWR | O_NONBLOCK);
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
110 if(priv->fe_fd < 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
111 {
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
112 mp_msg(MSGT_DEMUX, MSGL_ERR, "ERROR OPENING FRONTEND DEVICE %s: ERRNO %d\n", dvb_frontenddev[n], errno);
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
113 return 0;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
114 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
115 #ifdef HAVE_DVB_HEAD
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
116 priv->sec_fd=0;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
117 #else
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
118 priv->sec_fd = open(dvb_secdev[n], O_RDWR);
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
119 if(priv->sec_fd < 0)
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
120 {
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
121 mp_msg(MSGT_DEMUX, MSGL_ERR, "ERROR OPENING SEC DEVICE %s: ERRNO %d\n", dvb_secdev[n], errno);
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
122 close(priv->fe_fd);
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
123 return 0;
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
124 }
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
125 #endif
12803
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
126 priv->demux_fds_cnt = 0;
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
127 mp_msg(MSGT_DEMUX, MSGL_V, "DVB_OPEN_DEVICES(%d)\n", demux_cnt);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
128 for(i = 0; i < demux_cnt; i++)
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
129 {
12803
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
130 priv->demux_fds[i] = open(dvb_demuxdev[n], O_RDWR | O_NONBLOCK);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
131 if(priv->demux_fds[i] < 0)
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
132 {
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
133 mp_msg(MSGT_DEMUX, MSGL_ERR, "ERROR OPENING DEMUX 0: %d\n", errno);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
134 return 0;
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
135 }
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
136 else
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
137 {
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
138 mp_msg(MSGT_DEMUX, MSGL_V, "OPEN(%d), file %s: FD=%d, CNT=%d\n", i, dvb_demuxdev[n], priv->demux_fds[i], priv->demux_fds_cnt);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
139 priv->demux_fds_cnt++;
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
140 }
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
141 }
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
142
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
143
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
144 priv->dvr_fd = open(dvb_dvrdev[n], O_RDONLY| O_NONBLOCK);
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
145 if(priv->dvr_fd < 0)
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
146 {
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
147 mp_msg(MSGT_DEMUX, MSGL_ERR, "ERROR OPENING DVR DEVICE %s: %d\n", dvb_dvrdev[n], errno);
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
148 return 0;
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
149 }
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
150
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
151 return 1;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
152 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
153
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
154
12803
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
155 int dvb_fix_demuxes(dvb_priv_t *priv, int cnt, int *pids)
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
156 {
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
157 int i;
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
158
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
159 mp_msg(MSGT_DEMUX, MSGL_V, "FIX %d -> %d\n", priv->demux_fds_cnt, cnt);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
160 if(priv->demux_fds_cnt >= cnt)
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
161 {
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
162 for(i = priv->demux_fds_cnt-1; i >= cnt; i--)
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
163 {
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
164 mp_msg(MSGT_DEMUX, MSGL_V, "FIX, CLOSE fd(%d): %d\n", i, priv->demux_fds[i]);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
165 close(priv->demux_fds[i]);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
166 }
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
167 priv->demux_fds_cnt = cnt;
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
168 }
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
169 else if(priv->demux_fds_cnt < cnt)
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
170 {
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
171 for(i = priv->demux_fds_cnt; i < cnt; i++)
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
172 {
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
173 priv->demux_fds[i] = open(dvb_demuxdev[priv->card], O_RDWR | O_NONBLOCK);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
174 mp_msg(MSGT_DEMUX, MSGL_V, "FIX, OPEN fd(%d): %d\n", i, priv->demux_fds[i]);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
175 if(priv->demux_fds[i] < 0)
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
176 {
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
177 mp_msg(MSGT_DEMUX, MSGL_ERR, "ERROR OPENING DEMUX 0: %d\n", errno);
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
178 return 0;
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
179 }
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
180 else
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
181 priv->demux_fds_cnt++;
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
182 }
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
183 }
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
184
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
185 return 1;
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
186 }
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
187
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
188 int dvb_set_ts_filt(int fd, uint16_t pid, dmx_pes_type_t pestype)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
189 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
190 int i;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
191 struct dmx_pes_filter_params pesFilterParams;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
192
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
193 pesFilterParams.pid = pid;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
194 pesFilterParams.input = DMX_IN_FRONTEND;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
195 pesFilterParams.output = DMX_OUT_TS_TAP;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
196 #ifdef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
197 pesFilterParams.pes_type = pestype;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
198 #else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
199 pesFilterParams.pesType = pestype;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
200 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
201
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
202 pesFilterParams.flags = DMX_IMMEDIATE_START;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
203
12803
168238f8c715 added multi-pid parsing code (up to 15), pid 0 is always added (for the PAT)
nicodvb
parents: 12309
diff changeset
204 errno = 0;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
205 if ((i = ioctl(fd, DMX_SET_PES_FILTER, &pesFilterParams)) < 0)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
206 {
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
207 mp_msg(MSGT_DEMUX, MSGL_ERR, "ERROR IN SETTING DMX_FILTER %i for fd %d: ERRNO: %d", pid, fd, errno);
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
208 return 0;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
209 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
210
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
211 mp_msg(MSGT_DEMUX, MSGL_V, "SET PES FILTER ON PID %d to fd %d, RESULT: %d, ERRNO: %d\n", pid, fd, i, errno);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
212 return 1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
213 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
214
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
215
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
216 int dvb_demux_stop(int fd)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
217 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
218 int i;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
219 i = ioctl(fd, DMX_STOP);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
220
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
221 mp_msg(MSGT_DEMUX, MSGL_DBG2, "STOPPING FD: %d, RESULT: %d\n", fd, i);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
222
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
223 return (i==0);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
224 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
225
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
226
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
227 int dvb_demux_start(int fd)
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
228 {
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
229 int i;
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
230 i = ioctl(fd, DMX_START);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
231
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
232 mp_msg(MSGT_DEMUX, MSGL_DBG2, "STARTING FD: %d, RESULT: %d\n", fd, i);
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
233
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
234 return (i==0);
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
235 }
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
236
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
237
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
238 static int tune_it(int fd_frontend, int fd_sec, unsigned int freq, unsigned int srate, char pol, int tone,
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
239 fe_spectral_inversion_t specInv, unsigned int diseqc, fe_modulation_t modulation, fe_code_rate_t HP_CodeRate,
13155
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
240 fe_transmit_mode_t TransmissionMode, fe_guard_interval_t guardInterval, fe_bandwidth_t bandwidth,
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
241 fe_code_rate_t LP_CodeRate, fe_hierarchy_t hier);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
242
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
243
12309
5c375ea5fb0f new configuration structure, gcc warn silencing
nicodvb
parents: 12048
diff changeset
244 int dvb_tune(dvb_priv_t *priv, int freq, char pol, int srate, int diseqc, int tone,
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
245 fe_spectral_inversion_t specInv, fe_modulation_t modulation, fe_guard_interval_t guardInterval,
13155
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
246 fe_transmit_mode_t TransmissionMode, fe_bandwidth_t bandWidth, fe_code_rate_t HP_CodeRate,
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
247 fe_code_rate_t LP_CodeRate, fe_hierarchy_t hier)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
248 {
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
249 int ris;
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
250
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
251 mp_msg(MSGT_DEMUX, MSGL_INFO, "dvb_tune Freq: %lu\n", (long unsigned int) freq);
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
252
13155
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
253 ris = tune_it(priv->fe_fd, priv->sec_fd, freq, srate, pol, tone, specInv, diseqc, modulation, HP_CodeRate, TransmissionMode, guardInterval, bandWidth, LP_CodeRate, hier);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
254
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
255 if(ris != 0)
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
256 mp_msg(MSGT_DEMUX, MSGL_INFO, "dvb_tune, TUNING FAILED\n");
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
257
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
258 return (ris == 0);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
259 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
260
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
261
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
262 #ifndef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
263 static int SecGetStatus (int fd, struct secStatus *state)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
264 {
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
265 if(ioctl(fd, SEC_GET_STATUS, state) < 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
266 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
267 mp_msg(MSGT_DEMUX, MSGL_ERR, ("SEC GET STATUS: "));
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
268 return -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
269 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
270
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
271 switch (state->busMode)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
272 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
273 case SEC_BUS_IDLE:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
274 mp_msg(MSGT_DEMUX, MSGL_V, "SEC BUS MODE: IDLE (%d)\n",state->busMode);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
275 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
276 case SEC_BUS_BUSY:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
277 mp_msg(MSGT_DEMUX, MSGL_V, "SEC BUS MODE: BUSY (%d)\n",state->busMode);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
278 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
279 case SEC_BUS_OFF:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
280 mp_msg(MSGT_DEMUX, MSGL_V, "SEC BUS MODE: OFF (%d)\n",state->busMode);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
281 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
282 case SEC_BUS_OVERLOAD:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
283 mp_msg(MSGT_DEMUX, MSGL_V, "SEC BUS MODE: OVERLOAD (%d)\n",state->busMode);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
284 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
285 default:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
286 mp_msg(MSGT_DEMUX, MSGL_V, "SEC BUS MODE: unknown (%d)\n",state->busMode);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
287 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
288 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
289
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
290 switch (state->selVolt)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
291 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
292 case SEC_VOLTAGE_OFF:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
293 mp_msg(MSGT_DEMUX, MSGL_V, "SEC VOLTAGE: OFF (%d)\n",state->selVolt);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
294 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
295 case SEC_VOLTAGE_LT:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
296 mp_msg(MSGT_DEMUX, MSGL_V, "SEC VOLTAGE: LT (%d)\n",state->selVolt);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
297 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
298 case SEC_VOLTAGE_13:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
299 mp_msg(MSGT_DEMUX, MSGL_V, "SEC VOLTAGE: 13 (%d)\n",state->selVolt);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
300 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
301 case SEC_VOLTAGE_13_5:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
302 mp_msg(MSGT_DEMUX, MSGL_V, "SEC VOLTAGE: 13.5 (%d)\n",state->selVolt);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
303 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
304 case SEC_VOLTAGE_18:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
305 mp_msg(MSGT_DEMUX, MSGL_V, "SEC VOLTAGE: 18 (%d)\n",state->selVolt);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
306 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
307 case SEC_VOLTAGE_18_5:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
308 mp_msg(MSGT_DEMUX, MSGL_V, "SEC VOLTAGE: 18.5 (%d)\n",state->selVolt);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
309 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
310 default:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
311 mp_msg(MSGT_DEMUX, MSGL_V, "SEC VOLTAGE: unknown (%d)\n",state->selVolt);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
312 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
313 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
314
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
315 mp_msg(MSGT_DEMUX, MSGL_V, "SEC CONT TONE: %s\n", (state->contTone == SEC_TONE_ON ? "ON" : "OFF"));
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
316 return 0;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
317 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
318
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
319 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
320
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
321 static void print_status(fe_status_t festatus)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
322 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
323 mp_msg(MSGT_DEMUX, MSGL_V, "FE_STATUS:");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
324 if (festatus & FE_HAS_SIGNAL) mp_msg(MSGT_DEMUX, MSGL_V," FE_HAS_SIGNAL");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
325 #ifdef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
326 if (festatus & FE_TIMEDOUT) mp_msg(MSGT_DEMUX, MSGL_V, " FE_TIMEDOUT");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
327 #else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
328 if (festatus & FE_HAS_POWER) mp_msg(MSGT_DEMUX, MSGL_V, " FE_HAS_POWER");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
329 if (festatus & FE_SPECTRUM_INV) mp_msg(MSGT_DEMUX, MSGL_V, " FE_SPECTRUM_INV");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
330 if (festatus & FE_TUNER_HAS_LOCK) mp_msg(MSGT_DEMUX, MSGL_V, " FE_TUNER_HAS_LOCK");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
331 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
332 if (festatus & FE_HAS_LOCK) mp_msg(MSGT_DEMUX, MSGL_V, " FE_HAS_LOCK");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
333 if (festatus & FE_HAS_CARRIER) mp_msg(MSGT_DEMUX, MSGL_V, " FE_HAS_CARRIER");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
334 if (festatus & FE_HAS_VITERBI) mp_msg(MSGT_DEMUX, MSGL_V, " FE_HAS_VITERBI");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
335 if (festatus & FE_HAS_SYNC) mp_msg(MSGT_DEMUX, MSGL_V, " FE_HAS_SYNC");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
336 mp_msg(MSGT_DEMUX, MSGL_V, "\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
337 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
338
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
339
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
340 #ifdef HAVE_DVB_HEAD
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
341 static int check_status(int fd_frontend,struct dvb_frontend_parameters* feparams, int tuner_type, uint32_t base)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
342 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
343 int32_t strength;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
344 fe_status_t festatus;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
345 struct pollfd pfd[1];
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
346 int ok=0, locks=0;
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
347 time_t tm1, tm2;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
348
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
349 if (ioctl(fd_frontend,FE_SET_FRONTEND,feparams) < 0)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
350 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
351 mp_msg(MSGT_DEMUX, MSGL_ERR, "ERROR tuning channel\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
352 return -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
353 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
354
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
355 pfd[0].fd = fd_frontend;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
356 pfd[0].events = POLLPRI;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
357
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
358 mp_msg(MSGT_DEMUX, MSGL_V, "Getting frontend status\n");
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
359 tm1 = tm2 = time((time_t*) NULL);
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
360 while(!ok)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
361 {
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
362 festatus = 0;
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
363 if(poll(pfd,1,3000) > 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
364 {
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
365 if (pfd[0].revents & POLLPRI)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
366 {
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
367 if(ioctl(fd_frontend, FE_READ_STATUS, &festatus) >= 0)
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
368 if(festatus & FE_HAS_LOCK)
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
369 locks++;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
370 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
371 }
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
372 usleep(10000);
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
373 tm2 = time((time_t*) NULL);
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
374 if((festatus & FE_TIMEDOUT) || (locks >= 2) || (tm2 - tm1 >= 3))
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
375 ok = 1;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
376 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
377
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
378 if(festatus & FE_HAS_LOCK)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
379 {
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
380 if(ioctl(fd_frontend,FE_GET_FRONTEND,feparams) >= 0)
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
381 {
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
382 switch(tuner_type)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
383 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
384 case FE_OFDM:
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
385 mp_msg(MSGT_DEMUX, MSGL_V, "Event: Frequency: %d\n",feparams->frequency);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
386 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
387 case FE_QPSK:
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
388 mp_msg(MSGT_DEMUX, MSGL_V, "Event: Frequency: %d\n",(unsigned int)((feparams->frequency)+base));
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
389 mp_msg(MSGT_DEMUX, MSGL_V, " SymbolRate: %d\n",feparams->u.qpsk.symbol_rate);
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
390 mp_msg(MSGT_DEMUX, MSGL_V, " FEC_inner: %d\n",feparams->u.qpsk.fec_inner);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
391 mp_msg(MSGT_DEMUX, MSGL_V, "\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
392 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
393 case FE_QAM:
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
394 mp_msg(MSGT_DEMUX, MSGL_V, "Event: Frequency: %d\n",feparams->frequency);
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
395 mp_msg(MSGT_DEMUX, MSGL_V, " SymbolRate: %d\n",feparams->u.qpsk.symbol_rate);
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
396 mp_msg(MSGT_DEMUX, MSGL_V, " FEC_inner: %d\n",feparams->u.qpsk.fec_inner);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
397 break;
14382
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
398 #ifdef DVB_ATSC
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
399 case FE_ATSC:
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
400 mp_msg(MSGT_DEMUX, MSGL_V, "Event: Frequency: %d\n",feparams->frequency);
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
401 mp_msg(MSGT_DEMUX, MSGL_V, " Modulation: %d\n",feparams->u.vsb.modulation);
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
402 break;
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
403 #endif
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
404 default:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
405 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
406 }
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
407 }
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
408
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
409 strength=0;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
410 if(ioctl(fd_frontend,FE_READ_BER,&strength) >= 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
411 mp_msg(MSGT_DEMUX, MSGL_V, "Bit error rate: %d\n",strength);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
412
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
413 strength=0;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
414 if(ioctl(fd_frontend,FE_READ_SIGNAL_STRENGTH,&strength) >= 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
415 mp_msg(MSGT_DEMUX, MSGL_V, "Signal strength: %d\n",strength);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
416
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
417 strength=0;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
418 if(ioctl(fd_frontend,FE_READ_SNR,&strength) >= 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
419 mp_msg(MSGT_DEMUX, MSGL_V, "SNR: %d\n",strength);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
420
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
421 strength=0;
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
422 if(ioctl(fd_frontend,FE_READ_UNCORRECTED_BLOCKS,&strength) >= 0)
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
423 mp_msg(MSGT_DEMUX, MSGL_V, "UNC: %d\n",strength);
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
424
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
425 print_status(festatus);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
426 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
427 else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
428 {
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
429 mp_msg(MSGT_DEMUX, MSGL_ERR, "Not able to lock to the signal on the given frequency\n");
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
430 return -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
431 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
432 return 0;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
433 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
434
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
435 #else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
436
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
437 static int check_status(int fd_frontend,FrontendParameters* feparams,int tuner_type,uint32_t base)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
438 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
439 int i,res;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
440 int32_t strength;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
441 fe_status_t festatus;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
442 FrontendEvent event;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
443
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
444 struct pollfd pfd[1];
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
445
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
446 while(1)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
447 {
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
448 if(ioctl(fd_frontend, FE_GET_EVENT, &event) == -1)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
449 break;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
450 }
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
451
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
452 i = 0; res = -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
453 while ((i < 3) && (res < 0))
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
454 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
455 if (ioctl(fd_frontend,FE_SET_FRONTEND,feparams) < 0)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
456 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
457 mp_msg(MSGT_DEMUX, MSGL_ERR, "ERROR tuning channel\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
458 return -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
459 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
460
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
461 pfd[0].fd = fd_frontend;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
462 pfd[0].events = POLLIN | POLLPRI;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
463
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
464 if(poll(pfd,1,10000) > 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
465 {
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
466 if (pfd[0].revents & POLLPRI)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
467 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
468 mp_msg(MSGT_DEMUX, MSGL_V, "Getting frontend event\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
469 if ( ioctl(fd_frontend, FE_GET_EVENT, &event) < 0)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
470 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
471 mp_msg(MSGT_DEMUX, MSGL_ERR, "FE_GET_EVENT");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
472 return -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
473 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
474 mp_msg(MSGT_DEMUX, MSGL_V, "Received ");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
475 switch(event.type)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
476 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
477 case FE_UNEXPECTED_EV:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
478 mp_msg(MSGT_DEMUX, MSGL_V, "unexpected event\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
479 res = -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
480 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
481
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
482 case FE_FAILURE_EV:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
483 mp_msg(MSGT_DEMUX, MSGL_V, "failure event\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
484 res = -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
485 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
486
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
487 case FE_COMPLETION_EV:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
488 mp_msg(MSGT_DEMUX, MSGL_V, "completion event\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
489 res = 0;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
490 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
491 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
492 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
493 i++;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
494 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
495 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
496
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
497 if (res > 0)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
498 switch (event.type)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
499 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
500 case FE_UNEXPECTED_EV: mp_msg(MSGT_DEMUX, MSGL_V, "FE_UNEXPECTED_EV\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
501 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
502 case FE_COMPLETION_EV: mp_msg(MSGT_DEMUX, MSGL_V, "FE_COMPLETION_EV\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
503 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
504 case FE_FAILURE_EV: mp_msg(MSGT_DEMUX, MSGL_V, "FE_FAILURE_EV\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
505 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
506 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
507
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
508 if (event.type == FE_COMPLETION_EV)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
509 {
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
510 switch(tuner_type)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
511 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
512 case FE_OFDM:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
513 mp_msg(MSGT_DEMUX, MSGL_V, "Event: Frequency: %d\n",event.u.completionEvent.Frequency);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
514 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
515
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
516 case FE_QPSK:
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
517 mp_msg(MSGT_DEMUX, MSGL_V, "Event: Frequency: %d\n",(unsigned int)((event.u.completionEvent.Frequency)+base));
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
518 mp_msg(MSGT_DEMUX, MSGL_V, " SymbolRate: %d\n",event.u.completionEvent.u.qpsk.SymbolRate);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
519 mp_msg(MSGT_DEMUX, MSGL_V, " FEC_inner: %d\n",event.u.completionEvent.u.qpsk.FEC_inner);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
520 mp_msg(MSGT_DEMUX, MSGL_V, "\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
521 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
522
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
523 case FE_QAM:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
524 mp_msg(MSGT_DEMUX, MSGL_V, "Event: Frequency: %d\n",event.u.completionEvent.Frequency);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
525 mp_msg(MSGT_DEMUX, MSGL_V, " SymbolRate: %d\n",event.u.completionEvent.u.qpsk.SymbolRate);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
526 mp_msg(MSGT_DEMUX, MSGL_V, " FEC_inner: %d\n",event.u.completionEvent.u.qpsk.FEC_inner);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
527 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
528
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
529 default:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
530 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
531 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
532
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
533 strength=0;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
534 if(ioctl(fd_frontend,FE_READ_BER,&strength) >= 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
535 mp_msg(MSGT_DEMUX, MSGL_V, "Bit error rate: %d\n",strength);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
536
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
537 strength=0;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
538 if(ioctl(fd_frontend,FE_READ_SIGNAL_STRENGTH,&strength) >= 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
539 mp_msg(MSGT_DEMUX, MSGL_V, "Signal strength: %d\n",strength);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
540
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
541 strength=0;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
542 if(ioctl(fd_frontend,FE_READ_SNR,&strength) >= 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
543 mp_msg(MSGT_DEMUX, MSGL_V, "SNR: %d\n",strength);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
544
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
545 festatus=0;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
546 mp_msg(MSGT_DEMUX, MSGL_V, "FE_STATUS:");
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
547
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
548 if(ioctl(fd_frontend,FE_READ_STATUS,&festatus) >= 0)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
549 print_status(festatus);
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
550 else
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
551 mp_msg(MSGT_DEMUX, MSGL_ERR, " ERROR, UNABLE TO READ_STATUS");
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
552
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
553 mp_msg(MSGT_DEMUX, MSGL_V, "\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
554 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
555 else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
556 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
557 mp_msg(MSGT_DEMUX, MSGL_V, "Not able to lock to the signal on the given frequency\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
558 return -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
559 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
560 return 0;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
561 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
562 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
563
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
564 #ifdef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
565
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
566 static struct diseqc_cmd {
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
567 struct dvb_diseqc_master_cmd cmd;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
568 uint32_t wait;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
569 };
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
570
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
571 static int diseqc_send_msg(int fd, fe_sec_voltage_t v, struct diseqc_cmd *cmd,
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
572 fe_sec_tone_mode_t t, fe_sec_mini_cmd_t b)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
573 {
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
574 if(ioctl(fd, FE_SET_TONE, SEC_TONE_OFF) == -1)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
575 return -1;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
576 if(ioctl(fd, FE_SET_VOLTAGE, v) == -1)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
577 return -1;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
578 usleep(15 * 1000);
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
579 if(ioctl(fd, FE_DISEQC_SEND_MASTER_CMD, &cmd->cmd) == -1)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
580 return -1;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
581 usleep(cmd->wait * 1000);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
582 usleep(15 * 1000);
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
583 if(ioctl(fd, FE_DISEQC_SEND_BURST, b) == -1)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
584 return -1;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
585 usleep(15 * 1000);
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
586 if(ioctl(fd, FE_SET_TONE, t) == -1)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
587 return -1;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
588
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
589 return 0;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
590 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
591
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
592 /* digital satellite equipment control,
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
593 * specification is available from http://www.eutelsat.com/
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
594 */
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
595 static int do_diseqc(int secfd, int sat_no, int polv, int hi_lo)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
596 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
597 struct diseqc_cmd cmd = { {{0xe0, 0x10, 0x38, 0xf0, 0x00, 0x00}, 4}, 0 };
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
598
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
599 /* param: high nibble: reset bits, low nibble set bits,
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
600 * bits are: option, position, polarizaion, band
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
601 */
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
602 cmd.cmd.msg[3] =
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
603 0xf0 | (((sat_no * 4) & 0x0f) | (hi_lo ? 1 : 0) | (polv ? 0 : 2));
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
604
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
605 return diseqc_send_msg(secfd, polv ? SEC_VOLTAGE_13 : SEC_VOLTAGE_18,
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
606 &cmd, hi_lo ? SEC_TONE_ON : SEC_TONE_OFF,
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
607 (sat_no / 4) % 2 ? SEC_MINI_B : SEC_MINI_A);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
608 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
609
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
610 #else
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
611
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
612 static int do_diseqc(int secfd, int sat_no, int polv, int hi_lo)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
613 {
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
614 struct secCommand scmd;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
615 struct secCmdSequence scmds;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
616
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
617 scmds.continuousTone = (hi_lo ? SEC_TONE_ON : SEC_TONE_OFF);
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
618 scmds.voltage = (polv ? SEC_VOLTAGE_13 : SEC_VOLTAGE_18);
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
619 scmds.miniCommand = SEC_MINI_NONE;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
620
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
621 scmd.type = SEC_CMDTYPE_DISEQC;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
622 scmds.numCommands = 1;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
623 scmds.commands = &scmd;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
624
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
625 scmd.u.diseqc.addr = 0x10;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
626 scmd.u.diseqc.cmd = 0x38;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
627 scmd.u.diseqc.numParams = 1;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
628 scmd.u.diseqc.params[0] = 0xf0 |
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
629 (((sat_no) << 2) & 0x0F) |
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
630 (hi_lo ? 1 : 0) |
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
631 (polv ? 0 : 2);
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
632
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
633 if (ioctl(secfd,SEC_SEND_SEQUENCE,&scmds) < 0)
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
634 {
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
635 mp_msg(MSGT_DEMUX, MSGL_ERR, "Error sending DisEqC");
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
636 return -1;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
637 }
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
638
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
639 return 0;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
640 }
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
641 #endif
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
642
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
643 static int tune_it(int fd_frontend, int fd_sec, unsigned int freq, unsigned int srate, char pol, int tone,
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
644 fe_spectral_inversion_t specInv, unsigned int diseqc, fe_modulation_t modulation, fe_code_rate_t HP_CodeRate,
13155
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
645 fe_transmit_mode_t TransmissionMode, fe_guard_interval_t guardInterval, fe_bandwidth_t bandwidth,
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
646 fe_code_rate_t LP_CodeRate, fe_hierarchy_t hier)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
647 {
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
648 int res, hi_lo, dfd;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
649 #ifdef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
650 struct dvb_frontend_parameters feparams;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
651 struct dvb_frontend_info fe_info;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
652 #else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
653 FrontendParameters feparams;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
654 FrontendInfo fe_info;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
655 struct secStatus sec_state;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
656 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
657
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
658
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
659 mp_msg(MSGT_DEMUX, MSGL_V, "TUNE_IT, fd_frontend %d, fd_sec %d\nfreq %lu, srate %lu, pol %c, tone %i, specInv, diseqc %u, fe_modulation_t modulation,fe_code_rate_t HP_CodeRate, fe_transmit_mode_t TransmissionMode,fe_guard_interval_t guardInterval, fe_bandwidth_t bandwidth\n",
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
660 fd_frontend, fd_sec, (long unsigned int)freq, (long unsigned int)srate, pol, tone, diseqc);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
661
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
662
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
663 if ( (res = ioctl(fd_frontend,FE_GET_INFO, &fe_info) < 0))
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
664 {
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
665 mp_msg(MSGT_DEMUX, MSGL_FATAL, "FE_GET_INFO FAILED\n");
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
666 return -1;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
667 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
668
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
669
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
670 #ifdef HAVE_DVB_HEAD
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
671 mp_msg(MSGT_DEMUX, MSGL_V, "Using DVB card \"%s\"\n", fe_info.name);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
672 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
673
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
674 switch(fe_info.type)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
675 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
676 case FE_OFDM:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
677 #ifdef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
678 if (freq < 1000000) freq*=1000UL;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
679 feparams.frequency=freq;
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
680 feparams.inversion=specInv;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
681 feparams.u.ofdm.bandwidth=bandwidth;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
682 feparams.u.ofdm.code_rate_HP=HP_CodeRate;
13155
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
683 feparams.u.ofdm.code_rate_LP=LP_CodeRate;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
684 feparams.u.ofdm.constellation=modulation;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
685 feparams.u.ofdm.transmission_mode=TransmissionMode;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
686 feparams.u.ofdm.guard_interval=guardInterval;
13155
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
687 feparams.u.ofdm.hierarchy_information=hier;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
688 #else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
689 if (freq < 1000000) freq*=1000UL;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
690 feparams.Frequency=freq;
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
691 feparams.Inversion=specInv;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
692 feparams.u.ofdm.bandWidth=bandwidth;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
693 feparams.u.ofdm.HP_CodeRate=HP_CodeRate;
13155
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
694 feparams.u.ofdm.LP_CodeRate=LP_CodeRate;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
695 feparams.u.ofdm.Constellation=modulation;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
696 feparams.u.ofdm.TransmissionMode=TransmissionMode;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
697 feparams.u.ofdm.guardInterval=guardInterval;
13155
fd40ef23053b added forgotten dvb-t params lp_coderate and hierarchy
nicodvb
parents: 12803
diff changeset
698 feparams.u.ofdm.HierarchyInformation=hier;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
699 #endif
14282
2188637c0e8f replaced deprecated FE_GET_EVENT with FE_READ_STATUS (only for DVB_HEAD); added a workaround for drivers that don't support FE_TIMEDOUT
nicodvb
parents: 13155
diff changeset
700 mp_msg(MSGT_DEMUX, MSGL_V, "tuning DVB-T to %d Hz, bandwidth: %d\n",freq, bandwidth);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
701 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
702 case FE_QPSK:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
703 if (freq > 2200000)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
704 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
705 // this must be an absolute frequency
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
706 if (freq < SLOF)
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
707 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
708 #ifdef HAVE_DVB_HEAD
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
709 freq = feparams.frequency=(freq-LOF1);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
710 #else
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
711 freq = feparams.Frequency=(freq-LOF1);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
712 #endif
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
713 hi_lo = 0;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
714 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
715 else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
716 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
717 #ifdef HAVE_DVB_HEAD
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
718 freq = feparams.frequency=(freq-LOF2);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
719 #else
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
720 freq = feparams.Frequency=(freq-LOF2);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
721 #endif
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
722 hi_lo = 1;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
723 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
724 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
725 else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
726 {
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
727 // this is an L-Band frequency
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
728 #ifdef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
729 feparams.frequency=freq;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
730 #else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
731 feparams.Frequency=freq;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
732 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
733 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
734
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
735 #ifdef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
736 feparams.inversion=specInv;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
737 feparams.u.qpsk.symbol_rate=srate;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
738 feparams.u.qpsk.fec_inner=HP_CodeRate;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
739 dfd = fd_frontend;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
740 #else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
741 feparams.Inversion=specInv;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
742 feparams.u.qpsk.SymbolRate=srate;
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
743 feparams.u.qpsk.FEC_inner=HP_CodeRate;
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
744 dfd = fd_sec;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
745 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
746
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
747 mp_msg(MSGT_DEMUX, MSGL_V, "tuning DVB-S to Freq: %u, Pol: %c Srate: %d, 22kHz: %s, LNB: %d\n",freq,pol,srate,hi_lo ? "on" : "off", diseqc);
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
748
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
749 if(do_diseqc(dfd, diseqc, (pol == 'V' ? 1 : 0), hi_lo) == 0)
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
750 mp_msg(MSGT_DEMUX, MSGL_V, "DISEQC SETTING SUCCEDED\n");
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
751 else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
752 {
10560
11826d9f90c7 this patch fixes
arpi
parents: 9610
diff changeset
753 mp_msg(MSGT_DEMUX, MSGL_ERR, "DISEQC SETTING FAILED\n");
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
754 return -1;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
755 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
756 break;
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
757 case FE_QAM:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
758 mp_msg(MSGT_DEMUX, MSGL_V, "tuning DVB-C to %d, srate=%d\n",freq,srate);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
759 #ifdef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
760 feparams.frequency=freq;
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
761 feparams.inversion=specInv;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
762 feparams.u.qam.symbol_rate = srate;
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
763 feparams.u.qam.fec_inner = HP_CodeRate;
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
764 feparams.u.qam.modulation = modulation;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
765 #else
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
766 feparams.Frequency=freq;
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
767 feparams.Inversion=specInv;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
768 feparams.u.qam.SymbolRate = srate;
11872
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
769 feparams.u.qam.FEC_inner = HP_CodeRate;
d158978a3d3c Compliance with the DVB power management specification (doesn't close
attila
parents: 11352
diff changeset
770 feparams.u.qam.QAM = modulation;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
771 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
772 break;
14382
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
773 #ifdef DVB_ATSC
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
774 case FE_ATSC:
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
775 mp_msg(MSGT_DEMUX, MSGL_V, "tuning ATSC to %d, modulation=%d\n",freq,modulation);
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
776 feparams.frequency=freq;
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
777 feparams.u.vsb.modulation = modulation;
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
778 break;
42d792053cde added support for ATSC tuner and conf.file
nicodvb
parents: 14282
diff changeset
779 #endif
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
780 default:
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
781 mp_msg(MSGT_DEMUX, MSGL_V, "Unknown FE type. Aborting\n");
10603
alex
parents: 10560
diff changeset
782 return 0;
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
783 }
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
784 usleep(100000);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
785
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
786 #ifndef HAVE_DVB_HEAD
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
787 if (fd_sec) SecGetStatus(fd_sec, &sec_state);
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
788 #endif
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
789
12048
09aae06de9c8 removed unused code, synced to szap tuning sequence and unified diseqc, tone and voltage in a (non/old)-diseqc compatible function
nicodvb
parents: 11872
diff changeset
790 return(check_status(fd_frontend,&feparams,fe_info.type, (hi_lo ? LOF2 : LOF1)));
9610
76c6d8f1ebf5 this is a combo patch that:
arpi
parents:
diff changeset
791 }