1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-12-23 10:05:46 -05:00

ATV Modulator: fixed 819 lines system

This commit is contained in:
f4exb 2020-08-03 08:23:24 +02:00
parent 1de1bf4d08
commit 720d69311e
2 changed files with 14 additions and 14 deletions

View File

@ -658,7 +658,7 @@ void ATVModSource::applyStandard(const ATVModSettings& settings)
m_nbLinesField1 = m_nbLines2; m_nbLinesField1 = m_nbLines2;
break; break;
case ATVModSettings::ATVStdPAL525: // Follows PAL-M standard case ATVModSettings::ATVStdPAL525: // Follows PAL-M standard
m_nbImageLines2 = (m_nbLines/2) - 19; // 525 -> 243 per half m_nbImageLines2 = m_nbLines2 - 19; // 525 -> 243 per half
m_nbImageLines = 2*m_nbImageLines2; m_nbImageLines = 2*m_nbImageLines2;
m_imageLineStart1 = 1; m_imageLineStart1 = 1;
m_imageLineStart2 = 0; m_imageLineStart2 = 0;
@ -667,17 +667,17 @@ void ATVModSource::applyStandard(const ATVModSettings& settings)
m_nbLinesField1 = m_nbLines2+1; m_nbLinesField1 = m_nbLines2+1;
break; break;
case ATVModSettings::ATVStd819: // Follows 819 F standard (belgium) case ATVModSettings::ATVStd819: // Follows 819 F standard (belgium)
m_nbImageLines2 = (m_nbLines/2) - 28; m_nbImageLines2 = m_nbLines2 - 29;
m_nbImageLines = 2*m_nbImageLines2; m_nbImageLines = 2*m_nbImageLines2;
m_imageLineStart1 = 1; m_imageLineStart1 = 0;
m_imageLineStart2 = 0; m_imageLineStart2 = 1;
m_interlaced = true; m_interlaced = true;
m_blankLineLvel = m_blackLevel; m_blankLineLvel = m_blackLevel;
m_nbLinesField1 = m_nbLines2; m_nbLinesField1 = m_nbLines2;
break; break;
case ATVModSettings::ATVStdPAL625: // Follows PAL-B/G/H standard case ATVModSettings::ATVStdPAL625: // Follows PAL-B/G/H standard
default: default:
m_nbImageLines2 = (m_nbLines/2) - 24; // 625 -> 288 per half m_nbImageLines2 = m_nbLines2 - 24; // 625 -> 288 per half
m_nbImageLines = 2*m_nbImageLines2; m_nbImageLines = 2*m_nbImageLines2;
m_imageLineStart1 = 0; m_imageLineStart1 = 0;
m_imageLineStart2 = 1; m_imageLineStart2 = 1;

View File

@ -340,7 +340,7 @@ private:
} }
else if (standard == ATVModSettings::ATVStd819) // Standard F (Belgian) - m_nbLines2 = 409 - fieldLine 0 = 409 else if (standard == ATVModSettings::ATVStd819) // Standard F (Belgian) - m_nbLines2 = 409 - fieldLine 0 = 409
{ {
if (lineNumber < m_nbLines2 - 1) if (lineNumber < m_nbLines2)
{ {
if (lineNumber < 7) { // field 1 start (0..6 in line index) if (lineNumber < 7) { // field 1 start (0..6 in line index)
return Std819_F1Start[lineNumber]; return Std819_F1Start[lineNumber];
@ -348,27 +348,27 @@ private:
return LineBlack; return LineBlack;
} else if (lineNumber == 26) { // field 1 half image line (26) } else if (lineNumber == 26) { // field 1 half image line (26)
return LineImageHalf2; return LineImageHalf2;
} else if (lineNumber < m_nbLines2 - 4) { // field 1 full image (27..404) } else if (lineNumber < m_nbLines2 - 3) { // field 1 full image (27..405) - 379 lines
return LineImage; return LineImage;
} else if (lineNumber < m_nbLines2 - 1) { // field 1 bottom (405..407) } else if (lineNumber < m_nbLines2) { // field 1 bottom (405..408)
return LineShortPulses; return LineShortPulses;
} }
} }
else if (lineNumber == m_nbLines2 - 1) // transition field 1 -> 2 (408) else if (lineNumber == m_nbLines2) // transition field 1 -> 2 (409)
{ {
return LineShortBroadPulses; return LineShortBroadPulses;
} }
else else
{ {
int fieldLine = lineNumber - m_nbLines2; int fieldLine = lineNumber - m_nbLines2 - 1;
if (fieldLine < 6) { // field 2 start (409..(409+6-1=414)) if (fieldLine < 6) { // field 2 start (410..(410+6-1=415))
return Std819_F2Start[fieldLine]; return Std819_F2Start[fieldLine];
} else if (fieldLine < 26) { // field 2 black lines (415..(409+26-1=434)) } else if (fieldLine < 26) { // field 2 black lines (416..(410+26-1=435))
return LineBlack; return LineBlack;
} else if (fieldLine < m_nbLines2 - 3) { // field 2 full image (435..(409+406-1=814)) } else if (fieldLine < m_nbLines2 - 4) { // field 2 full image (436..(410+405-1=814)) - 379 lines
return LineImage; return LineImage;
} else if (fieldLine == m_nbLines2 - 3) { // field 2 half image line (409+406=815) } else if (fieldLine == m_nbLines2 - 4) { // field 2 half image line (410+405=815)
return LineImageHalf1Short; return LineImageHalf1Short;
} else { // field 2 bottom (816..818..) } else { // field 2 bottom (816..818..)
return LineShortPulses; return LineShortPulses;