diff --git a/plugins/channelrx/demodatv/atvdemodgui.cpp b/plugins/channelrx/demodatv/atvdemodgui.cpp index f45d37582..04b7832d3 100644 --- a/plugins/channelrx/demodatv/atvdemodgui.cpp +++ b/plugins/channelrx/demodatv/atvdemodgui.cpp @@ -85,6 +85,7 @@ void ATVDemodGUI::resetToDefaults() ui->vSync->setChecked(true); ui->halfImage->setChecked(false); ui->invertVideo->setChecked(false); + ui->standard->setCurrentIndex(1); //********** RF Default values ********** ui->decimatorEnable->setChecked(false); @@ -185,7 +186,7 @@ bool ATVDemodGUI::deserialize(const QByteArray& arrData) ui->nbLines->setCurrentIndex(tmp); d.readS32(17, &tmp, 100); ui->fmDeviation->setValue(tmp); - d.readS32(18, &tmp, 0); + d.readS32(18, &tmp, 1); ui->standard->setCurrentIndex(tmp); blockApplySettings(false); @@ -713,6 +714,15 @@ float ATVDemodGUI::getFps(int fpsIndex) case 6: return 8.0f; break; + case 7: + return 5.0f; + break; + case 8: + return 2.0f; + break; + case 9: + return 1.0f; + break; case 1: default: return 25.0f; @@ -732,34 +742,43 @@ int ATVDemodGUI::getNumberOfLines(int nbLinesIndex) { switch(nbLinesIndex) { - case 1: - return 525; + case 0: + return 640; break; case 2: - return 405; + return 525; break; case 3: - return 343; + return 480; break; case 4: - return 240; + return 405; break; case 5: - return 180; + return 360; break; case 6: - return 120; + return 343; break; case 7: - return 90; + return 240; break; case 8: - return 60; + return 180; break; case 9: + return 120; + break; + case 10: + return 90; + break; + case 11: + return 60; + break; + case 12: return 32; break; - case 0: + case 1: default: return 625; break; diff --git a/plugins/channelrx/demodatv/atvdemodgui.ui b/plugins/channelrx/demodatv/atvdemodgui.ui index 6e7894161..60762d15e 100644 --- a/plugins/channelrx/demodatv/atvdemodgui.ui +++ b/plugins/channelrx/demodatv/atvdemodgui.ui @@ -514,6 +514,11 @@ Nominal number of lines per frame + + + 640 + + 625 @@ -524,11 +529,21 @@ 525 + + + 480 + + 405 + + + 360 + + 343 @@ -619,6 +634,21 @@ 8 + + + 5 + + + + + 2 + + + + + 1 + + diff --git a/plugins/channelrx/demodatv/readme.md b/plugins/channelrx/demodatv/readme.md index c1692ab81..d0372a76c 100644 --- a/plugins/channelrx/demodatv/readme.md +++ b/plugins/channelrx/demodatv/readme.md @@ -115,11 +115,13 @@ If the rational downsampler is engaged (3) this slider also controls the downsam This is the total number of lines including all possible synchronization signals. -Choice is between 625, 525, 405, 343, 240, 180, 120, 90, 60 and 32 lines. The actual number of image lines depends on the synchronization scheme. +Choice is between 640, 625, 525, 480, 405, 360, 343, 240, 180, 120, 90, 60 and 32 lines. The actual number of image lines depends on the synchronization scheme.

2: Frames Per Second

-This combo lets you chose between a 30, 25, 20, 16, 12, 10 and 8 FPS. This is the resulting FPS. In interleaved modes the half frame rate is doubled. +This combo lets you chose between a 30, 25, 20, 16, 12, 10, 8, 5, 2 and 1 FPS. This is the resulting FPS. In interleaved modes the half frame rate is doubled. + +☞ Perception of continuous motion is said to be acceptable down to 16 FPS. Down to 8 FPS fluidity is still acceptable. The 5 to 1 FPS modes can be used for transmission of images with only few movements or where motion is not important such as fixed webcams. Low FPS will allow for more lines and therefore definition in the same bandwidth.

3: Synchronization standard

diff --git a/plugins/channeltx/modatv/atvmod.cpp b/plugins/channeltx/modatv/atvmod.cpp index 49a37f7db..57e57a230 100644 --- a/plugins/channeltx/modatv/atvmod.cpp +++ b/plugins/channeltx/modatv/atvmod.cpp @@ -780,7 +780,7 @@ void ATVMod::getBaseValues(int outputSampleRate, int linesPerSecond, int& sample break; } - nbPointsPerRateUnit = i; + nbPointsPerRateUnit = i == 0 ? maxPoints : i; sampleRateUnits = nbPointsPerRateUnit * linesPerSecond; } diff --git a/plugins/channeltx/modatv/atvmodgui.cpp b/plugins/channeltx/modatv/atvmodgui.cpp index a2878c51d..3ac2b0cd9 100644 --- a/plugins/channeltx/modatv/atvmodgui.cpp +++ b/plugins/channeltx/modatv/atvmodgui.cpp @@ -270,34 +270,43 @@ int ATVModGUI::getNbLines() { switch(ui->nbLines->currentIndex()) { - case 1: - return 525; + case 0: + return 640; break; case 2: - return 405; + return 525; break; case 3: - return 343; + return 480; break; case 4: - return 240; + return 405; break; case 5: - return 180; + return 360; break; case 6: - return 120; + return 343; break; case 7: - return 90; + return 240; break; case 8: - return 60; + return 180; break; case 9: + return 120; + break; + case 10: + return 90; + break; + case 11: + return 60; + break; + case 12: return 32; break; - case 0: + case 1: default: return 625; break; @@ -326,6 +335,15 @@ int ATVModGUI::getFPS() case 6: return 8; break; + case 7: + return 5; + break; + case 8: + return 2; + break; + case 9: + return 1; + break; case 1: default: return 25; diff --git a/plugins/channeltx/modatv/atvmodgui.ui b/plugins/channeltx/modatv/atvmodgui.ui index d95e2c175..c78efbd8b 100644 --- a/plugins/channeltx/modatv/atvmodgui.ui +++ b/plugins/channeltx/modatv/atvmodgui.ui @@ -539,6 +539,11 @@ Lines per full frame + + + 640 + + 625 @@ -549,11 +554,21 @@ 525 + + + 480 + + 405 + + + 360 + + 343 @@ -644,6 +659,21 @@ 8 + + + 5 + + + + + 2 + + + + + 1 + +
diff --git a/plugins/channeltx/modatv/readme.md b/plugins/channeltx/modatv/readme.md index 7587185c7..98df4b08a 100644 --- a/plugins/channeltx/modatv/readme.md +++ b/plugins/channeltx/modatv/readme.md @@ -100,11 +100,13 @@ This is the level meter fed with the video signal. Units are the percentage of t

A.7: Nuber of lines

-This controls the number of lines per full frame. Choice is between 625, 525 or 405 lines. +This controls the number of lines per full frame. Choice is between 640, 625, 525, 480, 405, 360, 343, 240, 180, 120, 90, 60 and 32 lines.

A.8: Number of frames per second

-This controls the number of full frames per second. Choice is between 30, 25, 20 or 16 frames per second. +This controls the number of full frames per second. Choice is between 30, 25, 20, 16, 12, 10, 8, 5, 2 and 1 frames per second. + +☞ Perception of continuous motion is said to be acceptable down to 16 FPS. Down to 8 FPS fluidity is still acceptable. The 5 to 1 FPS modes can be used when you want to transmit images with only few movements or where motion is not important such as fixed webcams. Low FPS will allow for more lines and therefore definition in the same bandwidth.

A.9: TV Standard