From 31555e44765ccc75bc4703c4bdbce485fe4582e4 Mon Sep 17 00:00:00 2001 From: f4exb Date: Tue, 21 Jul 2020 23:52:30 +0200 Subject: [PATCH] ATV mod: corrected line timings and created a diagonal pattern --- plugins/channeltx/modatv/atvmodgui.ui | 5 +++++ plugins/channeltx/modatv/atvmodsettings.h | 1 + plugins/channeltx/modatv/atvmodsource.cpp | 4 ++-- plugins/channeltx/modatv/atvmodsource.h | 5 ++++- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/plugins/channeltx/modatv/atvmodgui.ui b/plugins/channeltx/modatv/atvmodgui.ui index a39e13e2c..6744353ab 100644 --- a/plugins/channeltx/modatv/atvmodgui.ui +++ b/plugins/channeltx/modatv/atvmodgui.ui @@ -760,6 +760,11 @@ V Grad + + + Diagonal + + Image diff --git a/plugins/channeltx/modatv/atvmodsettings.h b/plugins/channeltx/modatv/atvmodsettings.h index d7dc2ab08..a664d9edd 100644 --- a/plugins/channeltx/modatv/atvmodsettings.h +++ b/plugins/channeltx/modatv/atvmodsettings.h @@ -44,6 +44,7 @@ struct ATVModSettings ATVModInputChessboard, ATVModInputHGradient, ATVModInputVGradient, + ATVModInputDiagonal, ATVModInputImage, ATVModInputVideo, ATVModInputCamera diff --git a/plugins/channeltx/modatv/atvmodsource.cpp b/plugins/channeltx/modatv/atvmodsource.cpp index a8e004ac0..c956133cc 100644 --- a/plugins/channeltx/modatv/atvmodsource.cpp +++ b/plugins/channeltx/modatv/atvmodsource.cpp @@ -517,8 +517,8 @@ float ATVModSource::getRFBandwidthDivisor(ATVModSettings::ATVModulation modulati void ATVModSource::applyStandard(const ATVModSettings& settings) { m_pointsPerSync = (uint32_t) ((4.7f / 64.0f) * m_pointsPerLine); - m_pointsPerBP = (uint32_t) ((4.7f / 64.0f) * m_pointsPerLine); - m_pointsPerFP = (uint32_t) ((2.6f / 64.0f) * m_pointsPerLine); + m_pointsPerBP = (uint32_t) ((5.8f / 64.0f) * m_pointsPerLine); + m_pointsPerFP = (uint32_t) ((1.5f / 64.0f) * m_pointsPerLine); m_pointsPerFSync = (uint32_t) ((2.3f / 64.0f) * m_pointsPerLine); m_pointsPerImgLine = m_pointsPerLine - m_pointsPerSync - m_pointsPerBP - m_pointsPerFP; diff --git a/plugins/channeltx/modatv/atvmodsource.h b/plugins/channeltx/modatv/atvmodsource.h index 909cd2512..27f732ae1 100644 --- a/plugins/channeltx/modatv/atvmodsource.h +++ b/plugins/channeltx/modatv/atvmodsource.h @@ -144,7 +144,7 @@ private: int m_pointsPerBP; //!< number of line points for the back porch int m_pointsPerImgLine; //!< number of line points for the image line uint32_t m_pointsPerFP; //!< number of line points for the front porch - int m_pointsPerFSync; //!< number of line points for the field first sync + int m_pointsPerFSync; //!< number of line points for the field first sync - a.k.a Equalizing pulse uint32_t m_pointsPerHBar; //!< number of line points for a bar of the bar chart uint32_t m_linesPerVBar; //!< number of lines for a bar of the bar chart uint32_t m_pointsPerTU; //!< number of line points per time unit @@ -276,6 +276,9 @@ private: case ATVModSettings::ATVModInputVGradient: sample = ((iLine -5) / (float) m_nbImageLines2) * m_spanLevel + m_blackLevel; break; + case ATVModSettings::ATVModInputDiagonal: + sample = pointIndex < (iLine * m_pointsPerImgLine) / m_nbLines2 ? m_blackLevel : m_settings.m_uniformLevel + m_blackLevel; + break; case ATVModSettings::ATVModInputImage: if (!m_imageOK || (iLineImage < -oddity) || m_image.empty()) {