How’s this coming along? Has this made it onto the dev roadmap yet, @Slak_Jaw
I can imagine one of the main problems naturally is having missing files / different folder structure, etc
For this to be a viable feature, the ‘missing file’ linking would have to be addressed first. Having a hash fingerprint of each song in one’s library could easily solve this, not sure how data is stored presently, but I would think that the missing file matching could be greatly improved and sped up if the file was hashed on analysis, not with filename, because that changes, but based on internal data.
Related of course is the saving of cue point data etc into each songs meta/id3 data, rather than a separate ‘stripe’ file, which would make the library files portable without having to manually sync stripes / paths, as well. Naturally that doesn’t work for streamed songs, but for local ones, that would be the bee’s knees
Just throwing out ideas here, to see what sticks…
Oh, I am on a Mac. I don’t use Apple Music / iTunes
It’s crazy that such a useful functionality, that is also one of the best features of cloud data syncing, hasn’t been made available for such a innovative piece of software.
This would be a game changer for sure. I primarily do weddings and it is crucial for me to have backups in place for everything. This would make things so much easier on me and my prep workflow.
I think that OneLibrary has potential to be a stop-gap but ultimately it would be AMAZING to just click a button and be done. Over WiFi, USB C cable tethering, thumb drive, AirDrop, whatever method.. But essentially the ability to clone your library, metadata, playlists.. all of it directly from the software.
From a legality and anti-piracy standpoint I would be on board with a requirement being same account / limited number of devices. Similar to how iTunes used to work. I would also pay for a cloud storage option so long as it provided offline use similar to beatsource.
This is much more complex than it seems on the surface @eyeseeyou01, because djay runs across multiple OS platforms (macOS, iOS, Windows, Windows ARM, Android). In addition the library contains many sources (Local Music, Explorer, Finder, My Files, My Collection, Tidal, Beatport, Apple Music, etc.).
Yeah there are various solutions, but some involve Apple removing restrictions, and some involve Algoriddim adding support for additional protocols.
Solution 1 (exists): manual management, tracks in the Files app (“on my iPhone”):
tons of tedious work, error prone
you have to rebuild your playlists on each client, as djay doesn’t support .m3u
no sync of cue points/beat grids
but allows for FLAC, and djay can read all tags so multiple genres
Apple does not allow direct file transfers from Mac/PC to the Files app on iDevices (this is super infuriating! such a pointless limitation…), so currently you have to copy it via an intermediary location first, like iCloud, or a USB stick/drive
Solution 2 (exists): sync via Apple Music app:
syncs tracks and playlists back and forth
no FLAC, no support for multiple genres, or any tags like Producer, Remixer, Language, that djay may support later
only syncs over WiFi/USB, not no-the-go over the internet
iTunes Match allows on-the-go sync, but at the cost of losing stems, and you have no control over matching
no sync of cue points/beat grids
Solution 3 (new): store everything in “My Collection” (=djay native) or OneLibrary on iCloud or another cloud storage:
requires massive & expensive iCloud storage space, there’s many DJs with 2+ TB collections
no control over local caching: your iDevice may decide to purge files at any time, which can screw things up when you’re playing somewhere without network connection
djay would have to allow writing/reading a OneLibrary into a folder (instead of a mounted volume), and allow write support in the mobile apps
no support for smart playlists in OneLibrary
in the case of OneDrive/Google Drive/DropBox, djay would have to support new cloud storage services, currently it only does iCloud
Solution 4 (new): add support for an existing music or storage sync protocol to djay:
Music protocols like OpenSubsonic API or Plex API allow for both-way sync of playlists, it would work exactly like Spotify/Tidal/Apple Music, just another REST API so no big changes to djay needed
but like Spotify/Tidal, it wouldn’t sync cue points/beat grids
and users have to run a Plex/Navidrome/etc server
(personally, I suspect this solution would be easiest for the Algoriddim devs to implement, and closest to existing music sources in djay - hell, I could probably write it myself if I had access to their repo. But are there enough DJ’s with a Plex/Navidrome setup?)
Remote storage protocols like SFTP, SMB or WebDAV are fairly ‘dumb’ so would only do file transfers, not playlists, bpm or cue points, so probably not ideal.
Solution 5 (new): djay creates its own sync protocol:
you have the master library on desktop, and you can stream/sync from the full library from the clients, with changes going both ways
EngineDJ has this (“Engine Remote Library”), and it’s quite good. But it works only on the local network, so no access to your master library when you’re on-the-go
…but allow sync over the internet, and suddenly Algoriddim finds itself developing a whole selfhosted server app, which is not trivial (security/etc)
I think you are onto something here.
Right now DJAY can read onelibrary collections from a usb drive. I would assume there are no big technical hurdles to read that same onelibrary collection from a folder. You would just ‘export‘ your onelibrary playlist to an icloud folder instead of a usb drive. And on the iOS side, you would just mount the onelibrary folder from icloud.
If you just export the playlists like OneLibrary you don’t necessarily need a massive iCloud if you don’t export your full library.
As for purging tracks, you can set up a folder on iCloud to always download (this is an iOS/iCloud thing) so no tracks will be purged in that folder.
I think it’s not a bad solution, but if you only export a small subsection of your library as a OneLibrary, then you won’t have back-and-forth sync of playlists/playcounts/etc back into your main library, it’ll always be a one-way operation.
If you want both-way sync like we have now with “Local Music” (aka Apple Music-the-app USB sync), this iCloud OneLibrary would have to be the main library on your desktop as well.
Note: big limitation of OneLibrary is no support for smart playlists.
I’m logged into my iCloud storage / files app and have my music organized into folders/playlists.
I’m a hobbyist so it’s not as critical to have the absolute perfectly organized Library but I do tell the files app to keep my “music” folder always downloaded.
Of course this works for me since I don’t have a massive library.
The idea of being able to at least manually export the onelibrary data to iCloud and have that accessible and able to be applied to different devices makes a lot of sense in theory but I’m sure there’s some technical or even political issue with why that’s not available.
I’m logged into my iCloud storage / files app and have my music organized into folders/playlists.
But how do you import the playlists? djay doesn’t support .m3u import unfortunately.
Or do you just have folder = playlist? That would bring a ton of duplication for me, as most of my tracks are in multiple playlists.
The idea of being able to at least manually export the onelibrary data to iCloud and have that accessible and able to be applied to different devices makes a lot of sense in theory but I’m sure there’s some technical or even political issue with why that’s not available.
Probably not really technical/political issues, but OneLibrary support in djay is only a few months old, lots of scope for improvements. Makes sense that they focused first on USB export, not sync.
I have no doubt they’re working on a solution, it’s probably the biggest area of improvement for djay, and they’ll be well aware that Apple Music-the-app is a slowly sinking ship for local music sync.
100% agree. How is this not sorted yet? Most of my files are MP3 stored locally on both Mac and iPad. I just spent several hours consolidating my files (deleting stuff) so I can use playlists instead of constantly evolving folders with duplicate files only to find I now need to go and recreate each playlist manually on each device? How the cue points and metadata can synch but just the seemingly simple playlists cant (six years after being asked for??) is truly a bit mind boggling. I love the other features of the app but this is really a pain point that should be seen to.