Quick Sign In:  

Forum: VirtualDJ Plugins

Topic: Karaoke Plugin 2.0? - Page: 3

This part of topic is old and might contain outdated or incorrect information

blckjckPRO InfinityMember since 2008
Agreed, mapping the key change to my controller makes it easy to change per track.
 

Posted Sun 17 Mar 13 @ 10:22 am
For best sound quality when changing key, make sure that you have selected Advanced Stretching in CONFIG -> Performances.
 

Posted Sun 17 Mar 13 @ 11:52 am
SBDJPRO Infinity Member since 2006
Also note that using VDJs built in key changer is far preferable to using the effect plugin which is effectively now obsolete.
 

Posted Sun 17 Mar 13 @ 12:24 pm
The difficulty with the lack of a good karaoke plugin is that the KJ has to _remember_ to activate the key change plugin for the singer that wanted it, whenever their turn finally comes. A good karaoke software lets you store the key change in the singer queue, and activates it automatically when they come up, and deactivates it when that singer is done.

The 2.0 plugin (yes, I'm still working on it, when school isn't consuming all of my time) incorporates memory for key and pitch change. It not only saves the alterations to the singer queue, but also saves them in the singer's history, so they are restored automatically if you pull a song from there.
 

Posted Sun 17 Mar 13 @ 12:29 pm
SBDJPRO Infinity Member since 2006
Don't use the key change plugin. Use the inbuilt function please.

I was replying to the comment about the 'solid key change ability' not the automation thereof.
 

Posted Sun 17 Mar 13 @ 12:42 pm
Hi folks

I've created a skin and a possible alternative way of using VDJ for karaoke with a singer rotation without the need for plugins...
Not sure if it is of interest as it is by no means perfect.. but I believe would make life easier for KJ's..

I haven't tested it out 'live' because I currently use a different program to host/dj (But i would love to ditch it, cos it isn't great! .. I won't mention the products name but i can honestly say it's the worst £66 Ive ever spent, recordcases? PAH!)

The reason for creating my skin was to see what currently could be done with VDJ and I quite enjoyed tinkering around with it too..

I am almost positive that when Elindsey releases the plugin mentioned above I will plump for VDJ!

I've posted my skin and it's under review at the mo if anyone is interested at all?

here are my Singer Rotation Ideas:
My skin uses a combination of A Virtual folder (called 'singerlist') and the sidelist for a rotation and the Idea of using 'Field 1' in the file info tag for a singers name. ( I changed Field 1 to Singer Name in the browser by opening 'English.Xml' in the languages folder and renaming the entries for 'User 1' from 'Field 1' to 'SINGER NAME' then arranged the column headers in VDJ to view that column.
(the reason for a virtual folder is to store the list of singers in the event of a crash and for history purposes..)

In my skin there is an 'Add to new' button - this does the following: it adds the selected song to the sidelist & singerlist folder and opens up the fileinfos box Type the Singers name into Field 1 and click ok.

The skin also has any standard things I could think were relevant for karaoke:
KEY CHANGE buttons +/- in semitones, tempo (song speed) slider and+/- buttons, VIDEO DELAY selection - for when karaoke lyrics are out of sync...

Not sure if this link will be available til the skin is reviewed but here goes:
http://www.virtualdj.com/addons/15795/Virtual_Karaoke.html.


 

Posted Sun 24 Mar 13 @ 8:35 pm
JoeyKJPRO InfinityMember since 2008
I'm basically doing the same thing, but using SBDJ scrolltext for the singers name instead of the artist which scrolls at the bottom screen and VF for venues then subfolders for singers, but the best way for key change and singers history would be to keep a seperate database that a plugin would work from.
Now the tempo and a lyric scroll control would also be nice, but that too would also have to be written back to a karaoke database. I don't think VDJ has a scroll sync feature though? This also is standard among other things...
 

Posted Tue 26 Mar 13 @ 2:02 pm
when you say scroll sync feature do you mean video offset? ... If so Video_delay works just fine :D
I set up a series of button which set the video delay in 250ms increments..
here's a screenshot of my skin to give you an idea of what i've done.
http://www.deejayportal.com/images/jdownloads/screenshots/virtkara_0.JPG

An external database would be great to store history etc... but from what i gather the plugin really doesn't have to be all singing all dancing to beat other "hosters" it just has to be reliable :D
 

Posted Tue 26 Mar 13 @ 3:56 pm
JoeyKJPRO InfinityMember since 2008
Okay, I see what you've done is make eight incremental steps -/+ either way which lines up the video rendering with the music track to keep it all in sync, makes sense.

Wonder if this could be done with a script like, holding down the Alt + key to increment @ 250ms increasing it untill you get it right And the Alt - key decreasing it @ 250ms down till you get it right, is this possible now, and what would be the right script to enable me to do this?

Thanks,

Joey...
 

Posted Tue 26 Mar 13 @ 6:49 pm
try adding these to your mappers :
key: ALT+NUM+
action: video_delay -250ms
and
key: ALT+NUM-
action: video_delay +250ms

might be worth adding a key to reset it
eg:
key: ALT+DELETE
action: video_delay 0ms


*edit
This woks for me.. you can change the number if you want a less harsh increment :D
 

Posted Tue 26 Mar 13 @ 7:13 pm
JoeyKJPRO InfinityMember since 2008
Yeah, thanks for that, will have to play with it first and work from there. I also was looking for a way to toggle incrementally some presets within each script line, one set for + & one -

Meaning each toggle of the script would increase/decrease to the next preset number like let say 1=250ms 2=500ms 3=750ms and so on..
 

Posted Tue 26 Mar 13 @ 8:46 pm
 

Posted Tue 26 Mar 13 @ 9:11 pm
JoeyKJPRO InfinityMember since 2008
Yes, that is more intuittive..
 

Posted Tue 26 Mar 13 @ 11:03 pm
JoeyKJPRO InfinityMember since 2008
JoeyKJ wrote :
Yeah, thanks for that, will have to play with it first and work from there. I also was looking for a way to toggle incrementally some presets within each script line, one set for + & one -

Meaning each toggle of the script would increase/decrease to the next preset number like let say 1=250ms 2=500ms 3=750ms and so on..


Anyone care to share with how to accomplish the above with a script if possible?
 

Posted Tue 26 Mar 13 @ 11:08 pm
Disclaimer: I'm writing this from bed, it's 1:43 AM on Wednesday, and I woke up at 7:15 AM on Monday, just finished midterms after driving 5 hours to pick someone up from the airport. Also, I don't have my computer in front of me. If you're brave, continue reading.

I don't think VDJscript includes native support for arrays, vectors, tables, or anything of the sort, so you would probably have to implement manually one of two ways. Ideally, come up with an algorithm that models the data you want to reflect--the 0,250,500,750,1000 values would be a linear equation v=250*n. It doesn't have to be linear; many data models exist: logarithmic, exponential, polynomial, sinusodial, etc. This is the most elegant solution.

Alternatively, you can store an index (n), and use conditionals to specify values (I am pretty sure VDJ supports ternary operator or something similar). It's very unlikely that my memory works well enough right now for this to work, but it ought to give you the idea:
n = n + 1 && v = n == 1 ? 10 : n == 2 ? 30 : n == 3 ? 60 : n == 4 ? 90 : n == 5 ? 120 : n == 6 ? 180 : n == 7 ? 300 : 0
The n = n + 1 increments the index value, then the rest of the command assigns it to v using ternary operators (equivalent to many if-then-else's). The final ternary operator 'else' part sets v = 0 for unexpected ranges of n (including 0).

I would suggest you also investigate how the pitch change dial is implemented--it snaps to certain values, and I'm not sure how it does it but it may be illuminating. The % values it shows in the tooltip during use are very interesting.

I can perhaps be of more use some time tomorrow after I put myself in a coma for a while.
 

Posted Wed 27 Mar 13 @ 12:54 am
n/t -- fat fingers hit reply by mistake
 

Posted Wed 27 Mar 13 @ 1:02 am
JoeyKJPRO InfinityMember since 2008
Okay interesting, I used the 250ms as an example. Rest the brain and see what comes out of the oven tomorrow...

Thanks,
Joey...
 

Posted Wed 27 Mar 13 @ 10:59 am
how do I write and put on the screens my next inger on karaoke please.
 

Posted Wed 27 Mar 13 @ 2:15 pm
graham1958 wrote :
how do I write and put on the screens my next inger on karaoke please.


Use the Karaoke video effect plugin. It comes installed by default with VirtualDJ.
 

Posted Wed 27 Mar 13 @ 5:37 pm
JoeyKJ wrote :
Anyone care to share with how to accomplish the above with a script if possible?

Played around with the skin I'm designing for mine, and here's what I've got for you. Wish I had a better solution.

Built-in VirtualDJ values (video_delay) for example, can easily be modified in incremental steps by actions such as video_delay +250ms and video_delay -250ms. You have most likely already figured this out.

Working with your own variables in VDJscript is a bit more difficult. I have found the command cycle '$myvar' 15 and cycle '$myvar' -15 of interest. This takes a global variable ($ = global, no $ = deck local) named myvar and increments or decrements it. In other words, it counts from 0 to 14 (or 14 to 0 for the second command) and then wraps. Unfortunately there does not appear to be any way to specify the offset value.

As far as the video delay, I would recommend implementing this using a slider of some sort, since this is typically the way VirtualDJ does things. You can use all sorts of different representations, it makes for good user feedback, it's not as limited as fixed values, and you can enable a wider adjustment range using a smaller area of screen real estate.

In light of this research, I think I will have to approach the particular problem I was having a little differently. Instead of trying to manipulate the value directly from the skin, I will probably just issue commands to my plugin when certain buttons are pressed, and manipulate the value from within my code. Maybe I'll find a better way before I'm done.
 

Posted Thu 28 Mar 13 @ 2:15 am
51%