Plugins en C++

Kun je gegenereerde waarden naar een bestand schrijven? Zonder je te bekommeren, op dit moment, om dit volgens de specificaties van een bestandsformaat te doen zou je simpelweg de ruwe waarden kunnen wegschrijven en dit vervolgens inlezen in bv. Audacity. Zo kun je het nu al vrij eenvoudig hoorbaar maken.

Hieronder een interessant uitziend resultaat. Hoe speel je dat nu af? :

1
2.99006
3.90248
5.12969
5.83104
6.47622
-6.9351
-2.98656
-0.239708
-2.0571
-2.32037
28.8915
-30.8305
26.1262
29.036
-40.3685
2.65433
-5.51453
2.20321
2.06916
4.29439
-4.96247
-2.85533
-0.787637
-1.93652
-2.19615
28.6494
-30.7361
26.3041
28.7812
-40.3542
2.55504
-5.53449
2.16812
2.0533
4.27842
-4.95223
-2.85328
-0.790901
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
4.27833
-4.95218
-2.85327
-0.790918
-1.93616
-2.19531
28.6482
-30.7358
26.3052
28.7799
-40.3542
2.55453
-5.5346
2.16793
2.05322
 
Hieronder een interessant uitziend resultaat. Hoe speel je dat nu af? :

Kijk bij Audicity even bij 'Bestand' -> 'Importeren' -> 'Raw Data...'. Kies even een bestandje en je ziet dit:

Rawdata_Audacity.jpg


De gegenereerde data in je programma dus omrekenen zodat het overeenkomt met één van deze opties voor de codering. Met ook het juiste voor de andere opties en samplerate.
 
Hier dan eindelijk het eerste geluid. Luister en huiver ;-)



Overigens heeft het programma heel veel instelbare parameters, dus wie weet wat er nog meer uit te halen valt...
 
Op een lager tempo afgespeeld klinkt het al een stuk aangenamer:



 
Ik voeg er nog één functie aan toe (de "dronken poortwachter" die random signaal_1, signaal_2 of signaal_3 doorlaat), en daar moeten we het dan maar mee doen. Het moet allemaal niet te gelikt worden.
 
Laatst gewijzigd:
Ja - ik vind het ook heel leuk om wiskunde en audio te combineren, en me te laten verrassen door de geluiden die dat oplevert.
 
Ik heb ooit een beginnetje gemaakt om met een FPGA een digitale synth te maken... maar al snel bleek het gebrek aan tijd een beetje een dooddoener. Na vandaag start mijn vakantie... dus de komende 3 weken tijd zat.
 
Ik voeg er nog één functie aan toe (de "dronken poortwachter" die random signaal_1, signaal_2 of signaal_3 doorlaat), en daar moeten we het dan maar mee doen. Het moet allemaal niet te gelikt worden.

Net even geprobeerd, maar dat levert enkel oninteressante ruis op.
 
Het boek is gearriveerd, en daar ga ik nu mee verder.

boek.jpg


Ben benieuwd hoever ik daarmee kom, en of ik straks dan ook zelf een werkende virtuele module voor VCV Rack kan schrijven.
 
Met het boek gaat het niet lukken, en met de toelichting op de website van VCV-Rack ook niet. Het VCV-Rack zelf is makkelijk te installeren. Maar de development omgeving krijg ik niet goed geïnstalleerd. Heb het meerdere keren volgens de aanwijzingen geprobeerd, en ook op het internet gezocht naar oplossingen voor wat er fout gaat. Maar alles zonder resultaat. Ik bekijk vanavond nog wat video's over synths maken met VCV-Rack, en als dat ook niets oplevert dan stop ik ermee. Met C++ ga ik wel verder, op wat voor manier dan ook.
 
Zie hier de hoepels waar je door moet springen bij het installeren van de development omgeving voor je eigen VCV modules onder Windows (maar onder Linux is het niet eenvoudiger):

 
Nee - met VCV-Rack ga ik niet verder. Dat is geen handige manier om C++ uit te proberen. Ben nu al heel wat uurtjes bezig om een simpele test module te maken, maar dat is me nog steeds niet gelukt. En aan het testen van C++ ben ik nog helemaal niet toegekomen.
 
Programmeren voor audio is ook helemaal vanuit C++ (of C) te doen. En dat is een veel fundamentelere oplossing voor mijn probleem, want andere opties zoals plugins voor VCV schrijven hebben zoals bleek weer hun eigen problemen waar ik dan weer in verdwaal. Ziehier wat voor soort C++ code ik voor audio op mijn Linux computer nodig heb :

 
Back
Top