Virtual Lock Grooves / DIY Y records

A first note...

Credit has to be given to monochromeskyy for bringing this up in the Stanton Forum, And thanks for darien for answering some vinyl questions.

Just want the sounds? Not interested in the technical bs?

click here.

A mini glossary

Lock Groove

Most records have a single spiral groove, moving from the outside to the inside of the record. A lock groove deliberately loops back onto itself, so the same revolution is played over and over again.

At 33 1/3 rpm this revolution takes 1.8 secongs. At 45 rpm it takes 1 1/3 seconds.

Y Record

If you look at Q-Bert's web site, you can see an unskippable Y record for sale. (It's about 2/3 of the way down the page)

The Y part come from the fact that all the effects on the record are positioned at points 120° away from each other. So in the full circle there's 3 samples, and samples of a given type can always be found at the same offset.

Scratch records

Records made for scratching. There's audio clips here on www.turntablelab.com.


My guess is that this Y-record has grouped sets of lock grooves, each with exactly the same audio data in exactly the same place.

This would mean that as well as the usual benefits of the lock groove, if the record does skip then you've got a good chance of landing in an adjacent groove where the sound is exactly the same as it was in the one you just left.

I've been informed that the Y-record is made from the usual single groove, the samples are just always in the same place adjacent grooves.

The fun part...

Well we can play any sound on vinly with final scratch, why not make an unskippable record?

We won't have the advantage of the concentric lock grooves, but we can record the same sound onto concurrent revolutions of the record.

I decided to first experiment with the 33 1/3 rpm lock groove, mainly as the longer loop offers more possibilites.

A traditional loop

My first experiment was with a musical loop. Four beats in 1.8 seconds is a 133.3 bpm. Using my editor, I sorted by box by BPM and picked Modjo - Lady as a candidate. It's got a reognizabe 4 beat loop and was about 133.3 bpm.

There's NO reason why the bpm of the source should be near 133.3 bpm, I just wanted to minimize stretching.

So, I cut a loop out of the tune and time-stetched in in soundforge so that it was exactly 1.8 seconds long. I then repeatedly pasted it until I had a wav around a minute long.

It worked! As well as checking visually, I could.

  1. mix someting over the beat.
  2. fade away from the beat.
  3. lift the needle and and drop it back near the beginning of the looped section.
  4. fade back.
  5. Because 1 loop = 1 bar and the lift and drop is a whole number of loops, we keep sync!

See the future possibilites sections for ideas how this can be taken further and how its better than just looping.

The DIY Y-record

The next step was to make my own Y record. The usual Y record has 3 samples evenly placed within the revolution. 1.8 ÷ 3 = 0.6, so the 'hit' of each sample should be 0.6 seconds apart. I downloaded a few mp3's and found a stab, a 'hit-it' vocal, and a drum sound.

This is a screengrab from a sound editor of the final wave. Here you can see the three-evenly spaced sound effects. Here, its a stab, the vocal then the drum.

It would have been sufficient to just trim/expand each sample to 0.6s and place them end to end as shown.

However, I decided to try to position the stabs as well as I could. As you can see in the ringed red section, the vocal sample had a small amount of data before the hit. I measured how much of this there was and deleted it from the end of the stab 0.6 before appending the vocal sample.

If that last paragraph's nonsense to you, don't stress, just trim to 0.6 and stick 3 after each other to get 1.8.

Now all that's left to do is loop the sample with the magic of copy & paste!


One loop of the Y-record sample as a wav is here. I reccomend downloading this, looping it in an editor and using the resultant wav.

If you're lazy, a 40 second long mp3 of this looped is available here. The bitrate's fairly low, so its more a demo than anything great sounding.

Other people have been playing with locked groove samples.

Feel free to get in touch if you've got another site with virtual lock groove downloads.


I've been playing. It appears that the timing on the 33 1/3 side of a record is very slightly (0.008% ish) off. This really doesn't make much difference in normal use and is proably normal (?), but it means that a tag on the outer ring of the record will be 1.4 inches off when your 15 minutes in. Doing some math I found that this means you want loops to be 6 samples shorter that 1.8 seconds. This means the length to loop is 79374 samples long instead of 79380.

This of course is only true if all final scratch records were pressed from the same master.

So I made a 15 minute long loop and it had the samples starting at the same point over the whole records surface. You can see my high tech testing rig here.

I've looped this into a huge wav and rar'ed it up. you can download it here. rar's not the most common compression format, and it's proprietry, but it got this 151MB file down to 255KB.

I'd be interested if this loops right for everyone else, seems about spot on for me.

RAR software's available here. If anyone has a non-proprietry suggestion thats works as well as rar, I'll add it in that format.

Another Update:

I've started work on a javascript calculator for scratch record related data. An early version is here. As usual comments are welcome

Future Possibilities

Multiple synced loops on a record

As we can have one skip-proof loop on a record there's nothing to stop us having multiple loops, all synced. It should be possible to switch away, lift + drop the needle an inch across the platter, then switch back, all within a couple of seconds. Not sure how fs would handle this, would be interesting to try.

Hacked file-system to auto convert wav's.

I'm looking into having a loadable kernel module that would enable the use of a 'special' filesystem, that would present a directory of looped wavs based on a directory of loops.

In other words you stuff all your wavs in a directory, and fs will auto-magically see nice 15 min long looped wavs, without costing you anything extra in disk space.