Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Compatibility

Reply
 
Thread Tools Display Modes
Old 12-19-2014, 02:11 PM   #1
EricBismarck
Human being with feelings
 
Join Date: Jun 2014
Posts: 22
Default My Custom BCR/BCF 2000 Mixing Desk

Hi All -

I thought I would show off the mixing desk I put together.

I combined:

2 BCF 2000's
1 BCR 2000
1 SM Pro Audio Nano Patch + (for my Studio Monitors)
1 Cherry USB Programmable Keybad
1 Countour ShuttleXpress Jog/Shuttle control





All of the USB items are connected through a 4 port hub, then output to a USB Jack on the back.

All of the powered items share power through a single plug/switch on the back

And the inputs/outputs from the Nano Patch are wired out the back as well.
















I color coded the BCF's with alterating groups of colors. Then I wrote a ReaScript to recolor all of my tracks in reaper to match.

Went with blocks of 3, 3 and 2 on each controller. It makes it MUCH easier to figure out what track I am working with




Also - To get the BCF's/BCR's to line up. I had to do a bit of surgery to remove excess plastic after removing the front and sides.





Anyway - thought I would share! - If you have any questions on my setup, let me know!
EricBismarck is offline   Reply With Quote
Old 12-19-2014, 02:55 PM   #2
jpanderson80
Human being with feelings
 
jpanderson80's Avatar
 
Join Date: Nov 2011
Location: near Memphis, TN
Posts: 531
Default

Looks good.
I like the cables being hidden (AKA - Don't look behind my console or rack).
__________________
www.andersonmastering.com
jpanderson80 is offline   Reply With Quote
Old 12-20-2014, 12:09 AM   #3
technogremlin
Human being with feelings
 
technogremlin's Avatar
 
Join Date: Mar 2008
Location: Netherlands
Posts: 2,629
Default

Looks good. Case needs a bit of paint though

Quote:
Originally Posted by EricBismarck View Post
I color coded the BCF's with alterating groups of colors. Then I wrote a ReaScript to recolor all of my tracks in reaper to match.

Went with blocks of 3, 3 and 2 on each controller. It makes it MUCH easier to figure out what track I am working with
Aaah, I have to steal that trick for my US-2400
technogremlin is offline   Reply With Quote
Old 12-20-2014, 07:12 AM   #4
EricBismarck
Human being with feelings
 
Join Date: Jun 2014
Posts: 22
Default

Quote:
Originally Posted by technogremlin View Post
Looks good. Case needs a bit of paint though

Yeah - Overall, I am kind of unhappy with my skills. Especially the skill that requires me to cut a straight line.

This is version 1 I think. Probably gonna redo the whole thing next summer, so I skipped the paint job :-)

My ultimate goal is to add LCD Scribble Strips, and bar VU meters for each track. I am also thinking of ditching the BCR and adding a 3rd BCF.

Quote:
Aaah, I have to steal that trick for my US-2400
Coloring them in groups of 3's makes it insanely easy to figure out what track you are on! - I was toying with the idea for separate colors for each one, but, this is actually easier (because your brain can easily work with a group of 3 (left/middle/right)

The ReaScript I wrote re-colors the tracks in reaper to match, and I assigned it to a button on the first BCF.

Eric
EricBismarck is offline   Reply With Quote
Old 12-20-2014, 10:40 AM   #5
ashasha
Human being with feelings
 
ashasha's Avatar
 
Join Date: Jun 2013
Posts: 121
Default

Great layout. No problems with all of the BCF stuff working at the same time?
__________________
Just here to steal all of your knowledge
ashasha is offline   Reply With Quote
Old 12-20-2014, 03:44 PM   #6
EricBismarck
Human being with feelings
 
Join Date: Jun 2014
Posts: 22
Default

Quote:
Originally Posted by ashasha View Post
Great layout. No problems with all of the BCF stuff working at the same time?
I used the BCF mode for all of them. I started with a sysex I found somewhere on here, but then ended up reprogramming them with BCManager to suit my needs.

I run the 2 BCF's USB, and the BCR as a MIDI pass-through to the first BCF

Eric
EricBismarck is offline   Reply With Quote
Old 12-21-2014, 04:24 PM   #7
jico27
Human being with feelings
 
jico27's Avatar
 
Join Date: Oct 2009
Location: Paris / France
Posts: 429
Default

Hi

Great work!
I personnally have excatly the same devices as the ones you use. 2 BCFs for the tracks, connected individually to reaper via Klinke's plugin and a BCR for the plugins controls.


Quote:
Originally Posted by EricBismarck View Post
...Coloring them in groups of 3's makes it insanely easy to figure out what track you are on! - I was toying with the idea for separate colors for each one, but, this is actually easier (because your brain can easily work with a group of 3 (left/middle/right)

The ReaScript I wrote re-colors the tracks in reaper to match, and I assigned it to a button on the first BCF.

Eric

Would you upload your ReaScript for other peolple to use it (I'd be very glad to...)?

Regards

Last edited by jico27; 12-21-2014 at 05:22 PM.
jico27 is offline   Reply With Quote
Old 12-22-2014, 07:45 PM   #8
EricBismarck
Human being with feelings
 
Join Date: Jun 2014
Posts: 22
Default

Here are a few ReaScripts I use:


First - An include file with some functions (ek_reascript_functions.py)

Code:
from reaper_python import *

def ShowNamedPlugin(sPluginName, pTrack, create) :
	'''
	If named plugin not found and create is True, add it to track FX chain
	If track FX chain is hidden, float the plugin.
	If track FX chain is open, switch focus to the plugin if it isn't selected
	'''
	iPlugin =  RPR_TrackFX_GetByName(pTrack, sPluginName, create)
	if iPlugin > -1 :
		iSel = RPR_TrackFX_GetChainVisible(pTrack)

		if iSel == -1 : # FX chain hidden
			if RPR_TrackFX_GetOpen(pTrack, iPlugin) :
				RPR_TrackFX_Show(pTrack, iPlugin, 2) # 0 == hidechain, 1 == showchain, 2 == hide floating window, 3 == show floating window
			else :
				RPR_TrackFX_Show(pTrack, iPlugin, 3) # 0 == hidechain, 1 == showchain, 2 == hide floating window, 3 == show floating window
				
		elif iSel == -2 : # FX chain visible but no effect selected
			RPR_TrackFX_Show(pTrack, iPlugin, 1) # 0 == hidechain, 1 == showchain, 2 == hide floating window, 3 == show floating window
			
		else : # FX chain is visible
			
			if iSel != iPlugin :
				# Plugin is not selected, switch to and enable
				RPR_TrackFX_Show(pTrack, iPlugin, 1) # 0 == hidechain, 1 == showchain, 2 == hide floating window, 3 == show floating window

def EnableDisableNamedPlugin(sPluginName, pTrack, create) :
	iPlugin = RPR_TrackFX_GetByName(pTrack, sPluginName, create)
	if iPlugin > -1 :
		isEnabled = RPR_TrackFX_GetEnabled(pTrack,iPlugin)
		if isEnabled == 1 :
			RPR_TrackFX_SetEnabled(pTrack,iPlugin,0)
		else :
			RPR_TrackFX_SetEnabled(pTrack,iPlugin,1)

Next are a few script examples:

1. Enable/Disable ReaComp on the selected track(s)
Code:
import ek_reascript_functions

sPluginName = "ReaComp"
pProject = 0

# Show named plugin if it exists on any selected track
for i in range(RPR_CountSelectedTracks(pProject)) :
	pTrack = RPR_GetSelectedTrack(pProject, i)
	ek_reascript_functions.EnableDisableNamedPlugin(sPluginName, pTrack, False)
2. Float the ReaComp FX Window for selected track

Code:
import ek_reascript_functions

sPluginName = "ReaComp"
pProject = 0

# Show named plugin if it exists on any selected track
for i in range(RPR_CountSelectedTracks(pProject)) :
	pTrack = RPR_GetSelectedTrack(pProject, i)
	ek_reascript_functions.ShowNamedPlugin(sPluginName, pTrack, False)


Finally - Here is my "Recolor Tracks" plugin. I hardcoded the RGB values to match the colors I stuck onto my BCF's

I then assigned this script to a button on one of the BCF's. So when I add or rearrange tracks, I hit the button and everything is synced up:

Code:
def RGBToHTMLColor(rgb_tuple):
    # convert an (R, G, B) tuple to #RRGGBB """
    colorstring = '#%02x%02x%02x' % rgb_tuple
    # that's it! '%02x' means zero-padded, 2-digit hex values
    return colorstring

def HTMLColorToPILColor(colorstring):
    # converts #RRGGBB to PIL-compatible integers"""
    colorstring = colorstring.strip()
    while colorstring[0] == '#': colorstring = colorstring[1:]
    # get bytes in reverse order to deal with PIL quirk
    colorstring = colorstring[-2:] + colorstring[2:4] + colorstring[:2]
    # finally, make it numeric
    color = int(colorstring, 16)
    return color	
	
def PILColorToRGB(pil_color):
    # convert a PIL-compatible integer into an (r, g, b) tuple """
    hexstr = '%06x' % pil_color
    # reverse byte order
    r, g, b = hexstr[4:], hexstr[2:4], hexstr[:2]
    r, g, b = [int(n, 16) for n in (r, g, b)]
    return (r, g, b)
	
def RGBToPILColor(rgb_tuple):
    return HTMLColorToPILColor(RGBToHTMLColor(rgb_tuple))

	
import colorsys



trackcount = RPR_CountTracks(0)	
trackindex = 0

groupCount = 0


while trackindex < trackcount: 

	TRACK = RPR_GetTrack(0,trackindex)

	if groupCount <=2:
		New_rgb_tuple = (255, 255, 153)
	elif groupCount <=5:
		New_rgb_tuple = (102, 178, 255)
	elif groupCount <=7:
		New_rgb_tuple = (255, 204, 153)
	elif groupCount <=10:
		New_rgb_tuple = (153, 153, 255)
	elif groupCount <=13:
		New_rgb_tuple = (204, 255, 204)
	else:
		New_rgb_tuple = (255, 153, 153)


	New_Color = RGBToPILColor(New_rgb_tuple)
	RPR_SetTrackColor(TRACK, New_Color | 16777216)

	trackindex += 1

	groupCount += 1

	if groupCount > 15:
		groupCount = 0


And - Just so you can see some closeups, here are all of my button assignments:

First BCF





Second BCF






The BCR






The Cherry Keypad and ShuttleXPress





My stickers could use some more stickiness
EricBismarck is offline   Reply With Quote
Old 12-23-2014, 06:43 AM   #9
jico27
Human being with feelings
 
jico27's Avatar
 
Join Date: Oct 2009
Location: Paris / France
Posts: 429
Default

Yeah, nice try!

Do you also use a script to highlight one or the other group of eight tracks you're on in your BCFs?
jico27 is offline   Reply With Quote
Old 12-23-2014, 06:49 AM   #10
Iain
Human being with feelings
 
Iain's Avatar
 
Join Date: Jun 2013
Location: UK North West
Posts: 133
Default

Looks great, especially the glass of red wine.
__________________
Iain

www.iainpaterson.com
Iain is offline   Reply With Quote
Old 12-23-2014, 06:57 AM   #11
EricBismarck
Human being with feelings
 
Join Date: Jun 2014
Posts: 22
Default

Quote:
Originally Posted by jico27 View Post

Do you also use a script to highlight one or the other group of eight tracks you're on in your BCFs?
I have a script (found it somewhere on here, makes use of SWS) that will hide all tracks except for the bank I am working with (16 at a time) assigned to the preset switching buttons.

Then a "show all tracks" button that will show everything when I want to.


Quote:
Looks great, especially the glass of red wine
Thanks Iain! - Interesting side note: I made that wine! - Comes from my own grapes - Grown right here in North Dakota! I make about 2 cases a year.

Eric
EricBismarck is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 12:03 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.