Accesso rapido:  

Forum: Old versions

Topic: Virtual DJ6 and Vestax VCI-300 (genelar topic) - Page: 2

Questa parte dell'argomento è obsoleta e potrebbe contenere informazioni obsolete o errate

guys im testing the vdj 6 and i cant select the vci 300 sound card , you guys say the sound is native but i cant even play the music, please give me some feedback on how to make the vci 300 work with sound
thanks
 

Inviato Sat 06 Jun 09 @ 12:22 pm
@ Cioce

Why is the quote button there then? I am updating questions that I asked previously in forum, or answering specific questions that another member wrote, isn't that the point of "quoting".....please enlighten me so I have better forum etiquette.....
 

Inviato Sun 07 Jun 09 @ 2:09 am
anyone tried the vci-300 with 6.01? Is it any better? have all of the issues been resolved?

<waiting to buy it>
 

Inviato Sun 07 Jun 09 @ 8:58 am
cstollPRO InfinityMember since 2004
djbeware wrote :
@ Cioce

Why is the quote button there then? I am updating questions that I asked previously in forum, or answering specific questions that another member wrote, isn't that the point of "quoting".....please enlighten me so I have better forum etiquette.....


But don't quote back to back to back posts ... the whole thread is about your topic .. you don't need to quote every time you reply unless you are drawing attention to 1 specific item from a previous post ... the thread gets very hard to read with all the quote blocks that basically is the whole thread.
 

Inviato Sun 07 Jun 09 @ 9:05 am
in his defense, the reply button is missing for in some threads so the only way he can reply is to QUOTE and delete the text
for example, I cant even post in the beta controllers thread and that is why I am posting here!


back to my question
is the vci-300 fully fixed with 6.01? Looking to go to my local sam ash TODAY and get one but need confirmation it is 100%
 

Inviato Sun 07 Jun 09 @ 9:17 am
WirelessDJ wrote :

is the vci-300 fully fixed with 6.01? %


no
 

Inviato Sun 07 Jun 09 @ 10:15 am
thank you for update!

U saved me 2 hours of driving

I will wait.
 

Inviato Sun 07 Jun 09 @ 11:03 am
Ok will do for now on, I will take it easy on the quoting :) ........anyway much more importantly:

Can we get some help on mapping the jogs correctly on VDJ 6.01 with the VCI-300? What parameters can we use to have them mapped so they work correctly? Is it even possible? I can not seem to get rid of the delay when I have them in vinyl mode, jog or bending mode is fine.
 

Inviato Sun 07 Jun 09 @ 2:55 pm
yes...thats th problem..vdj can't read theHID middi signal..that y itch wrks so well with the controller....no is this the best we gonna se from vdj and vci 300, unless they support HID middi.?
 

Inviato Mon 08 Jun 09 @ 12:36 pm
I not sure about that, in the list of updates it specifically quotes "14-bit MIDI support"

Can someone from Atomix please confirm this, perhaps we are interpreting the support of these particular device incorrectly?

If it can be done can we have some info on how to get it done?
 

Inviato Mon 08 Jun 09 @ 10:25 pm
cstollPRO InfinityMember since 2004
From our online documentation for building a definition file to support complex controllers ...
http://www.virtualdj.com/wiki/ControllerDefinitionMIDI.html

Jog Wheels
A jog wheel is defined by a <jog> element, with the following properties:
- cc: the MIDI cc
- inverted: (optional) set to "true" if the jog is inverted
- zero: set the cc value that represents zero. For a jog that sends 0x01 for forward movement and 0x7F for rewind, set this to "0" (default). For a jog that sends 0x41 for forward movement and 0x3F for rewind, set this to "0x40".
- full: set to the number of steps sent while performing a full rotation (by default 128)

example:
<jog cc="0x24" name="JOGWHEEL" deck="1" full="512" />


If the jog wheel sends messages with its absolute position, you can defines it with a <fulljog> element, with the following properties:
- cc: the MIDI cc
- ccmsb: (optional) the MIDI cc of the MSB (for 14-bit MIDI)
- inverted: (optional) set to "true" if the jog is inverted
- full: set to the number of steps sent while performing a full rotation (by default 128)
- max: (optional) specifies the value at which the jogwheel wraps
- mask: (optional) set a bitmask to apply to the cc value
 

Inviato Mon 08 Jun 09 @ 10:35 pm
Ok so maybe I am not understanding how this works then, maybe if you can clarify this CSTOLL.....

We have "native" support for the VCI-300 out the box and we have a definition file for the controller already available for the VCI-300, that is provided by Atomix (which we can not actually see from I have seen so far, so the support must be built into the actual software). So is what you are saying we need to make a new controller definition file to support the high speed MIDI, as it is not already built into to the one that is provided from Atomix "out the box"?

Also on the same topic, can we have multiple "controller" and "mapper" files for the same device? For example I tried creating my own "mapper" file for the VCI-300 and saved it in the Mapper folder with a different name from the one that comes from Atomix, but actually in VDJ my file was not available as a selection, so I ended up having to make changes in the one that came from Atomix
 

Inviato Mon 08 Jun 09 @ 10:51 pm
cstollPRO InfinityMember since 2004
First there is no such thing as 'native' with V6 ... there are definitions that support the controller that is embedded in the install or that can reside in the Devices folder of the My Documents/VirtualDJ structure. The definitions can be built by the manufactures or a VirtualDJ user. With the assistance of manuafactures, Atomix Staff, Teamers and VIPs - the VirtualDJ community got 41 defined controllers at release. A couple of those controllers were still not complete that were being worked on by VIPs. Then there is the Mapper file that assigns the 'actions' to the defined controls of found in the definition file.

There have been posts in this thread that the definition is still being worked on for the VCI-300 .... and for what is embedded is quite amazing. There are VIPs that have been working tirelessly on trying to give the community support for this controller. This is what happens when the manufacture has no interest in doing it for the consumers of their gear.

I don't have a 300 ... but I have a VCI-100 and wrote the definition and mapper for that controller ... it was a pain in the A$$ ... Vestax engineering SUCKS big dog ... why do you think Ean Golden at djtechtools - ripped it down and came out with firmware upgrades himself ?

Unfortunately this type of 'second party' re-engineering won't probably happen with the 300 ... so it's been 1 week since release and within a couple days of that got an update that gave you a 98% solution ... I think all can be a bit more patient with the VIPs that are working this and trying to get it all together ...

As for your 'mapper' file ... you don't externally create your own mapper file ... all mapping is done in VirtualDJ. If a 'default' definition with mapper is embedded in the application ... then you just modify the existing mapping. As the manual states there is a 'return to defaults' button that can put things back to the original released settings. With each install .. if a mapper has been modified it will not be overwritten in future installs to maintain upgrade integrity.

The relationship of Controller to Definition to Mapper is 1 to 1 to 1 ...

So have patience with those that are working with you on the mapping and making this controller function ... if I had a VCI-300, I would help but I don't ...
 

Inviato Mon 08 Jun 09 @ 11:12 pm
cstoll wrote :
there are definitions that support the controller that is embedded in the install or that can reside in the Devices folder of the My Documents/VirtualDJ structure. The definitions can be built by the manufactures or a VirtualDJ user. With the assistance of manuafactures, Atomix Staff, Teamers and VIPs - the VirtualDJ community got 41 defined controllers at release. A couple of those controllers were still not complete that were being worked on by VIPs. Then there is the Mapper file that assigns the 'actions' to the defined controls of found in the definition file.


I totally understand your explanation but I am still not understanding one key thing. Is the currently provided definition of the VCI-300 that is embedded into VDJ6 include support for the high speed midi for the jogs? Since as far as I understand the JOGS are defined because I am successfully able to assign some type of action via the mapper file, so i guess my question is, is the problem the definition or the the action I am assigning to the jogs in the mapper file?

If its the definition, you are saying we can wait for it to be done or build our own, and subsequently use the exsisting mapper file or create a new mapper file based upon the device definition, if its the mapper file that is the issue then again we can adjust the one currently provided but maybe I am using the wrong action or parameters with that action.

cstoll wrote :
As for your 'mapper' file ... you don't externally create your own mapper file ... all mapping is done in VirtualDJ. If a 'default' definition with mapper is embedded in the application ... then you just modify the existing mapping. As the manual states there is a 'return to defaults' button that can put things back to the original released settings.


Totally understand this but.......maybe its just me but I don't like the actual mapping interface, I find it a bit cumbersome, so I have been editing my mapper file in a text editor, as I am more comfortable with doing it this way, plus it would be nice to have different mappings for the same controller.

Regardless of everything thanks for clarifying......just my opinion but if this type of info was available before (perhaps it is and I overlooked it, my bad) then I think a lot less post from people wondering why there controller is not working how they expected it to, as there is obviously some misunderstanding of the statement:

"By default, VirtualDJ comes preinstalled with an impressive list of over 40 different USB controllers, already fully mapped and ready to be used plug-and-play"

My perception of this statement was since the VCI-300 is listed it would be fully working at the time of release
 

Inviato Mon 08 Jun 09 @ 11:57 pm
dj kabsPRO InfinityMember since 2004
Hi

After four days of mapping from the VDJ VCI-300 mapping xml file

* main changes made

monitor_select > param_invert & headphone_mix

vu_meter_left > deck 2 get level_left
vu_meter_right > deck 1 get level_right


* issues

scratch_A > deck 1 vinyl_mode
scratch_B > deck 2 vinyl_mode
led_scratch > vinyl_mode ? on : off
when activated is on both decks cannot be done separately

censor > dump while_pressed
led_censor > dump blink
when the button is released the deck is still on dump mode
no issue when is done with reverse

we cannot map the:
- MIC level
- C.F curve
- I.F curve
- Master level


*Issue with the jog
I try to make to jogs work in the pitch bend mode first

jog > scratch_wheel +0.2 & pitch_bend while_pressed

works but only for forward rotations
I do not know how to make an elaborated script which compare each step of the jog regarding if it's a forward or a backward rotation

the VCI-300 jog send values from 0 to 127
0 to 127 for forward rotation
127 to 0 for backward rotation
full rotation of the jog it's done by 13 cycles, 13 times 0 to 127 for forward full rotation and 13 times 127 to 0 for backward full rotation
for VDJ script a full rotation is scratch_wheel +1.0

the script can be this way:

n for each MIDI pulse
A for the number of VCI-300 cycles converted into the number of VDJ full roration

set %rotation
%rotation(n) = get parameter(jog)

if %rotatation(n-1) smaller than %rotation(n) then
jog = scratch_wheel +A & pitch_bend
end if

if %rotation(n-1) greater than %rotation(n) then
jog = scratch_wheel -A & pitch_bend
end if

It's not the only solution but I think it's the good one to work on it I also think that this issue can be the same for the NS7

VDJ TEAM we need your help, :-)

* sorry if my English is bad I'm French

Keep mixing


 

Inviato Tue 09 Jun 09 @ 4:43 am
try mine....a little more functionality :) same issue with jogs though....

<?xml version="1.0" encoding="UTF-8"?>

<mapper device="VCI300" author="DJ Beware" description="Vestax VCI-300" version="601" date="06/06/2009">

<map value="CROSSFADER" action="crossfader" />

<map value="VOLUME" action="volume" />

<map value="PITCH" action="pitch_slider" />

<map value="GAIN" action="gain" />

<map value="HIGH" action="eq_high &amp; param_equal 0% ? eq_kill_high 1 : eq_kill_high 0" />

<map value="MED" action="eq_mid &amp; param_equal 0% ? eq_kill_mid 1 : eq_kill_mid 0" />

<map value="LOW" action="eq_low &amp; param_equal 0% ? eq_kill_low 1 : eq_kill_low 0" />

<map value="LED_AUTO_TEMPO" action="action_deck 1 ? var $shift_a ? deck 1 sync while_pressed : deck 1 beatlock : var $shift_b ? deck 2 sync while pressed : deck 2 beatlock" />

<map value="AUTO_TEMPO" action="action_deck 1 ? var $shift_a ? deck 1 sync while_pressed : deck 1 beatlock : var $shift_b ? deck 2 sync while_pressed : deck 2 beatlock" />

<map value="CUE" action="cue_button" />

<map value="PLAY" action="play_pause" />

<map value="JOG" action="param_multiply 1 &amp; scratch_wheel +1.0" />

<map value="JOG_TOUCH" action="action_deck 1 ? var $scratch_a ? deck 1 vinyl_mode 1 &amp; scratch_wheel_touch : vinyl_mode 0 &amp; scratch_wheel_touch : var $scratch_b ? deck 2 vinyl_mode 1 &amp; scratch_wheel_touch : vinyl_mode 0 &amp; scratch_wheel_touch" />

<map value="PFL" action="var $scroll ? load : select" />

<map value="UP" action="browser_scroll -1" />

<map value="DOWN" action="browser_scroll +1" />

<map value="SELECT" action="browser_window &quot;folders,songs&quot; +1" />

<map value="SCROLL" action="toggle $scroll" />

<map value="LED_SCROLL" action="toggle $scroll" />

<map value="PITCH_SHIFT_+" action="pitch_bend +2% 300ms" />

<map value="PITCH_SHIFT_-" action="pitch_bend -2% 300ms" />

<map value="VU_METER_LEFT" action="get vu_meter_left" />

<map value="VU_METER_RIGHT" action="get vu_meter_right" />

<map value="MONITOR_SELECT" action="param_invert &amp; headphone_mix" />

<map value="SHIFT_A" action="down ? set $shift_a 1 : set $shift_a 0" />

<map value="SHIFT_B" action="down ? set $shift_b 1 : set $shift_b 0" />

<map value="LED_SHIFT_A" action="var $shift_a" />

<map value="LED_SHIFT_B" action="var $shift_b" />

<map value="LED_AUTO_LOOP" action="loop" />

<map value="LEFT" action="browser_folder" />

<map value="RIGHT" action="browser_folder" />

<map value="CUE_1_IN_A" action="var $shift_a ? deck 1 delete_cue 1 : deck 1 hot_cue 1" />

<map value="CUE_2_IN_A" action="var $shift_a ? deck 1 delete_cue 2 : deck 1 hot_cue 2" />

<map value="CUE_3_IN_A" action="var $shift_a ? deck 1 delete_cue 3 : deck 1 hot_cue 3" />

<map value="OUT_1_A" action="deck 1 loop_in" />

<map value="OUT_2_A" action="deck 1 loop_out" />

<map value="OUT_3_A" action="deck 1 reloop" />

<map value="CUE_1_IN_B" action="var $shift_b ? deck 2 delete_cue 1 : deck 2 hot_cue 1" />

<map value="CUE_2_IN_B" action="var $shift_b ? deck 2 delete_cue 2 : deck 2 hot_cue 2" />

<map value="CUE_3_IN_B" action="var $shift_b ? deck 2 delete_cue 3 : deck 2 hot_cue 3" />

<map value="OUT_1_B" action="deck 2 loop_in" />

<map value="OUT_2_B" action="deck 2 loop_out" />

<map value="OUT_3_B" action="deck 2 reloop" />

<map value="AUTO_LOOP_A" action="loop" />

<map value="AUTO_LOOP_B" action="loop" />

<map value="LOOP_HALF_A" action="deck 1 loop_half" />

<map value="LOOP_DOUBLE_A" action="deck 1 loop_double" />

<map value="LOOP_HALF_B" action="deck 2 loop_half" />

<map value="LOOP_DOUBLE_B" action="deck 2 loop_double" />

<map value="CENSOR" action="action_deck 1 ? var $shift_a ? deck 1 reverse while_pressed : deck 1 dump while_pressed : var $shift_b ? deck 2 reverse while_pressed : deck 2 dump while_pressed" />

<map value="LED_CENSOR" action="action_deck 1 ? var $shift_a ? deck 1 reverse while_pressed : deck 1 dump while_pressed : var $shift_b ? deck 2 reverse while_pressed : deck 2 dump while_pressed" />

<map value="SCRATCH_A" action="toggle $scratch_a" />

<map value="SCRATCH_B" action="toggle $scratch_b" />

<map value="KEYLOCK" action="action_deck 1 ? var $shift_a ? deck 1 pitch_reset 5% : deck 1 key_lock : var $shift_b ? deck 2 pitch_reset 5% : deck 2 key_lock" />

<map value="LED_KEYLOCK" action="action_deck 1 ? var $shift_a ? deck 1 pitch_reset 5% : deck 1 key_lock : var $shift_b ? deck 2 pitch_reset 5% : deck 2 key_lock" />

<map value="LED_SCRATCH" action="action_deck 1 ? toggle $scratch_a : toggle $scratch_b" />

</mapper>

 

Inviato Tue 09 Jun 09 @ 4:58 am
cstollPRO InfinityMember since 2004
dj kabs wrote :

jog > scratch_wheel +0.2 & pitch_bend while_pressed

works but only for forward rotations
I do not know how to make an elaborated script which compare each step of the jog regarding if it's a forward or a backward rotation

Using +0.2 -- you have set the jog to a 'forward only movement. Numeric parameters should not be used if you want positive and negative movements with an encoder/knob/slider/jog.

dj kabs wrote :
the VCI-300 jog send values from 0 to 127
0 to 127 for forward rotation
127 to 0 for backward rotation
full rotation of the jog it's done by 13 cycles, 13 times 0 to 127 for forward full rotation and 13 times 127 to 0 for backward full rotation
for VDJ script a full rotation is scratch_wheel +1.0

Incorrect the VCI-300 sends 16000+ positions -- it's 14-bit not 7-bit.
 

Inviato Tue 09 Jun 09 @ 9:51 am
cstollPRO InfinityMember since 2004
reply to djbeware ...

Ok, it's long ... but a lot needs to be explained ...

First and foremost, just from what I see above there is way to much thought process going into mapping these items. And very little research or attempt to comprehend the mapper engine. Will explain more below ...

djbeware wrote :
I am still not understanding one key thing. Is the currently provided definition of the VCI-300 that is embedded into VDJ6 include support for the high speed midi for the jogs?

First the term "High Speed MIDI" is a misnomer, it's High Resolution or 14-bit .. meaning instead of sending the traditional 128 (0-127) possible steps (7-bit), two HEX values are used which gives you 128x128 possible steps or 14-bit. The VCI-300 uses this concept, however; they didn't follow the rules and this is where the issue comes in for other software vendors.

djbeware wrote :
Since as far as I understand the JOGS are defined because I am successfully able to assign some type of action via the mapper file, so i guess my question is, is the problem the definition or the the action I am assigning to the jogs in the mapper file?

So why not, look at the VCI-100 mapping and use that for the JOG_TOUCH and JOG keys in the VCI-300? The VCI-100 code works ...

djbeware wrote :
If its the definition, you are saying we can wait for it to be done or build our own, and subsequently use the exsisting mapper file or create a new mapper file based upon the device definition,

if its the mapper file that is the issue then again we can adjust the one currently provided but maybe I am using the wrong action or parameters with that action.

As said above, it's because people are over thinking and trying to make it more complicated than it really is. For example, a jog wheel should only be mapped either - jog_wheel or scratch_wheel
You have set -> param_multiply 1 &amp; scratch_wheel +1.0

Don't know why you are multipling the parameter but you are locking the wheel into a forward motion only by using +1.0 --> should only be scratch_wheel

Your JOG_TOUCH mapping -> action="action_deck 1 ? var $scratch_a ? deck 1 vinyl_mode 1 &amp; scratch_wheel_touch : vinyl_mode 0 &amp; scratch_wheel_touch : var $scratch_b ? deck 2 vinyl_mode 1 &amp; scratch_wheel_touch : vinyl_mode 0 &amp; scratch_wheel_touch

Why?.. the definition already defines 2 jogs with touch ... so why are you checking to see which jog is being used? As for the rest of your statement it is over thought ...

Here is what you should have ...

For your Scratch buttons -> <map value="SCRATCH_A" action="vinyl_mode" />
What happens is that when pushed it toggles the 2 modes of 1 (vinyl - default) or 0 (CD)
For your JOG_TOUCH -> scratch_wheel_touch
For your JOG -> scratch_wheel

Those 2 actions scratch_wheel and scratch_wheel_touch already have code built inside VirtualDJ for when the vinyl_mode is 1 or 0 to do what you are trying to accomplish in your mapping.

Your mapping is fighting against the built in code.

djbeware wrote :
I don't like the actual mapping interface, I find it a bit cumbersome,

Don't understand how? You select the key and enter the action for the key. And, you don't have to understand how to format the XML and don't take the risk of incorrectly formatting the XML.

djbeware wrote :
so I have been editing my mapper file in a text editor, as I am more comfortable with doing it this way,

Your option.

djbeware wrote :
plus it would be nice to have different mappings for the same controller.

You can, the difference is (just like other programs) you can't have multiple mappings loaded at the same time. You can save the files elsewhere and 'swap' them in and out of the Mapper folder before opening VirtualDJ. They don't have to have a specific filename - the name is of the XML is not the key, it is the ID inside the XML file is the key.



 

Inviato Tue 09 Jun 09 @ 9:52 am
now my question is why doesnt the mapper that comes with virtual dj6 have working jog wheels?
 

Inviato Tue 09 Jun 09 @ 6:01 pm
cstollPRO InfinityMember since 2004
sirkitbreaker wrote :
now my question is why doesnt the mapper that comes with virtual dj6 have working jog wheels?


Ok, if the jogs are not working for soon, I will have development pull the definition completely and leave it for user only implementation .... maybe that will be better ????
 

Inviato Tue 09 Jun 09 @ 6:54 pm
34%