Skip to content

PatricioIribarneCatella/radio-streaming

Repository files navigation

TP-Radio-Streaming

Radio Streaming (Sistemas Distribuidos I - FIUBA)

Ejecutar

  • Dependencias: ZeroMQ (en particular el binding para Python)

Se debe generar el archivo de configuración mediante el siguiente comando:

 $ ./config-generator.py --antennas="[ISO_COUNTRY:NUM_NODES ...]" --routers=NUM_NODES
 							[--output=FILE(config.json)]
 			- FILE: nombre del archivo de configuración (con extensión .json)

Backend

Se corren todas la antenas que figuran en el archivo de configuración, como así también los routers.

 $ ./run-backend.py [--config=FILE(config.json)]

	- FILE: en formato JSON
  • Si se quiere lanzar una antena en particular:
 $ ./run-antenna.py --country=ISO-PAIS --aid=ANTENNA-ID [--config=FILE(config.json)]
 
 	- FILE: en formato JSON
  • Si se quiere lanzar un router en particular:
 $ ./run-router.py --rid=RUTER-ID [--config=FILE(config.json)]
 
 	- FILE: en formato JSON

Estaciones

  • Transmisión:
 $ python3 src/nodes/sender.py --freq=FREQ-CODE --input=WAV [--config=FILE(config.json)]

	- FREQ-CODE: en el formato <ISO-PAIS>-<FREQ>
	- WAV: música a reproducir en formato .wav
	- FILE: en formato JSON
  • Recepción:
 $ python3 src/nodes/receiver.py --freq=FREQ-CODE --country=CODE [--config=FILE(config.json)]

	- FREQ-CODE: en el formato <ISO-PAIS>-<FREQ>
	- CODE: el ISO del país donde se va a conectar
	- FILE: en formato JSON

Terminar

  • Para finalizar la ejecución de todas las antenas y los routers se debe realizar lo siguiente:
 $ ./stop-backend.py
  • Para finalizar la ejecución de una sóla antena:
 $ ./stop-antenna.py --country=ISO-PAIS --aid=ANTENNA-ID
  • Para finalizar la ejecución de un router
 $ ./stop-router.py --rid=ROUTER-ID
  • Para finalizar la ejecución de alguna de las estaciones (transmisora o receptora), teclear Ctrl-C.

About

Radio Streaming

Resources

License

Stars

Watchers

Forks

Packages

No packages published