bool CSysInfo::HWSupportsStereo(const int mode) { #if defined(TARGET_ANDROID) if (aml_present()) return aml_supports_stereo(mode); else if (SysfsUtils::Has("/sys/class/graphics/fb0/3d_present")) // AFTV return true; #endif return false; }
void aml_set_stereo_mode(const int mode, const int view) { static int last_mode = -1; // do nothing if mode matches last time someone called us. if (last_mode == mode) return; last_mode = mode; if (!aml_supports_stereo(mode)) return; switch(mode) { default: aml_hdmi_3D_mode("3doff"); break; case RENDER_STEREO_MODE_SPLIT_VERTICAL: aml_hdmi_3D_mode("3dlr"); break; case RENDER_STEREO_MODE_SPLIT_HORIZONTAL: aml_hdmi_3D_mode("3dtb"); break; case RENDER_STEREO_MODE_INTERLACED: { std::string stereo_mode; switch(CMediaSettings::GetInstance().GetCurrentVideoSettings().m_StereoMode) { case RENDER_STEREO_MODE_SPLIT_VERTICAL: aml_hdmi_3D_mode("3dlr"); break; case RENDER_STEREO_MODE_SPLIT_HORIZONTAL: aml_hdmi_3D_mode("3dtb"); break; default: aml_hdmi_3D_mode("3doff"); break; } } break; } return; }