Skip to main content

Crossfader control for cutting

control for cutting between tracks like a crossfader on a dj mixer
Status: In Review2 comments

Log in to comment and vote

Comments2

  • Gavin Staveley

    •

    Sep 13, 2025

    I totally agree with this.

    The amount of time I spend adjusting automation in transitions and have to go so far as stemming and applying automations to those as well for something that I can do with a mixer using crossfading real-time is concerning and quite a learning curve.

    You basically have to mimic the effects of a crossfader in every audio channel that passes through a transition sometimes having to stem the drums to keep them under the ceiling while also maintaining their dominance with independent compression.

    This is where DJ Studio could advance & redefine crossfading, but more on that later.

    It only needs to be in the transition so:

    (a)    a toggle button could be used to enable/disable the crossfader functionality within the transition;

    (b)    another toggle button could be used to switch the transition view to display an automation representing left-right position of the crossfader as well as assignment of each channel to the L & R sides of the crossfader, those not assigned are not routed through the crossfader and thus bypass the crossfader and join with the output of the crossfader.

    CONCEPTUAL LAYOUT FOR (XFADE) CROSSFADER WITHIN TRANSITION

    The programmatic logic within the crossfader is rather simple:

    • They are generally based on a mathematical formula (eg:)

    • LEFT = COS (pi/2 * crossfader position%)

    • RIGHT = SIN(pi/2 * crossfader position%)

    • For every position across the crossfader (either 101 or 256 quantifiable positions in mixer products) there are (at least) two parameters that control how much the inputs assigned to each side are trimmed.

    In programming terms, this is a variable array of 101 or 256 rows and at least 2 columns containing single or double precision values representing the trim values for applying to the input channels assigned to the left and right sides of the crossfader for each position along the crossfader.

    Optional additional columns could that deal with trim levels for the input channels assigned (which may make it simpler to create the profiles).

    This allows the left and right channels to focus on presence while the crossfader focuses on fine-tuning trim levels to keep amplitude under the ceiling and minimize compressor/limiter triggering. An example is shown in the manual for the Xone 96 on page 12.

    https://www.veranstaltungstechnikmueller.de/pdf/Allen_Heath_Xone96_Bedienungsanleitung.pdf

    Further, optional columns that represent imposing trim on each EQ band are already featured in some mixers.

    CROSSFADE ON STEMS PROFILE!!! YEAHHHHHH!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    It would be a world first to apply trimming from a crossfader to STEMS where heavy trimming to drums & bass to keep the mix under the ceiling while also lightly trim mids and highs to maintain crisp clarity across the transition.

    In the above I’ve manipulating gain on the drum stems of both tracks for maximum presence under the ceiling as well as the melody intro (the synth) of blue monday.

    New Order Blue Monday 1983 Original 12”: Drums: starting at -4.2 db rising to 0db while also starting high eq at +1.7 db and hovering at +0.8db then returning to 0db

    Lonnie Gorden - Happenin’ all over Again Original 1990 12” Drums Stem:

    Volume Reduction from 0dB to -5.6dB, High 0.8db constant across the track

    Where the volume reduction is full, you have the drums of new order jack-hammering along with the stutter effect of lonnie’s vocals “b-b-b-b-b-b-believe me” looped and singling along in harmony with the blue monday synth intro as it rises, resulting in a killer transition of a highly nostalgic pair of early-mid 90s dancefloor fillers.

    Getting the audible presence relative between both while keeping the drums of lonnie down to keep the combination of both sets of drums from pushing above the audible ceiling is crucial. This is with zero compression on the decks and without limiter enabled on the master output - keeping all under the audible ceiling.

    Remember Live performance DJ mixers don’t usually have compressors and limiters (limiters more-so to protect the very expensive and not usually quickly replaceable amps and speakers in venues) and unless you’ve got loud audio monitors to simulate live performance SPL levels, headphones aren’t going to make it obvious the mix is being over compressed & limited to the extent it sounds like crap. This will allow minor limiting to attack any rogue transition peaks back under the ceiling..

    Video of the Transition without compression, limiting or ceiling adjustment.

    Video uploaded in accordance with fair use provisions for the purposes of research and learning. Research or Study - ACC - INFO053

    LUFS before compression, limiting and ceiling adjustment

    SPREADSHEET EXAMPLE

    Each value can be calculated from general formulas above in a spreadsheet to create the csv file for a profile and imported into DJ studio, meaning users could create their own custom profiles and may go so far as to publish them on github to share as their own creations with others to use.

    Example:

    LEFT =COS((22/7)/2 * (C1))

    RIGHT =SIN((22/7)/2 * (C1))

    Column C (Starting at C1) holds the % for the position of the cross-fader, so C5 is the crossfader position for that row in the table.

    0% is far left, 100% is far right.

    XFADE

    LEFT

    RIGHT

    0%

    1

    0

    1%

    0.999877

    0.015714

    2%

    0.999506

    0.031423

    3%

    0.998889

    0.047125

    4%

    0.998025

    0.062816

    5%

    0.996915

    0.078491

    6%

    0.995558

    0.094146

    7%

    0.993956

    0.109778

    8%

    0.992108

    0.125383

    9%

    0.990016

    0.140958

    10%

    0.987678

    0.156497

    11%

    0.985097

    0.171998

    12%

    0.982273

    0.187456

    13%

    0.979206

    0.202868

    14%

    0.975897

    0.21823

    15%

    0.972348

    0.233538

    16%

    0.968558

    0.248788

    17%

    0.964529

    0.263977

    18%

    0.960262

    0.2791

    19%

    0.955758

    0.294155

    20%

    0.951017

    0.309137

    21%

    0.946042

    0.324043

    22%

    0.940834

    0.338869

    23%

    0.935393

    0.353611

    24%

    0.929721

    0.368266

    25%

    0.923819

    0.382829

    26%

    0.917689

    0.397299

    27%

    0.911333

    0.41167

    28%

    0.904752

    0.425939

    29%

    0.897947

    0.440104

    30%

    0.89092

    0.454159

    31%

    0.883674

    0.468103

    32%

    0.876209

    0.481931

    33%

    0.868528

    0.49564

    34%

    0.860633

    0.509226

    35%

    0.852525

    0.522687

    36%

    0.844206

    0.536019

    37%

    0.835679

    0.549218

    38%

    0.826946

    0.562282

    39%

    0.818008

    0.575207

    40%

    0.808868

    0.58799

    41%

    0.799529

    0.600627

    42%

    0.789992

    0.613117

    43%

    0.78026

    0.625455

    44%

    0.770336

    0.637638

    45%

    0.760221

    0.649664

    46%

    0.749919

    0.66153

    47%

    0.739431

    0.673232

    48%

    0.728761

    0.684768

    49%

    0.717911

    0.696135

    50%

    0.706883

    0.70733

    51%

    0.695681

    0.718351

    52%

    0.684307

    0.729194

    53%

    0.672765

    0.739857

    54%

    0.661056

    0.750337

    55%

    0.649184

    0.760632

    56%

    0.637151

    0.770739

    57%

    0.624961

    0.780656

    58%

    0.612617

    0.79038

    59%

    0.600122

    0.799909

    60%

    0.587478

    0.80924

    61%

    0.57469

    0.818371

    62%

    0.561759

    0.827301

    63%

    0.54869

    0.836026

    64%

    0.535485

    0.844545

    65%

    0.522148

    0.852855

    66%

    0.508682

    0.860954

    67%

    0.495091

    0.868841

    68%

    0.481377

    0.876514

    69%

    0.467544

    0.88397

    70%

    0.453596

    0.891207

    71%

    0.439536

    0.898225

    72%

    0.425367

    0.905021

    73%

    0.411094

    0.911593

    74%

    0.396718

    0.91794

    75%

    0.382245

    0.924061

    76%

    0.367678

    0.929953

    77%

    0.353019

    0.935616

    78%

    0.338274

    0.941048

    79%

    0.323445

    0.946247

    80%

    0.308536

    0.951213

    81%

    0.293551

    0.955943

    82%

    0.278493

    0.960438

    83%

    0.263367

    0.964696

    84%

    0.248175

    0.968715

    85%

    0.232923

    0.972495

    86%

    0.217613

    0.976035

    87%

    0.202249

    0.979334

    88%

    0.186835

    0.982391

    89%

    0.171375

    0.985206

    90%

    0.155872

    0.987777

    91%

    0.140332

    0.990105

    92%

    0.124756

    0.992187

    93%

    0.10915

    0.994025

    94%

    0.093517

    0.995618

    95%

    0.07786

    0.996964

    96%

    0.062185

    0.998065

    97%

    0.046494

    0.998919

    98%

    0.030791

    0.999526

    99%

    0.015081

    0.999886

    100%

    -0.00063

    1

  • Dominic

    •

    Dec 20, 2023

    One thing that would be really useful in this respect is to have a tool that will snap to 1\/4 1\/8 or whatever and easily draw a rectangle the envelope in 1 click instead of 4 fiddly ones as shown.

    i think cable guys shaperbox has some good drawing tools like this.