{"id":22320181,"url":"https://github.com/giof71/audio-tools","last_synced_at":"2025-07-29T13:32:06.392Z","repository":{"id":192090666,"uuid":"623019952","full_name":"GioF71/audio-tools","owner":"GioF71","description":"Sample configurations for audio players (MPD, Squeezelite, Librespot etc) and media servers (Tidal, Qobuz, Navidrome, LMS) using docker-compose files","archived":false,"fork":false,"pushed_at":"2024-11-29T17:06:32.000Z","size":275,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-29T18:19:43.731Z","etag":null,"topics":["alsa","arm64","armv7","audio-player","audiophile","dlna","docker-compose","librespot","mpd","qobuz","raspberry-pi","squeezelite","subsonic","tidal","upmpdcli","upnp","upnp-server","vnc","xfce"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GioF71.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-03T14:29:36.000Z","updated_at":"2024-11-29T17:06:37.000Z","dependencies_parsed_at":"2023-09-02T13:58:29.334Z","dependency_job_id":"be0d4447-7547-41c9-805b-cfee95058e49","html_url":"https://github.com/GioF71/audio-tools","commit_stats":null,"previous_names":["giof71/audio-tools"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GioF71%2Faudio-tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GioF71%2Faudio-tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GioF71%2Faudio-tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GioF71%2Faudio-tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GioF71","download_url":"https://codeload.github.com/GioF71/audio-tools/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228017867,"owners_count":17856842,"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":["alsa","arm64","armv7","audio-player","audiophile","dlna","docker-compose","librespot","mpd","qobuz","raspberry-pi","squeezelite","subsonic","tidal","upmpdcli","upnp","upnp-server","vnc","xfce"],"created_at":"2024-12-04T00:12:43.051Z","updated_at":"2024-12-04T00:12:43.519Z","avatar_url":"https://github.com/GioF71.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# audio-tools\n\nThese are a set of audio tools I have prepared over time for my own necessities.\n\n## Players\n\nMost of the following player configuration are built using docker-compose files and environment variables with defaults on the compose file itself, customizable using a `.env` file.  \nYour own `.env` should generally be initialized by duplicating the `sample.env` file using the command:\n\n```text\ncp sample.env .env\n```\n\nfrom each directory.  \nAfter this step, you can proceed with tuning. It is generally very simple. Refer to the upstream project for more details in case of doubts.  \nAll the docker-compose based configurations allow you to specify a docker registry other than docker.io (the default) using the environment variable `IMAGE_REGISTRY`, in case you have a pull-through cache registry on your network.  \n\n### SqueezeLite\n\n#### SqueezeLite References\n\nThese player configurations rely on my [squeezelite-docker](https://github.com/GioF71/squeezelite-docker) repository and on the related [docker images](https://hub.docker.com/r/giof71/squeezelite).  \nThe following configurations are very simple configuration, which might be a good starting point or a good fit if you do not need very specific setting (like, e.g. upsampling, excluding codecs, etc).  \n\n#### SqueezeLite\n\nVARIABLE|DESCRIPTION|DEFAULT\n:---|:---|:---\nSQUEEZELITE_NAME|Name of the player|SqueezeLite\nSQUEEZELITE_AUDIO_DEVICE|Audio device|default\nSQUEEZELITE_SERVER_PORT|Address and port of your server, it is mandatory to specify appropriately|`lms.homelab.local:3843`\nSQUEEZELITE_VOLUME_CONTROL|Volume Control\nSQUEEZELITE_PARAMS|Squeezelite Params\n\n### Upnp-Renderer\n\n#### Upnp-Renderer References\n\nThese player configurations rely on my [upmpdcli-docker](https://github.com/GioF71/upmpdcli-docker) repository and on the related [docker images](https://hub.docker.com/r/giof71/upmpdcli).  \nMPD is also needed, and we will use the [mpd-alsa-docker](https://github.com/GioF71/mpd-alsa-docker) repository and on the related [docker images](https://hub.docker.com/r/giof71/mpd-alsa).  \nThe following configurations are very simple configuration, which might be a good starting point or a good fit if you do not need very specific setting (like, e.g. upsampling, additional outputs, etc).  \n\n#### Simple\n\nVARIABLE|DESCRIPTION|DEFAULT\n:---|:---|:---\nMPD_TAG|Selected tag for mpd-alsa|vanilla\nMPD_BIND_ADDRESS|Bind address for mpd|127.0.0.1\nMPD_HOST|Address of mpd|127.0.0.1\nMPD_PORT|Port used by mpd|6600\nMPD_ALSA_DEVICE|Alsa output device for mpd|default\nMPD_MIXER_TYPE|Mixer mode|software\nFRIENDLY_NAME|Name of the upnp/dlna player|UpnpRenderer\nRENDERER_MODE|Can be OPENHOME, UPNPAV or BOTH|BOTH\nCHECK_CONTENT_FORMAT|Check if the content is playable|yes\nPUID|The user id which will will run upmpdcli, defaults to `1000`\nGUID|The group id which will will run upmpdcli, defaults to `1000`\n\n#### User Mode\n\nVARIABLE|DESCRIPTION|DEFAULT\n:---|:---|:---\nMPD_TAG|Selected tag for mpd-alsa|vanilla\nMPD_BIND_ADDRESS|Bind address for mpd|127.0.0.1\nMPD_HOST|Address of mpd|127.0.0.1\nMPD_PORT|Port used by mpd|6600\nMPD_ALSA_DEVICE|Alsa output device for mpd|default\nMPD_MIXER_TYPE|Mixer mode|software\nFRIENDLY_NAME|Name of the upnp/dlna player|UpnpRenderer\nRENDERER_MODE|Can be OPENHOME, UPNPAV or BOTH|BOTH\nCHECK_CONTENT_FORMAT|Check if the content is playable|yes\nPUID|Mandatory user id which will will run the containers, defaults to `1000`\nAUDIO_GID|Mandatory group id of the audio group, will be used to run the containers, defaults to `29`\n\n### Spotify Connect (LibreSpot)\n\n#### LibreSpot References\n\nThese player configurations rely on my [librespot](https://github.com/GioF71/librespot-docker) repository and on the related [docker images](https://hub.docker.com/r/giof71/librespot).  \n\n#### Alsa\n\nVARIABLE|DESCRIPTION|DEFAULT\n:---|:---|:---\nALSA_DEVICE|Alsa output device for mpd|default\nALSA_FORMAT|Output format|S16\nBITRATE|Audio Quality|320\nINITIAL_VOLUME|Initial volume|100\nDEVICE_TYPE|Device type (icon in Spotify)|speaker\nDEVICE_NAME|Name of the player|LibreSpot\n\n### Tidal Connect\n\nThis is a cross-link: for tidal-connect, please refer to [this repository](https://github.com/GioF71/tidal-connect).\n\n## xfce-vnc\n\nAllows to create a xfce-based vnc session with the possibility of installing upplay, pulseaudio and pulseaudio-dlna.  \nThis allows to use a browser to play to any dlna renderer easily, even from a windows desktop.  \nThe scripts currenly work on debian bullseye.  \nMore information to come asap.  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiof71%2Faudio-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgiof71%2Faudio-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiof71%2Faudio-tools/lists"}