diff --git a/plugins/channeltx/modatv/atvmodgui.ui b/plugins/channeltx/modatv/atvmodgui.ui
index ce45e6cdc..49c105777 100644
--- a/plugins/channeltx/modatv/atvmodgui.ui
+++ b/plugins/channeltx/modatv/atvmodgui.ui
@@ -50,7 +50,16 @@
3
-
+
+ 2
+
+
+ 2
+
+
+ 2
+
+
2
-
@@ -680,12 +689,6 @@
-
-
-
- 70
- 16777215
-
-
TV standard scheme
@@ -706,12 +709,12 @@
-
- ShI
+ ShortI
-
- ShNI
+ ShortNI
-
diff --git a/plugins/channeltx/modatv/atvmodplugin.cpp b/plugins/channeltx/modatv/atvmodplugin.cpp
index 7ff70cf09..1a1b3df86 100644
--- a/plugins/channeltx/modatv/atvmodplugin.cpp
+++ b/plugins/channeltx/modatv/atvmodplugin.cpp
@@ -27,7 +27,7 @@
const PluginDescriptor ATVModPlugin::m_pluginDescriptor = {
QString("ATV Modulator"),
- QString("4.12.1"),
+ QString("4.12.2"),
QString("(c) Edouard Griffiths, F4EXB"),
QString("https://github.com/f4exb/sdrangel"),
true,
diff --git a/plugins/channeltx/modatv/atvmodsource.cpp b/plugins/channeltx/modatv/atvmodsource.cpp
index 328fee640..084fc004b 100644
--- a/plugins/channeltx/modatv/atvmodsource.cpp
+++ b/plugins/channeltx/modatv/atvmodsource.cpp
@@ -530,7 +530,7 @@ void ATVModSource::applyStandard(const ATVModSettings& settings)
m_nbHorizPoints = m_pointsPerLine;
m_pointsPerHBar = m_pointsPerImgLine / m_nbBars;
- m_hBarIncrement = m_spanLevel / (float) m_nbBars;
+ m_hBarIncrement = m_spanLevel / (float) (m_nbBars-1);
m_vBarIncrement = m_spanLevel / (float) m_nbBars;
m_nbLines = settings.m_nbLines;
diff --git a/plugins/channeltx/modatv/atvmodsource.h b/plugins/channeltx/modatv/atvmodsource.h
index 69aa8d241..c97eb9fd0 100644
--- a/plugins/channeltx/modatv/atvmodsource.h
+++ b/plugins/channeltx/modatv/atvmodsource.h
@@ -263,10 +263,10 @@ private:
switch(m_settings.m_atvModInput)
{
case ATVModSettings::ATVModInputHBars:
- sample = (((float)pointIndex) / m_pointsPerHBar) * m_hBarIncrement + m_blackLevel;
+ sample = (pointIndex / m_pointsPerHBar) * m_hBarIncrement + m_blackLevel;
break;
case ATVModSettings::ATVModInputVBars:
- sample = (((float)iLine) / m_linesPerVBar) * m_vBarIncrement + m_blackLevel;
+ sample = (iLine / m_linesPerVBar) * m_vBarIncrement + m_blackLevel;
break;
case ATVModSettings::ATVModInputChessboard:
sample = (((iLine / m_linesPerVBar)*5 + (pointIndex / m_pointsPerHBar)) % 2) * m_spanLevel * m_settings.m_uniformLevel + m_blackLevel;