- config.av = ConfigSubsection();
- config.av.colorformat = configElement("config.av.colorformat", configSelection, 1, (("cvbs", _("CVBS")), ("rgb", _("RGB")), ("svideo", _("S-Video")) ))
- config.av.aspectratio = configElement("config.av.aspectratio", configSelection, 0, (("4_3_letterbox", _("4:3 Letterbox")), ("4_3_panscan", _("4:3 PanScan")), ("16_9", _("16:9")), ("16_9_always", _("16:9 always"))) )
- #config.av.tvsystem = configElement("config.av.tvsystem", configSelection, 0, ("PAL", "PAL + PAL60", "Multi", "NTSC") )
- config.av.tvsystem = configElement("config.av.tvsystem", configSelection, 0, (("pal", _("PAL")), ("ntsc", _("NTSC"))) )
- config.av.wss = configElement("config.av.wss", configSelection, 0, (("off", _("Off")), ("auto", _("Auto")), ("auto_no4_3", _("Auto (disable on 4:3)"))) )
- config.av.defaultac3 = configElement("config.av.defaultac3", configSelection, 1, (("enable", _("Enable")), ("disable", _("Disable"))))
- config.av.vcrswitch = configElement("config.av.vcrswitch", configSelection, 1, (("enable", _("Enable")), ("disable", _("Disable"))))
+ config.av = ConfigSubsection()
+ config.av.yuvenabled = ConfigBoolean(default=False)
+ colorformat_choices = {"cvbs": _("CVBS"), "rgb": _("RGB"), "svideo": _("S-Video")}
+
+ # when YUV is not enabled, don't let the user select it
+ if config.av.yuvenabled.value:
+ colorformat_choices["yuv"] = _("YPbPr")
+
+ config.av.colorformat = ConfigSelection(choices=colorformat_choices, default="rgb")
+ config.av.aspectratio = ConfigSelection(choices={
+ "4_3_letterbox": _("4:3 Letterbox"),
+ "4_3_panscan": _("4:3 PanScan"),
+ "16_9": _("16:9"),
+ "16_9_always": _("16:9 always"),
+ "16_10_letterbox": _("16:10 Letterbox"),
+ "16_10_panscan": _("16:10 PanScan")},
+ default = "4_3_letterbox")
+ config.av.tvsystem = ConfigSelection(choices = {"pal": _("PAL"), "ntsc": _("NTSC")}, default="pal")
+ config.av.wss = ConfigEnableDisable(default = True)
+ config.av.defaultac3 = ConfigYesNo(default = False)
+ config.av.vcrswitch = ConfigEnableDisable(default = False)