COLLECTIVEunconscious
← Tools
Android Public beta

PVJ

Portable VJ mixer & mapper.

Mix clips, shaders and live camera on your phone and send a clean full-resolution picture to a projector over USB-C. The controls stay on the phone.

Live · phone to wall
Out in the world

IN THE FIELD

ANO Q 2026 — facade
Phone → projector → wall
Controls stay on the phone
Mapped output, live
In the room
Booth
What it does

FEATURES

01

PROJECTOR OUT AT FULL RES

Plug in a USB-C to HDMI adapter and the projector gets the clean output at native 1080p. The interface stays on your phone, so the audience never sees it.

02

CLIP SEQUENCER

A thumbnail grid of your clips, a BPM-synced sequence strip you can drag and reorder, shuffle, and saved sequence slots for each set.

03

INSTANT CUTS

The next clip is preloaded while the current one plays, so cuts land on the beat with no stall, at a steady 60 fps.

04

REAL-TIME SHADERS

GLSL effects on the live picture: ASCII, RGB Shift, Kaleidoscope, Feedback, Pixelate and Chroma.

05

MASKS AND WARP

Polygon masks and soft-edged PNG masks, plus corner warping with a nudge pad, numeric entry and a test grid for lining up on any surface.

06

LIVE INPUT

Use the phone camera as a source, react to the room through the mic, and lock to tempo with BPM detection or tap tempo.

07

SET RECORDING

Record your output to a video file on the phone to review or share the set afterwards.

08

OFFLINE AND PRIVATE

No account, no internet connection, no tracking. Clips come in through the Android file picker, including from Google Drive, and stay on the device.

Demo

MAPPING TOOLS

Fit the picture to the surface, from the phone.

Draw polygon masks around windows, panels and objects, or load soft-edged PNG masks. Drag the corners to warp the output onto any wall, then fine-tune with the nudge pad, numeric entry and a test grid.

Watch on YouTube ↗
Straight from the output

FRAMES

ASCII
Live camera · RGB Shift
Live camera · Kaleidoscope
Public beta

GET THE BETA

PVJ 0.7.0-beta2 for Android · 126 MB · Android 10 or newer · a USB-C to HDMI adapter (or a USB-C display) for the projector.

Download APK · 126 MB Google Play · soon
Filepvj-0.7.0-beta2.apk
SHA-2568d89f6dde49e73bb13efd6bdb34db4b3f31ab4a3cff1f6a806f4ad1e840ea570
pvj-0.7.0-beta2.apk.sha256
Packagestudio.cu.pvj · version 0.7.0-beta2 (versionCode 2)
RequiresAndroid 10 or newer. Release-signed; no Google account needed.
PermissionsCamera and microphone only, and only when you turn them on. No internet permission.

No account, no sign-in, no ads, no analytics. Read the privacy policy.

Previous version: pvj-0.6.0-beta1.apk (126 MB) · .sha256

Install
  1. Download pvj-0.7.0-beta2.apk on the phone.
  2. Open it from Chrome's downloads. The first time, Android asks you to allow installs from Chrome: allow it, then open the file again.
  3. An older VJMIX build must be uninstalled first. A beta1 PVJ updates in place.
  4. Open PVJ. After the ident you are asked for a clips folder: CHOOSE FOLDER, make or pick Movies/PVJ, allow access. PVJ reads that folder and the folders directly inside it.

This build is signed with our own key, so a Play Store install will not replace it later: when PVJ reaches the Play Store, uninstall this one first.

Join the beta list to hear about each new build by email: one message per release, nothing else. Feedback and bug reports go to the same address, dev@c-u.studio.

What's new in beta2
  • Import a starter pack straight from the zip: LIB ▸ IMPORT PACK (.ZIP)…
  • Clips in folders inside your clips folder are played too, each folder with its own chip.
  • The folder is re-read when you come back to the app.
  • An idle ident on the projector when there is nothing to play (OUTPUT ▸ IDLE SCREEN).
  • The ident plays on launch; new icon; MODE ▸ ABOUT with version and links.
  • Fixed: the clip grid now follows every rescan.
Clips

STARTER PACKS

Free 1080p loops made for PVJ, to use in your sets.

Licensed CC BY-NC 4.0: use them in live sets and recordings of them, and credit “Collective Unconscious” where credits are given. Don't resell or redistribute the files themselves, and ask before using them in paid advertising. Each zip includes a README with the full list.

39 clips · one frame each
38 loops + ident · 1920×1080 · 30 fps · H.264 · 10 s each

STARTER PACK V1

Mirrored neon kaleidoscopes, voxel cities and RGB wireframes, then glitching mono and lavender terrain. Includes the PVJ ident, a Game of Life run that spells out the name. For lining up the projector, use the test grid built into PVJ’s mapping tools.

What's inside · 39 files
00 PVJ_01_00_ident.mp4
PVJ ident, Game of Life: cells form "COLLECTIVE unconscious" then "PVJ"
10 s
01 PVJ_01_POP_box_glitchtex_05_loop01_1080p.mp4
mirrored neon kaleidoscope, bright bursts on black
10 s
02 PVJ_01_POP_box_glitchtex_05_loop02_1080p.mp4
symmetric neon machine, yellow and magenta flashes
10 s
03 PVJ_01_POP_box_glitchtex_05_loop03_1080p.mp4
dark symmetric glitch, sparse neon accents
10 s
04 PVJ_01_POP_box_glitchtex_05_loop04_1080p.mp4
mirrored neon structure dissolving into sparks
10 s
05 PVJ_01_POP_box_glitchtex_09_loop01_1080p.mp4
near-black, faint drifting neon flecks; good for layering
10 s
06 PVJ_01_POP_box_glitchtex_09_loop02_1080p.mp4
dark field of sparse neon streaks
10 s
07 PVJ_01_POP_box_glitchtex_09_loop03_1080p.mp4
rainbow particle streaks flying past on black
10 s
08 PVJ_01_POP_box_glitchtex_11_loop01_1080p.mp4
dense neon voxel city, fast colour flashes
10 s
09 PVJ_01_POP_box_glitchtex_11_loop02_1080p.mp4
neon voxel blocks with scattered lights
10 s
10 PVJ_01_POP_box_glitchtex_11_loop03_1080p.mp4
flythrough of rainbow voxel facades
10 s
11 PVJ_01_POP_box_glitchtex_11_loop04_1080p.mp4
neon voxel bursts, yellow and magenta
10 s
12 PVJ_01_POP_box_glitchtex_13_loop01_1080p.mp4
thin RGB wireframe city, occasional colour bursts
10 s
13 PVJ_01_POP_box_glitchtex_13_loop02_1080p.mp4
wireframe boxes with pink and green pixel panels
10 s
14 PVJ_01_POP_box_glitchtex_13_loop03_1080p.mp4
wireframe grid, sparse pixel flashes
10 s
15 PVJ_01_POP_box_glitchtex_13_loop04_1080p.mp4
wireframe boxes, big yellow burst mid-loop
10 s
16 PVJ_01_POP_box_glitchtex_13_loop05_1080p.mp4
dense RGB wireframes, coloured pixel windows
10 s
17 PVJ_01_POP_box_glitchtex_13_loop06_1080p.mp4
wireframe city, magenta and rainbow block flashes
10 s
18 PVJ_01_TERRAIN_NOISE_001_loop01_1080p.mp4
black and white glitch terrain, sliced mountains, hard cuts
10 s
19 PVJ_01_TERRAIN_NOISE_001_loop02_1080p.mp4
mono ridgelines with purple and green colour glitches
10 s
20 PVJ_01_TERRAIN_NOISE_001_loop03_1080p.mp4
purple/teal fluid terrain shifting to grey peaks
10 s
21 PVJ_01_TERRAIN_NOISE_001_loop04_1080p.mp4
mono sliced terrain with a purple flash
10 s
22 PVJ_01_TERRAIN_NOISE_001_loop05_1080p.mp4
striped column glitches over mountains, teal patch
10 s
23 PVJ_01_TERRAIN_NOISE_001_loop06_1080p.mp4
high-contrast white ridges sliding across black
10 s
24 PVJ_01_TERRAIN_NOISE_002_loop01_1080p.mp4
soft mono peaks, smooth camera, colour-fringed edges
10 s
25 PVJ_01_TERRAIN_NOISE_002_loop02_1080p.mp4
mono peaks broken by sliced columns
10 s
26 PVJ_01_TERRAIN_NOISE_002_loop03_1080p.mp4
sliced terrain melting into a liquid white surface
10 s
27 PVJ_01_TERRAIN_NOISE_002_loop04_1080p.mp4
mono mountains, pale green tint near the end
10 s
28 PVJ_01_TERRAIN_NOISE_003_loop01_1080p.mp4
dim mint-grey terrain, horizontal light streaks
10 s
29 PVJ_01_TERRAIN_NOISE_003_loop02_1080p.mp4
dark, sparse silver streaks; good for layering
10 s
30 PVJ_01_TERRAIN_NOISE_003_loop03_1080p.mp4
near-black with faint silver wisps; very subtle
10 s
31 PVJ_01_TERRAIN_NOISE_004_loop01_1080p.mp4
dark lavender ridges, chrome glitch strips
10 s
32 PVJ_01_TERRAIN_NOISE_004_loop02_1080p.mp4
lavender terrain, chrome glitch strips
10 s
33 PVJ_01_TERRAIN_NOISE_004_loop03_1080p.mp4
lavender and silver mountains, liquid-chrome surfaces
10 s
34 PVJ_01_TERRAIN_NOISE_004_loop04_1080p.mp4
bright lavender peaks, sliced blocks
10 s
35 PVJ_01_TERRAIN_NOISE_004_loop05_1080p.mp4
dark terrain with glossy black textures
10 s
36 PVJ_01_TERRAIN_NOISE_004_loop06_1080p.mp4
icy peaks with glitch slices
10 s
37 PVJ_01_TERRAIN_NOISE_004_loop07_1080p.mp4
icy blue mountains, vertical slice glitches
10 s
38 PVJ_01_TERRAIN_NOISE_004_loop08_1080p.mp4
bright icy-blue ridges, high contrast
10 s
22 clips · one frame each
22 loops · 1920×1080 · 25 fps · H.264

STARTER PACK V2

15 long loops (28–33 s) and 7 short ones (6 s): mono slit-scan glitch, neon pixel pops and voxel walls, endless grey noise flow, and a set of copper glass-box grids.

What's inside · 22 files
01 PVJ_02_NoiseSlit_alt_1080_01_loop01.mp4
mono slit-scan glitch, mirrored barcode structure
30 s
02 PVJ_02_NoiseSlit_alt_1080_01_loop02.mp4
mono slit-scan, sparse vertical slits building up
30 s
03 PVJ_02_NoiseSlit_alt_1080_01_loop03.mp4
mono slit-scan, mirrored totem forms with white flares
30 s
04 PVJ_02_NoiseSlit_alt_1080_01_loop04.mp4
faint centred slit forms; very dark, good for layering
30 s
05 PVJ_02_NoiseSlit_alt_1080_02_loop01.mp4
horizontal streak bands and diagonal shards
30 s
06 PVJ_02_NoiseSlit_alt_1080_02_loop02.mp4
mostly dark, bright diagonal shards cutting through
30 s
07 PVJ_02_POPS_RD_30s_1080_01_a.mp4
neon pixel fragments popping on black
31 s
08 PVJ_02_POPS_RD_30s_1080_01_b.mp4
glowing magenta and white blocks
28 s
09 PVJ_02_POPS_RD_30s_1080_01_c.mp4
sparse neon specks and edges on black
32 s
10 PVJ_02_POPS_RD_30s_1080_01_d.mp4
yellow neon tower edges, sparse
29 s
11 PVJ_02_POPS_RD_30s_1080_01_e.mp4
dark with rare neon glints and a magenta streak
30 s
12 PVJ_02_POPS_RD_30s_1080_02_a.mp4
neon voxel windows, purple and cyan
30 s
13 PVJ_02_POPS_RD_30s_1080_02_b.mp4
dense green, magenta and cyan voxel walls
30 s
14 PVJ_02_flow_endless_30s_1080_01_b.mp4
grey displacement texture flowing like a slow tunnel
33 s
15 PVJ_02_noiseFlow_endless_1080_02_loop03.mp4
grey hair-like noise flow, swirling vortex
30 s
16 PVJ_02_recboxes_1080_a.mp4
copper glass-box grid, slow aerial drift
6 s
17 PVJ_02_recboxes_1080_b.mp4
copper glass-box grid, rotating view
6 s
18 PVJ_02_recboxes_1080_c.mp4
copper boxes with warm highlights, tilted view
6 s
19 PVJ_02_recboxes_1080_d.mp4
copper box grid, deep perspective, warm glints
6 s
20 PVJ_02_recboxes_1080_e.mp4
copper box grid, close and warm
6 s
21 PVJ_02_recboxes_1080_f.mp4
dark copper box grid, steep angle
6 s
22 PVJ_02_recboxes_1080_g.mp4
copper box grid with teal reflections
6 s
Import on the phone · new in beta2
  1. Download the zip on the phone.
  2. In PVJ open LIB ▸ SOURCES & LIBRARY ▸ IMPORT PACK (.ZIP)… and pick the zip in Downloads.
  3. Let it count FILE n OF N. When it says IMPORTED, the clips are in your clips folder and already in the grid.

The zip stays in Downloads; delete it when you like. Importing the same pack again skips every clip you already have.

Or copy from a computer
  1. Unzip the pack on the computer.
  2. Copy the .mp4 files into the phone's Movies/PVJ, or a folder inside it, one level deep.
  3. Open PVJ: the folder is re-read when the app comes back to the front. A file replaced under the same name needs RESCAN CLIPS FOLDER.

Your own clips work the same way. What we test: H.264 .mp4 at 1080p or 720p, 30 or 60 fps, cut to loop cleanly.

Demo clips

PVJ ships with eight demo loops, so there is something on the projector before you download anything. When you choose an empty clips folder, PVJ offers to put them in it: LOAD DEMO CLIPS. They are copies: delete or replace them whenever you like. LIB ▸ SOURCES & LIBRARY ▸ LOAD DEMO CLIPS puts them back and never makes a duplicate.

Tips
  • High-contrast loops work best with masks and the ASCII shader.
  • Slow, large-scale loops read best when warped onto walls.
  • Dark, sparse loops are great layered over brighter ones.
  • Use the test grid in PVJ's mapping tools to line up the projector before the set.
Before you start

REQUIREMENTS

PhoneAndroid phone. Tested on Google Pixel 8 and Pixel 9a.
Projector outputA phone with video out over USB-C (DisplayPort Alt Mode) and a USB-C to HDMI adapter. Without it, PVJ runs on the phone screen.
Your mediaVideo clips and images on the phone, Google Drive or any storage app that shows up in the Android file picker.
InternetNot needed. PVJ works fully offline.
Roadmap

COMING IN PRO

  • PVJ-Touch link: stream PVJ into TouchDesigner
  • LED panel output over DDP
  • Body and hand tracking with MediaPipe
  • OSC in and out
  • Dual decks: link several phones as decks and crossfade between them with blend modes