# Welcome to District VR

You're about to enter the DISTRICT. Before you do, look over the following. These docs will guide you through setup and ensure you're ready to perform.

Make sure you join our [DISCORD](https://discord.gg/DsBhVfqenM) and share your experience with the community. Within the server you can speak directly to our team and submit content and bug reports. All of this helps us develop DISTRICT further.

### Jump right in

<table data-view="cards"><thead><tr><th data-card-target data-type="content-ref"></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td><a href="/getting-started/quickstart">Requirements</a></td><td><a href="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-4832cd802e6db971fbd7529cc11c6bbbc59deec2%2F1a%20(1).jpg?alt=media">1a (1).jpg</a></td></tr><tr><td><a href="/releases/v0.5">Releases</a></td><td><a href="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-976c2bbfc87ea2b30bdb84975a9409745c5e29bc%2F1b%20(1).jpg?alt=media">1b (1).jpg</a></td></tr><tr><td><a href="/features/editor">Features</a></td><td><a href="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-8cd06aa25009795c40bdcccf6415a1ebf12a96f0%2F1c%20(1).jpg?alt=media">1c (1).jpg</a></td></tr></tbody></table>


# Requirements

{% hint style="warning" %}
**Minimum Specifications**

* **GPU:** NVIDIA RTX 2080
* **CPU:** Intel i7 (recent generation)
* **RAM:** 16GB DDR4
* **Storage:** 500GB
* **Application Size:** \~4GB
* **USB Port:** USB 3.0

**Recommended Specifications**

* **GPU:** NVIDIA RTX 3070 or above
* **CPU:** Intel i9
* **RAM:** 32GB DDR4
* **Storage:** 500GB M.2 SSD
* **USB Port:** USB 3.0 or higher
  {% endhint %}

***

**Software Requirements**

* [Steam](https://store.steampowered.com/about/)
* [Steam VR](https://store.steampowered.com/app/250820/SteamVR/)
* [Oculus App](https://www.oculus.com/download_app/?id=1582076955407037)

***

**Account Requirements**

* [Meta Account](https://auth.meta.com/?redirect_uri=https%3A%2F%2Fauth.meta.com%2Foidc%2F%3Fapp_id%3D800455417652954%26scope%3Dopenid%26response_type%3Dcode%26redirect_uri%3Dhttps%253A%252F%252Fwww.meta.com%252Foidc%252Fcallback%252F%26state%3DATA2kh2QA7cSypdFZHD7t4SIpqdKjKg2X1OdobDnWDEFIQ0wM7tkAClH8TdmJ43K_YUgNOKDZagvOKj7L1Lc0cYP9aLyfZhn-QoDJXbZvxtuIHoxCOUkXjBOaSqbycqMZJhwuLGRsRPDrqd16LafkPfby3CFpW2zBngt58vifKNsNIMrXoWEv8wR9y-WP9K1nJxMLw8H1Fs4yR_k5ICT-9We0XNUV9kXWLbdvDYIrSy_ncWRB822L0YZ1Eo\&utm_source=meta.com\&source_app_id=800455417652954)
* [Steam Account](https://store.steampowered.com/join/)

***

**Hardware Requirements**

* VR ready PC
* link cable (recommended)
* Meta Quest 2 or 3

***

{% hint style="danger" %}
**Additional Notes**

**AMD CPUs:** While not extensively tested, an AMD Ryzen 5 5600X (6x3.70 GHz) has been reported to work well.

**AMD GPUs:** The game has not been tested on Radeon cards, so performance cannot be guaranteed.

**VR Headset Compatibility:** The game is designed for modern VR headsets. Older models like Oculus Rift CV1 may struggle with performance.

**Performance Expectations:** Users should be prepared for potential performance feedback. Setting higher minimum specs can help manage expectations.

**Outdated Hardware:** The following are considered outdated for this game:

* GPUs older than RTX 2080 (e.g., GTX 1060)
* CPUs older than recent-gen i7 (e.g., i5 processors)
* Systems with less than 16GB RAM

**Storage Type:** An SSD is strongly recommended for optimal performance and loading times.

**Future-Proofing:** For the best experience and to account for future updates, consider aiming for specs above the minimum requirements.
{% endhint %}


# Activate key on Steam

{% hint style="info" %}
**Grab Your Key**

If you haven’t already, sign up on our [website](https://district.berlin/beta-test) to receive your beta key.
{% endhint %}

1. **Open Steam**: Launch the Steam client and sign in to your account.
2. **Access the Activation Menu**:

* Click on "Games" in the bottom menu bar of the Steam client.
* Select "Activate a Product on Steam..." from the dropdown menu.

<figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-ca4bae0488f021f96744278f64a7a15e8d867933%2FScreenshot%202024-09-16%20at%2021.23.42.png?alt=media" alt=""><figcaption></figcaption></figure>

3. **Enter your key**:

* In the window that appears, click "Next".
* You'll be prompted to enter your product code. Type in the beta key we provided you.
* Click "Next" to proceed.

4. **Confirm and Install**:

* Verify that the product name shown matches our game.
* Click "Finish" to complete the activation process.
* The game will now appear in your Steam library.

5. **Download and Play**:

* You can now download and install the game from your Steam library.
* Once installed, you're ready to start playing the closed beta!


# Music library

How to add own music to District VR:

The Music Library is your central hub for managing tracks in District VR. Import music from your local drives, browse purchased tracks, organize playlists, and integrate with Rekordbox.

## Importing & Loading Tracks

You can load a track in two ways:

* **Drag and drop** a track directly onto a Deck
* Use the **Import** or **Load** button on a track to open the loading window, where you choose which Deck to load it to

## Preview Tracks

Listen to any track before importing it. Press the **play icon** on a track and the audio will be sent directly to your DJ headphones output.

## File Explorer

Browse and load tracks directly from your local drives.

* Navigate through your folders to find music
* Filter by audio file type to narrow down results

## Online Library

View and access all tracks you have purchased in the in-game store.

## Media Library

Your main library — contains all tracks you have previously used or imported.

* **Export Library**: Export your Media Library tracks and playlists for Rekordbox

{% hint style="info" %}
Currently you can export only to Rekordbox, but more export options may be available later.
{% endhint %}

### Track Options

Right-click or select a track in the Media Library to access these options:

* **Edit** — Change track information such as name, BPM, etc.
* **Delete** — Remove the track from your Media Library
* **Analyze BPM** — Analyze and update the track's BPM
* **Analyze Key** — Analyze and update the track's key
* **Add To Playlist** — Choose which playlist to add the track to (only shows existing playlists — create new ones in the Playlist window)

## Playlists

Organize your music into custom playlists.

* **Select Playlist** — Switch between playlists to view their tracks
* **Edit Icon** — Rename the currently selected playlist
* **Create New** — Create a new playlist
* **Delete Icon** — Delete the currently selected playlist

## Rekordbox

Import your Rekordbox library to use your prepared music in District VR.

* **Select List** — Choose a Rekordbox track list to browse
* **Import XML** — Import a Rekordbox XML file from your local drives

<figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-554c1b9d2b1c88009097abe97ff8817fa1daea67%2FScreenshot%20(100).png?alt=media" alt=""><figcaption><p>Media Library</p></figcaption></figure>


# Audio I/O

Audio I/O settings can be found in the in-game menu under **Settings > Sound**. The settings are split into two sections: In-Game Audio and DJ Audio.

## In-Game Audio

### In-Game Audio Out

* **Options**: Available audio output devices
* **Function**: Sets the output device for in-game audio (e.g. sound effects, voiceovers, spatial audio speakers)

### Spatial Speakers

* **Volume**: Sets the speaker volume
* **Mute**: Mute/unmute the speakers

### Latency Compensation

Compensates latency between multiple outputs by adding delay to them. Opens a latency compensation settings window with the following options:

* **Additional Device Latency**: If the output device has its own internal latency, enter the delay amount here. You can leave it at 0 for most devices, but some devices (e.g. Oculus Virtual Audio Device) have internal latency that needs to be accounted for.
* **Compensation Mode**:
  * **None** — No latency compensation
  * **Only DJ** — Applies latency compensation only to DJ outputs
  * **DJ + In-Game** — Applies latency compensation to all 3 outputs

## DJ Audio

### Device Type

* **Options**: Available audio driver types (Windows Audio, ASIO)
* **Function**: Selects the audio driver you want to use

### DJ Headphones Out

* **Options**: Available audio output devices
* **Function**: Sets the output device for the DJ's monitor

### Streaming Out

* **Options**: Available audio output devices
* **Function**: Sets the output device for the secondary audio output (e.g. for live playback, online streaming)

### Mic In

* **Options**: Available audio input devices
* **Function**: Sets the input device for the DJ's microphone

### Buffer Size

* **Options**: Available buffer sizes for output devices
* **Function**: Sets buffer size for DJ Headphones Out and Streaming Out

### Sample Rate (DJ)

* **Options**: Available sample rates for the DJ Headphones Out device
* **Function**: Sets sample rate for the DJ Headphones Out device

### Sample Rate (Streaming)

* **Options**: Available sample rates for the Streaming Out device
* **Function**: Sets sample rate for the Streaming Out device

{% hint style="warning" %}
We recommend setting the same sample rate for DJ Headphones and Streaming to avoid introducing audio glitches.
{% endhint %}

### Rescan Devices

If your input/output devices are not shown in the device list, use **Rescan Devices** to detect them.

<figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-1cb9a6f9a46395e1d96a2e37356457961c709695%2FScreenshot%20(86).png?alt=media" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Specific device names and options may vary depending on your hardware configuration.
{% endhint %}


# DJ Setup

You can change your DJ setup in the DJ Setup editor window.

{% hint style="info" %}
You cannot change your DJ setup in the tutorial map.
{% endhint %}

## Opening the DJ Setup Window

Press the **DJ Setup** button on the front toolbar of the DJ table.

## Mixer Selection

Choose your mixer type:

* **2-Channel Mixer**
* **4-Channel Mixer**

## Deck Selection

Choose the device for each deck slot:

* **None** — No device assigned
* **CDJ** — Standard CDJ deck
* **Stem Player** — Stem manipulation deck


# DJ Preferences

<figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-203c6dd0889e4a8fca28d5d48eae588a76cdd5c2%2FScreenshot%20(87).png?alt=media" alt=""><figcaption></figcaption></figure>

### Deck Meters

* Options per channel: PFL (Pre-Fader Listen), AFL (After-Fader Listen)
* Function: Sets metering mode for each deck, affecting level monitoring behavior.

### Master Meter

* Options: Stream, DJ HP
* Function: Determines whether the master meter displays levels for the stream output or DJ headphones.

### Sampler Routing

* Options: Master, Deck 1, Deck 2
* Function: Directs sampler audio to the master output or specific deck channels.

### Quantization Beat

* Options: 1/4, 1/8, 1/16
* Function: Sets the beat grid for quantized actions like autoloop and beat sync, ensuring rhythmic accuracy.

### Sync Mode

* Options: Tempo, Snap
* Function: Chooses between tempo only synchronization or beat locked sync between decks.

### Jog Adjust

* Control: Slider (0.0 - 5.0)
* Function: Fine tunes jog wheel sensitivity for scratching and track navigation.

### Jog Speed

* Control: Slider (0.0 - 5.0)
* Function: Simulates the start-up and slow-down time of vinyl playback.

### Brake Stop Time

* Control: Slider (0ms - 10000ms)
* Function: Sets the duration of the brake effect when stopping playback.

### Brake Start Time

* Control: Slider (0ms - 10000ms)
* Function: Sets the duration of the reverse brake effect when starting playback.

### Mixer Slider Curve

* Control: Slider (0 to 10)
* Function: Adjusts the response curve of mixer faders, from linear to sharp cut.

### Slider Sensitivity

* Control: Slider
* Function: Adjusts how responsive faders are to your hand movements.

### Knob Sensitivity

* Control: Slider
* Function: Adjusts how responsive knobs are to your hand movements.

### Slider Thumbstick Sensitivity

* Control: Slider
* Function: Adjusts fader response when using the controller thumbstick.

### Knob Thumbstick Sensitivity

* Control: Slider
* Function: Adjusts knob response when using the controller thumbstick.


# Track Preferences

Track Preferences can be found in the in-game menu under **Settings > Sound**.

## Analyzer

* **Max BPM** — Sets the maximum BPM of the analyzer's BPM range
* **Min BPM** — Sets the minimum BPM of the analyzer's BPM range

{% hint style="info" %}
The smaller the BPM range, the shorter the time it takes to analyze BPM.
{% endhint %}

* **Set First Beat Time At Current Position** — Sets the first beat offset time of the track on a deck at the current playback position

## Normalization

* **Normalization On Import** — Whether or not to apply audio volume normalization when a track is loaded to a deck
* **Target** — Sets the target volume of the normalization

## Streaming Quality

* **Bitrate** — Sets the bitrate of streaming audio (for tracks in the Online Library). A lower bitrate means shorter load times but reduced audio quality.

<figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-0913cb0202832b7acf78f5245f604a69004d04ce%2FScreenshot%20(88).png?alt=media" alt=""><figcaption></figcaption></figure>


# Avatars

When you launch the app, you'll find yourself in the **Green Room** — your personal space to customize your avatar and equipment before heading to the club.

### Avaturn Integration

District VR uses **Avaturn** to create hyper-realistic avatars. Simply take a photo of yourself and get a lifelike avatar that looks just like you.

**To create your avatar:**

1. Go to the Avatar Selection area in the Green Room
2. Take a photo of yourself using the Avaturn creator
3. Your realistic avatar will be generated automatically

**Avatar customization categories:**

* Outfit
* Top / Bottom
* Footwear
* Headwear
* Accessories

<figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2FW7c3stdmkd7hvkuwJve8%2FMetaScreenshot1763652123.jpeg?alt=media&amp;token=34f23643-2c75-4984-8eb7-49a9b4c08894" alt=""><figcaption></figcaption></figure>

### Purchasing Avatars

You can browse and purchase additional avatar items in the **in-game store** using your $CD currency.

{% hint style="info" %}
**Loading Time**: If the avatar takes a long time to load, it's likely due to a slow internet connection. For faster loading, ensure you have a good internet connection.
{% endhint %}


# Tutorial

The tutorial takes place on a **dedicated tutorial map** and covers everything you need to know to start DJing. A **professional voice-over with authentic Berlin flair** guides you through each step.

### What You'll Learn

1. **Environment Navigation**: Move and rotate in the virtual space
2. **DJ Setup**:
   * Loading tracks onto decks
   * Playing and pausing tracks
   * Using the crossfader and volume controls
3. **Advanced Techniques**:
   * Setting loops with quantization and autoloop
   * Syncing tracks
   * Applying effects
   * Using the jog wheel for CDJ-style control and vinyl-mode scratching

The tutorial uses voice-over instructions, visual cues (blinking buttons), and interactive tasks. It provides hints for common issues and offers praise upon completing objectives.

You can skip the tutorial at any time.

### Rewards

Completing the tutorial earns you **100 $CD** — a one-time reward to kick-start your in-game currency.

<div data-full-width="false"><figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-e7134a35afe08a04aeb3e8a5b85258c17ab842c4%2FFrame.png?alt=media" alt=""><figcaption></figcaption></figure></div>


# Pre Listening

When bringing in the next track.

<figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-ed58a967965caa21948c2b1e8a39e8835a3be760%2Fimage.png?alt=media" alt=""><figcaption></figcaption></figure>

You may want to hear the track coming in alone, or with the current track playing.

There are simple ways to do this.

### First of all

1. When your current track is playing, hit the **CUE button** above the volume fader to hear the incoming track on your headphones.
2. To hear the incoming track by itself, hit the round **MASTER** button at the top of your mixer. This will stop the Master track/volume from coming through your headphones.

{% hint style="info" %}
Neither of these buttons effect you master out volume that is going to the club or your live stream.
{% endhint %}


# Cameras

<div align="center"><figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-b571d8f1860c66d42496c57e948dba4a6e3170b0%2FScreenshot%20(101).png?alt=media" alt=""><figcaption></figcaption></figure></div>

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden></th></tr></thead><tbody><tr><td>Club Pan</td><td>Sweep across the dance floor</td><td></td><td><a href="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-acb550de7bb3386d56c63c899ac4ff590b034217%2FScreenshot%20(92).png?alt=media">Screenshot (92).png</a></td><td></td></tr><tr><td>DJ Orbit</td><td>Circle around your virtual self</td><td></td><td><a href="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-fc54a94d5dbd20b2f44189c0c586dd6018130572%2FScreenshot%20(90).png?alt=media">Screenshot (90).png</a></td><td></td></tr><tr><td>Bird's Eye View</td><td>Get a top-down perspective</td><td></td><td><a href="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-a18b49dd695c903051621edac0de3ad668551a8a%2FScreenshot%20(98).png?alt=media">Screenshot (98).png</a></td><td></td></tr><tr><td>Free Cam</td><td>Take control and find your perfect shot</td><td><a href="https://www.gitbook.com/integrations#visitor-authentication">https://www.gitbook.com/integrations#visitor-authentication</a></td><td><a href="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2Fgit-blob-5305a0057aaa2a11227dcadc232827b84d2a40bf%2FScreenshot%20(72).jpg?alt=media">Screenshot (72).jpg</a></td><td></td></tr></tbody></table>


# Recording

You can record your mix directly in the game.

## Opening the Audio Recorder

Press the **REC** button on the front toolbar of the DJ table.

## Settings

* **Name** — The name of the recording file
* **Location** — The save location of the recording file
* **Bit Rate** — Sets the bit rate of the recording

## Output

Choose what audio source to record:

* **Streaming** — Records audio from the final master output
* **Pre Master** — Records audio not affected by the master volume

## Recording

Press the **Record icon button** to start or stop recording.


# Microphone

Control your microphone input directly from the DJ booth.

## Volume Meter

Displays the real-time input volume of your microphone.

## Volume Slider

Sets the volume of the microphone input.

## Mute

Mute or unmute the microphone input.

## Monitor

Toggle whether or not to monitor the microphone input through your DJ Headphones.

## Talkback

Turn talkback on or off. When enabled, the master mix automatically ducks down when audio is detected on the microphone input — useful for making announcements over the music.


# Stream using OBS

Sharing your District VR performances with the world is an exciting way to connect with a broader audience.

***

### Requirements

* **OBS Studio**: Download and install from [obsproject.com](https://obsproject.com/).
* **District VR**: Installed and launched via Steam.
* **Streaming Accounts**:
  * Twitch
  * YouTube
  * X (Twitter)

***

### Setting Up OBS Studio

#### 1. Install OBS Studio

* **Download**: Visit the [OBS Studio website](https://obsproject.com/) and download the latest version for your operating system.
* **Install**: Run the installer and follow the on-screen instructions.

#### 2. Launch District VR

* **Open Steam**: Start the Steam client and sign in to your account.
* **Start Game**: Launch District VR from your Steam library.
* **Game Window**: A game window will pop up on your PC—this is what you'll capture in OBS.

#### 3. Open OBS Studio

* **Run OBS**: Launch OBS Studio from your desktop or Start menu.

#### 4. Add Game Capture Source

* **Sources Panel**: In OBS, locate the **Sources** box at the bottom of the window.
* **Add Source**:
  * Click the **+** button.
  * Select **Game Capture** from the list.
* **Create New Source**:
  * Name it (e.g., "District VR") and click **OK**.
* **Configure Settings**:
  * **Mode**: Set to **Capture Specific Window**.
  * **Window**: Choose the District VR game window from the dropdown.
  * **Options**: Check **Allow Transparency** if needed.
* **Confirm**: Click **OK** to add the source.

#### 5. Adjust the Capture

* **Preview Window**: Ensure the game fits properly in the preview area.
* **Resize if Necessary**: Drag the edges of the capture to adjust the size.

***

### Configuring Streaming Settings

#### 1. Open OBS Settings

* **Access Settings**: Click **Settings** in the lower-right corner of OBS.

#### 2. Stream Settings

* **Navigate to Stream Tab**: In the Settings window, click on **Stream**.
* **Service Selection**:
  * **Twitch**:
    * **Service**: Select **Twitch**.
    * **Connect Account**: Click **Connect Account (recommended)** and log in.
  * **YouTube**:
    * **Service**: Select **YouTube - RTMPS**.
    * **Stream Key**: Click **Get Stream Key** to retrieve it from your YouTube account.
  * **X (Twitter)**:
    * **Service**: Select **Custom...**.
    * **Server and Stream Key**: Obtain these from your X account's media settings and enter them.

#### 3. Output Settings

* **Output Tab**: Click on **Output** in the Settings window.
* **Output Mode**: Set to **Simple** for straightforward configuration.
* **Video Bitrate**:
  * **720p Streaming**: Set between **2500-3500 Kbps**.
  * **1080p Streaming**: Set between **4500-6000 Kbps**.
* **Encoder**:
  * Use **Hardware (NVENC)** if available for better performance.
  * Otherwise, select **Software (x264)**.
* **Audio Bitrate**: Set to **160 Kbps** for good audio quality.

#### 4. Video Settings

* **Video Tab**: Click on **Video**.
* **Base (Canvas) Resolution**: Set to your monitor's native resolution.
* **Output (Scaled) Resolution**:
  * **1280x720** for 720p streaming.
  * **1920x1080** for 1080p streaming.
* **Downscale Filter**: Choose **Bicubic (16 samples)**.
* **FPS**: Set to **30** or **60** depending on your system's capability.

#### 5. Audio Settings

* **Audio Tab**: Ensure your microphone and desktop audio devices are correctly selected.
* **Levels**: Adjust volumes in the **Mixer** panel on the main OBS screen.

***

### Starting Your Stream

#### 1. Prepare Your Scene

* **Double-Check Sources**: Ensure District VR is properly displayed in OBS.
* **Add Overlays**: Include any additional images or text you want on your stream.

#### 2. Test the Stream

* **Private Stream**: Some platforms allow you to stream privately to test settings.
* **Monitor Performance**: Check for any lag or audio issues.

#### 3. Go Live

* **Start Streaming**: Click the **Start Streaming** button in OBS.
* **Confirm Live Status**: Verify on your chosen platform that the stream is live.

***

### Streaming to Specific Platforms

#### Twitch

* **Dashboard**: Use the Twitch Dashboard to manage your stream.
* **Interact**: Engage with viewers via the chat.

#### YouTube

* **YouTube Studio**: Access [YouTube Studio](https://studio.youtube.com/) for stream settings.
* **Latency Settings**: Choose between normal, low, or ultra-low latency.

#### X (Twitter)

* **Media Studio**: Use [Twitter Media Studio](https://studio.twitter.com/) to configure your stream.
* **Promote**: Share your stream link in tweets for visibility.

***

{% hint style="info" %}
**Additional Tips**

* **Stable Internet**: Ensure you have a reliable internet connection with adequate upload speed.
* **System Resources**: Close unnecessary applications to free up CPU and memory.
* **Recording Option**: You can record your stream locally by clicking **Start Recording**.
  {% endhint %}

***

### Need Assistance?

Join our Discord community to get help from other streamers and the District VR team.


# Stem Player

The Stem Player sits at the top of your DJ booth and gives you hands-on control over individual track stems. It functions similarly to a CDJ but with dedicated stem manipulation capabilities.

#### Enabling the Stem Player

To add Stem Players to your setup:

1. Open the **DJ Setup** window by pressing the DJ Setup button on the front toolbar of the DJ table
2. Select **"District VR Stem Player"** in the deck option dropdown

<figure><img src="https://2684042124-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYt06M8gohrfkEHKXEVv5%2Fuploads%2FptRSZ5cJNMpqTwu0R4xb%2FMetaScreenshot1763487090.jpeg?alt=media&amp;token=96b24419-123d-4212-82d2-1a1929f7c411" alt=""><figcaption></figcaption></figure>

#### Loading Stems

Open the **Media Library** and look for tracks with a **stem icon**. You can drag and drop them onto the Stem Player or press the **Load** button to load.

{% hint style="warning" %}
Currently only provided stem tracks are supported. This feature is in development and may change.
{% endhint %}

#### Using the Stem Player

1. Performance Pads: Control individual stems by pressing the performance pads on the unit.
2. Jog Wheel Stem Control: Press and hold the jog wheel, then tap to mute or unmute each stem.
3. Loading Stems: Find your stems in the "4 of stems" section of the Media Library. Load them onto the Stem Player and start mixing.

#### 4-Channel Mixer

The mixer supports four channels, allowing you to blend CDJs and Stem Players simultaneously.

**Channel Assignment:**

* Ch 1: CDJ (Left)
* Ch 2: CDJ (Right)
* Ch 3: Stem Player (Left)
* Ch 4: Stem Player (Right)

**Switching Channels:** Use the channel buttons located under the volume faders to switch between channels 1/3 and 2/4.


# In-Game Store

The in-game store lets you browse and purchase items using your **$CD** currency. Customize your experience with new tracks, avatars, and mixer skins.

## Store Categories

* **Sound** — Individual tracks and full albums from curated labels
* **Avatar** — Avatar items and customization options (outfits, headwear, accessories, and more)
* **Style** — Mixer skins to customize the look of your DJ equipment

## Purchasing

* Browse items by category or check out the **Featured** section for highlighted picks
* Each item shows its price in $CD
* Albums can be purchased as a bundle — if you already own some tracks from an album, the price is adjusted accordingly
* Your purchase history is tracked and all owned items are available across sessions

## Earning $CD

* **Starting balance**: 200 $CD for new players
* **Daily login**: +10 $CD (once per 24 hours)
* **Tutorial completion**: +100 $CD (one-time reward)
* **Playtime milestones**:
  * 10 minutes: +10 $CD
  * 30 minutes: +40 $CD
  * 60 minutes: +100 $CD


# v0.5

### New Features

1. **Redesigned Club Environment**: The club has been completely reworked to capture authentic Berlin flair. Inspired by a vintage metro station, the new environment features an old subway train as its centerpiece, immersing you in the underground atmosphere that defines Berlin's iconic club scene.
2. **Avaturn Avatar Creator**: Create hyper-realistic avatars powered by Avaturn. Simply take a photo of yourself and get a lifelike avatar that looks just like you — a major upgrade from the previous avatar system.
3. **In-Game Currency ($CD)**: Introducing $CD — earn coins through daily logins (+10 $CD), playtime milestones (up to +100 $CD per session), and completing the tutorial (+100 $CD). New players start with 200 $CD. Stack your $CD to unlock upgrades and pimp up your gameplay.
4. **In-Game Store**: Browse and purchase tracks, avatar items, and mixer skins using your $CD. Features individual items, album bundles, and a curated featured section.
5. **Backend Integration with Steam**: Log in via Steam to sync and save your settings, rewards, cue points, and more across sessions. Your progress is always backed up and ready when you are.
6. **Rekordbox Integration**: Prepare your music in Rekordbox just like you're used to, then import your library straight into District VR — playlists, cue points, and all. Mix in VR just like you would in real life.
7. **Revamped Tutorial**: A brand-new tutorial on a dedicated map covers everything you need to know to start DJing. Now featuring a professional voice-over with authentic Berlin flair to guide you through every step. Completing it earns you 100 $CD.
8. **Mixer Skins**: Earn $CD and spend it on new mixer skins to add your personal style to the decks. Four additional skins are available at launch, with more coming soon.
9. **10 In-House Tracks**: Jump straight into the action with 10 built-in tracks ready to play — no setup needed.
10. **Mobilee Record Store**: Spend your $CD on 4 hand-picked Mobilee albums available in the in-game store — curated selections from one of Berlin's finest electronic music labels.
11. **Improved Adjustment Modes**: Enhanced positioning options now include a dedicated seated mode, so you can play comfortably whether standing or sitting.
12. **Improved Haptic Feedback**: Knobs now provide tactile haptic feedback as you turn them, giving you a more precise and immersive mixing experience.
13. **Improved Hand Tracking**: Controller hand tracking is now more precise and responsive. Plus, you no longer need to use the trigger button to press mixer buttons — just reach out and tap them directly.
14. **4-Channel Mixer**: Step up your sets with a full 4-channel mixer, allowing you to blend and layer more tracks at once.


# v0.2 Demo

Building on the foundation of our closed beta, we're excited to bring you the Demo release. This update focuses on personalization, professional audio support, and refined controller interactions that bring you closer to the authentic DJ experience.

### New Features

1. Ready Player Me Avatar Integration: Create and import your own custom avatar using Ready Player Me, bringing your unique identity into the virtual club.
2. Adjustable DJ Desk Angle: Customize your workspace by adjusting the angle of your DJ desk to match your preferred playing position.
3. ASIO Driver Support: Connect your professional audio interface with native ASIO driver support for ultra-low latency audio routing.
4. Rekordbox XML Library Import: Seamlessly import your existing Rekordbox library including playlists, cue points, and track metadata.
5. Stem Player: New Hardware integration: next to your CDJ you can now also use the new stem player.
6. Recording Playback: Access and review your recorded sessions directly from the Playlist window.
7. Haptic Controller Feedback: Feel tactile responses when interacting with knobs, sliders, and buttons for more intuitive control.
8. Visual Interaction Feedback: Components now highlight when in range and display output values as you adjust them.
9. Skippable Intro Voiceover: New users can now skip the introductory voiceover to jump straight into the action.

### Bug Fixes

1. Improved Wrist Angle: Avatar wrist positioning has been refined for more natural hand movements.
2. Consistent Jog Wheel Rotation: Fixed rotation direction inconsistency between CDJ mode and vinyl mode for predictable scratching.
3. Reduced Audio Latency: Improved synchronization between DJ headphone output and streaming output for tighter monitoring.
4. Waveform Display Accuracy: Fixed visual glitches causing waveforms to render incorrectly.
5. Text Input Improvements: Resolved issues with text highlighting and caret positioning in input fields.
6. FX Selection Window: Fixed the FX selection panel not appearing when accessed.
7. Multi-Drive File Browser: File Explorer now correctly displays and navigates between different drives (D:, E:, etc.).


# v0.1 closed beta

After countless iterations and tireless work, we’re proud to finally invite you to test and build with us. What we have now is the foundation for future developments — a playground for music enthusiasts and VR fans alike.

### Key Features

1. Professional-Grade Virtual DJ Controller: Experience state-of-the-art mixing with our meticulously crafted VR DJ controller.
2. Intelligent Audio Routing: Preview tracks seamlessly with our prelistening function.
3. Authentic Berlin Nightclub Atmosphere: a pulsating virtual club complete with NPC dancers.
4. Dynamic Lighting System: Watch as the club lights synchronize with your beats.
5. Backstage Practice Room: Hone your skills in a private space before taking the main stage.
6. Intuitive Music Management: Simply drag and drop tracks on your computer for instant in-game access.
7. Avatar Selection: Choose from 16 preset avatars or step into the shoes of Dennis Lisk in high resolution.
8. Multi-Angle Camera System: Capture your performance from various perspectives: Club Pan, DJ Orbit, Bird’s Eye View, Free Cam
9. Comprehensive DJ Tutorial: Learn the ropes with our in-depth guide to virtual DJing.

### Known Bugs


