Skip to main content

A system to cast audio input to chromecast devices.

Project description

Application to cast streams to chromecast

Note: Designed to work with Rpi 4. Any installation process works for the Rpi4.

Production installation

Using pip (Windows/Linux/osX)

This requires to have python3 installed and pip installed. Optionally also venv.

  1. (Optional) Create virtual environment to avoid dependency issues.
    • Example using venv:
      • Create: python3 -m venv <DIR>
      • Start: linux - source <DIR>/bin/activate - windows - <DIR>/Scripts/activate
      • Stop: deactivate
      • To clear delete the directory and create again rm -r <DIR>
  2. Install package from pip:
    • Linux/osX: python3 -m pip install audio_cast
    • Windows: py -m pip install audio_cast
  3. Install required applications:
    1. Install vlc:
      • Linux/osX has 2 alternatives:
        • Install required libraries:
          • sudo apt install vlc-bin
          • sudo apt install vlc-plugin-base
        • Install VLC sudo apt install vlc
      • Windows: Install vlc from their website.
    2. (Only Linux/osX) Install libportaudio2: sudo apt install libportaudio2
  4. Install a WSGI server.
    • Waitress: pip install waitress
  5. Run WSGI server.
    • Example: waitress-serve --call --host=localhost --port=5000 'audio_cast:create_app'

Using apt (Linux)

Dev Usage

  • When using VS Code, just run the debugger.
  • Optional: Use a virtual environment.
  • When starting from termimal.
    1. Set environment variable for FLASK_APP to audio_cast.
      • Linux/osX: export set FLASK_APP=audio_cast
      • Windows cmd: set FLASK_APP=audio_cast
      • Windows powershell: $Env:FLASK_APP = "audio_cast"
    2. Launch the server with python -m flask run.

Cheatsheet

  • To upload to pypi:
    • Build: py -m build
    • Deploy: py -m twine upload dist/*
  • To run locally:
    • Set environment variable FLASK_APP=audio_cast
  • To run after installation from package:
    • Install waitress python3 -m pip install waitress
    • Run waitress waitress-serve --call --host=localhost --port=5000 'audio_cast:create_app'
  • Virtual environment:
    • Create: python3 -m venv <DIR>
    • Start: linux - source <DIR>/bin/activate - windows - <DIR>/Scripts/activate
    • Stop: deactivate
    • To clear delete the directory and create again rm -r <DIR>
  • Install packages from requirements.txt pip install -r requirements.txt.

Rpi steps

  1. Install pip using apt sudo apt install python3-pip
  2. Install venv using apt sudo apt install python3-venv.
  3. Create virtual environment and activate it.
  4. Install waitress.
  5. Run waitress, run it without host so it is exposed.
  6. Install vlc sudo apt install vlc
    • Hopefully this can be changed to either incorporating the libvlc libraries or installing a part of vlc. Right now it's around 1 gb, which seems too much for the use needed.
    • Or install vlc-bin and vlc-plugin-base. sudo apt install vlc-bin and sudo apt install vlc-plugin-base. It's smaller but still big. Aroung 700MB.
    • Still there might be a better way.
  7. Install PortAudio using apt sudo apt install libportaudio2.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

audio-cast-0.0.16.tar.gz (18.3 kB view details)

Uploaded Source

Built Distribution

audio_cast-0.0.16-py3-none-any.whl (19.6 kB view details)

Uploaded Python 3

File details

Details for the file audio-cast-0.0.16.tar.gz.

File metadata

  • Download URL: audio-cast-0.0.16.tar.gz
  • Upload date:
  • Size: 18.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for audio-cast-0.0.16.tar.gz
Algorithm Hash digest
SHA256 a86c70219b7fb9bdb20ac5932174d13fdb9926e26f41ac57bb7ac447eee6ffd3
MD5 2bead136e10351b9226c1350ac9facde
BLAKE2b-256 0800c788a8cd4dc73b36bc08118704b4aa5d9f8a7e6c0678d6d87f360e099a9b

See more details on using hashes here.

File details

Details for the file audio_cast-0.0.16-py3-none-any.whl.

File metadata

  • Download URL: audio_cast-0.0.16-py3-none-any.whl
  • Upload date:
  • Size: 19.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for audio_cast-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 7ef8760e1f12a816791d90c1de2ffd54ef20af03ee97048d022581999b438843
MD5 11adc6ecee26abc560317a2178341119
BLAKE2b-256 2efb7e9ceea7a1ef8b715bd605b29db0e88d528c6cf84fd60694d85d9e24bd7b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page