Series: Scripting Virtual DJ / Introduction / #1 [ENG/DEU]

in Music Production25 days ago (edited)

virtual-dj-article-series-01-scripting-01-introduction.png

[English:]

This is the introduction of a small series of articles on “Scripting Virtual DJ”. The aim of the series is to explain scripting within Virtual DJ, show script examples and at the same time give a few tips and tricks on the subject. I will organize the series in a collection and name the titles of the individual sections accordingly.

There are a few explanations and script examples here and there on the Internet. However, these are scattered around quite confusingly, which makes research and learning quite difficult. I also considered whether to position the content on my website or on the Hive blockchain and decided in favor of the Hive blockchain to give it more relevance. And since the topic of “Scripting Virtual DJ” is definitely aimed at tech-savvy people who might also be interested in the Hive blockchain, as well as their music communities, I decided to use the Hive blockchain

In this first article, I would like to explain the basics of what this is all about and outline a few lines of thought. And since these articles are on the Hive blockchain - and not in a magazine for DJs - I would also like to briefly discuss what “Virtual DJ” is.

Virtual DJ

Virtual DJ is a software for playing music and is aimed at DJs in the hobby sector, but also in the professional environment. Virtual DJ is available in both free and paid versions. In this case, paid means either an unlimited and upgradeable purchase version or a subscription model for people who want to get a taste of the software.

Why pay at all when Virtual DJ is also available free of charge? For example, because Virtual DJ is only free for private use, but not for commercial or professional use. Furthermore, professional DJ controllers cannot be used indefinitely. If you want to use a professional DJ controller with Virtual DJ, you need a paid license to run a session with Virtual DJ for longer than 30 minutes.

In general, you don't need any other hardware (such as a DJ controller) to play music in Virtual DJ. Theoretically and practically, a mouse and keyboard are sufficient. However, Virtual DJ supports the vast majority of controllers on the market - and DJ controllers naturally offer more detailed (and more fun) access to the software, the music and the creative use of it.

Comparison with other DJ software

To be honest, I haven't gone into as much depth with any other software as I have with Virtual DJ. This is at least due to my personal disinterest in some of the business practices of other well-known manufacturers. I got to know Virtual DJ as one of the first software offerings, worked my way into it and don't know what I would miss for my intended use. Quite the opposite: for most applications, Virtual DJ will deliver more than desired (which doesn't necessarily lead to an overloaded interface - but this topic would also be worth a separate article and shouldn't and doesn't need to be covered here. After all, this is about writing scripts for Virtual DJ).

As part of my interest in DJing, however, I do have certain comparisons between the different software manufacturers.

Is Virtual DJ “the best choice”? That always depends on your needs. There are also people who DJ with Ableton Live, Traktor or even WinAmp - not to mention other dedicated DJ software. You will have to find the best software for you. But Virtual DJ is a very popular choice for many DJs - the best for many users. For everyone? No.

Scripts in Virtual DJ? What are they? Do you need them?

Virtual DJ works with small scripts (or let's say command chains) to process commands. You can basically access all these commands. Be it via separate files, but also partly directly via the software itself.

With these small (or even larger) scripts and command chains, you can determine what Virtual DJ, other software on your computer or your network, but also devices connected to your computer, do when you press a key on your computer keyboard, your DJ controller, your synthesizer, MIDI controller, whatever.

Examples from simple to complex:

You could simply change or expand the key assignment on your computer keyboard or DJ controller. You could also send control commands to your DMX software (e.g. via ArtNet or OS2L protocol) about when and how the light stored in the DMX software should be controlled. You could also send commands to connected MIDI devices. Therefore:

When interconnecting several devices and applications, it is always questionable who should be the transmitter and who should be the receiver. Let's take an example setup:

• Virtual DJ as DJ software,
• QLC+ to control DMX lights,
• A hardware synthesizer to generate sound,
• A MIDI controller, for example a Launchpad,
• Ableton Live as additional software to create music.

This setup is by no means the biggest, but it is already sufficiently complex - even if there were one or two fewer components. Nevertheless, this setup is not unrealistically large and easy to find for a DJ or musician. To get to the crucial question:

What controls what?

You will have to find out for yourself which usage profile is right for you; however, research in advance can help - hence this article here.

For example, you could use Virtual DJ to send the beat signal to QLC+ via OS2L. But: Virtual DJ can only send one OS2L signal at a time. But since the beat signal is on beat 1, 2, 3 and 4... and if you now place an OS2L signal (for example to turn a light on or off) on a beat, an OS2L signal will not be sent. According to my observations, the beat signal is usually more dominant, but sometimes the light signal also comes through. What do you do if you need a reference to the speed in your light show so that your lights light up in time with the music?

You could:

A) keep the OS2L signal for the beat and shift all other OS2L signals by a few milliseconds, so they are sent one after the other instead of simultaneously. Or
B) Send the beat signal via MIDI using the LoopBe software.

Continue with the example:

Does your MIDI controller send control commands to Virtual DJ, which can then simultaneously send commands to QLC+ via OS2L, or do you send directly to QLC+ with your MIDI controller? Or do you map your MIDI controller in such a way that both Virtual DJ and QLC+ pick up and implement your control signal? What are the advantages and disadvantages of each setup? And why not use Ableton Live Link between Virtual DJ and Ableton Live and pass the MIDI signal on to the synthesizer or sequencer in the MIDI controller?

As you can see, the options are many and varied and depend heavily on your setup and your needs. In the following articles, I will not always be able to give you the exact script or command that you need for your setup. Rather scripts that try to use the simplest solution. You can either use these directly or modify the components of the script to suit your needs - or get to know them in the first place.

Scripting in Virtual DJ is extremely powerful. Not only can you use it to simplify the handling of your musical performance and stage show, but you can also expand your options considerably. Be it for switching signals that you don't actually have a hand free for during your performance, but also for function combinations that can greatly enrich your performance as a DJ.

Conclusion of this article

Now you know why scripting in Virtual DJ can be helpful. With the “how to”, you can do practically unimagined things - from the simple adjustment of your key mapping to the regulation of your MIDI instrument or your light show.

In the next article in this series, I will show you the basics of scripting within Virtual DJ using practical and useful examples. So if you're interested in how to get the most out of Virtual DJ, follow me here on the Hive blockchain and stay tuned! I'm sure you'll be amazed at what you can do with Virtual DJ!

Do you have any questions, requests or suggestions? Write me a comment!

Please note:

I am not sponsored or sponsoring any of the companies or products mentioned here and have no advertising intentions. The purpose of this article is to share knowledge with interested readers. All statements are subjective, but made to the best of my knowledge and belief.

[Deutsch:]

Dies ist die Einführung einer kleinen Artikelserie "Scripting von Virtual DJ". Ziel der Serie ist es, Scripting innerhalb von Virtual DJ zu erklären, Scriptbeispiele aufzuzeigen und gleichzeitig ein paar Tipps und Tricks rund um das Thema zu geben. Die Serie werde ich in einer Kollektion einordnen und die Titel der einzelnen Abschnitte entsprechend benennen.

Durchaus gibt es im Internet hier und da ein paar Erklärungen und Scriptbeispiele. Diese sich aber durchaus recht unübersichtlich verstreut, was die Recherche und das Lernen durchaus erschwert. Weiterhin habe ich überlegt, ob ich die Inhalte auf meiner Website positioniere oder der Hive-Blockchain und habe mich für die Hive-Blockchain entschieden, um dieser weitere Relevanz zu geben. Und da sich das Thema "Scripting von Virtual DJ" durchaus an technikaffine Menschen richtet, welche sich durchaus auch für die Hive-Blockchain begeistern könnten, sowie deren Musik-Communities, habe ich mich für die Hive-Blockchain entschieden

In diesem ersten Artikel möchte ich grundlegend erklären, um was es hier geht und ein paar Gedankengänge aufzeigen. Und da sich diese Artikel auf der Hive-Blockchain befinden - und nicht in einem Magazin für DJs - möchte ich auch kurz erörtern, was "Virtual DJ" ist.

Virtual DJ

Virtual DJ ist eine Software um Musik abzuspielen und richtet sich an DJs im Hobby-Bereich, aber auch im professionellen Umfeld. Virtual DJ steht in kostenfreien, aber auch kostenpflichtigen Versionen zur Verfügung. Kostenpflichtig meint in diesem Fall entweder eine unlimitiert gültige und upgradefähige Kauf-Version, wie aber auch ein Abo-Modell, für Menschen, die erstmal in die Software hineinschnuppern wollen.

Warum überhaupt zahlen, wenn es Virtual DJ auch kostenlos gibt? Beispielsweise weil Virtual DJ nur im privaten Umfeld kostenlos ist, nicht jedoch für den kommerziellen bzw. professionellen Gebrauch. Weiterhin können professionelle DJ-Controller nicht zeitlich unlimitiert genutzt werden. Solltest Du ein professionellen DJ-Controller mit Virtual DJ betreiben wollen, brauchst Du eine kostenpflichtige Lizenz, um eine Session mit Virtual DJ länger als 30 Minuten betreiben zu können.

Generell braucht man keine weitere Hardware (wie zum Beispiel einen DJ-Controller), um Musik in Virtual DJ aneinanderzureihen. Theoretisch und praktisch reicht Maus und Tastatur. Virtual DJ unterstützt jedoch den absoluten Großteil der am Markt befindlichen Controller - und DJ-Controller bieten natürlich einen detaillierteren (und spaßigeren) Zugang zur Software, zur Musik und zum kreativen Umgang damit.

Vergleich zu anderer DJ Software

Ehrlich gesagt, bin ich mit keiner anderen Software so sehr in die Tiefe gegangen, wie mit Virtual DJ. Das liegt schon mindestens an meinem persönlichen Desinteresse an so mancher Geschäftspraktik manch anderer namhafter Hersteller. Ich habe Virtual DJ als einer der ersten Softwareangebote kennengelernt, mich hineingearbeitet und wüsste nicht, was ich für meinen Anwendungszweck vermissen würde. Ganz im Gegenteil: für die meisten Anwendungszwecke wird Virtual DJ mehr liefern, als gewünscht (was aber nicht zwangsläufig zu einem überladenen Interface führt - aber auch dieses Theme wäre einen gesonderten Artikel wert und soll und braucht hier keinen Platz zu finden. Hier geht es schließlich um das schreiben von Scripten für Virtual DJ.)

Im Rahmen meines Interesses am DJing habe ich aber durchaus gewisse Vergleiche zwischen den unterschiedlichen Softwareherstellern.

Ist Virtual DJ "die beste Wahl"? Dies kommt immer auf deinen Bedarf an. Es gibt auch Menschen, die DJ'n mit Ableton Live, Traktor oder sogar per WinAmp - mal ganz abgesehen von anderer dedizierter DJ Software. Die beste Software für Dich wirst Du selbst finden müssen. Virtual DJ ist aber für viele DJs eine sehr beliebte Wahl - für viele Benutzer die Beste. Für Alle? Nein.

Scripte in Virtual DJ? Was ist das? Braucht man das?

Virtual DJ arbeitet mit kleinen Scripten (oder sagen wir Befehlsketten), um Befehle zu verarbeiten. Auf all diese Befehle kannst Du im Grunde zugreifen. Sei es über gesonderte Dateien, aber auch zum Teil direkt über die Software selbst.

Mit diesen kleinen (oder auch größeren) Scripten und Befehlsketten kannst Du bestimmen, was Virtual DJ, weitere Software auf deinem Computer oder deinem Netzwerk, aber auch am Computer angeschlossene Geräte machen, wenn Du eine Taste auf deiner Computertastatur, deinem DJ-Controller, deinem Synthesizer, MIDI-Controller, was auch immer, drückst.

Beispiele von einfach bis komplex:

Du könntest einfach die Tastenbelegung auf deiner Computertastatur oder deinem DJ-Controller ändern oder erweitern. Du könntest aber auch deiner DMX-Software Steuerbefehle senden (zum Beispiel über ArtNet oder OS2L-Protokoll), wann und wie das in der DMX-Software hinterlegte Licht gesteuert werden soll. Du könntest aber auch angeschlossenen MIDI-Geräten, Befehle senden. Von daher:

Bei der Verschaltung mehrere Geräte und Anwendungen ist immer fraglich, wer Sender und wer Empfänger sein soll. Nehmen wir ein Beispielsetup:

• Virtual DJ als DJ-Software,
• QLC+ um DMX-Lichter zu steuern,
• Ein Hardware-Synthesizer um Klang zu erzeugen,
• Ein MIDI-Controller, beispielsweise ein Launchpad,
• Ableton Live als zusätzliche Software, um Musik zu kreieren.

Dieses Setup ist durchaus nicht das Größte, aber bereits ausreichend komplex - auch wenn es ein oder zwei Komponenten weniger wären. Trotzdem ist dieses Setup nicht unrealistisch groß und leicht bei einem DJ oder Musiker zu finden. Um auf die entscheidende Frage zu kommen:

Was steuert was?

Welches Nutzungsprofil für Dich passend ist, wirst Du selbst herausfinden müssen; eine Recherche im Vorhinein kann jedoch helfen - daher auch dieser Artikel hier.

Du könntest per Virtual DJ zum Beispiel das Beat-Signal per OS2L an QLC+ senden. Aber: Virtual DJ kann immer nur ein OS2L Signal zu einer bestimmten Zeit senden. Da das Beat-Signal aber auf Taktschlag 1, 2, 3 und 4 liegt... und wenn Du nun ein OS2L-Signal (zum Beispiel um ein Licht an oder aus zu machen), auf einen Taktschlag legst, wird folglich ein OS2L-Signal nicht gesendet. Meiner Beobachtung nach ist das Beat-Signal zumeist dominanter; manchmal kommt aber auch das Licht-Signal durch. Was tun, wenn Du in deiner Lichtshow eine Referenz zur Geschwindigkeit brauchst, damit deine Lichter im Takt der Musik leuchten?

Du könntest:

A) das OS2L-Signal für den Beat beibehalten und alle weiteren OS2L-Signale um ein paar Millisekunden verschieben und somit hintereinander, statt gleichzeitig, gesendet werden. Oder
B) Du sendest das Beat-Signal über MIDI durch die Zuhilfenahme der Software LoopBe.

Weiter im Beispiel:

Sendet dein MIDI-Controller Steuerbefehle an Virtual DJ, welches somit simultan auch Befehle per OS2L an QLC+ weitersenden kann oder sendest Du mit deinem MIDI-Controller direkt zu QLC+? Oder mappst Du so deinen MIDI-Controller so, das sowohl Virtual DJ, wie auch QLC+, dein Steuersignal aufgreifen und umsetzen? Was sind die Vor- und Nachteile in einem jeweiligen Setup? Und warum nicht Ableton Live Link zwischen Virtual DJ und Ableton Live benutzen und dort das MIDI Signal an den Synthesizer oder den Sequencer im MIDI-Controller weitergeben?

Du siehst, die Varianten sind vielfältig und hängen stark von deinem Setup und deinen Bedürfnissen ab. In den folgenden Artikeln werde ich Dir nicht immer den fertigen Script oder Befehl geben können, welchen Du exakt für dein Setup brauchst. Vielmehr Scripte, welche versuchen die simpelste Lösung zu nutzen. Diese kannst Du entweder direkt übernehmen oder die Bestandteile des Script für Dich passend umbauen - oder überhaupt erst kennenlernen.

Scripting in Virtual DJ ist extrem mächtig. Du kannst damit nicht nur die Handhabung deiner musikalischen Performance und Bühnenshow vereinfachen, sondern deine Möglichkeiten auch sehr weit ausbauen. Sei es für Schaltsignale, für welche Du eigentlich keine Hand frei hast, während deiner Performance, aber auch Funktionskombinationen, welche deine Performance als DJ extrem bereichern können.

Schlusswort dieses Artikels

Warum Scripting in Virtual DJ hilfreich sein kann, weißt Du nun. Mit dem "gewusst wie", kannst Du praktisch ungeahnte Dinge vollführen - von der simplen Anpassung deiner Tastenbelegung bis zur Regulation deiner MIDI-Instrument oder deiner Lichtshow.

Im nächsten Artikel dieser Serie werde ich Dir anhand von praktischen und nützlichen Beispielen die Grundlagen des Scripting innerhalb von Virtual DJ aufzeigen. Wenn Du also interessiert bist, wie Du das Beste aus Virtual DJ herausholen kannst, dann folge mir hier auf der Hive-Blockchain und sei gespannt! Ich bin mir sicher, Du wirst begeistert sein, was Du mit Virtual DJ alles machen kannst!

Du hast Fragen, Wünsche oder Anregungen? Schreibe mir einen Kommentar!

Hinweis:

Ich stehe in keinerlei Sponsoring zu den hier genannten Firmen oder Produkten und habe keine Werbeabsichten. Der Zweck dieser Artikel ist die Wissensvermittlung an interessierte Leser. Alle Aussagen subjektiv, jedoch erstellt in bestem Wissen und Gewissen.


[Links:]
Virtual DJ | QLC+ | LoopBe1 | Ableton Live | Novation Launchpad

Greetings from Paraguay!

Follow for the hottest & a little less buggy stuff!


Your vote keeps development, stupidities & fridges rollin'! No... Better follow @CryptoCompany & @brobang, my game & blockchain project! You don't will regret it!


Rock 'n' Roll & Hive a great day!