Skip to content

FLAC Compression Guide

Harry Munday edited this page Dec 12, 2022 · 14 revisions

Realtime FLAC compression:

28mhz 8-bit

sudo sox -r 28636 -b 8 -c 1 -e unsigned -t raw /dev/cxadc0 -t raw - | flac --fast -16 --sample-rate=28636 --sign=unsigned --channels=1 --endian=little --bps=8 --blocksize=65535 --lax -f - -o 28mhz-8bit-cx-card.flac

35mhz 8-bit

sudo sox -r 35795 -b 8 -c 1 -e unsigned -t raw /dev/cxadc0 -t raw - | flac --fast -16 --sample-rate=35795 --sign=unsigned --channels=1 --endian=little --bps=8 --blocksize=65535 --lax -f - -o 35mhz-8bit-cx-card.flac

14.3mhz 16-bit

sudo sox -r 17898 -b 16 -c 1 -e unsigned -t raw /dev/cxadc0 -t raw - | flac --fast -16 --sample-rate=17898 --sign=unsigned --channels=1 --endian=little --bps=16 --blocksize=65535 --lax -f - -o 14.3mhz-8bit-cx-card.flac

17.3mhz 16-bit

sudo sox -r 14318 -b 16 -c 1 -e unsigned -t raw /dev/cxadc0 -t raw - | flac --fast -16 --sample-rate=14318 --sign=unsigned --channels=1 --endian=little --bps=16 --blocksize=65535 --lax -f - -o 17.3mhz-8bit-cx-card.flac

Post FLAC compression:

You may add the --ogg flag but due to updates, this is no longer a requirement.

28mhz 8-bit

flac --best --sample-rate=28636 --sign=unsigned --channels=1 --endian=little --bps=8 -f input.u8 output-file-name

35mhz 8-bit

flac --best --sample-rate=35795 --sign=unsigned --channels=1 --endian=little --bps=8 -f input.u8 output-file-name

14.3mhz 16-bit

flac --best --sample-rate=14318 --sign=unsigned --channels=1 --endian=little --bps=16 -f input.u16 output-file-name

17.3mhz 16-bit

flac --best --sample-rate=17898 --sign=unsigned --channels=1 --endian=little --bps=16 -f input.u16 output-file-name

Resampling Scripts

Thanks to Tony we have several re-sampling scripts & a breakdown on how to use GNU radio.

Rounded sample rates for FLAC

The convention used for FLAC compression is sample rate divided by 1000 so the rates are as such.

28636 for 28.6mhz 8-bit (8fsc NTSC)

35795 for 35.7mhz 8-bit (4fsc NTSC)

14318 for 14.3mhz 16-bit (10fsc NTSC)

17898 for 17.3mhz 16-bit (5fsc NTSC)