mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-28 16:01:20 +02:00
neutrino: add TANK video modes (we only support RGB / YPBPR on both cinch and scart at the same time).
This commit is contained in:
@@ -1774,6 +1774,10 @@ videomenu.analog_sd_rgb_cinch RGB -> Cinch (SD)
|
||||
videomenu.analog_sd_rgb_scart RGB -> Scart (SD)
|
||||
videomenu.analog_sd_yprpb_cinch YPbPr -> Cinch (SD)
|
||||
videomenu.analog_sd_yprpb_scart YPbPr -> Scart (SD)
|
||||
videomenu.analog_hd_rgb RGB (HD)
|
||||
videomenu.analog_hd_yprpb YPbPr(HD)
|
||||
videomenu.analog_sd_rgb RGB (SD)
|
||||
videomenu.analog_sd_yprpb YPbPr (SD)
|
||||
videomenu.auto Automatisch
|
||||
videomenu.brightness Helligkeit
|
||||
videomenu.cinch Cinch
|
||||
|
@@ -1774,6 +1774,10 @@ videomenu.analog_sd_rgb_cinch RGB on cinch (SD)
|
||||
videomenu.analog_sd_rgb_scart RGB on scart (SD)
|
||||
videomenu.analog_sd_yprpb_cinch YPbPr on cinch (SD)
|
||||
videomenu.analog_sd_yprpb_scart YPbPr on scart (SD)
|
||||
videomenu.analog_hd_rgb RGB (HD)
|
||||
videomenu.analog_hd_yprpb YPbPr(HD)
|
||||
videomenu.analog_sd_rgb RGB (SD)
|
||||
videomenu.analog_sd_yprpb YPbPr (SD)
|
||||
videomenu.auto Auto
|
||||
videomenu.brightness Brightness
|
||||
videomenu.cinch Cinch
|
||||
|
@@ -22,17 +22,21 @@
|
||||
#endif
|
||||
|
||||
typedef enum {
|
||||
ANALOG_SD_RGB_CINCH = 0x00,
|
||||
ANALOG_SD_YPRPB_CINCH,
|
||||
ANALOG_HD_RGB_CINCH,
|
||||
ANALOG_HD_YPRPB_CINCH,
|
||||
ANALOG_SD_RGB_SCART = 0x10,
|
||||
ANALOG_SD_YPRPB_SCART,
|
||||
ANALOG_HD_RGB_SCART,
|
||||
ANALOG_HD_YPRPB_SCART,
|
||||
ANALOG_SCART_MASK = 0x10
|
||||
// Video modes
|
||||
ANALOG_xD_CVBS = (1 << 0), // Turns off fastblank on SCART
|
||||
ANALOG_SD_RGB = (1 << 1), // Output SD in RGB format
|
||||
ANALOG_SD_YPRPB = (1 << 2), // Output SD in YPbPr format (component)
|
||||
ANALOG_HD_RGB = (1 << 3), // Output HD in RGB format
|
||||
ANALOG_HD_YPRPB = (1 << 4), // Output HD in YPbPr format (component)
|
||||
// Output types
|
||||
ANALOG_xD_SCART = (1 << 8), // Output is SCART
|
||||
ANALOG_xD_CINCH = (1 << 9), // Output is Cinch
|
||||
ANALOG_xD_BOTH = (3 << 8), // Output cannot individually control scart, cinch outputs
|
||||
// due to limited amount of DACs (ie TANK, Trinity)
|
||||
} analog_mode_t;
|
||||
|
||||
#define ANALOG_MODE(conn, def, sys) (ANALOG_##def##_##sys | ANALOG_xD_##conn)
|
||||
|
||||
typedef enum
|
||||
{
|
||||
VIDEO_FORMAT_MPEG2 = 0,
|
||||
@@ -185,7 +189,6 @@ private:
|
||||
public:
|
||||
/* constructor & destructor */
|
||||
cVideo(int mode, void * hChannel, void * hBuffer);
|
||||
|
||||
~cVideo(void);
|
||||
|
||||
void * GetVPP(void);
|
||||
|
@@ -107,23 +107,34 @@ const CMenuOptionChooser::keyval VIDEOMENU_43MODE_OPTIONS[VIDEOMENU_43MODE_OPTIO
|
||||
#define VIDEOMENU_VIDEOSIGNAL_HD1_OPTION_COUNT 8
|
||||
const CMenuOptionChooser::keyval VIDEOMENU_VIDEOSIGNAL_HD1_OPTIONS[VIDEOMENU_VIDEOSIGNAL_HD1_OPTION_COUNT] =
|
||||
{
|
||||
{ ANALOG_SD_RGB_SCART, LOCALE_VIDEOMENU_ANALOG_SD_RGB_SCART }, /* composite + RGB (for both SCART and Cinch) */
|
||||
{ ANALOG_SD_RGB_CINCH, LOCALE_VIDEOMENU_ANALOG_SD_RGB_CINCH }, /* composite + RGB (for both SCART and Cinch) */
|
||||
{ ANALOG_SD_YPRPB_SCART, LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_SCART }, /* YPbPr SCART (with wrongly connected Cinch) */
|
||||
{ ANALOG_SD_YPRPB_CINCH, LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_CINCH }, /* YPbPr Cinch (with wrongly connected SCART) */
|
||||
{ ANALOG_HD_RGB_SCART, LOCALE_VIDEOMENU_ANALOG_HD_RGB_SCART },
|
||||
{ ANALOG_HD_RGB_CINCH, LOCALE_VIDEOMENU_ANALOG_HD_RGB_CINCH },
|
||||
{ ANALOG_HD_YPRPB_SCART, LOCALE_VIDEOMENU_ANALOG_HD_YPRPB_SCART },
|
||||
{ ANALOG_HD_YPRPB_CINCH, LOCALE_VIDEOMENU_ANALOG_HD_YPRPB_CINCH }
|
||||
{ ANALOG_MODE(SCART,SD,RGB ), LOCALE_VIDEOMENU_ANALOG_SD_RGB_SCART }, /* composite + RGB (for both SCART and Cinch) */
|
||||
{ ANALOG_MODE(CINCH,SD,RGB ), LOCALE_VIDEOMENU_ANALOG_SD_RGB_CINCH }, /* composite + RGB (for both SCART and Cinch) */
|
||||
{ ANALOG_MODE(SCART,SD,YPRPB), LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_SCART }, /* YPbPr SCART (with wrongly connected Cinch) */
|
||||
{ ANALOG_MODE(CINCH,SD,YPRPB), LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_CINCH }, /* YPbPr Cinch (with wrongly connected SCART) */
|
||||
{ ANALOG_MODE(SCART,HD,RGB ), LOCALE_VIDEOMENU_ANALOG_HD_RGB_SCART },
|
||||
{ ANALOG_MODE(CINCH,HD,RGB ), LOCALE_VIDEOMENU_ANALOG_HD_RGB_CINCH },
|
||||
{ ANALOG_MODE(SCART,HD,YPRPB), LOCALE_VIDEOMENU_ANALOG_HD_YPRPB_SCART },
|
||||
{ ANALOG_MODE(CINCH,HD,YPRPB), LOCALE_VIDEOMENU_ANALOG_HD_YPRPB_CINCH }
|
||||
};
|
||||
|
||||
#ifdef ISAPOLLO
|
||||
#define VIDEOMENU_VIDEOSIGNAL_TANK_OPTION_COUNT 4
|
||||
const CMenuOptionChooser::keyval VIDEOMENU_VIDEOSIGNAL_TANK_OPTIONS[VIDEOMENU_VIDEOSIGNAL_TANK_OPTION_COUNT] =
|
||||
{
|
||||
{ ANALOG_MODE(BOTH ,SD,RGB ), LOCALE_VIDEOMENU_ANALOG_SD_RGB }, /* Scart and Cinch */
|
||||
{ ANALOG_MODE(BOTH ,SD,YPRPB), LOCALE_VIDEOMENU_ANALOG_SD_YPRPB }, /* */
|
||||
{ ANALOG_MODE(BOTH ,HD,RGB ), LOCALE_VIDEOMENU_ANALOG_HD_RGB }, /* */
|
||||
{ ANALOG_MODE(BOTH ,HD,YPRPB), LOCALE_VIDEOMENU_ANALOG_HD_YPRPB }, /* */
|
||||
};
|
||||
#endif
|
||||
|
||||
#define VIDEOMENU_VIDEOSIGNAL_HD1PLUS_SCART_OPTION_COUNT 4
|
||||
const CMenuOptionChooser::keyval VIDEOMENU_VIDEOSIGNAL_HD1PLUS_SCART_OPTIONS[VIDEOMENU_VIDEOSIGNAL_HD1PLUS_SCART_OPTION_COUNT] =
|
||||
{
|
||||
{ ANALOG_SD_RGB_SCART, LOCALE_VIDEOMENU_ANALOG_SD_RGB_SCART }, /* composite + RGB */
|
||||
{ ANALOG_SD_YPRPB_SCART, LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_SCART }, /* YPbPr SCART */
|
||||
{ ANALOG_HD_RGB_SCART, LOCALE_VIDEOMENU_ANALOG_HD_RGB_SCART },
|
||||
{ ANALOG_HD_YPRPB_SCART, LOCALE_VIDEOMENU_ANALOG_HD_YPRPB_SCART },
|
||||
{ ANALOG_MODE(SCART,SD,RGB ), LOCALE_VIDEOMENU_ANALOG_SD_RGB_SCART }, /* composite + RGB */
|
||||
{ ANALOG_MODE(SCART,SD,YPRPB), LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_SCART }, /* YPbPr SCART */
|
||||
{ ANALOG_MODE(SCART,HD,RGB ), LOCALE_VIDEOMENU_ANALOG_HD_RGB_SCART },
|
||||
{ ANALOG_MODE(SCART,HD,YPRPB), LOCALE_VIDEOMENU_ANALOG_HD_YPRPB_SCART },
|
||||
};
|
||||
|
||||
// #define VIDEOMENU_VCRSIGNAL_OPTION_COUNT 2
|
||||
@@ -136,10 +147,10 @@ const CMenuOptionChooser::keyval VIDEOMENU_VIDEOSIGNAL_HD1PLUS_SCART_OPTIONS[VID
|
||||
#define VIDEOMENU_VIDEOSIGNAL_HD1PLUS_CINCH_OPTION_COUNT 4
|
||||
const CMenuOptionChooser::keyval VIDEOMENU_VIDEOSIGNAL_HD1PLUS_CINCH_OPTIONS[VIDEOMENU_VIDEOSIGNAL_HD1PLUS_CINCH_OPTION_COUNT] =
|
||||
{
|
||||
{ ANALOG_SD_RGB_CINCH, LOCALE_VIDEOMENU_ANALOG_SD_RGB_CINCH }, /* composite + RGB (for both SCART and Cinch) */
|
||||
{ ANALOG_SD_YPRPB_CINCH, LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_CINCH }, /* YPbPr Cinch (with wrongly connected SCART) */
|
||||
{ ANALOG_HD_RGB_CINCH, LOCALE_VIDEOMENU_ANALOG_HD_RGB_CINCH },
|
||||
{ ANALOG_HD_YPRPB_CINCH, LOCALE_VIDEOMENU_ANALOG_HD_YPRPB_CINCH }
|
||||
{ ANALOG_MODE(CINCH,SD,RGB ), LOCALE_VIDEOMENU_ANALOG_SD_RGB_CINCH }, /* composite + RGB (for both SCART and Cinch) */
|
||||
{ ANALOG_MODE(CINCH,SD,YPRPB), LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_CINCH }, /* YPbPr Cinch (with wrongly connected SCART) */
|
||||
{ ANALOG_MODE(CINCH,HD,RGB ), LOCALE_VIDEOMENU_ANALOG_HD_RGB_CINCH },
|
||||
{ ANALOG_MODE(CINCH,HD,YPRPB), LOCALE_VIDEOMENU_ANALOG_HD_YPRPB_CINCH }
|
||||
};
|
||||
|
||||
/* numbers corresponding to video.cpp from zapit */
|
||||
@@ -188,7 +199,7 @@ int CVideoSettings::showVideoSetup()
|
||||
CMenuOptionChooser * vs_analg_ch = NULL;
|
||||
CMenuOptionChooser * vs_scart_ch = NULL;
|
||||
CMenuOptionChooser * vs_chinch_ch = NULL;
|
||||
if (system_rev == 0x06)
|
||||
if (system_rev == 0x06 || system_rev == 0x09)
|
||||
{
|
||||
vs_analg_ch = new CMenuOptionChooser(LOCALE_VIDEOMENU_ANALOG_MODE, &g_settings.analog_mode1, VIDEOMENU_VIDEOSIGNAL_HD1_OPTIONS, VIDEOMENU_VIDEOSIGNAL_HD1_OPTION_COUNT, true, this);
|
||||
vs_analg_ch->setHint("", LOCALE_MENU_HINT_VIDEO_ANALOG_MODE);
|
||||
|
@@ -294,8 +294,8 @@ int CNeutrinoApp::loadSetup(const char * fname)
|
||||
}
|
||||
// video
|
||||
g_settings.video_Mode = configfile.getInt32("video_Mode", VIDEO_STD_1080I50); // VIDEO_STD_720P50
|
||||
g_settings.analog_mode1 = configfile.getInt32("analog_mode1", (int)ANALOG_SD_RGB_SCART); // default RGB
|
||||
g_settings.analog_mode2 = configfile.getInt32("analog_mode2", (int)ANALOG_SD_YPRPB_CINCH); // default YPBPR
|
||||
g_settings.analog_mode1 = configfile.getInt32("analog_mode1", (int)ANALOG_MODE(SCART,SD,RGB)); // default RGB
|
||||
g_settings.analog_mode2 = configfile.getInt32("analog_mode2", (int)ANALOG_MODE(CINCH,SD,YPRPB)); // default YPBPR
|
||||
g_settings.hdmi_cec_mode = configfile.getInt32("hdmi_cec_mode", 0); // default off
|
||||
g_settings.hdmi_cec_view_on = configfile.getInt32("hdmi_cec_view_on", 0); // default off
|
||||
g_settings.hdmi_cec_standby = configfile.getInt32("hdmi_cec_standby", 0); // default off
|
||||
|
@@ -1801,6 +1801,10 @@ typedef enum
|
||||
LOCALE_VIDEOMENU_ANALOG_SD_RGB_SCART,
|
||||
LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_CINCH,
|
||||
LOCALE_VIDEOMENU_ANALOG_SD_YPRPB_SCART,
|
||||
LOCALE_VIDEOMENU_ANALOG_HD_RGB,
|
||||
LOCALE_VIDEOMENU_ANALOG_HD_YPRPB,
|
||||
LOCALE_VIDEOMENU_ANALOG_SD_RGB,
|
||||
LOCALE_VIDEOMENU_ANALOG_SD_YPRPB,
|
||||
LOCALE_VIDEOMENU_AUTO,
|
||||
LOCALE_VIDEOMENU_BRIGHTNESS,
|
||||
LOCALE_VIDEOMENU_CINCH,
|
||||
|
@@ -1801,6 +1801,10 @@ const char * locale_real_names[] =
|
||||
"videomenu.analog_sd_rgb_scart",
|
||||
"videomenu.analog_sd_yprpb_cinch",
|
||||
"videomenu.analog_sd_yprpb_scart",
|
||||
"videomenu.analog_hd_rgb",
|
||||
"videomenu.analog_hd_yprpb",
|
||||
"videomenu.analog_sd_rgb",
|
||||
"videomenu.analog_sd_yprpb",
|
||||
"videomenu.auto",
|
||||
"videomenu.brightness",
|
||||
"videomenu.cinch",
|
||||
|
Reference in New Issue
Block a user