Documentation - GhettoRecorder

Grab hundreds of radio stations simultaneously.

How to run installed package

GhettoRecorder class module (example in ghetto_procenv).:

from ghettorecorder import GhettoRecorder

ghetto_01 = GhettoRecorder(radio, url)
ghetto_01.com_in = mp.Queue(maxsize=1)  # eval exec communication for multiprocessing
ghetto_01.audio_out = mp.Queue(maxsize=1)  # can also be normal queue.Queue()

Commandline option (calls cmd.py).:

ghetto_cmd or
python3 -m ghettorecorder.cmd

Client Server option (calls __main__.py).:

ghetto_url or
python3 -m ghettorecorder

Overview

  • Queue communication. Multiprocessor ready.

  • GhettoRecorder class has connector attributes for external modules.

  • External modul Blacklisting recorded titles is already included.

  • Optional Browser Frontend on Python multithreading HTTP server.

GhettoRecorder module

Communication with the GhettoRecorder instance

port

action

description

com_in

commands input

tuple (radio, [str ‘eval’ or ‘exec’], str ‘command’)

com_out

status, err msg

(radio, [str ‘eval’ or ‘exec’], response)

audio_out

copy of html resp

server can loop through to a browser

Feature attributes to switch on/off

attribute

description

runs_meta

call metadata periodically, create path for rec out; False: recorder is the file

runs_record

disable writing to recorder file at all

recorder_file_write

allow dumping current recorder file

runs_listen

disable write to audio output queue; 3rd party can grab it. (listen blacklist)

Snapcraft package

The installer creates an icon with the name “GhettoRecorder”. You can use two command line options.:

ghettorecorder.url
ghettorecorder.cmd

First is Client, Server connection. Second is command line menu.