-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
194 lines (155 loc) · 5.74 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
Building:
- Install libevent and glib
- Probably adapt paths in Makefile
- type "make"
Configuration:
Adapter:
--------
As getstream is supposed to support multiple adapters with the same
program instance the configuration starts with an adapter clause:
adapter 1 {
budget-mode 1;
packet-buffer 50;
stat-interval 120;
stuck-interval 200;
};
- budget-mode
Set to "0" disabled the budget mode where getstream
request a seperate PID filter from the kernels filter. As
the filters are limited on the full featured cards
this is only a workaround and may work for 2-3 TV
Channels. Streaming a full transponder on a full featured
card is most certainly not possible.
Getstream automatically disables budget mode when setting
the filter for bit 0x2000 (Illegal value - tells kernel to
stream full transponder aka "budget-mode") and setting
the filter returns an error.
- packet-buffer
Set the amount of packets getstream trys to get from the
kernels dvr interface. I see typically ~44 Packets/s per
round read from the kernel. Setting this too high just
wastes memory (a packet is 188 Bytes) setting it to low
creates more context-switches and will reduce performance.
- stat-interval
The interval in seconds you will see the statistics on in the log e.g.
2007-10-25 08:27:02.323 dvr: inputstats: 149 pids 23259 pkt/s 4372702 byte/s
- stuck-interval
Interval to fire the stuck check timer for e.g. FlexCop cards.
Default 5 seconds, 0 disables.
Tuning or Card type:
--------------------
As getstream supports DVB-C, DVB-T and DVB-S and all need different
parameters for tuning in on the right transponder here is a short
introduction on how to enter the right parameters.
DVB-T:
-----
There are 6 possible options to list for a DVB-T transponder:
frequency - Frequency of transponder in Hz
bandwidth - auto, 6 (6Mhz), 7 (7Mhz), 8 (8Mhz)
transmission-mode - auto, 2 (2Khz), 8 (8Khz)
guard-interval - auto, 4 (1/4), 8 (1/8), 16 (1/16), 32 (1/32)
hierarchy - none, auto, 1, 2, 4
modulation - auto, 16, 32, 64, 128, 256
Example:
dvb-t {
frequency 570000000;
bandwidth 8;
transmission-mode auto;
guard-interval auto;
hierarchy none;
modulation auto;
};
DVB-S / DVB-S2:
------
DVB-S consists of 2 parts - the LNB and the Transponder config:
lnb-sharing - Boolean When set getstream trys to not send
an 22Khz Pilot tone or set high voltage for
High/Low band or Polarisation but instead
trusts a different card to do all necessary
things. Some cards can not disable their power
voltage completely so look out for problems.
lnb
The config needs to match your LNB (Low Block converter)
on your Dish - If you have a Ku Band LNB (Normal for
most of the World) you need these informations:
lof1 - Local osscilator frequency 1 (Low Band)
lof2 - Local osscilator frequency 2 (High Band)
slof - Local osscilator frequency cut off
If the transponder frequency is above the slof getstream
enables the 22Khz Pilot tone to switch the LNB to
High Band.
If you have a C Band LNB you dont have a slof so dont
configure it. If you have a multipoint C Band LNB
you have lof1 and lof2 in case you dont just configure
the lof1.
Transponder:
frequency - Frequency of the Transponder in hz.
polarisation - Either H or V for Horizontal or Vertical
symbol-rate - Symbol Rate - Most European transponders use 27500000
diseqc - LNB Diseq code
dvb-s {
lnb-sharing yes;
lnb {
lof1 9750000;
lof2 10600000;
slof 11700000;
};
transponder {
frequency 12266000;
polarisation h;
symbol-rate 27500000;
diseqc 4;
};
};
For "DVB-S2" the type obviously has to be changed to "dvb-s2". Also getstream
need to be compiled against the multiproto header files and you need to be using
multiproto enabled cards.
Input:
------
The input section in every stream defines which parts of the
Transponder needs to be forwarded into this stream. Currently
there are 3 options.
pid - A static pid to forward. Sometimes people want to
have the encryption stuff forwarded e.g. pid 10 and 11
pnr - Program number e.g. a full Programm including all pids.
full - A full transponder e.g. the same as pid 0x2000.
Example:
--------
input {
full;
};
SAP:
------
Can be used in the output-rtp and output-udp sections to send SAP announcements.
scope - Multicast group which is used for the SAP announcemens.
Possible values:
global - Global SAP address (224.2.127.254:9875) (default)
org - Organization-local SAP address (239.195.255.255:9875)
local - Local SAP address (239.255.255.255:9875)
link - Link-local SAP address (224.0.0.255:9875)
sap-group - Multicast group address which is used for the SAP announcemens (overrides scope).
sap-port - Port which is used for the SAP announcemens (overrides scope).
announce-host - unused
announce-port - unused
ttl - TTL for the SAP announcemens.
By default the output stream's TTL is used.
interval - Announcement interval (in seconds) (default=1).
playgroup - SAP/SDP group name.
uri - An URI with additional information.
description - Stream description.
email - EMail contact information (can be used multiple times).
phone - Phone contact information (can be used multiple times).
attribute - Additional SDP attribute, see RFC2327 for details (can be used multiple times).
Example:
--------
sap {
scope global;
interval 5;
playgroup "TV";
description "Example TV stream";
uri "http://example.com";
email "<Bob Smith> [email protected]";
phone "+49 555 555-555";
attribute "tool:getstream";
attribute "recvonly";
};