DNB COLLEGE

Drum & Bass Ableton Live 12 Tutorials

LESSON DETAIL

Balance jungle vocal texture with crisp transients and dusty mids in Ableton Live 12 (Intermediate)

An AI-generated intermediate Ableton lesson focused on Balance jungle vocal texture with crisp transients and dusty mids in Ableton Live 12 in the Drums area of drum and bass production.

Back to lessons
Balance jungle vocal texture with crisp transients and dusty mids in Ableton Live 12 (Intermediate) cover image

Narrated lesson audio

The voice track includes the tutorial plus extra teacher commentary.

Open audio file

Main tutorial

Balance Jungle Vocal Texture with Crisp Transients and Dusty Mids in Ableton Live 12

1. Lesson overview

In jungle and drum & bass, the drum bus has to do a lot of heavy lifting:

  • Crisp transients give you the bite and urgency.
  • Dusty mids bring the sample-era grit and character.
  • Vocal texture adds emotion, identity, and that chopped-up jungle spirit. 🎙️🥁
  • The challenge is balance. If the vocal is too clean, it can feel disconnected from the drums. If the drums are too sharp, the vocal texture disappears. If the mids are overcooked, the whole groove gets cloudy.

    In this lesson, you’ll learn how to build a jungle-ready drum layer in Ableton Live 12 that blends:

  • tight, punchy drum transients
  • noisy, dusty midrange texture
  • chopped vocal atmospheres and phrases
  • a controlled low end that leaves room for the bassline
  • We’ll use Ableton stock devices and practical routing techniques you can apply immediately in DnB production.

    ---

    2. What you will build

    You’ll create a 4-bar jungle drum loop with:

  • Kick and snare that cut through the mix
  • Breakbeat layers for movement and texture
  • Vocal chops and ambient vocal dust tucked into the mids
  • Parallel processing to keep drums punchy while adding grit
  • Arrangement variation so the loop feels alive, not static
  • By the end, your drums will feel like they came from a dusty warehouse rave, but still hit clean enough for modern club systems. 🔊

    ---

    3. Step-by-step walkthrough

    Step 1: Start with a clean drum foundation

    Load a fresh Ableton set and set your tempo to something in the jungle/DnB range:

  • 160–174 BPM for jungle
  • 170–174 BPM for more modern rolling DnB
  • Create three audio or MIDI tracks:

    1. Main Break

    2. Kick/Snare Layer

    3. Vocal Texture

    If you’re using a breakbeat sample, place it on the Main Break track. Choose a loop with clear transient detail and midrange texture, such as an Amen-style break or a dusty funk break.

    #### Basic cleanup on the break

    Use these stock devices:

  • EQ Eight
  • - High-pass gently around 25–35 Hz to remove rumble

    - If the break is muddy, make a small cut around 200–400 Hz

  • Warp mode
  • - Use Beats for punchy transient preservation

    - Try Transient Loop Mode if the loop feels too smeared

    If your break is too polished, don’t fix everything. A bit of roughness is part of the vibe.

    ---

    Step 2: Build crisp transient definition

    Now we want the drums to snap.

    Duplicate the break or layer a separate kick/snare pattern underneath it. This gives you control over transient shape without destroying the character of the original sample.

    #### Option A: Use a Drum Rack for extra punch

    On a MIDI track, load Drum Rack and add:

  • a short, punchy kick
  • a snappy snare or rimshot
  • optional ghost hits or top percussion
  • #### Kick settings

    If using Simpler or Sampler:

  • Set Fade very low or off
  • Trim the start tightly
  • Use Snap to start exactly on the transient
  • If needed, pitch the kick slightly down for weight
  • #### Snare settings

    Layer two snares if needed:

  • Layer 1: short, sharp attack
  • Layer 2: dusty midrange body
  • Use EQ Eight on the snare bus:

  • Boost lightly around 180–250 Hz if the snare lacks meat
  • Add presence around 2–5 kHz if it needs more crack
  • Cut harshness around 6–8 kHz if the top end is too spitty
  • #### Add transient control

    Use Drum Buss on the drum group:

  • Drive: 5–15% for grit
  • Transients: +5 to +25 depending on how much snap you want
  • Boom: very subtle or off if the bassline is already dominant
  • Crunch: use carefully for dusty edge
  • This is one of the best stock devices for jungle drum pressure. It adds excitement without needing a third-party transient designer.

    ---

    Step 3: Add dusty midrange with break processing

    Now let’s get that old-school grime in the mids.

    Put your breakbeat on a group track with the kick/snare layer, then process the group with a texture chain.

    #### Suggested drum group chain

    1. EQ Eight

    2. Drum Buss

    3. Saturator

    4. Glue Compressor

    #### Example settings

    EQ Eight

  • Cut low rumble below 30 Hz
  • Slight dip around 300–500 Hz if it gets boxy
  • Small lift around 1.5–3 kHz for stick attack and break articulation
  • Drum Buss

  • Drive: 10%
  • Transients: +10
  • Crunch: small amount
  • Boom: off or very low
  • Saturator

  • Drive: 2–6 dB
  • Turn on Soft Clip if you want controlled grit
  • Try Analog Clip for more aggressive density
  • Glue Compressor

  • Ratio: 2:1
  • Attack: 10–30 ms
  • Release: Auto or 0.3–0.6 s
  • Aim for 1–3 dB of gain reduction
  • The goal here is not to flatten the break. You want the mids to feel worn-in and energetic, while the transients still poke through.

    ---

    Step 4: Create vocal texture, not full vocal leads

    For jungle, you usually want vocal fragments rather than a polished topline.

    Use vocal one-shots, spoken word cuts, or chopped phrases. Think:

  • “yeah”
  • “run it”
  • “come again”
  • breathy syllables
  • chopped soul vocal tails
  • atmospheric vocal swells
  • #### Place vocals in the right frequency zone

    The key is to keep the vocal texture in the midrange pocket so it complements the drums.

    On the vocal track, use:

    EQ Eight

  • High-pass around 120–200 Hz
  • Cut mud around 250–500 Hz
  • If harsh, gently dip around 2.5–4.5 kHz
  • If you want it to feel dusty and recessed, low-pass slightly around 10–14 kHz
  • This keeps the vocal from sounding like a pristine pop sample.

    #### Add character with stock devices

    Try this chain:

    1. Auto Filter

    - Use a low-pass or band-pass

    - Automate cutoff for movement

    2. Redux

    - Use lightly for lo-fi texture

    - Don’t overdo it unless you want obvious bitcrush

    3. Echo

    - Set short delays or dub-style throws

    - Use filtering inside Echo to darken the repeats

    4. Reverb

    - Small to medium space

    - High-cut the reverb to keep it tucked back

    If you want the vocals to feel like part of the break itself, process them with the same texture logic:

  • saturation
  • filtering
  • subtle compression
  • low-mid emphasis
  • That way, they become part of the drum atmosphere rather than sitting on top of it.

    ---

    Step 5: Use sidechain and dynamic space intelligently

    Your drums and vocal textures need room to coexist with the bassline.

    In DnB, the bass is often huge and constant, so you need dynamic control.

    #### Sidechain the vocal texture to the drums or bass

    Use Compressor or Auto Pan creatively:

  • Compressor on vocal track:
  • - Sidechain input from kick or drum group

    - Attack: 1–5 ms

    - Release: 80–150 ms

    - Just 1–3 dB of reduction for subtle ducking

    This keeps vocal tails from masking the transient snap.

    #### Sidechain the bass to the drums

    If your bass is already built, duck it against the kick/snare groove:

  • Use Compressor sidechained to the kick
  • If needed, carve a bit of 200–400 Hz from the bass to make room for dusty drum mids
  • You want the groove to feel interlocked, not competing.

    ---

    Step 6: Shape the drum-vocal blend with parallel processing

    Parallel processing is where you make the whole thing feel bigger without losing definition.

    #### Create a return track for dirt

    Make a Return track called DRUM DIRT and put this on it:

    1. Saturator

    2. Redux

    3. EQ Eight

    4. Compressor

    Suggested approach:

  • Drive the Saturator hard enough to hear texture
  • Reduce bit depth lightly with Redux
  • EQ out unnecessary lows below 150 Hz
  • Compress to stabilize the grit
  • Send:

  • breakbeat
  • snare
  • vocal chops
  • This creates a unified dusty layer that glues the drums and vocal texture together. 🔥

    #### Create a return track for space

    Make another return called DARK SPACE:

    1. Reverb

    2. EQ Eight

    3. Filter

    Settings:

  • Reverb decay: 1.2–2.5 s
  • High cut: fairly dark
  • Low cut: high enough to avoid mud
  • Filter it so it sits behind the dry drums
  • This gives vocal fragments a haunted jungle atmosphere without washing out the transient detail.

    ---

    Step 7: Arrange the loop like a DnB record

    A good drum texture isn’t just about sound design. It’s about arrangement.

    In a 4-bar loop, create variation like this:

    #### Bar 1

  • Full break
  • Kick/snare layer
  • Short vocal chop on the offbeat
  • #### Bar 2

  • Remove one kick or ghost-hit the snare
  • Add a reversed vocal tail
  • Let the break breathe
  • #### Bar 3

  • Bring in extra percussion or ride shuffles
  • Add a small drum fill
  • Layer a vocal repeat with delay
  • #### Bar 4

  • Drop out a few midrange elements
  • Add a snare fill or break slice
  • Let the last hit lead into the next phrase
  • Use Clip Envelopes and Automation to vary:

  • filter cutoff
  • reverb send
  • echo feedback
  • saturator drive
  • break volume by small amounts
  • This stops the loop from sounding looped.

    ---

    Step 8: Check the balance in context

    Solo is useful for editing, but jungle balance only really makes sense in context.

    Add a simple sub bass or rolling reese underneath and listen for these problems:

  • Are the vocal mids masking the snare crack?
  • Is the break too bright compared to the bass?
  • Are the dusty mids crowding the 250–500 Hz area?
  • Is the transient layer poking through clearly on small speakers?
  • Use these quick checks:

  • Listen at low volume
  • Check mono compatibility
  • Compare against a reference DnB track
  • Watch the spectrum, but trust your ears first
  • If the groove feels lively and the snare still smacks through the vocal dust, you’re on the right track.

    ---

    4. Common mistakes

    1. Making the vocal too clean

    A pristine vocal sample often feels out of place in jungle unless it’s deliberately used as a contrast. If everything else is dusty, the vocal should usually be filtered, chopped, or degraded a bit.

    2. Over-compressing the break

    If you squash the break too much, you lose the transient movement that gives jungle its swing and urgency.

    3. Too much low-mid buildup

    Dusty mids are great, but too much around 250–500 Hz turns your drums into cardboard. Be disciplined with EQ.

    4. Letting the vocal compete with the snare

    The snare is king in a lot of jungle arrangements. If the vocal phrase lands right on the snare crack, it can blur the impact.

    5. Using too much reverb

    A big reverb tail can destroy the tightness of a fast DnB groove. Keep space dark and controlled.

    6. Ignoring arrangement variation

    A static 4-bar loop will sound amateur fast. Small edits every bar matter a lot in break-heavy music.

    ---

    5. Pro tips for darker/heavier DnB

    Use filtered vocal ghosts

    Instead of full phrases, use tiny vocal textures:

  • consonants
  • breaths
  • chopped syllables
  • reversed tails
  • High-pass them, darken them, and tuck them into the groove. This keeps the atmosphere ominous and rhythmic.

    Push midrange saturation, not just top-end brightness

    For darker DnB, don’t rely on bright hats for energy. Use:

  • Saturator
  • Drum Buss
  • subtle Amp or Overdrive if you want more aggression
  • This gives the drums density without turning them into EDM-style fizz.

    Build contrast with transient clarity

    Dark records still need punch. Keep:

  • kick transient short and focused
  • snare attack present
  • hats controlled, not hyped
  • A heavy track often sounds bigger when the transients are actually cleaner.

    Use resampled textures

    Resample your drum bus with vocal sends printed into it, then chop the result back into the arrangement. This is a classic jungle method and works brilliantly in Ableton Live 12.

    Automate filter movement

    Automate Auto Filter on the vocal texture or break loop to create tension before drops or fills. A slow filter sweep into a snare roll can make a section feel huge.

    ---

    6. Mini practice exercise

    Exercise: Build an 8-bar jungle drum texture loop

    #### Step 1

    Choose:

  • one breakbeat
  • one kick/snare layer
  • one vocal sample or phrase
  • #### Step 2

    Process them with:

  • EQ Eight
  • Drum Buss
  • Saturator
  • Reverb or Echo
  • #### Step 3

    Create two return tracks:

  • DRUM DIRT
  • DARK SPACE
  • #### Step 4

    Arrange an 8-bar loop with:

  • bar 1–2: full groove
  • bar 3–4: remove one element and add a vocal throw
  • bar 5–6: increase saturation or drum bus transients slightly
  • bar 7–8: use a fill, reverse vocal, or filter sweep into the restart
  • #### Step 5

    Export the loop and compare it against one reference jungle tune. Ask:

  • Do the drums hit clearly?
  • Do the vocals feel embedded in the groove?
  • Is the midrange character dusty without being muddy?
  • Do this twice: once with a cleaner vocal, once with a heavily filtered vocal. Compare which version feels more authentic for the tune. 🎛️

    ---

    7. Recap

    To balance jungle vocal texture with crisp transients and dusty mids in Ableton Live 12:

  • Start with a solid breakbeat foundation
  • Layer or enhance kick/snare transients for snap
  • Use saturation and Drum Buss to create dusty midrange character
  • Treat vocals as texture, not always as leads
  • Filter, degrade, and delay vocals so they sit in the groove
  • Use parallel dirt and space returns to glue everything together
  • Arrange with small variations so the loop evolves like a real DnB section

If you get this balance right, your drums will feel energetic, textured, and unmistakably rooted in jungle culture — raw enough to move a dancefloor, clean enough to hit hard on modern systems. 💥

If you want, I can also turn this into a step-by-step Ableton rack template or a session-view workflow for jungle drum programming.

Ask GPT about this lesson

Chat with the lesson tutor, get follow-up help, or use quick actions.

Bigup 👽 Ask me anything about this lesson and I’ll answer in context.

Narration script

Show spoken script
Welcome back. In this lesson, we’re going to build that classic jungle feeling where the drums hit hard, the mids have that dusty warehouse grit, and the vocal texture sits right in the pocket instead of floating awkwardly on top.

The big idea here is balance. You want crisp transients so the kick and snare cut through. You want dusty mids so the loop feels lived-in and sample-based. And you want vocal fragments or atmospheres that add emotion and identity without stealing focus from the groove. If you get that balance right, the whole thing starts to feel raw, energetic, and very alive.

I’m in Ableton Live 12, and I’m starting with a fresh set at a jungle-friendly tempo, somewhere around 170 BPM. You can work a little slower or faster depending on your style, but that range is a great starting point for this kind of drum programming.

First, I’m setting up three tracks: one for the main break, one for a kick and snare layer, and one for vocal texture. That separation matters. It lets you treat each role differently instead of trying to force one sample to do everything.

On the main break, I want a loop with character. Something with clear transient detail and some midrange dirt, like an Amen-style break or a dusty funk loop. If the break is too polished, that’s okay. We can still make it feel more jungle-friendly, but if it already has some grit, that usually helps right away.

The first cleanup step is simple. I’m using EQ Eight to remove unnecessary low rumble, usually with a gentle high-pass around 25 to 35 hertz. I’m not trying to thin the break out. I just want to clear the subsonic junk that doesn’t help the groove. If the loop feels muddy, I’ll make a small cut somewhere around 200 to 400 hertz. That’s the area where breaks can start to feel cloudy if you overdo it.

Now, if the transient feel is a little soft, I’m checking the warp mode before I reach for heavy processing. In jungle, that attack is everything. If the sample is getting smeared, try Beats mode for punchier transient preservation. If the loop still feels too blurred, tighten the clip, trim the start, or adjust the warp markers before adding more plugins. A lot of people skip that step and immediately go into compression, but fixing the envelope first is usually the smarter move.

Next, I’m building transient definition with a kick and snare layer. This is where the drums start to snap.

You can do this with a Drum Rack on a MIDI track, or with audio clips if you prefer. I’m keeping it simple: a short, punchy kick and a snappy snare or rimshot. If needed, I’ll layer two snares. One layer gives me the sharp attack, and the other gives me that dusty midrange body. That combination is really useful because it lets the snare feel both clean and worn-in at the same time.

If I’m using Simpler, I’m trimming the sample tightly and making sure the start point is right on the transient. I don’t want any extra fade unless the sample really needs it. For the kick, I might pitch it slightly down if I want more weight. For the snare, I’m listening for two things: crack in the upper mids and body in the low mids. If it feels too papery, I’ll add a little around 180 to 250 hertz. If it needs more bite, I’ll touch the 2 to 5 kilohertz region. And if it starts getting harsh or spitty, I’ll take a little dip around 6 to 8 kilohertz.

Now let’s bring in Drum Buss, because this device is a secret weapon for jungle drums. I’m using it on the drum group, and I’m keeping the settings controlled. A little Drive goes a long way. A little Transients boost can make the groove jump forward. Crunch can add that dusty edge, but don’t overcook it. And Boom? Usually subtle, or off, if the bassline is already doing the heavy lifting.

This is one of those moments where less can really be more. You’re not trying to flatten the drums. You’re trying to make them feel exciting, worn-in, and punchy all at once.

Now I’m grouping the break and the kick-snare layer together and shaping that group with a texture chain. My go-to order here is EQ Eight, then Drum Buss, then Saturator, then Glue Compressor.

The EQ is mainly for cleanup and a little tone shaping. I’ll cut any deep sub rumble, take out boxiness if it builds up in the 300 to 500 hertz range, and maybe add a small lift in the 1.5 to 3 kilohertz area if I want more stick articulation.

Then Drum Buss adds grit and transient push. After that, Saturator helps thicken the mids and gives the whole group a bit of that sample-era density. If I want a more controlled kind of distortion, I’ll use Soft Clip. If I want it a little harsher and more aggressive, I can push it harder, but I’m always listening for whether the transients are still readable.

Finally, Glue Compressor ties the group together. I’m not looking for big gain reduction here. One to three dB is plenty in most cases. The goal is cohesion, not squashing. The drums should still breathe.

Now for the vocal texture, and this is where the vibe really comes alive.

In jungle, the vocal usually works best as fragments, not as a polished lead. Think chopped phrases, spoken words, breathy syllables, soul vocal tails, little shouts, little ghosts. The vocal should feel like part of the rhythm and atmosphere, not like a pop feature dropped on top.

I’m using EQ Eight on the vocal track to place it in the midrange pocket. That usually means high-passing somewhere around 120 to 200 hertz, removing mud around 250 to 500 hertz, and maybe smoothing a harsh area around 2.5 to 4.5 kilohertz if needed. If I want the vocal to feel a little more distant or dusty, I’ll also gently low-pass it around 10 to 14 kilohertz.

That’s an important point: a vocal does not need to be bright to feel present. In a jungle context, a darker vocal can actually sound more authentic, especially if the drums already have enough top-end definition.

For character, I like combining Auto Filter, Redux, Echo, and Reverb. Auto Filter gives me movement and lets me shape the vocal into a band-limited texture if I want. Redux can add a little lo-fi edge, but I use it carefully because it can get obvious fast. Echo is great for short delays or dub-style throws, especially if you filter the repeats so they stay dark. Reverb should usually stay small to medium and fairly dark, so it supports the atmosphere without washing out the groove.

A really useful mindset here is to treat the vocal texture almost like another percussion layer. If you process it with saturation, filtering, and subtle compression, it starts to sit in the same world as the break. That’s how you get that embedded jungle feel instead of a vocal that sounds pasted on.

Now let’s make room dynamically. Jungle and DnB live or die by the relationship between drums, vocal texture, and bass.

If the vocal tails are masking the snare, I’m going to sidechain the vocal track to the drum group or the kick. Even a small amount of ducking can make the transient punch much clearer. I’m usually going with a fast attack, a medium release, and just a few dB of gain reduction. The goal is subtle movement, not an obvious pumping effect unless that’s what you want artistically.

And when the bassline comes in, it needs its own space too. If the bass is too full in the low mids, it can step right into the same zone as the dusty drums. So I’m always checking for buildup around 200 to 400 hertz and making sure the bass and drum mids aren’t fighting each other. The groove should feel interlocked, not crowded.

Now I want to create some parallel processing, because that’s how you make the whole setup feel bigger without losing clarity.

I’m creating a return track called DRUM DIRT. On that send, I’m putting Saturator, Redux, EQ Eight, and Compressor. I’m pushing the saturation hard enough to hear the texture, reducing bit depth lightly if I want some old-school roughness, filtering out unnecessary low end, and then compressing the result so the grit stays stable. I can send the break, the snare, and even the vocal chops into this return. That creates a unified dirty layer that helps glue the whole texture together.

Then I’m making another return called DARK SPACE. This one is for atmosphere. I’m using Reverb, then EQ Eight, then a Filter. I want the reverb dark, controlled, and tucked behind the dry drums. A decay somewhere around 1.2 to 2.5 seconds can work well, but the key is to keep the space from clouding the groove. High-pass the reverb return enough so it doesn’t build mud, and keep the highs controlled so the tail feels haunted instead of shiny.

This is where things start to sound like a real jungle record.

Now let’s talk arrangement, because a loop only feels good if it evolves. A static four-bar pattern gets old fast, especially in break-heavy music.

For bar one, I might have the full break, the kick and snare layer, and a short vocal chop on the offbeat. In bar two, I’ll remove one kick or add a ghost hit, maybe throw in a reversed vocal tail. In bar three, I can bring in a little extra percussion or a small fill, plus a vocal repeat with delay. And in bar four, I’ll strip something back, maybe drop a few midrange elements and let a snare fill or break slice lead back into the next phrase.

Those tiny moves matter a lot. You do not need a giant change every bar. You just need enough motion that the listener feels the loop breathe.

Use automation wherever you can. Filter cutoff, reverb send amount, echo feedback, saturator drive, little volume rides on the vocal chop, maybe even small changes in the break level. The more you make the loop feel performed rather than copy-pasted, the more alive it will sound.

A good coaching tip here is to think in terms of roles, not just sound. Let one layer be ugly and one layer be clean. For example, maybe the break is dirty and the snare layer is tight and focused. Or maybe the break stays cleaner and the vocal is the worn-out texture. Contrast makes each part easier to hear, and it keeps the groove from turning into a blur.

When you check the balance, don’t do it only in solo. Bring in a simple sub bass or a rolling reese and hear how everything fits together. Ask yourself: is the vocal texture stealing the snare’s impact? Is the break too bright? Are the dusty mids getting too thick? Can you still hear the transient snap on smaller speakers? That last one is huge. Jungle often lives or dies in the midrange, especially when you’re listening on headphones or less-than-perfect systems.

Also, listen quietly. If the loop still feels exciting at low volume, that’s usually a very good sign. It means the transient-to-texture balance is working.

A few common mistakes to avoid here: don’t make the vocal too clean, don’t over-compress the break, don’t let the low mids pile up, and don’t drown everything in reverb. Fast music needs clarity. The atmosphere should support the rhythm, not bury it.

If you want to push this further, try some of these advanced moves.

Use ghost-vocal syncopation. Instead of placing chops on obvious downbeats, tuck them into late offbeats or little pickup spaces after the snare. That makes the vocal feel like it’s answering the drums.

Try alternating snare personalities. Duplicate the snare layer, process one version to be short and bright, and another to be darker and more papery. Then automate which one is louder across the phrase. That gives you evolution without needing new samples.

You can also resample the whole drum-vocal blend, then chop it back up. That’s a classic jungle technique, and it works beautifully in Ableton Live 12. Print the result, cut out the best hits, reverse a few tails, and suddenly you have new material that already sounds like part of the record.

Here’s a simple practice exercise. Build an eight-bar loop using one break, one kick-snare layer, and one vocal sample. Process them with EQ Eight, Drum Buss, Saturator, and either Reverb or Echo. Create two return tracks, one for dirt and one for space. Then arrange the loop so the first two bars are full, the next two bars remove one element and add a vocal throw, the next two bars increase saturation or transient energy slightly, and the last two bars use a fill, reverse vocal, or filter sweep into the restart.

Then export it and compare it against a reference jungle tune. Ask yourself if the drums hit clearly, if the vocal feels embedded in the groove, and if the mids are dusty without becoming muddy. If you can, do it twice: once with a cleaner vocal and once with a heavily filtered vocal. Compare which one feels more authentic for the track you’re making.

So, to recap: start with a strong break, shape the kick and snare for crisp transients, use saturation and Drum Buss for dusty midrange character, treat vocals as texture, not always as leads, and use parallel dirt and space to glue the whole thing together. Then arrange with small variations so the loop actually evolves.

If you get that balance right, your drums will feel energetic, textured, and deeply rooted in jungle culture, but still clean enough to hit hard on a modern system.

All right, let’s build it.

mickeybeam

Go to drumbasscd.com for +100 drum and bass YouTube channels all in one place - tune in!

Generating PDF preview…