ncmixer

ncurses audio mixer for DJ'ing
git clone git://git.2f30.org/ncmixer.git
Log | Files | Refs | README | LICENSE

README (1815B)


     1 VISUAL
     2 
     3   [CH0:*] [MON: ]                                           [CH1: ] [MON: ]
     4                                step: 0.062500
     5                                pos: -0.187500
     6 
     7   ----------------------------|||-----+------------------------------------
     8   ||||||||                                                         ||||||||
     9                                  master: on
    10                                 monitor: off
    11                                   onair: off
    12 
    13 
    14 KEYS
    15 
    16     h,l   -- move crossfader left/right by one step
    17     j,k   -- halve/double the step amount
    18     ^H,^L -- snap to leftmost, center, rightmost positions
    19     q,w   -- decrease, increase level of channel 1
    20     o,p   -- decrease, increase level of channel 2
    21     1     -- toggle monitor on channel 1
    22     2     -- toggle monitor on channel 2
    23     ^A    -- toggle on-air state
    24 
    25 
    26 CONFIG
    27 
    28 The mixer daemon works with the sndio audio server.  For best performance,
    29 you should avoid resampling at the sndio layer.  The mixer itself uses a
    30 sampling rate of 44100Hz, so ideally you run:
    31 
    32     sndiod -r44100 -f rsnd/0 -r44100 -f rsnd/1
    33 
    34 
    35 CAVEATS
    36 
    37 The correct way to do movement is to get keyboard press and release events,
    38 and move the crossfader at the set speed in the meantime.  We can emulate this
    39 assuming the default auto-repeat settings for X: a delay of 660ms and a rate
    40 of 25Hz:
    41 
    42     xset q | grep repeat
    43 
    44 To set these options:
    45 
    46     xset r rate 660 25
    47 
    48 initial gap: 660ms
    49 subsequent gaps: 1000 / 25 = 40ms
    50 state machine:
    51 
    52 if current key is right:
    53     if previous key is not right:
    54         start crossfade to right for 660ms
    55     if previous key is right and still crossfading:
    56         continue crossfade to right for another 40ms
    57 
    58 Currently we don't do anything about that.  We suffer the initial 660ms delay
    59 and then we move by one step every 40ms.