Tvheadend dvb config revamp » History » Version 12
Andreas Smas, 2012-01-23 22:23
1 | 1 | Andreas Smas | There are a few problems with how the TV adapter tab is implemented today |
---|---|---|---|
2 | |||
3 | 10 | Andreas Smas | * It cannot handle a large amount of services. With DVB-S you can easily hit >1k services. Ticket #100 |
4 | * It's hard (but possible via sorting) to see which services that is transmitted on which mux. |
||
5 | * The DVB satconf solution is a bit cumbersome |
||
6 | * Updates to the quality meter indicator refreshed the grid in a way that is bad UX. Ticket #108 |
||
7 | * If a DVB adapter is renamed by the kernel after boot (/dev/dvb/adapterX -> /dev/dvb/adapterY) the user must do a lot of work |
||
8 | * Inter-adapter dependencies are not handled (adapters with both analog and digital receivers, etc) |
||
9 | 1 | Andreas Smas | |
10 | Therefore the plan is to totally redesign how Tvheadend interacts with hardware. |
||
11 | This rewrite will not be configuration compatible and will therefore bump Tvheadend version to 3.x |
||
12 | 4 | Andreas Smas | |
13 | |||
14 | 10 | Andreas Smas | h1. Device tree |
15 | |||
16 | |||
17 | 3 | Andreas Smas | This tree will present the available devices to the user |
18 | 2 | Andreas Smas | |
19 | 10 | Andreas Smas | <pre> |
20 | 3 | Andreas Smas | + DVB Adapter #1 |
21 | | + DVB-C Frontend |
||
22 | | |
||
23 | + DVB Adapter #2 |
||
24 | | + DVB-T Frontend |
||
25 | | + DVB-C Frontend |
||
26 | | |
||
27 | + DVB Adapter #3 |
||
28 | | + DVB-S Frontend |
||
29 | | | + Switchport 1 |
||
30 | | | + Switchport 2 |
||
31 | 1 | Andreas Smas | | | + Switchport 3 |
32 | 3 | Andreas Smas | | | + Switchport 4 |
33 | 1 | Andreas Smas | | | + Switchport n |
34 | | + DVB-T Frontend |
||
35 | | |
||
36 | + V4L Adapter #1 |
||
37 | + Tuner |
||
38 | + Composite |
||
39 | + S-Video |
||
40 | 10 | Andreas Smas | </pre> |
41 | 1 | Andreas Smas | |
42 | Pressing on a node will present the user with information about the entry and a few configuration options as follows: |
||
43 | |||
44 | 10 | Andreas Smas | |
45 | 11 | Andreas Smas | h3. DVB / ATSC Adapter |
46 | 12 | Andreas Smas | |
47 | h4. Info part |
||
48 | |||
49 | 1 | Andreas Smas | Various information about the hardware |
50 | |||
51 | 12 | Andreas Smas | h4. Config part |
52 | 1 | Andreas Smas | |
53 | 10 | Andreas Smas | * Enable/Disable adapter |
54 | |||
55 | 1 | Andreas Smas | |
56 | 10 | Andreas Smas | |
57 | 11 | Andreas Smas | h3. DVB-C / DVB-T / ATSC Frontends |
58 | 1 | Andreas Smas | |
59 | 12 | Andreas Smas | h4. Info part |
60 | |||
61 | 1 | Andreas Smas | TBD |
62 | |||
63 | 12 | Andreas Smas | h4. Config part |
64 | 1 | Andreas Smas | |
65 | 10 | Andreas Smas | * Network the frontend is attached to |
66 | 1 | Andreas Smas | * If this device may update network configuration |
67 | 10 | Andreas Smas | |
68 | |||
69 | 11 | Andreas Smas | |
70 | 1 | Andreas Smas | h3. DVB-S Frontends |
71 | |||
72 | 12 | Andreas Smas | h4. Info part |
73 | |||
74 | 3 | Andreas Smas | TBD |
75 | 10 | Andreas Smas | |
76 | 12 | Andreas Smas | h4. Config part |
77 | 10 | Andreas Smas | |
78 | * Number of Diseqc switchports |
||
79 | or |
||
80 | * Network the frontend is attached to |
||
81 | * If this device may update network configuration |
||
82 | 1 | Andreas Smas | * LnB configuration |
83 | 10 | Andreas Smas | |
84 | 1 | Andreas Smas | |
85 | h3. Switchport |
||
86 | 11 | Andreas Smas | |
87 | 12 | Andreas Smas | h4. Info part |
88 | |||
89 | 3 | Andreas Smas | TBD |
90 | 1 | Andreas Smas | |
91 | 12 | Andreas Smas | h4. Config part |
92 | 10 | Andreas Smas | |
93 | * Network the switchport is attached to |
||
94 | * If this device may update network configuration |
||
95 | 3 | Andreas Smas | * LnB configuration |
96 | |||
97 | 1 | Andreas Smas | |
98 | |||
99 | 10 | Andreas Smas | h3. V4L adpater |
100 | 1 | Andreas Smas | |
101 | 12 | Andreas Smas | h4. Info part |
102 | |||
103 | 1 | Andreas Smas | Various information about the hardware |
104 | 10 | Andreas Smas | |
105 | 12 | Andreas Smas | h4. Config part |
106 | 10 | Andreas Smas | |
107 | 1 | Andreas Smas | * Enable/Disable adapter |
108 | |||
109 | 10 | Andreas Smas | |
110 | 1 | Andreas Smas | |
111 | h3. V4L frontends |
||
112 | 12 | Andreas Smas | |
113 | h4. Info part |
||
114 | 11 | Andreas Smas | |
115 | 1 | Andreas Smas | Various information about the hardware |
116 | 4 | Andreas Smas | |
117 | 10 | Andreas Smas | h4. Config |
118 | 4 | Andreas Smas | |
119 | 10 | Andreas Smas | * TV system type (PAL, NTSC, etc) (for tuners) |
120 | * Network the frontend is attached to |
||
121 | 4 | Andreas Smas | |
122 | 10 | Andreas Smas | |
123 | |||
124 | h1. Device mapper |
||
125 | |||
126 | |||
127 | 4 | Andreas Smas | Upon startup Tvheadend will try to map the available hardware to the adapters as good as it can. |
128 | In Tvheadend 2.x it was required that the stored configuration about the adapter exactly matched the plugged in hardware. |
||
129 | |||
130 | Instead Tvheadend 3.x will try to map hardware to configured devices according to the following ruleset: |
||
131 | |||
132 | 10 | Andreas Smas | * device type AND device name AND bus-id AND device path |
133 | * device type AND device name AND bus-id |
||
134 | * device type AND device name |
||
135 | * device type AND bus-id |
||
136 | * device type |
||
137 | 1 | Andreas Smas | |
138 | 8 | Andreas Smas | ||device path||Path in filesystem||/dev/dvb/...|| |
139 | 10 | Andreas Smas | ||bus-id||Hardware address||Bus 001 Device 004: ID 0ccd:0038 [[TerraTec]] Electronic GmbH Cinergy T2 DVB-T Receiver |
140 | 8 | Andreas Smas | ||device-name||Name of device(vendor) as reported via DVB API||ST STV0297 DVB-C|| |
141 | ||device-type||Frontend type(s)||DVB-T, DVB-C, etc|| |
||
142 | 6 | Andreas Smas | |
143 | It will start will all devices and try rule 1 then all devices that could not be mapped and rule 2, and so on. |
||
144 | This will mitigate problems when USB controllers probe devices in different order, etc |
||
145 | Also you can swap your DVB hardware to a new one (different vendor) and still have tvheadend map it correctly. |
||
146 | |||
147 | If the mapper cannot find a hardware device using the first rule the adapter info/configuration will highlight this |
||
148 | and the user will be able to "nail" the configuration to the detected hardware. Ie. to acknowledge to Tvheadend |
||
149 | that: "Yes, this is the correct hardware. I've changed/moved it" or whatever |
||
150 | |||
151 | |||
152 | 10 | Andreas Smas | h1. Networks |
153 | |||
154 | |||
155 | 6 | Andreas Smas | In Tvheadend 2.x a DVB network (ie. a collection of DVB Muxes) are implicitly tied to a DVB adapter. |
156 | There are a number of drawbacks with this |
||
157 | 1 | Andreas Smas | |
158 | 10 | Andreas Smas | * Adding another adapter to the same network require all muxes to be rescanned or copied from an already present adapter |
159 | * Replacing an adapter will void all configuration so it needs to be reconfigured. |
||
160 | 1 | Andreas Smas | |
161 | Instead Tvheadend 3.x will keep the Network configuration separated from the adapter configuration. |
||
162 | This obviously fixes the two caveats mentioned above. |
||
163 | |||
164 | 10 | Andreas Smas | |
165 | h1. LNB configuration |
||
166 | |||
167 | 1 | Andreas Smas | |
168 | Tvheadend 2.x have a set of preconfigured LNBs to select from. Tvheadend 3.x will also have those but also make it possible to enter LNB parameters manuallt. |