Skip to content

Latest commit

 

History

History
233 lines (165 loc) · 7.04 KB

File metadata and controls

233 lines (165 loc) · 7.04 KB

PD160 Mode Technical Specification

Overview

PD160 is a Slow Scan Television (SSTV) mode developed as part of the PD (Paul Turner/Don Rotier) series. It provides a balanced compromise between transmission time and image quality, sitting between PD120 and PD180 in terms of both duration and resolution.

Basic Specifications

Property Value
Mode Name PD 160
VIS Code 98
Resolution 512 × 400 pixels
Color Encoding Dual-luminance YUV
Transmission Time ~160 seconds (~2 minutes 40 seconds)
Scan Lines 200 (produces 400 pixel rows)
Rows per Scan 2 rows per scan line
Scan Line Duration ~804.416 ms
Pixel Dwell Time 382 µs per pixel

Timing Breakdown

Per Scan Line

Each PD160 scan line contains the following timing structure:

Component Duration Purpose
Sync Pulse 20 ms Line synchronization at 1200 Hz
Sync Porch 2.08 ms Guard time at 1500 Hz
Y-even Channel 195.584 ms Luminance for even row
V-avg Channel 195.584 ms R-Y chroma (shared between rows)
U-avg Channel 195.584 ms B-Y chroma (shared between rows)
Y-odd Channel 195.584 ms Luminance for odd row
Total 804.416 ms Complete scan line

Total Transmission Time

Total time = 200 scan lines × 804.416 ms/line
          ≈ 160.88 seconds
          ≈ 2 minutes 40 seconds

Color Encoding

PD160 uses the same dual-luminance YUV color encoding as other PD modes:

Channel Structure

  1. Y-even: Luminance (brightness) for even-numbered pixel row
  2. V-avg (R-Y): Red difference signal, shared between both rows
  3. U-avg (B-Y): Blue difference signal, shared between both rows
  4. Y-odd: Luminance (brightness) for odd-numbered pixel row

Chroma Subsampling

  • Vertical subsampling: 2:1 (chroma shared between two rows)
  • Horizontal subsampling: None (full chroma resolution)
  • This provides good color fidelity while reducing transmission time

YUV to RGB Conversion

PD160 uses ITU-R BT.601 color space conversion:

Y_adj = Y - 16
U_adj = U - 128  (B-Y component)
V_adj = V - 128  (R-Y component)

R = ((298 × Y_adj + 409 × V_adj + 128) >> 8)
G = ((298 × Y_adj - 100 × U_adj - 208 × V_adj + 128) >> 8)
B = ((298 × Y_adj + 516 × U_adj + 128) >> 8)

Values are clamped to [0, 255] range.

Signal Processing

Frequency Modulation

Signal Level Frequency
Black 1500 Hz
White 2300 Hz
Sync 1200 Hz

Normalized Frequency Scale

The decoder normalizes frequencies to a -1 to +1 scale:

Normalized = (frequency - 1900 Hz) / 400 Hz

Black (1500 Hz) → -1.00
Gray (1900 Hz)  →  0.00
White (2300 Hz) → +1.00
Sync (1200 Hz)  → -1.75

Comparison with Other PD Modes

Mode Resolution Pixel Dwell Scan Time Total Time SNR
PD120 640×496 190 µs 508 ms 126 s Baseline
PD160 512×400 382 µs 804 ms 161 s +3.0 dB
PD180 640×496 286 µs 752 ms 187 s +1.8 dB

Key Characteristics

Advantages over PD120:

  • Better SNR: ~3.0 dB improvement due to 2× longer pixel dwell time
  • Better quality: Longer integration time reduces noise
  • Cleaner images: More time per pixel allows better filtering

Advantages over PD180:

  • Faster: 14% shorter transmission time (161s vs 187s)
  • More efficient: Better fit for satellite passes or time-limited operations
  • Lower bandwidth: Smaller image size (512×400 vs 640×496)

Trade-offs:

  • Lower resolution: 204,800 pixels vs PD120's 317,440 or PD180's 317,440
  • Longer than PD120: 28% increase in transmission time

Implementation Details

Sample Rate Adaptation

The decoder automatically adapts to the audio sample rate (typically 44.1 kHz or 48 kHz):

// Example for 48 kHz sample rate
scanLineSamples = 804.416 ms × 48000 samples/s = 38,612 samples
channelSamples = 195.584 ms × 48000 samples/s = 9,388 samples

Low-Pass Filtering

PD160 uses bidirectional exponential moving average (EMA) filtering for horizontal resolution:

// Forward and backward passes
cutoff(horizontalPixels=512, rate=2×channelSamples, passes=2)

This provides:

  • Smooth pixel transitions
  • Noise reduction
  • Proper band-limiting to 512 pixels horizontal resolution

Buffer Requirements

Minimum buffer size for one scan line:

At 44.1 kHz: ~35,500 samples
At 48.0 kHz: ~38,612 samples

Recommended buffer: 7 seconds (for safety margin and sync detection)

Use Cases

Ideal For:

  1. Satellite Communications: Good balance for ISS passes (~10 minutes)
  2. Medium-Quality Images: When PD120 is too noisy but PD180 is too long
  3. Moderate SNR Conditions: Better noise immunity than PD120
  4. Time-Constrained Operations: When full PD180 quality isn't needed

When to Choose:

  • Choose PD120: When time is critical and conditions are good
  • Choose PD160: When you want better quality but have time constraints
  • Choose PD180: When maximum quality is needed and time permits

Common Applications

  1. ISS SSTV Events: Occasional use when PD120 is too fast but PD180 won't complete
  2. Amateur Radio Contests: Good for medium-quality submissions
  3. DX Stations: Balances quality and transmission time for long-distance contacts
  4. Weather Satellite Reception: Alternative to standard PD modes

Transmission Example

200 scan lines × 804.416 ms = 160.88 seconds

Breakdown:
- Sync pulses: 200 × 20 ms = 4.0 s
- Porch time: 200 × 2.08 ms = 0.416 s
- Data: 200 × 782.336 ms = 156.47 s
- Total: ~161 seconds (2:41)

Implementation Notes

Decoder Architecture

The PD160 decoder follows the same architecture as PD120 and PD180:

  1. Sync Detection: 20ms pulse at 1200 Hz
  2. Line Extraction: Extract 804.416ms of demodulated data
  3. Channel Separation: Split into 4 channels (Y-even, V, U, Y-odd)
  4. Filtering: Bidirectional EMA for horizontal resolution
  5. YUV to RGB: Convert using BT.601 color space
  6. Output: Two pixel rows per scan line

Memory Requirements

Image buffer: 512 × 400 × 4 bytes (RGBA) = 819,200 bytes
Line buffer: ~40,000 samples × 4 bytes = 160,000 bytes
Total: ~1 MB per decode session

Historical Context

PD160 is part of the PD mode family developed by Paul Turner (G4IJE) and Don Rotier (K0HEO). The PD modes revolutionized SSTV by introducing:

  • Dual-luminance encoding for better efficiency
  • Higher resolutions than older modes
  • Better use of transmission time
  • Improved color fidelity through YUV encoding

PD160 specifically fills the gap between PD120 (fast but lower quality) and PD180 (slow but highest quality), making it useful for scenarios where neither extreme is ideal.

References

  • ITU-R BT.601 Color Space Standard
  • Robot36 Android App by Ahmet Inan (xdsopl)
  • PD Mode Specifications (Turner/Rotier)
  • SSTV Signal Specifications (ARRL)