Pular para o conteúdo
Todos os conceitos

SSTV, imagem transmitida como som

Radioamadores mandam fotos pelo rádio transformando cada ponto da imagem num tom. Um decodificador refaz a imagem a partir do áudio.

SSTV (slow-scan television, "televisão de varredura lenta") é o jeito que radioamadores usam para mandar uma imagem por um canal de voz. A imagem é lida linha por linha, e o brilho de cada ponto vira a frequência de um tom: 1.500 Hz é preto, 2.300 Hz é branco, e os valores do meio são tons de cinza ou de cor. Um tom de 1.200 Hz marca o começo de cada linha. Ouvido, parece uma sequência de apitos e chiados.

Toda transmissão começa com um cabeçalho chamado VIS: 1.900 Hz por 300 ms, 1.200 Hz por 10 ms, 1.900 Hz por mais 300 ms e então 8 bits de 30 ms (1.100 Hz vale 1, 1.300 Hz vale 0), que dizem o modo: a resolução, a ordem das cores e o tempo de cada linha.

2.300 Hzbranco 1.900 Hz 1.500 Hzpreto 1.300 Hzbit 0 1.200 Hzinício da linha 1.100 Hzbit 1 cabeçalho VIS linha 1 linha 2 300 ms10 ms300 ms8 bits de 30 ms: o modo tempo, fora de escala
No SSTV, a frequência do tom muda com o tempo: primeiro o cabeçalho VIS (1.900, 1.200 e 1.900 Hz, depois 8 bits em 1.100 ou 1.300 Hz) e então cada linha, que começa em 1.200 Hz e vai de 1.500 Hz (preto) a 2.300 Hz (branco).
Modo Código VIS Imagem Duração
Robot 36 8 320 × 240 36 s
Martin 1 44 320 × 256 114 s
Scottie 1 60 320 × 256 110 s
PD120 95 640 × 496 126 s

Para decodificar, o áudio precisa estar num formato que o programa leia, normalmente WAV. Se ele aparece cru (PCM, só as amostras, sem cabeçalho), dá para reconhecer pela taxa: 44.100 amostras por segundo de 16 bits são 88.200 bytes por segundo, chegando num ritmo perfeitamente regular. O sox põe o cabeçalho (sox -t raw -r 44100 -e signed -b 16 -c 1 audio.raw audio.wav), e o Audacity abre áudio cru pelo menu File > Import > Raw Data.

Decodificadores: o pacote Python sstv (pip install sstv, que lê WAV e devolve a imagem), e programas de radioamador como o QSSTV (Linux) e o MMSSTV (Windows). Num espectrograma, SSTV aparece como uma faixa densa entre 1.100 e 2.300 Hz, com o mesmo padrão repetido a cada linha.

Em CTFs, SSTV é um esconderijo clássico: um arquivo de áudio, ou tráfego de rede que parece aleatório, que na verdade carrega uma foto.

Aparece nestes desafios