Browse Source

Remove .html from URLs to the manual.

pull/46/head
Andrew Belt 1 year ago
parent
commit
a28c0aa93f
11 changed files with 34 additions and 34 deletions
  1. +1
    -1
      About.md
  2. +1
    -1
      Core.md
  3. +9
    -9
      FAQ.md
  4. +3
    -3
      GettingStarted.md
  5. +4
    -4
      Installing.md
  6. +1
    -1
      KeyCommands.md
  7. +1
    -1
      Manifest.md
  8. +2
    -2
      MenuBar.md
  9. +1
    -1
      Panel.md
  10. +10
    -10
      PluginDevelopmentTutorial.md
  11. +1
    -1
      Polyphony.md

+ 1
- 1
About.md View File

@@ -4,7 +4,7 @@ VCV was founded by Andrew Belt in 2016 and is based in Tennessee, USA.
Its flagship product VCV Rack was released on September 10, 2017 at [Knobcon](https://knobcon.com/) after two years of development.
It was based on an unreleased C++ modular audio engine written by Andrew in 2012.

VCV collaborates with [Grayscale](http://grayscale.info/) to design the [Fundamental](https://vcvrack.com/Fundamental.html) plugin, commercial VCV modules, and the UI design of Rack.
VCV collaborates with [Grayscale](http://grayscale.info/) to design the [Fundamental](https://vcvrack.com/Fundamental) plugin, commercial VCV modules, and the UI design of Rack.

## Mission Statement



+ 1
- 1
Core.md View File

@@ -32,7 +32,7 @@ The **TO DEVICE** section sends Rack signals to a hardware audio device for play
After a driver is selected, a particular **device** can be chosen for the driver.

The **sample rate** is the number of audio samples per second for the audio device to process.
Note that this rate is different than Rack's [engine sample rate](https://vcvrack.com/manual/MenuBar.html#sample-rate), which determines the number of samples per second for Rack modules to process.
Note that this rate is different than Rack's [engine sample rate](https://vcvrack.com/manual/MenuBar#sample-rate), which determines the number of samples per second for Rack modules to process.
If set to different rates, sample rate conversion will occur, resulting in slightly higher CPU usage, slightly less audio fidelity, and slightly more latency.

The **block size** sets the number of samples to store in the audio buffer before releasing to the audio device.


+ 9
- 9
FAQ.md View File

@@ -12,7 +12,7 @@ These are good guesses, but "VCV" was chosen simply because it is easy to rememb
## Where is the "Rack user folder"?

The Rack user folder stores data readable/writable by Rack.
You can open it by choosing `Help > Open user folder` in the Rack [menu bar](MenuBar.html), or by navigating to
You can open it by choosing `Help > Open user folder` in the Rack [menu bar](MenuBar), or by navigating to

- MacOS: `Documents/Rack/`
- Windows: `My Documents/Rack/`
@@ -59,27 +59,27 @@ If any of these symptoms occur, you can attempt to treat them using the followin
Note that some tips have trade-offs or might not provide any benefit for your situation.

- Rack DSP:
- Use Rack's [CPU meter](MenuBar.html#cpu-meter) to identify high-CPU modules that you could remove or replace.
- Use Rack's [CPU meter](MenuBar#cpu-meter) to identify high-CPU modules that you could remove or replace.
- Turn off the CPU meter when you don't need it.
Measuring the CPU time of each module in your patch consumes significant CPU.
- Increase [VCV Audio](Core.html#audio)'s block size to the highest tolerable number.
- Increase [VCV Audio](Core#audio)'s block size to the highest tolerable number.
This results in proportionally higher audio latency but proportionally decreases block processing overhead and allows higher jitter in sample processing CPU times.
- Use the lowest tolerable Engine [sample rate](MenuBar.html#sample-rate).
- Use the lowest tolerable Engine [sample rate](MenuBar#sample-rate).
Engine CPU usage is almost exactly proportional to its sample rate.
- Disable modules in your patch that you aren't currently using by right-clicking on their panels and choosing Disable.

- Rack multi-threading:
- To maximize the number of modules in your patch without audio stuttering, increase the number of Rack engine threads until no stuttering occurs.
See [Threads](MenuBar.html#threads).
See [Threads](MenuBar#threads).
- To reduce power usage and temperature, use the smallest number of Rack engine threads that does not cause audio stuttering.

- Graphics:
- Decrease Rack's frame rate to the smallest tolerable value. See [Frame rate](MenuBar.html#frame-rate).
- Decrease Rack's frame rate to the smallest tolerable value. See [Frame rate](MenuBar#frame-rate).
- Use a dedicated (discrete) graphics card, such as Nvidia or AMD.
Rack is not designed for integrated graphics such as Intel HD/Iris. See [System Requirements](Installing.html#system-requirements).
Rack is not designed for integrated graphics such as Intel HD/Iris. See [System Requirements](Installing#system-requirements).
- Make sure your graphics drivers are up-to-date.
- If using an Apple Retina display on your Mac, set the Rack app to use [Low Resolution Mode](https://www.maketecheasier.com/launch-apps-low-resolution-mac/).
- Use Rack in [fullscreen](MenuBar.html#fullscreen) mode so the graphics card does not need to render the OS user interface and other applications.
- Use Rack in [fullscreen](MenuBar#fullscreen) mode so the graphics card does not need to render the OS user interface and other applications.

- Audio hardware:
- Use a dedicated audio interface rather than your motherboard's audio hardware.
@@ -103,7 +103,7 @@ Note that some tips have trade-offs or might not provide any benefit for your si
This means that any hiccups/stuttering you hear in real-time will not be present when the recording is played back.

- Computer hardware:
- Although Rack's [System Requirements](Installing.html#system-requirements) suggest that computers as old as 2013 can run Rack, it is recommended to use a computer from 2016 or later that is designed for gaming.
- Although Rack's [System Requirements](Installing#system-requirements) suggest that computers as old as 2013 can run Rack, it is recommended to use a computer from 2016 or later that is designed for gaming.
There are many gaming laptop and desktop computers on the market for as low as $300, the price of an average hardware Eurorack module.
Unfortunately, Apple's MacBook Air and older MacBook Pro models are not designed for gaming (despite their high price!) and are therefore not recommended for VCV Rack.



+ 3
- 3
GettingStarted.md View File

@@ -2,17 +2,17 @@

VCV Rack is virtual modular synthesizer platform for Windows/Mac/Linux that simulates Eurorack modules, in addition to original modules that go beyond hardware.

Once [VCV Rack](https://vcvrack.com/Rack) is installed and launched for the first time (see [Installing](Installing.html)), you will see a rack with a template patch.
Once [VCV Rack](https://vcvrack.com/Rack) is installed and launched for the first time (see [Installing](Installing)), you will see a rack with a template patch.

![Template patch](images/templatepatch.png)

The [*VCV Audio*](Core.html#audio) module is the portal between the virtual and physical world.
The [*VCV Audio*](Core#audio) module is the portal between the virtual and physical world.
It sends audio from VCV Rack to your speakers and audio device (e.g. sound card or external audio interface).
It can also receive audio from microphones and your audio device's inputs.

1\. To set up *VCV Audio*, click its display to set the audio driver, device, and optionally sample rate and block size.

[*VCV MIDI-CV*](Core.html#midi-cv) converts MIDI notes from a MIDI device (such as a keyboard or controller) to virtual voltages in Rack.
[*VCV MIDI-CV*](Core#midi-cv) converts MIDI notes from a MIDI device (such as a keyboard or controller) to virtual voltages in Rack.
It can also use your computer's keyboard as a basic MIDI keyboard.

2\. Use the QWERTY and ZXCVB rows of your keyboard to generate MIDI notes, which are converted to 1V/oct and gate signals.


+ 4
- 4
Installing.md View File

@@ -5,7 +5,7 @@

VCV Rack is free software, so you may simply download and run the software to see if it works.
However, if Rack does not run or you are experiencing performance issues, make sure you have at least the following hardware.
(Also see [How do I improve performance of VCV Rack?](FAQ.html#how-do-i-improve-performance-of-vcv-rack))
(Also see [How do I improve performance of VCV Rack?](FAQ#how-do-i-improve-performance-of-vcv-rack))
- Operating system: MacOS 10.7+, Windows 7+, or Linux (such as Ubuntu 16.04+)
- CPU: Intel/AMD 64-bit processor from \~2011 or later
- Graphics: Dedicated graphics card from \~2013 or later with the latest driver software update:
@@ -38,7 +38,7 @@ Plugins extend VCV Rack's functionality by adding one or more modules to use in
Plugins are typically installed via the [VCV Library](https://library.vcvrack.com/).
See the *VCV Library Instructions* section at the bottom of the VCV Library page.

If your computer is offline, you may download plugins using another computer and transfer `<Rack user folder>/plugins-v*` (See [Where is the “Rack user folder”?](FAQ.html#where-is-the-rack-user-folder)) to the offline computer.
If your computer is offline, you may download plugins using another computer and transfer `<Rack user folder>/plugins-v*` (See [Where is the “Rack user folder”?](FAQ#where-is-the-rack-user-folder)) to the offline computer.
Downloading plugins directly from the VCV Library is not supported at this time.

## Installing plugins not available on the VCV Library
@@ -46,7 +46,7 @@ Downloading plugins directly from the VCV Library is not supported at this time.
*Install third-party plugins at your own risk. Like VST plugins, installing plugins from unknown sources may compromise your computer and personal information.*

Plugins for Rack are distributed as ZIP files with the format `<plugin slug>-<version>-<arch>.zip`, e.g. `MyPlugin-1.0.0-mac.zip`.
Download the plugin ZIP package from the vendor's website to `<Rack user folder>/plugins-v*` (See [Where is the "Rack user folder"?](FAQ.html#where-is-the-rack-user-folder)).
Download the plugin ZIP package from the vendor's website to `<Rack user folder>/plugins-v*` (See [Where is the "Rack user folder"?](FAQ#where-is-the-rack-user-folder)).
Do not extract the ZIP package yourself.
Rack will extract and load the plugin upon launch.

@@ -54,7 +54,7 @@ Note: Plugins must be built (compiled) before Rack can load them.
GitHub hosts plugin source code, not plugin binaries, so GitHub's green "Clone or download" button will *not* give you a plugin binary.
However, some plugin maintainer make plugin builds available in the "Releases" section of their GitHub repository.

Note: The "major" version number (e.g. the `1` in `v1.2.3`) must match the major version number of Rack. See [ABI/API Version](Version.html).
Note: The "major" version number (e.g. the `1` in `v1.2.3`) must match the major version number of Rack. See [ABI/API Version](Version).


<a id="running"></a>


+ 1
- 1
KeyCommands.md View File

@@ -4,7 +4,7 @@

## Global commands

Key commands documented in Rack's [menu bar](MenuBar.html) are not documented here.
Key commands documented in Rack's [menu bar](MenuBar) are not documented here.

- **Enter** or **right-click on rack**: Launch the Module Browser to add modules to the rack.
- **F1**: Open Rack manual in your browser.


+ 1
- 1
Manifest.md View File

@@ -199,7 +199,7 @@ Generates complex envelopes or cycles via a large selection of general parameter

Clones the functionality, panel design, and component layout of a hardware module on the market.

Remember to follow the [VCV Plugin Ethics Guidelines](PluginLicensing.html#vcv-plugin-ethics-guidelines) and only clone hardware with permission from its owner.
Remember to follow the [VCV Plugin Ethics Guidelines](PluginLicensing#vcv-plugin-ethics-guidelines) and only clone hardware with permission from its owner.

If there is a [ModularGrid](https://www.modulargrid.net/) page for the hardware module, add the [modularGridUrl](Manifest#modules-modulargridurl) property.



+ 2
- 2
MenuBar.md View File

@@ -92,7 +92,7 @@ Rack must be restarted to load new plugin updates.
## Help

### Manual
Opens [this manual](QuickStart.html).
Opens [this manual](QuickStart).

### Open user folder
Opens the [Rack user folder](FAQ.html#where-is-the-rack-user-folder) in Windows Explorer, Apple Finder, etc.
Opens the [Rack user folder](FAQ#where-is-the-rack-user-folder) in Windows Explorer, Apple Finder, etc.

+ 1
- 1
Panel.md View File

@@ -25,7 +25,7 @@ Design recommendations from VCV:


Do not use other people's intellectual property (IP) without their permission.
See the [VCV Plugin Ethics Guidelines](PluginLicensing.html#vcv-plugin-ethics-guidelines).
See the [VCV Plugin Ethics Guidelines](PluginLicensing#vcv-plugin-ethics-guidelines).

Don't hesitate to ask the [VCV Community](https://community.vcvrack.com/c/development) for design help.
You may find several graphic designers seeking programmers for collaboration.


+ 10
- 10
PluginDevelopmentTutorial.md View File

@@ -4,9 +4,9 @@

- Familiarity with C++, although creating Rack plugins is a great way to learn programming and C++. Rack plugins are written in [C++11](https://en.cppreference.com/w/cpp/11).
- Familiarity with navigating the command line (`cd`, `ls`, etc).
- Familiarity with modular synthesizers. [Digital signal processing (DSP)](DSP.html) knowledge is only required if creating sound generators and processors.
- Familiarity with modular synthesizers. [Digital signal processing (DSP)](DSP) knowledge is only required if creating sound generators and processors.
- Download and install [VCV Rack](https://vcvrack.com/Rack.html).
- Follow the steps to [set up your build environment](Building.html#setting-up-your-development-environment) for your operating system.
- Follow the steps to [set up your build environment](Building#setting-up-your-development-environment) for your operating system.
You do not need to build Rack from source if using the Rack SDK.
- [Download the latest Rack SDK](https://vcvrack.com/downloads/) and extract.
This contains the Rack API headers and build system for compiling your plugin.
@@ -23,7 +23,7 @@ You may wish to add this line to your `~/.bashrc` or other shell environment, so
The `helper.py` script included in the Rack SDK is an easy way to create a plugin template.
You can run it with no arguments to show documentation.

Choose a [slug](Manifest.html#slug) for your plugin, a unique string containing letters, numbers, `-`, or `_`.
Choose a [slug](Manifest#slug) for your plugin, a unique string containing letters, numbers, `-`, or `_`.
We will use `MyPlugin` for this tutorial.
Run
```bash
@@ -47,7 +47,7 @@ Manifest written to MyPlugin/plugin.json
Created template plugin in MyPlugin/
Initialized empty Git repository in /home/VCV/MyPlugin/.git/
```
You can change this manifest later by editing `plugin.json`. (See [Manifest](Manifest.html)).
You can change this manifest later by editing `plugin.json`. (See [Manifest](Manifest)).

To test your build system, you may run `make` in the plugin directory.
If it succeeds, an "empty" plugin will be built containing no modules.
@@ -55,7 +55,7 @@ However, this is an good opportunity to check that your build environment is set

## Creating panels

For each module you wish to create, follow the [Panel Guide](Panel.html) to design an SVG panel graphic.
For each module you wish to create, follow the [Panel Guide](Panel) to design an SVG panel graphic.

For this tutorial, we will create a module with the slug `MyModule` and panel file [MyModule.svg](_static/MyModule.svg).
Save this file to `res/` and run
@@ -83,7 +83,7 @@ Open `MyModule.svg` with Inkscape, open the Layers panel, and hide the `componen

## Implementing the DSP kernel

Rack modules have four basic components, as we saw in the [Panel Guide](Panel.html).
Rack modules have four basic components, as we saw in the [Panel Guide](Panel).
- **Param**: Read with `params[...].getValue()`
- **Input**: Read with `inputs[...].getVoltage()`
- **Output**: Write with `outputs[...].setVoltage(voltage)`
@@ -136,10 +136,10 @@ This file contains warnings about plugins that fail to load and error messages i

## Beyond the tutorial

The Rack API is very flexible for creating custom [DSP](DSP.html) algorithms and custom interactive widgets handling many types of events from the keyboard, mouse, etc.
The Rack API is very flexible for creating custom [DSP](DSP) algorithms and custom interactive widgets handling many types of events from the keyboard, mouse, etc.
See the [Rack API headers](https://github.com/VCVRack/Rack/tree/v1/include) or the [Rack API documentation](https://vcvrack.com/docs/namespaces.html) for the full reference, or review the source code of the many open-source plugins if you prefer learning by example.

The [Voltage Standards](VoltageStandards.html) article defines the behavior for handling signals in a consistent way.
The [Voltage Standards](VoltageStandards) article defines the behavior for handling signals in a consistent way.

You can find a wealth of information on the [Developer category](https://community.vcvrack.com/c/development) of the [VCV Community](https://community.vcvrack.com/) forum by searching or creating a new thread.

@@ -147,8 +147,8 @@ You can find a wealth of information on the [Developer category](https://communi

Eventually you may want to release your hard work.

See [Plugin Licensing](PluginLicensing.html) for information about following Rack's license, particularly if developing a commercial plugin.
See [Plugin Licensing](PluginLicensing) for information about following Rack's license, particularly if developing a commercial plugin.
It is recommended to add a `LICENSE.txt` file to your plugin's root folder that specifies your preferred license (whether open-source or proprietary).

Review your `plugin.json` [manifest](Manifest.html) file for correctness, spelling, and capitalization.
Review your `plugin.json` [manifest](Manifest) file for correctness, spelling, and capitalization.
Finally, submit your plugin to the [VCV Library](https://github.com/VCVRack/library#adding-your-plugin-to-the-vcv-library-for-open-source-plugins) to allow users to easily download your plugin from their VCV account.

+ 1
- 1
Polyphony.md View File

@@ -9,7 +9,7 @@ But with polyphonic cables, you only need to patch one set of modules and then c

## Example

In the screenshot below, [*MIDI-CV*](Core.html#midi-cv) is configured to generate 8 channels by right-clicking on its panel, choosing a number of "Polyphonic channels", and optionally choosing a "Polyphony mode" to specify how MIDI notes are assigned to polyphonic channels.
In the screenshot below, [*MIDI-CV*](Core#midi-cv) is configured to generate 8 channels by right-clicking on its panel, choosing a number of "Polyphonic channels", and optionally choosing a "Polyphony mode" to specify how MIDI notes are assigned to polyphonic channels.
Its V/OCT and GATE ports then become polyphonic outputs, and their signals can be sent to other polyphonic modules, carried by polyphonic cables.

![Polyphonic patch](images/polyphonicpatch.png)


Loading…
Cancel
Save