dhj
Posts: 6
Joined: Mon Oct 17, 2016 9:38 am

PiDeck Digital Vinyl System released

Mon Oct 17, 2016 10:26 am

Today 64 Studio is announcing the first official release of the PiDeck project; version 0.1 is named in honour of DJ Kool Herc. There is a demo video at http://pideck.com/

PiDeck is an open source project retro-fitting the Raspberry Pi onto any DJ turntable, eliminating the need for each DJ to carry their own laptop. The xwax digital vinyl system is built into a custom Debian micro SD card image which you can extend with new and experimental features, or just download and use today.

Music files are loaded from USB sticks so that DJs can hand over between sets without any cable plugging or unplugging. The hardware parts cost is around £150 sterling/166 euro/US $182 per turntable and there is no soldering or modification to the turntable required.

See https://github.com/pideck/pideck-distro/releases to download the software. We love pull requests :D

HypnoToad
Posts: 77
Joined: Thu Dec 11, 2014 6:00 pm

Re: PiDeck Digital Vinyl System released

Mon Oct 17, 2016 11:04 am

Damn, that's pretty impressive what the Pi can be made to do!

I remember playing with a Final Scratch setup back in the day and remember how much fun it was, now that the Pi can do something similar I may have to dust off the decks and give this a go! :D

I need to see if I can find a soundcard that work with the Pi first, I already have phono pre's and cables, I'm guessing the Final Scratch vinyl will probably need updating to something newer also, so I'll have to do a little tinking before I can give any feedback.

EDIT: Just had had a quick thought, while USB soundcards work and latency seems to be low, would any of the bolt-on DAC options work any better on the pi? They are relatively cheap, and may offer even better latency compared to a USB offering, just throwing it out there as an idea. :idea:

Here's an example of one:
https://shop.pimoroni.com/products/pi-dac

Only I've seen similar units which offer a stereo line in also
Last edited by HypnoToad on Mon Oct 17, 2016 11:16 am, edited 1 time in total.

dhj
Posts: 6
Joined: Mon Oct 17, 2016 9:38 am

Re: PiDeck Digital Vinyl System released

Mon Oct 17, 2016 11:15 am

Hi HypnoToad,

Thanks for the feedback :-) Final Scratch vinyl may well work, I think it is still supported in xwax: http://wiki.xwax.org/timecode_records_and_cds

You would need to use the -t option to specify any timecode other than Serato: http://wiki.xwax.org/writing_your_start-up_command

Any generic USB audio device that supports full duplex operation should work in theory. The Behringer UFO202 is cheap but it passes the input signal to the output in hardware, which requires cutting traces on the circuit board. A low cost alternative is the American Audio Genie II (also sold as the Citronic AC-1?) which works without modification.

Please let us know how you get on!

Daniel

dhj
Posts: 6
Joined: Mon Oct 17, 2016 9:38 am

Re: PiDeck Digital Vinyl System released

Mon Oct 17, 2016 11:23 am

We tested the Audio Injector HAT, as most other DAC cards don't offer full duplex. I2S may enable lower latencies that USB eventually, but for now we're having some DMA errors and a larger buffer (16ms) is required. Also we have some strange channel balance issues on input and output with that codec: https://github.com/pideck/pideck/issues/6

3ms buffer with USB works pretty well, easily good enough for scratching.

HypnoToad
Posts: 77
Joined: Thu Dec 11, 2014 6:00 pm

Re: PiDeck Digital Vinyl System released

Mon Oct 17, 2016 12:12 pm

dhj wrote:Hi HypnoToad,

Thanks for the feedback :-) Final Scratch vinyl may well work, I think it is still supported in xwax: http://wiki.xwax.org/timecode_records_and_cds

You would need to use the -t option to specify any timecode other than Serato: http://wiki.xwax.org/writing_your_start-up_command
Thanks, I'll see if I can get it working for testing, by the looks of it the Final Scratch people worked with NI for the first gen Tracktor vinyl, so the Final Scratch timecode may be the same. I'll probably end up getting the Serato vinyl looks like the way to go, it seems to have better error checking, and probably in better condition than my 10+ year old FS vinyl!
dhj wrote:Any generic USB audio device that supports full duplex operation should work in theory. The Behringer UFO202 is cheap but it passes the input signal to the output in hardware, which requires cutting traces on the circuit board. A low cost alternative is the American Audio Genie II (also sold as the Citronic AC-1?) which works without modification.

Please let us know how you get on!

Daniel
I already have a Behringer UCA202 which is similar to the UFO202 but I remember being able to use the input with the output being affected, so will try it out.

I have found the Citronic AC-1 in the UK, again it looks like the way to go, I like that it's got an photo preamp already in, so will give a cleaner setup with less wires going everywhere! :) I will try the UCA202 as it will be interesting to see how it stacks up against the Genie II/AC-1; I'll keep you posted :)
dhj wrote:We tested the Audio Injector HAT, as most other DAC cards don't offer full duplex. I2S may enable lower latencies that USB eventually, but for now we're having some DMA errors and a larger buffer (16ms) is required. Also we have some strange channel balance issues on input and output with that codec: https://github.com/pideck/pideck/issues/6

3ms buffer with USB works pretty well, easily good enough for scratching.
I can't argue with 3ms, that's really low, in fact I remember struggling to get less than 8ms with my Windows XP Final Scratch/DJDecks setup, and that was with overclocking, PCI soundcard, ASIO drivers, etc. so I think I'll stick with a USB based as it works and the latency is low. I can't ask for more than that really!

I see you've already had a request on github for sharing songs between 2 RPI's, so I won't ask for the same thing, but it maybe be easier to simply link 2 RPI's together using an Ethernet cable, the downside of that is that this limits you to 2 decks but that's more than enough for most of us :D

dhj
Posts: 6
Joined: Mon Oct 17, 2016 9:38 am

Re: PiDeck Digital Vinyl System released

Mon Oct 17, 2016 1:30 pm

For sharing files between devices we were thinking of using a crossover cable for two PiDecks, with an Ethernet switch for three decks or more. Then it should be possible to have multi-DJ performances like: https://www.youtube.com/watch?v=KI-AFAiGtHY without requiring sticks to be duplicated first.

We currently mount the USB sticks read-only to avoid corruption when the sticks are yanked; the next step is to detect the insertion/removal events and rescan the library automatically.

User avatar
flatmax
Posts: 336
Joined: Thu May 26, 2016 10:36 pm

Re: PiDeck Digital Vinyl System released

Tue Dec 20, 2016 12:58 am

dhj wrote:We tested the Audio Injector HAT, as most other DAC cards don't offer full duplex. I2S may enable lower latencies that USB eventually, but for now we're having some DMA errors and a larger buffer (16ms) is required. Also we have some strange channel balance issues on input and output with that codec: https://github.com/pideck/pideck/issues/6

3ms buffer with USB works pretty well, easily good enough for scratching.
That balance problem is now fixed. I had a chat about this offline with some xwax people. Seems a little strange that I can get 0.5 ms latency and that xwax can only pull with 16 ms latency ?!?!

It is well known that I2S busses give far lower latencies then USB audio links ... I would expect that latencies should be possible at down towards 1ms or 2ms ?

Personally I find that there is no comparison in "tightness" between real vinyl and USB order 3ms latencies ... the real vinyl wins hands down ... I would expect that as you get to 1ms and lower, it becomes more of an equal playing field.

It would be great if someone worked out why it is possible to get low latencies with the Audio injector normally and then they shoot up once you start using xwax ?

Matt
Check the Ultra 2 sound card - use our shop instead of Amazon Europe (Amazon USA is live).
Sound card for the Raspberry Pi with inbuilt microphone : www.audioinjector.net
Audio Inector Octo multitrack GPIO sound card

dhj
Posts: 6
Joined: Mon Oct 17, 2016 9:38 am

Re: PiDeck Digital Vinyl System released

Tue Dec 20, 2016 4:38 pm

Hi Matt, we applied your balance fix and it works great, thanks! We love your audioinjector card, the output using FLAC files sounds so clean through a PA system.

As for the latency, we would love to find the answer to that :-) Possibly https://github.com/raspberrypi/linux/issues/1321 is related to the I2S sync errors that we see.

Are the low latencies you are seeing in full duplex mode? Please share your latency test commands so we can attempt to reproduce them.

As for the acceptable latency, sub 3ms is our goal, but already at 3ms we have better performance than some laptop-based systems. DJs who currently play rare vinyl may accept the slightly worse performance than analogue in compensation for the safety of not carting their collection to every gig. Also, the DVS approach should eliminate audio feedback through the turntable, which is often a real problem on larger systems.

Cheers!

Daniel

User avatar
flatmax
Posts: 336
Joined: Thu May 26, 2016 10:36 pm

Re: PiDeck Digital Vinyl System released

Sat Nov 04, 2017 3:18 am

Hey guys, thanks for the hard work,

https://github.com/pideck/pideck/issues ... -269236535

I noticed you have Pideck down to 4 ms with the audio injector sound card - awsome ! I wonder how/if we can get the latency down further ?


Matt
Check the Ultra 2 sound card - use our shop instead of Amazon Europe (Amazon USA is live).
Sound card for the Raspberry Pi with inbuilt microphone : www.audioinjector.net
Audio Inector Octo multitrack GPIO sound card

dhj
Posts: 6
Joined: Mon Oct 17, 2016 9:38 am

Re: PiDeck Digital Vinyl System released

Mon Nov 06, 2017 2:12 pm

Hi Matt,

A lower than 4ms buffer would be awesome :-) The best place to discuss this would be the xwax-devel list, I think: https://sourceforge.net/projects/xwax/lists/xwax-devel

I see you have already posted there so I will follow up.

Cheers!

Daniel

Return to “Graphics, sound and multimedia”