{"id":15020573,"url":"https://github.com/wil3/jackcast","last_synced_at":"2025-10-26T04:30:32.177Z","repository":{"id":45995359,"uuid":"271145345","full_name":"wil3/jackcast","owner":"wil3","description":"Cast line-in audio to a wireless device","archived":false,"fork":false,"pushed_at":"2021-11-22T04:14:02.000Z","size":791,"stargazers_count":29,"open_issues_count":7,"forks_count":9,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-01-31T14:21:51.940Z","etag":null,"topics":["audio-player","audio-streaming","iot-device","raspberry-pi-4","sonos-controller"],"latest_commit_sha":null,"homepage":null,"language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wil3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-06-10T01:16:33.000Z","updated_at":"2024-08-08T09:11:18.000Z","dependencies_parsed_at":"2022-07-20T05:47:38.603Z","dependency_job_id":null,"html_url":"https://github.com/wil3/jackcast","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wil3%2Fjackcast","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wil3%2Fjackcast/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wil3%2Fjackcast/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wil3%2Fjackcast/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wil3","download_url":"https://codeload.github.com/wil3/jackcast/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238258942,"owners_count":19442504,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["audio-player","audio-streaming","iot-device","raspberry-pi-4","sonos-controller"],"created_at":"2024-09-24T19:55:16.959Z","updated_at":"2025-10-26T04:30:31.219Z","avatar_url":"https://github.com/wil3.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Jackcast\nJackcast is a device used to stream/cast line-in (auxiliary input) audio to a\nwireless device. Use this device to cast audio from a record player or other\nold sound systems. \n\nThis software is intended to run on a computer like a Raspberry Pi that can be\npermanently connected to the audio device. Jackcast includes a webapp to control the\nwireless device such as the volume and which device to stream too. Jackcast has\nno concept or control of where the line-in audio is coming from which is why\nthere are no controls to play, pause and change the track.\n\nInitial motivation [video](https://youtu.be/4KiZJvDQa0I) and demo.\n\nThis project is stable but a work in progress.\n\n![Jackcast browser](https://github.com/wil3/jackcast/blob/master/.github/images/app-desktop.png)\n\n## Supported Devices\n* Sonos\n* Chromecast (future: PRs welcome)\n* Bluetooth (future: PRs welcome)\n\n## Installation\nThe plan is to eventually host an image users can write to their SD card. In\nthe meantime you can manually install it. Some of the tasks have been automated\nbut a number are still manual. The following assume you don't have\nan extra keyboard/mouse/monitor. It may be easier to setup if you have these\ndevices. Please report any issues with these instructions.\n\n* Use the [Raspberry Pi\n  Imager](https://www.raspberrypi.org/documentation/installation/installing-images/)\nto install Ubuntu Server 20.04\n* [Enable SSH on a headless Raspberry PI](https://www.raspberrypi.org/documentation/remote-access/ssh/)\n by placing a file named `ssh` in the boot partition of the SD card.\n* Connect the Raspberry Pi to an ethernet port on your router.\n* Log into using the default username `ubuntu` and password `ubuntu`.\n* Configure wifi following these\n  [https://raspberrypi.stackexchange.com/a/111787/120469](instructions).\n* Install the dependencies,\n```\nwget https://raw.githubusercontent.com/wil3/jackcast/master/platforms/ubuntu/install.sh .\nchmod +x install.sh\nsudo install.sh\n```\n* Clone the repo and install Jackcast\n```\nsudo mkdir -p /srv/www\ncd /srv/www\nsudo git clone https://github.com/wil3/jackcast.git\nsudo chown -R $USER:$USER jackcast\ncd jackcast\nsudo apt-get install python3-venv\npython3 -m venv env\nsource env/bin/activate\npip3 install wheel # Is needed by gevent\npip3 install .\n```\n* Configure Nginx\n```\nsudo rm /etc/nginx/sites-enabled/default\ncp /srv/www/jackcast/platforms/ubuntu/etc/nginx/sites-available/jackcast\n/etc/nginx/sites-available/\nsudo ln -s /etc/nginx/sites-available/jackcast /etc/nginx/sites-enabled\n```\n* Install the Jackcast service \n```\nsudo cp /srv/www/jackcast/platforms/ubuntu/etc/systemd/user/jackcast.service\n/etc/systemd/user/\n```\n* Reboot\n```\nsudo reboot\n```\n* Jack cast should now be accessible by a browser at `jackcast.local`. \n\nNote this has only been tested on Android 10 Firefox 68.8.1, and Ubuntu 18.04\nFirefox 69.0.2. I have experienced issues not being able to resolve the local\ndomain via mDNS on Android 6. In this case you need to access by IP address.\n\n## Stack\n* Raspberry Pi 4\n* Ubuntu Server 20.04\n* Nginx\n* Gunicorn\n* Flask\n* JQuery + Materialize CSS\n\n## Sample Parts List \n\n| Price | Item |\n| ------| -----|\n| $35.00 | [Raspberry Pi 4 2GB](https://www.microcenter.com/product/621439/raspberry-pi-4-model-b---2gb-ddr4)|\n| $4.49  | [Micro Center 32GB microSDHC Class 10 Flash Memory Card](https://www.microcenter.com/product/485584/micro-center-32gb-microsdhc-class-10-flash-memory-card) | \n| $7.99  | [Raspberry Pi 4 Official 15W Power Supply](https://www.microcenter.com/product/608170/raspberry-pi-4-official-15w-power-supply-us---black) | \n| $7.99  | [USB External Stereo Sound Adapter](https://www.amazon.com/gp/product/B00OJ5AV8I/ref=ppx_yo_dt_b_asin_title_o08_s00?ie=UTF8\u0026psc=1) | \n| Free   | [Raspberry Pi 4 case (Free if you have a 3D printer)](https://www.thingiverse.com/thing:3723561) |\n\nTotal Cost: $55.47\n\n![Jackcast](https://github.com/wil3/jackcast/blob/master/.github/images/pi-jackcast.jpg)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwil3%2Fjackcast","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwil3%2Fjackcast","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwil3%2Fjackcast/lists"}