Tidal Connect in djay

I’d very much appreciate it if devs could make it possible to use Tidal Connect rather than AirPlay with djay. I’d really like to be able to use the higher resolution files for playback from my iPad with djay.

I’m working on a balenasound instance (with HiFiBerry DAC for 24bit-192kHz capability) to connect to the PA system so that I can be portable within the wifi bubble…the wireless latency isn’t an issue in my use case…so I’m also working with the balena devs to make this come together.

is this better addressed on GitHub?

I’m not so sure what you are trying to do, but if I understood correctly you are not using any kind of controller or ?

How I see is when you using iPad or iPhone with Tidal Connect is that your device is just a remote controller and remote device has it’s own DAC.

But if you are using djPro as dj app => iPad is downloading the song in digital file and iPad “processors” are used to

  • mix 2 tracks
  • handle the effects like mid/treble/base controls
  • calculate the pitch changes etc

When 2 tracks are then mixed, the audio processing with effects in digital format is done by iPad processors and then the result is converted by iPAD DAC to analog format and the analog audio is then routed to selected output.

If you are using controller which has internal DAC and analog RCA (XLR etc) output, the iPAD just transfers the digital files to the controller and the controller does the signal handling (mixing, effects, pitch etc). And the DAC in the controller converts the audio to analog which is then routed to RCA output.

I quickly looked up the balenaSound project. I hope that I found the correct one github.com/balenalabs/balena-sound

As how I see it, the Audio source plugins like the spotify connects to the spotify servers and downloads the wanted file to the device. So your iPad is just an expensive remote controller and in your use case your raspberry with HiFiBerry does the DAC things.

So if you want that your raspberry works as djController/djApp which is capable to do effects, pitch changes… then DjPro needs to be run in your raspberry as “an app”.

That’s the correct github.
Yes, the digital data gets manipulated/wrangled/massaged on my ipad (my controller) in djay and that gets squirted out over wifi to my balena box where the 1’s and 0’s get converted to an analog waveform.
I want that analog waveform to be at the highest quality, which for the converter set I’m using in my Pi is 24b@192k.
I’m not sure AirPlay can handle it, but I’m betting that TidalConnect can - or should. And if I’m right, that would mean the bitstream being sent over wifi might be FLAC-formatted, which TidalConnect should conveniently decode for my DAC to turn into glorious analog at as high a bit depth and sample rate that the DAC can handle.
This is how I believe it SHOULD work. Is that how it actually works? That’s why I’m here asking

No… it doesn’t work that way…
With TidalConnect you are commanding speaker “play song XXXX” => speaker will connect to tidal server and download the wanted song and play it.

With AirPlay you are sending the analog “mixed, pitch corrected, bpm synced” analog audio to the speaker.
In this case your ipad has connected to tidal server and downloaded the file which is then manipulated according to pitch, bpm etc.

AirPlay is the problematic as I’m not sure what happens. As djapp is putting audio out as analog format, then it’s again modified to digital format so that it can be send over wifi to the speaker… So it will loose quality as might be converted several times digital-analog and vice versa

That’s unfortunate, and probably the cause of not insignificant latency. There has to be a digital transmission protocol to help minimize latency to network + converter numbers. I mean, in the djay software, all the manipulation is done in the digital domain and THEN they convert to analog…let us end users choose where to do that, whether it be bluetooth headphones or over wifi to a remote streaming box.
Basically what you’re telling me is I need to interface with and express my desires to the Tidal Connect devs. Then algoriddim people can re-work the djay coding to fit.
Thank you.

One of the way to improve is to have high quality controller, which have high quality DAC.
But then… I haven’t seen a controller which has digital output.
So even though you your controller is doing digital to audio converting.
You could connect high quality DAC to convert audio to digital again and send it through wifi, but can’t figure out how you could have only one digital to analog conversion. Maybe in the future.

One of the thing is… that ipad, mac’s doesn’t have physical digital audio output. All outputs are analog, so I’m just guessing how audio routing is done.

I.e the airplay is physically routed on same “hardware” line as your headphone, jackoutput so that you won’t hear significant delay when listening on headphones and switching to airplay.

But on most modern pc motherboards there is digital output and that is the only way to avoid too many digital to analog conversions. But on this case you need to have wire between the pc and speakers.