GithubHelp home page GithubHelp logo

ifi-tidal-release's Introduction

tidal connect service raspberry/ARM based on ppy2/ifi-tidal-release

I found that repository called ifi-tidal-release here on github, created by ppy2. Included are some binaries and some scripts. The names of the binaries intended that this is a tidal connect client. Because the lack of any description i downloaded the repo and play around with the included stuff.

I downloaded the git repos to m< arm-singleboard-computer. I use a (audio optimized) arm singleboard name sparky from allo.com based on a minimal debian system called DietPi (https://github.com/MichaIng/DietPi). It turns out, that the binaries runs on ARMv7 on debian stretch and (more difficult to set up) on debian buster (perhaps on any LINUX version on ARM). There are several binaries included in the repo. You do not need all binaries and all scripts for a tidal connect client.

Below you find the description to get that tidal connect client running for Debian stretch and Debian buster on ARM. The description ist written initially for stretch. Because buster lacks some older libraries there is more to do to get the tidal connect client running on buster. The only difference therefore is to load more "older" libraries which ar not present by default in Debian buster.

If you are not comfortable with installing old libs on your SBC, you can create the tidal-connect-application inside a docker container, like described here: https://github.com/seniorgod/ifi-tidal-release/blob/master/tidal_connect_application_as_docker_container/ifi_docker.md

Let' start with installing tidal-connect-application on your SBC directly without docker:

These are the basic steps to create your tidal connect client:

  1. install required shared libraries
  2. download the repository
  3. adjust the systemd service description
  4. copy everything to the final directories
  5. start the tidal connect client

install required shared libraries

the binaries rely on the presence of some required libraries:

  • libssl1.0.0
  • libportaudio2
  • libflac++6v5

libssl1.0.0

go to /etc/apt add following line in sources.list
deb http://security.debian.org/debian-security jessie/updates main

then update apt and install libssl1.0.0

 apt-get update
 apt-get install libssl1.0.0*

libportaudio

run:

  apt-get install libportaudio2*

libflac##6v5

run:

 apt-get install libflac++6v5*

more shared libraries for debian buster

In order to install the required libraries not present in buster you have to add the repositories for stretch in sources.list go to /etc/apt add following line in sources.list:
deb https://deb.debian.org/debian/ stretch main contrib non-free

deb https://deb.debian.org/debian/ stretch-updates main contrib non-free

deb http://security.debian.org/debian-security stretch/updates main contrib non-free

Then install libavfromat57 and libcurl3. If you need libcurl4 you are in trouble because libcurl3 deinstall libcurl4.

libavformat57

apt-get install libavformat57

libcurl3

apt-get install libcurl3

download the repository

The install steps later on expects the downloaded files in a directory called /usr/ifi.

mkdir /usr/ifi
cd /usr/ifi
git clone https://github.com/seniorgod/ifi-tidal-release

adjust the systemd service description

the service description located in /usr/ifi/ifi-streamer-tidal-connect.service must be adapted to fit your needs. This means (more or less) to change the DAC device to that which is connected to your system

the systemd service description i use look like these:

[Unit]
Description=Tidal Connect Service*

[Service]
Restart=on-failure
ExecStart=/usr/ifi/ifi-tidal-release/bin/tidal_connect_application \
			--tc-certificate-path "/usr/ifi/ifi-tidal-release/id_certificate/IfiAudio_ZenStream.dat" \
			--netif-for-deviceid eth0 \
			-f "DietPi stream to project“ \
			--codec-mpegh true \
			--codec-mqa false \
			--model-name "DietPi Streamer" \
			--disable-app-security false \
			--disable-web-security false \
			--enable-mqa-passthrough false \
			--playback-device "Project RS USB Audio 2.0: - (hw:1,0)" \
			--log-level 3
User=root
Group=root
RestartSec=1
KillMode=control-group*

[Install]
WantedBy=multi-user.target*

What you have to do is to change the playback-device. The implementation relies on portaudio. It exist an application inside the repo, that list all audio devices connected to your computer. You have to copy the devices you want to use as playback-device to the config. As you can see. My DAC, means my playback-device is a PROJECT Audio RS DAC connected at (hw:1,0).

In order to get a list of your devices run a commnand included in the downloaded repo.

cd /usr/ifi

run:

ifi-tidal-release/pa_devs/run.sh

You get an output like this, from which you have to read the "name" of the DAC device you wish to use. While you are doing this the connected DAC must be plugged in and switched on.

ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.front.0:CARD=0'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM front
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.surround51.0:CARD=0'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM surround21
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.surround51.0:CARD=0'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM surround21
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.surround40.0:CARD=0'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM surround40
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.surround51.0:CARD=0'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM surround41
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.surround51.0:CARD=0'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM surround50
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.surround51.0:CARD=0'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM surround51
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.surround71.0:CARD=0'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM surround71
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.iec958.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM iec958
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.iec958.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM spdif
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.atm7059_link.pcm.iec958.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5007:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM spdif
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock

The run command creates a file called devices inside the directory /usr/ifi/ifi-tidal-release/pa_devs. The content looks like this:

device#0=atm7059_link: - (hw:0,0)
device#1=atm7059_link: - (hw:0,1)
device#2=atm7059_link: - (hw:0,2)
device#3=Project RS USB Audio 2.0: - (hw:1,0)
device#4=sysdefault
device#5=dmix
device#6=default
Number of devices = 7

In the example above devices are listed from device#0 till device#6. Copy the whole name of the device you want to use and insert it as playback_device in the service description of systemd (see above).

copy everything to the final directories

In order to copy everything to the final destination run the deploy command which is included in the repo.

cd /usr/ifi
./ifi-tidal-release/file-deploy.sh 

start the tidal connect client

systemctl daemon-reload
systemctl start ifi-streamer-tidal-connect.service 

Check the status

systemctl status ifi-streamer-tidal-connect.service

if you want to start the tidal-connect-service automatically run

 systemctl enable ifi-streamer-tidal-connect.service

ifi-tidal-release's People

Contributors

seniorgod avatar shawaj avatar willardting avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

ifi-tidal-release's Issues

Music not playing - Content-Range is missing from response / Timeout was reached

I have a super strange error running TIDAL Connect Docker on my HiFiBerry. After the installation everything worked as expected for month. Then I switched the HiFiBerry off for two weeks and afterwards the Docker container isn't really working anymore. I even tried to re-install it. The docker logs showing this error:

# docker-compose up
tidal_connect is up-to-date
Attaching to tidal_connect
tidal_connect    | Starting Speaker Application in Background (TMUX)
tidal_connect    | Starting TIDAL Connect..
tidal_connect    | STARTING TidalConnect services, version: 1.1.3
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.front
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround40
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround41
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround50
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround51
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround71
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
tidal_connect    | Cannot connect to server socket err = No such file or directory
tidal_connect    | Cannot connect to server request channel
tidal_connect    | jack server is not running or cannot be started
tidal_connect    | JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
tidal_connect    | JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
tidal_connect    | tidal_connect_application: simple-watch.c:99: avahi_simple_poll_wakeup: Assertion `s' failed.
tidal_connect    | /entrypoint.sh: line 19:    12 Aborted                 (core dumped) /app/ifi-tidal-release/bin/tidal_connect_application --tc-certificate-path "/app/ifi-tidal-release/id_certificate/IfiAudio_ZenStream.dat" --playback-device "${PLAYBACK_DEVICE}" -f "${FRIENDLY_NAME}" --codec-mpegh true --codec-mqa ${MQA_CODEC} --model-name "${MODEL_NAME}" --disable-app-security false --disable-web-security false --enable-mqa-passthrough ${MQA_PASSTHROUGH} --log-level 3 --enable-websocket-log "0"
tidal_connect    | TIDAL Connect Container Stopped..
tidal_connect    | Starting Speaker Application in Background (TMUX)
tidal_connect    | Starting TIDAL Connect..
tidal_connect    | STARTING TidalConnect services, version: 1.1.3
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.front
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround40
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround41
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround50
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround51
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround71
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
tidal_connect    | Cannot connect to server socket err = No such file or directory
tidal_connect    | Cannot connect to server request channel
tidal_connect    | jack server is not running or cannot be started
tidal_connect    | JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
tidal_connect    | JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
tidal_connect    | /entrypoint.sh: line 19:    12 Segmentation fault      (core dumped) /app/ifi-tidal-release/bin/tidal_connect_application --tc-certificate-path "/app/ifi-tidal-release/id_certificate/IfiAudio_ZenStream.dat" --playback-device "${PLAYBACK_DEVICE}" -f "${FRIENDLY_NAME}" --codec-mpegh true --codec-mqa ${MQA_CODEC} --model-name "${MODEL_NAME}" --disable-app-security false --disable-web-security false --enable-mqa-passthrough ${MQA_PASSTHROUGH} --log-level 3 --enable-websocket-log "0"
tidal_connect    | TIDAL Connect Container Stopped..
tidal_connect    | Starting Speaker Application in Background (TMUX)
tidal_connect    | Starting TIDAL Connect..
tidal_connect    | STARTING TidalConnect services, version: 1.1.3
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.front
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround40
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround41
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround50
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround51
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround71
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
tidal_connect    | ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
tidal_connect    | Cannot connect to server socket err = No such file or directory
tidal_connect    | Cannot connect to server request channel
tidal_connect    | jack server is not running or cannot be started
tidal_connect    | JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
tidal_connect    | JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
tidal_connect    | STARTED TidalConnect services.
tidal_connect    | [2023-02-16 09:15:24.919] [tisoc] [warning] [PlaybackControllerImpl.cpp:472] Illegal state:1
tidal_connect    | [2023-02-16 09:15:42.681] [tisoc] [error] [logger.cpp:25] [operation_curl.cpp:258] curl_easy_perform failed:  Timeout was reached  -  Resolving timed out after 5514 milliseconds
tidal_connect    | [2023-02-16 09:15:42.681] [tisoc] [error] [logger.cpp:25] [http_stream_fetcher.cpp:162] Content-Range is missing from response!
tidal_connect    | [2023-02-16 09:15:48.211] [tisoc] [error] [logger.cpp:25] [operation_curl.cpp:258] curl_easy_perform failed:  Timeout was reached  -  Resolving timed out after 5515 milliseconds
tidal_connect    | [2023-02-16 09:15:48.212] [tisoc] [error] [logger.cpp:25] [http_stream_fetcher.cpp:162] Content-Range is missing from response!
tidal_connect    | [2023-02-16 09:15:53.740] [tisoc] [error] [logger.cpp:25] [operation_curl.cpp:258] curl_easy_perform failed:  Timeout was reached  -  Resolving timed out after 5513 milliseconds
tidal_connect    | [2023-02-16 09:15:53.740] [tisoc] [error] [logger.cpp:25] [http_stream_fetcher.cpp:162] Content-Range is missing from response!
tidal_connect    | [2023-02-16 09:15:53.743] [tisoc] [warning] [logger.cpp:22] [audio_worker.cpp:288] Max connection attempts reached!
tidal_connect    | [2023-02-16 09:16:27] [info] asio async_shutdown error: asio.misc:2 (End of file)
# cat docker-compose.yml
version: '2.2'
services:
  tidal-connect:
    container_name: tidal_connect
    env_file:
      - .env
    image: edgecrush3r/tidal-connect:latest
    tty: true
    network_mode: host
    devices:
     - /dev/snd
    volumes:
      - ./entrypoint.sh:/entrypoint.sh
      - /var/run/dbus:/var/run/dbus
    restart: always
    dns:
      - 8.8.8.8
# cat .env
FRIENDLY_NAME=hifiberry
MODEL_NAME=hifiberry
MQA_PASSTHROUGH=true
MQA_CODEC=false
PLAYBACK_DEVICE=snd_rpi_hifiberry_digi: HifiBerry Digi HiFi wm8804-spdif-0 (hw:0,0)

What is going on here? As soon as I connect via TIDAL to my TIDAL Connect server all the errors appear:

tidal_connect    | [2023-02-16 09:15:24.919] [tisoc] [warning] [PlaybackControllerImpl.cpp:472] Illegal state:1
tidal_connect    | [2023-02-16 09:15:42.681] [tisoc] [error] [logger.cpp:25] [operation_curl.cpp:258] curl_easy_perform failed:  Timeout was reached  -  Resolving timed out after 5514 milliseconds
tidal_connect    | [2023-02-16 09:15:42.681] [tisoc] [error] [logger.cpp:25] [http_stream_fetcher.cpp:162] Content-Range is missing from response!
tidal_connect    | [2023-02-16 09:15:48.211] [tisoc] [error] [logger.cpp:25] [operation_curl.cpp:258] curl_easy_perform failed:  Timeout was reached  -  Resolving timed out after 5515 milliseconds
tidal_connect    | [2023-02-16 09:15:48.212] [tisoc] [error] [logger.cpp:25] [http_stream_fetcher.cpp:162] Content-Range is missing from response!
tidal_connect    | [2023-02-16 09:15:53.740] [tisoc] [error] [logger.cpp:25] [operation_curl.cpp:258] curl_easy_perform failed:  Timeout was reached  -  Resolving timed out after 5513 milliseconds
tidal_connect    | [2023-02-16 09:15:53.740] [tisoc] [error] [logger.cpp:25] [http_stream_fetcher.cpp:162] Content-Range is missing from response!
tidal_connect    | [2023-02-16 09:15:53.743] [tisoc] [warning] [logger.cpp:22] [audio_worker.cpp:288] Max connection attempts reached!
tidal_connect    | [2023-02-16 09:16:27] [info] asio async_shutdown error: asio.misc:2 (End of file)

Music tries to be streamed but I cannot hear something. And as soon tidal_connect | [2023-02-16 09:16:27] [info] asio async_shutdown error: asio.misc:2 (End of file) appears my TIDAL app disconnect from the TIDAL Connect server.

HiFiBerry OS: 20221128

Info

Hi, where the binaries are comes from, how legal is to use, what is inside?

https://github.com/ppy2 does not have any thing related to tidal connect from what I can see.

How to scrobble to last.fm?

It looks like when I play music from my Android TIDAL app to connected Raspberry, nothing is scrobbled to last.fm.

Any advice please?

palib does not see USB DAC

Hi, thank you for docker writeup
Have couple of questions:
Last run in docker file:
RUN apt-get
Is it missing package?

Also pa does not see my USB device 👍

device#0=sysdefault
device#1=lavrate
device#2=samplerate
device#3=speexrate
device#4=upmix
device#5=vdownmix
device#6=default
Number of devices = 7

However aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
Subdevices: 7/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: C20 [CA DacMagic 200M 2.0], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: vc4hdmi0 [vc4-hdmi-0], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: vc4hdmi1 [vc4-hdmi-1], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0

I am running PI4 with bullseye

Not an issue but, volume control

Hello,
Is there a way to deamonize bin/speaker_controller_application? I tried to make a .service file but no luke.
speaker controller, make good job. When launch in a terminal, I can vol + vol - with my smartphone.
if I try to launch by ./speaker_controller_application &, nothing happen :'(

Service crashes after some time

Hello, often when I try to connect and play music, at the connection time, after some time without playing elapsed, I get error and have to restart the service. Any advice?

Feb 03 21:15:52 tidal-pi tidal_connect_application[23225]: [2022-02-03 21:15:52.356] [tisoc] [error] [logger.cpp:25] [http_stream_fetcher.cpp:162] Content-Range is missing from response!
Feb 03 21:15:52 tidal-pi tidal_connect_application[23225]: [2022-02-03 21:15:52.433] [tisoc] [error] [logger.cpp:25] [http_stream_fetcher.cpp:162] Content-Range is missing from response!
Feb 03 21:15:52 tidal-pi tidal_connect_application[23225]: [2022-02-03 21:15:52.510] [tisoc] [error] [logger.cpp:25] [http_stream_fetcher.cpp:162] Content-Range is missing from response!
Feb 03 21:15:52 tidal-pi tidal_connect_application[23225]: [2022-02-03 21:15:52.514] [tisoc] [warning] [logger.cpp:22] [audio_worker.cpp:288] Max connection attempts reached!

Music stops after 1 and half song

Hi, I install it into a rapsberry pi 4b, and runs well but only for one and half song, then stops hearing and music continues, i need to restart services or even reboot raspberry to make it work again.. in service status says broken pipe.. could help me, i have reinstalled more than once keeps happening the same.. thanks!!

Clicking sound on Raspberry PI digital USB -> S/PDIF

Is it possible to set pulseaudio to passthrough? I have USB -> S/PDIF converter. When I play audio from Raspberry Pi, I hear very silent clicking sound, about 7 clicks pers second (like scratched CD but quieter). Looks like resampling problem, but I want passthrough as I play uncompressed music. I had this problem before with various linux distros and I always fixed it by adjusting sample rate in /etc/pulse/daemon.conf like here:

default-sample-format = float32ne
default-sample-rate = 44100
alternate-sample-rate = 48000
Or similar. But here with Raspbian OS, it does not help and I tried all combinatons. Any suggestion?

TLS handshake failed

Hi,

I think maybe the tidal app has been upgraded or the certificate has become invalid I don't know exactly, but the TLS handshake between the Android app and the ifi connect service won't work any more.

tidal_connect_application[1347]: [2022-08-20 10:22:23] [error] handle_transport_init received error: TLS handshake failed

This is what it looks like in tcpdump. 129.85 is my raspberry pi while 129.82 is my Android device.

image

Not visible on second Android phone

Hello. I was using ifi-tidal-release successfully for long time, streaming from my android mobile. Then I started to use second android, installed Tidal and logged in, but the Pi streamer server is not visible as a device on it. So I have checked on first mobile and server IS visible.

How it is possible that on first phone I can see the server and on second phone, which has exactly same Tidal registration and is connected to same wifi, the server does not show up? Can it be fixed? Thanks, Jan

Raspberry Pi USB DAC not recognised

Im using Moode Audio OS. Plays fine though my USB DAC. No other HDMI or USB devices plugged into the RPI4.
But this tool cannot see the DAC, the devices file does not show it.

speaker controller application issue.

when this application is run. it continues to output.
Aug 09 05:04:15 volumio speaker_controller_application[455]: Error opening terminal: unknown.
Aug 09 05:04:15 volumio systemd[1]: speaker-controller.service: Main process exited, code=exited, status=1/FAILURE
Aug 09 05:04:15 volumio systemd[1]: speaker-controller.service: Failed with result 'exit-code'.
Aug 09 05:04:16 volumio systemd[1]: speaker-controller.service: Service RestartSec=1s expired, scheduling restart.
Aug 09 05:04:16 volumio systemd[1]: speaker-controller.service: Scheduled restart job, restart counter is at 1.
Aug 09 05:04:16 volumio systemd[1]: Stopped Tidal Volume Control.
Aug 09 05:04:16 volumio systemd[1]: Started Tidal Volume Control.
Aug 09 05:04:16 volumio speaker_controller_application[640]: Error opening terminal: unknown.
Aug 09 05:04:16 volumio systemd[1]: speaker-controller.service: Main process exited, code=exited, status=1/FAILURE
Aug 09 05:04:16 volumio systemd[1]: speaker-controller.service: Failed with result 'exit-code'.
Aug 09 05:04:17 volumio systemd[1]: speaker-controller.service: Service RestartSec=1s expired, scheduling restart.
Aug 09 05:04:17 volumio systemd[1]: speaker-controller.service: Scheduled restart job, restart counter is at 2.
Aug 09 05:04:17 volumio systemd[1]: Stopped Tidal Volume Control.
Aug 09 05:04:17 volumio systemd[1]: Started Tidal Volume Control.
Aug 09 05:04:17 volumio speaker_controller_application[642]: Error opening terminal: unknown.
Aug 09 05:04:17 volumio systemd[1]: speaker-controller.service: Main process exited, code=exited, status=1/FAILURE
Aug 09 05:04:17 volumio systemd[1]: speaker-controller.service: Failed with result 'exit-code'.
Aug 09 05:04:18 volumio systemd[1]: speaker-controller.service: Service RestartSec=1s expired, scheduling restart.
Aug 09 05:04:18 volumio systemd[1]: speaker-controller.service: Scheduled restart job, restart counter is at 3.
Aug 09 05:04:18 volumio systemd[1]: Stopped Tidal Volume Control.
Aug 09 05:04:18 volumio systemd[1]: Started Tidal Volume Control.
Aug 09 05:04:18 volumio speaker_controller_application[648]: Error opening terminal: unknown.
Aug 09 05:04:18 volumio systemd[1]: speaker-controller.service: Main process exited, code=exited, status=1/FAILURE
Aug 09 05:04:18 volumio systemd[1]: speaker-controller.service: Failed with result 'exit-code'.
Aug 09 05:04:19 volumio systemd[1]: speaker-controller.service: Service RestartSec=1s expired, scheduling restart.
Aug 09 05:04:19 volumio systemd[1]: speaker-controller.service: Scheduled restart job, restart counter is at 4.
Aug 09 05:04:19 volumio systemd[1]: Stopped Tidal Volume Control.
Aug 09 05:04:19 volumio systemd[1]: Started Tidal Volume Control.
Aug 09 05:04:19 volumio speaker_controller_application[655]: Error opening terminal: unknown.
Aug 09 05:04:19 volumio systemd[1]: speaker-controller.service: Main process exited, code=exited, status=1/FAILURE
Aug 09 05:04:19 volumio systemd[1]: speaker-controller.service: Failed with result 'exit-code'.
Aug 09 05:04:20 volumio systemd[1]: speaker-controller.service: Service RestartSec=1s expired, scheduling restart.
Aug 09 05:04:20 volumio systemd[1]: speaker-controller.service: Scheduled restart job, restart counter is at 5.
Aug 09 05:04:21 volumio systemd[1]: Stopped Tidal Volume Control.
Aug 09 05:04:21 volumio systemd[1]: speaker-controller.service: Start request repeated too quickly.
Aug 09 05:04:21 volumio systemd[1]: speaker-controller.service: Failed with result 'exit-code'.

this is happening on pi 3b+

there is no useful information to debug. what can I do here?

Sound system occupied constantly - does not release

Hello

I have and built a system that uses the DAC activity to turn on and off an amplifier and noticed that while using ifi-tidal that it turns on and stays on the entire time.

I would like to have the sound system released while nothing is actually being played back so that my amplifier will turn on and off on its own, rather than me having to manually do so each time I want to listen to music.

Thanks for any tips tricks
Scott

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.