Tvheadend dvb config revamp » History » Version 15
Andreas Smas, 2012-12-05 10:14
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 | 4 | Andreas Smas | |
12 | 10 | Andreas Smas | h1. Device tree |
13 | |||
14 | |||
15 | 3 | Andreas Smas | This tree will present the available devices to the user |
16 | 2 | Andreas Smas | |
17 | 10 | Andreas Smas | <pre> |
18 | 3 | Andreas Smas | + DVB Adapter #1 |
19 | | + DVB-C Frontend |
||
20 | | |
||
21 | + DVB Adapter #2 |
||
22 | | + DVB-T Frontend |
||
23 | | + DVB-C Frontend |
||
24 | | |
||
25 | + DVB Adapter #3 |
||
26 | | + DVB-S Frontend |
||
27 | | | + Switchport 1 |
||
28 | | | + Switchport 2 |
||
29 | 1 | Andreas Smas | | | + Switchport 3 |
30 | 3 | Andreas Smas | | | + Switchport 4 |
31 | 1 | Andreas Smas | | | + Switchport n |
32 | | + DVB-T Frontend |
||
33 | | |
||
34 | + V4L Adapter #1 |
||
35 | + Tuner |
||
36 | + Composite |
||
37 | + S-Video |
||
38 | 10 | Andreas Smas | </pre> |
39 | 1 | Andreas Smas | |
40 | Pressing on a node will present the user with information about the entry and a few configuration options as follows: |
||
41 | |||
42 | 10 | Andreas Smas | |
43 | 13 | Andreas Smas | h2. DVB / ATSC Adapter |
44 | 12 | Andreas Smas | |
45 | 13 | Andreas Smas | h3. Info part |
46 | 12 | Andreas Smas | |
47 | 1 | Andreas Smas | Various information about the hardware |
48 | |||
49 | 13 | Andreas Smas | h3. Config part |
50 | 1 | Andreas Smas | |
51 | 10 | Andreas Smas | * Enable/Disable adapter |
52 | |||
53 | 1 | Andreas Smas | |
54 | 10 | Andreas Smas | |
55 | 13 | Andreas Smas | h2. DVB-C / DVB-T / ATSC Frontends |
56 | 1 | Andreas Smas | |
57 | 13 | Andreas Smas | h3. Info part |
58 | 12 | Andreas Smas | |
59 | 1 | Andreas Smas | TBD |
60 | |||
61 | 13 | Andreas Smas | h3. Config part |
62 | 1 | Andreas Smas | |
63 | 10 | Andreas Smas | * Network the frontend is attached to |
64 | 1 | Andreas Smas | * If this device may update network configuration |
65 | 10 | Andreas Smas | |
66 | |||
67 | 11 | Andreas Smas | |
68 | 13 | Andreas Smas | h2. DVB-S Frontends |
69 | 1 | Andreas Smas | |
70 | 13 | Andreas Smas | h3. Info part |
71 | 12 | Andreas Smas | |
72 | 3 | Andreas Smas | TBD |
73 | 10 | Andreas Smas | |
74 | 13 | Andreas Smas | h3. Config part |
75 | 10 | Andreas Smas | |
76 | * Number of Diseqc switchports |
||
77 | or |
||
78 | * Network the frontend is attached to |
||
79 | * If this device may update network configuration |
||
80 | 1 | Andreas Smas | * LnB configuration |
81 | 10 | Andreas Smas | |
82 | 1 | Andreas Smas | |
83 | 13 | Andreas Smas | h2. Switchport |
84 | 11 | Andreas Smas | |
85 | 13 | Andreas Smas | h3. Info part |
86 | 12 | Andreas Smas | |
87 | 3 | Andreas Smas | TBD |
88 | 1 | Andreas Smas | |
89 | 13 | Andreas Smas | h3. Config part |
90 | 10 | Andreas Smas | |
91 | * Network the switchport is attached to |
||
92 | * If this device may update network configuration |
||
93 | 3 | Andreas Smas | * LnB configuration |
94 | |||
95 | 1 | Andreas Smas | |
96 | |||
97 | 13 | Andreas Smas | h2. V4L adpater |
98 | 1 | Andreas Smas | |
99 | 13 | Andreas Smas | h3. Info part |
100 | 12 | Andreas Smas | |
101 | 1 | Andreas Smas | Various information about the hardware |
102 | 10 | Andreas Smas | |
103 | 13 | Andreas Smas | h3. Config part |
104 | 10 | Andreas Smas | |
105 | 1 | Andreas Smas | * Enable/Disable adapter |
106 | |||
107 | 10 | Andreas Smas | |
108 | 1 | Andreas Smas | |
109 | 13 | Andreas Smas | h2. V4L frontends |
110 | 12 | Andreas Smas | |
111 | 13 | Andreas Smas | h3. Info part |
112 | 11 | Andreas Smas | |
113 | 1 | Andreas Smas | Various information about the hardware |
114 | 4 | Andreas Smas | |
115 | 13 | Andreas Smas | h3. Config |
116 | 4 | Andreas Smas | |
117 | 10 | Andreas Smas | * TV system type (PAL, NTSC, etc) (for tuners) |
118 | 1 | Andreas Smas | * Network the frontend is attached to |
119 | 10 | Andreas Smas | |
120 | 14 | Andreas Smas | h1. DVB Networks |
121 | 1 | Andreas Smas | |
122 | 14 | Andreas Smas | <pre> |
123 | + DVB Network #1 (Comhem Stockholm) <- network |
||
124 | | + 290 MHz <- mux |
||
125 | | + SVT 1 <- service |
||
126 | | | + Video MPEG2 768*576i <- elementary stream |
||
127 | | | | Audio MPEG2 Stereo |
||
128 | | + SVT 2 |
||
129 | | | + Video MPEG2 768*576i |
||
130 | | | | Audio MPEG2 Stereo |
||
131 | | + 298 MHz |
||
132 | | |... |
||
133 | </pre> |
||
134 | 1 | Andreas Smas | |
135 | 15 | Andreas Smas | The DVB networks can then be attached to one or more adapters (DVB-C and DVB-S case) |
136 | |||
137 | For DVB-S adapters a network could be attached directly to the adapter or to a switchport, etc. This depends a bit on how the adapter is configured. |
||
138 | 14 | Andreas Smas | |
139 | |||
140 | 4 | Andreas Smas | h1. Device mapper |
141 | |||
142 | |||
143 | Upon startup Tvheadend will try to map the available hardware to the adapters as good as it can. |
||
144 | |||
145 | 10 | Andreas Smas | * device type AND device name AND bus-id AND device path |
146 | * device type AND device name AND bus-id |
||
147 | * device type AND device name |
||
148 | * device type AND bus-id |
||
149 | 6 | Andreas Smas | * device type |
150 | |||
151 | 1 | Andreas Smas | ||device path||Path in filesystem||/dev/dvb/...|| |
152 | 10 | Andreas Smas | ||bus-id||Hardware address||Bus 001 Device 004: ID 0ccd:0038 [[TerraTec]] Electronic GmbH Cinergy T2 DVB-T Receiver |
153 | ||device-name||Name of device(vendor) as reported via DVB API||ST STV0297 DVB-C|| |
||
154 | 1 | Andreas Smas | ||device-type||Frontend type(s)||DVB-T, DVB-C, etc|| |
155 | |||
156 | It will start will all devices and try rule 1 then all devices that could not be mapped and rule 2, and so on. |
||
157 | This will mitigate problems when USB controllers probe devices in different order, etc |
||
158 | 10 | Andreas Smas | Also you can swap your DVB hardware to a new one (different vendor) and still have tvheadend map it correctly. |
159 | |||
160 | If the mapper cannot find a hardware device using the first rule the adapter info/configuration will highlight this |
||
161 | 1 | Andreas Smas | and the user will be able to "nail" the configuration to the detected hardware. Ie. to acknowledge to Tvheadend |
162 | that: "Yes, this is the correct hardware. I've changed/moved it" or whatever |