Tag: pinknoise

  • NO SIGNAL

    video title generated box with text “NO SIGNAL” moves around screen
    NO SIGNAL — duration 1:10:00
  • An hour of Pink Noise

    cover made by netpbm, of course
    an hour of soothing 2-channel noise

    Direct download: 01-pink_noise.mp3

    There are a million variations on the simple “use sox to play masking pink noise“, such as:

    play -n synth pinknoise gain -3

    This will play synthesized pink noise until you hit Ctrl-C.

    But it you want two independent noise channels rather than mono, that’s a little more complex. It’s probably easier to download/play the MP3 file above than show you the command line.

    Note that MP3s really aren’t designed to encode such random data, and it’s likely that your player will cause the audio to clip in a couple of places. I’m not quite sure why it does this, but it does it repeatably.

    If you want to create this for yourself (and create a bonus lossless FLAC, which was far too large to upload here), here’s what I did to make this:

    #!/bin/bash
    
    duration='60:00'
    fade='1'
    outfile='pinknoise.wav'
    
    # make the track
    sox --combine merge "|sox --norm=-3 -c 1 -b 16 -r 44100 -n -p synth $duration pinknoise" "|sox --norm=-3 -c 1 -b 16 -r 44100 -n -p synth $duration pinknoise" -c 2 -b 16 -r 44100 $outfile fade $fade fade 0 $duration $fade gain -n -3
    
    # make the cover
    # 1 - text - 500 x 500 px
    pnmcat -white -tb <(pbmmake -white 500 114) <(pbmtextps -font HelveticaBold -fontsize 64 -resolution 180 "PINK" | pnmcrop) <(pbmmake -white 32 32) <(pbmtextps -font HelveticaBold -fontsize 64 -resolution 180 "NOISE" | pnmcrop) <(pbmmake -white 500 114) > cover-text.pbm
    # 2 - make the noise bg
    pgmnoise 500 500 > cover-noise.pgm
    # 3 - make the magenta text
    ppmchange black magenta cover-text.pbm > cover-text-magenta.ppm
    # 4 - overlay with transparency
    pnmcomp -alpha=<(pnminvert cover-text.pbm | pbmtopgm 35 35 ) cover-text-magenta.ppm cover-noise.pgm | cjpeg -qual 50 -opt -baseline -dct float > cover.jpg
    # delete the temporary image files, leaving cover.jpg
    rm -f cover-text.pbm cover-noise.pgm cover-text-magenta.ppm
    
    # make the mp3
    lame -V 2 --noreplaygain -m s --tt 'Pink Noise' --ta 'Pink Noise' --tl 'Pink Noise' --ty $(date +%Y) --tc "scruss, 2021-05" --tn 1/1 --tg Ambient --ti cover.jpg "$outfile" 01-pink_noise.mp3
    
    # make the flac (and delete wav file)
    flac --best --output-name=01-pink_noise.flac --delete-input-file --picture=cover.jpg --tag="TITLE=Pink Noise" --tag="ARTIST=Pink Noise" --tag="ALBUM=Pink Noise" --tag="DATE=$(date +%Y)" --tag="COMMENT=scruss, 2021-05" --tag="GENRE=Ambient" --tag="TRACKNUMBER=1" --tag="TRACKTOTAL=1" "$outfile"
    
    

    You’ll likely need these packages installed:

    sudo apt install sox libsox-fmt-all ghostscript gsfonts-x11 netpbm lame flac libjpeg-progs