If you ever wanted to listen to your own music within your game, you can do so now.
DJ is, simply put, the missing link between Unity and your music-library.
As the name promises, it’s a solution to build the music player of your dreams – just like a real DJ.
It adds and plays audio files from anywhere inside your application, it’s very configurable and you can add as many records, sets and turntables as you wish.
DJ is a must for everyone who loves music!
Features: DJ and turntables
Support for those audio formats on any platform:
MP3
OGG
XM
IT
MOD
S3M
WAV
AIFF
Export audio from a turntable or the whole session
Read the lyrics of the current record
Open Spotify with the current record
Tune into multiple turntables at the same time (and blend between records)
Reads tags like ID3
Reads and saves M3U, PLS and XSPF files
Crossfade between turntables and records
Loop between start and end position
Events for certain positions
Analyze the BPM of a record
Cache records to play them with no delay (e.g. a piano)
History of all played records
Watchdog for file system changes
Performance: Very low impact on performance!
No limits: Does survive changing scenes! The music is not interrupted even during a load operation if necessary.
Filter & order Filter and order (ascending/descending) the records by:
Cool, I am envisioning one possible use case for a sampler/synth with sampled sounds. Performance and no delay is crucial. How would having a large number of cached tracks affect the memory and performance on mobile devices. Is there an efficient pooling system for storage/retrieval of sounds to and from the cache. Also how is the cached sounds stored on mobile devices.
Atm, it works like that:
You enable “Cached” on the turntable and it will cache the current record. The size used in memory is equals the record.
An example: if you have 20 turntables with samples of 1MB each, then it would use 20 MB of RAM.
The record (sample) is cached after the first usage and is instantly available (= no delay).
Currently, DJ doesn’t save/load the cache itself, but I have planned a much more sophisticated caching system in the future.
However, I think you could easily build such an app with the current version.
Does this system have a way to report the bpm of a track/turntable?
Can it support altering the bpm playback of a turntable without altering pitch?
Does it support an auto sync option to match the playback speed of two different tunes via different turntables?
Basically can it be used to create a typical modern day DJ application?
I’ve just had a quick look at the demo(windows), checking out the spotify integration. Not sure if it is a limitation of the demo, or the asset, but although it launched spotify, spotify tried to locate the ‘demo song’. Is there a way to get the demo to load up a specific track or playlist from spotify? Once the bpm/auto sync feature is available will this work with tracks from spotify too?
Hi Stefan
I purchased this kit yesterday andhave spent most of today playing around and getting to know it.
First impression is it is probably one of, if not the best thing I have purchased from theapp store so far.
Being a professional DJ I have a number of ideas and have made a test bed to try out at tomorrow night’s Disco. So I’ll let you know how it performs and I’m sure a few questions on how to add elements.
How many audio files are in your folder?
This happens normally if you add hundreds of files and use not the right settings.
Please try it with this config:
“Load Tag” and “Read File Size” are very time consuming operations and “Auto Update In Editor” could be the reason for your freeze.
On the other hand, you could leave those settings enabled and enable “Use Music Library”. This way, it could freeze your Editor for the first scan, but creates a DB with the information for every file and is afterwards blazing fast. Disabling “Slow And Save” could also improve the speed and lead to more responsiveness.
This first “scan” needs time if you have a lot of files - this is unfortunately how it works and can’t be prevented.
Thanks for that. There is something in the demo scene (play.unity) that is causing the freeze.
When I use the prefabs in my own scene everything is all sweet.
Different question. How on earth does one adjust the master volume. I know I can access the audio source on the turntable and do it but really maybe a volume property on Simple Player might make a lot of sense ? or is it already there and I am just not seeing it.
Ok, this is a bit strange… No errors in the Editor?
About the master volume: we thought it makes more sense to control it directly via the AudioSource, like pitch, spatial blend etc.
We could expose those properties to the Turntable, but I think it would not help a lot and overload the already packed component. Convince me otherwise
Unfortunately, DJ doesn’t support WSA (UWP) and WebGL as build targets.
We’re currently evaluating how-to make our assets working there, but it’s unclear, if and when we can provide support for those platforms…
We will keep you informed in this thread.