also add conversion for -C and -T
[enigma2.git] / lib / python / Tools / Transponder.py
1 from enigma import eDVBFrontendParametersSatellite, eDVBFrontendParametersCable, eDVBFrontendParametersTerrestrial
2
3 def ConvertToHumanReadable(tp):
4         ret = { }
5         type = tp.get("tuner_type", "None")
6         if type == "DVB-S":
7                 ret["tuner_type"] = _("Satellite")
8                 ret["inversion"] = {
9                         eDVBFrontendParametersSatellite.Inversion_Unknown : _("Auto"),
10                         eDVBFrontendParametersSatellite.Inversion_On : _("On"),
11                         eDVBFrontendParametersSatellite.Inversion_Off : _("Off")}[tp["inversion"]]
12                 ret["fec_inner"] = {
13                         eDVBFrontendParametersSatellite.FEC_None : _("None"),
14                         eDVBFrontendParametersSatellite.FEC_Auto : _("Auto"),
15                         eDVBFrontendParametersSatellite.FEC_1_2 : "1/2",
16                         eDVBFrontendParametersSatellite.FEC_2_3 : "2/3",
17                         eDVBFrontendParametersSatellite.FEC_3_4 : "3/4",
18                         eDVBFrontendParametersSatellite.FEC_5_6 : "5/6",
19                         eDVBFrontendParametersSatellite.FEC_7_8 : "7/8",
20                         eDVBFrontendParametersSatellite.FEC_3_5 : "3/5",
21                         eDVBFrontendParametersSatellite.FEC_4_5 : "4/5",
22                         eDVBFrontendParametersSatellite.FEC_8_9 : "8/9",
23                         eDVBFrontendParametersSatellite.FEC_9_10 : "9/10"}[tp["fec_inner"]]
24                 ret["modulation"] = {
25                         eDVBFrontendParametersSatellite.Modulation_Auto : _("Auto"),
26                         eDVBFrontendParametersSatellite.Modulation_QPSK : "QPSK",
27                         eDVBFrontendParametersSatellite.Modulation_QAM16 : "QAM16",
28                         eDVBFrontendParametersSatellite.Modulation_8PSK : "8PSK"}[tp["modulation"]]
29                 ret["polarization"] = {
30                         eDVBFrontendParametersSatellite.Polarisation_Horizontal : _("Horizontal"),
31                         eDVBFrontendParametersSatellite.Polarisation_Vertical : _("Vertical"),
32                         eDVBFrontendParametersSatellite.Polarisation_CircularLeft : _("Circular left"),
33                         eDVBFrontendParametersSatellite.Polarisation_CircularRight : _("Circular right")}[tp["polarization"]]
34                 ret["system"] = {
35                         eDVBFrontendParametersSatellite.System_DVB_S : "DVB-S",
36                         eDVBFrontendParametersSatellite.System_DVB_S2 : "DVB-S2"}[tp["system"]]
37                 if ret["system"] == "DVB-S2":
38                         ret["rolloff"] = {
39                                 eDVBFrontendParametersSatellite.RollOff_alpha_0_35 : "0.35",
40                                 eDVBFrontendParametersSatellite.RollOff_alpha_0_25 : "0.25",
41                                 eDVBFrontendParametersSatellite.RollOff_alpha_0_20 : "0.20"}[tp["rolloff"]]
42                         ret["pilot"] = {
43                                 eDVBFrontendParametersSatellite.Pilot_Unknown : _("Auto"),
44                                 eDVBFrontendParametersSatellite.Pilot_On : _("On"),
45                                 eDVBFrontendParametersSatellite.Pilot_Off : _("Off")}[tp["pilot"]]
46         elif type == "DVB-C":
47                 ret["tuner_type"] = _("Cable")
48                 ret["modulation"] = {
49                         eDVBFrontendParametersCable.Modulation_Auto: _("Auto"),
50                         eDVBFrontendParametersCable.Modulation_QAM16 : "QAM16",
51                         eDVBFrontendParametersCable.Modulation_QAM32 : "QAM32",
52                         eDVBFrontendParametersCable.Modulation_QAM64 : "QAM64",
53                         eDVBFrontendParametersCable.Modulation_QAM128 : "QAM128",
54                         eDVBFrontendParametersCable.Modulation_QAM256 : "QAM256"}[tp["modulation"]]
55                 ret["inversion"] = {
56                         eDVBFrontendParametersCable.Inversion_Unknown : _("Auto"),
57                         eDVBFrontendParametersCable.Inversion_On : _("On"),
58                         eDVBFrontendParametersCable.Inversion_Off : _("Off")}[tp["inversion"]]
59                 ret["fec_inner"] = {
60                         eDVBFrontendParametersCable.FEC_None : _("None"),
61                         eDVBFrontendParametersCable.FEC_Auto : _("Auto"),
62                         eDVBFrontendParametersCable.FEC_1_2 : "1/2",
63                         eDVBFrontendParametersCable.FEC_2_3 : "2/3",
64                         eDVBFrontendParametersCable.FEC_3_4 : "3/4",
65                         eDVBFrontendParametersCable.FEC_5_6 : "5/6",
66                         eDVBFrontendParametersCable.FEC_7_8 : "7/8",
67                         eDVBFrontendParametersCable.FEC_8_9 : "8/9"}[tp["fec_inner"]]
68         elif type == "DVB-T":
69                 ret["tuner_type"] = _("Terrestrial")
70                 ret["bandwidth"] = {
71                         eDVBFrontendParametersTerrestrial.Bandwidth_Auto : _("Auto"),
72                         eDVBFrontendParametersTerrestrial.Bandwidth_8MHz : "8 MHz",
73                         eDVBFrontendParametersTerrestrial.Bandwidth_7MHz : "7 MHz",
74                         eDVBFrontendParametersTerrestrial.Bandwidth_6MHz : "6 MHz"}[tp["bandwidth"]]
75                 ret["code_rate_lp"] = {
76                         eDVBFrontendParametersTerrestrial.FEC_Auto : _("Auto"),
77                         eDVBFrontendParametersTerrestrial.FEC_1_2 : "1/2",
78                         eDVBFrontendParametersTerrestrial.FEC_2_3 : "2/3",
79                         eDVBFrontendParametersTerrestrial.FEC_3_4 : "3/4",
80                         eDVBFrontendParametersTerrestrial.FEC_5_6 : "5/6",
81                         eDVBFrontendParametersTerrestrial.FEC_7_8 : "7/8"}[tp["code_rate_lp"]]
82                 ret["code_rate_hp"] = {
83                         eDVBFrontendParametersTerrestrial.FEC_Auto : _("Auto"),
84                         eDVBFrontendParametersTerrestrial.FEC_1_2 : "1/2",
85                         eDVBFrontendParametersTerrestrial.FEC_2_3 : "2/3",
86                         eDVBFrontendParametersTerrestrial.FEC_3_4 : "3/4",
87                         eDVBFrontendParametersTerrestrial.FEC_5_6 : "5/6",
88                         eDVBFrontendParametersTerrestrial.FEC_7_8 : "7/8"}[tp["code_rate_lp"]]
89                 ret["constellation"] = {
90                         eDVBFrontendParametersTerrestrial.Modulation_Auto : _("Auto"),
91                         eDVBFrontendParametersTerrestrial.Modulation_QPSK : "QPSK",
92                         eDVBFrontendParametersTerrestrial.Modulation_QAM16 : "QAM16",
93                         eDVBFrontendParametersTerrestrial.Modulation_QAM64 : "QAM64"}[tp["constellation"]]
94                 ret["transmission_mode"] = {
95                         eDVBFrontendParametersTerrestrial.TransmissionMode_Auto : _("Auto"),
96                         eDVBFrontendParametersTerrestrial.TransmissionMode_2k : "2k",
97                         eDVBFrontendParametersTerrestrial.TransmissionMode_8k : "8k"}[tp["transmission_mode"]]
98                 ret["guard_interval"] = {
99                         eDVBFrontendParametersTerrestrial.GuardInterval_Auto : _("Auto"),
100                         eDVBFrontendParametersTerrestrial.GuardInterval_1_32 : "1/32",
101                         eDVBFrontendParametersTerrestrial.GuardInterval_1_16 : "1/16",
102                         eDVBFrontendParametersTerrestrial.GuardInterval_1_8 : "1/8",
103                         eDVBFrontendParametersTerrestrial.GuardInterval_1_4 : "1/4"}[tp["guard_interval"]]
104                 ret["hierarchy_information"] = {
105                         eDVBFrontendParametersTerrestrial.Hierarchy_Auto : _("Auto"),
106                         eDVBFrontendParametersTerrestrial.Hierarchy_None : _("None"),
107                         eDVBFrontendParametersTerrestrial.Hierarchy_1 : "1",
108                         eDVBFrontendParametersTerrestrial.Hierarchy_2 : "2",
109                         eDVBFrontendParametersTerrestrial.Hierarchy_4 : "4"}[tp["hierarchy_information"]]
110                 ret["inversion"] = {
111                         eDVBFrontendParametersTerrestrial.Inversion_Unknown : _("Auto"),
112                         eDVBFrontendParametersTerrestrial.Inversion_On : _("On"),
113                         eDVBFrontendParametersTerrestrial.Inversion_Off : _("Off")}[tp["inversion"]]
114         for x in tp.keys():
115                 if not ret.has_key(x):
116                         ret[x] = tp[x]
117         return ret