BPM Sync
Keep your visuals in sync with the music using BPM Sync. Whether you're DJing with Pioneer gear, using Ableton Link with other apps, or manually tapping the tempo, FXCanvas provides flexible tempo synchronization options.
What is BPM Sync?
BPM (beats per minute) synchronization ensures your visual effects pulse and animate in time with the music. When properly synced, effects like strobes, color changes, and animations land perfectly on the beat.
FXCanvas supports three tempo sources:
| Source | Description |
|---|---|
| Internal | Set the BPM manually or tap it out by hand |
| Ableton Link | Connect with Ableton Live and other Link-enabled apps over your network |
| Pioneer DJ | Automatically sync with CDJs and mixers on the Pioneer DJ Link network |
Choose the Right Setup
Not sure which tempo source to use? Here's a quick guide to help you find the right setup for your situation.
Scenario 1: Solo VJ (Standalone Performance)
You want: Full control over your visuals without connecting to external apps or equipment.
Setup:
- Select Internal as your tempo source
- Use TAP, the BPM slider, or Quick Set buttons to set your tempo
- Leave Broadcast to Ableton Link unchecked
Best for: Solo performances, rehearsals, or when working with pre-recorded music at a known BPM.
Scenario 2: VJ Leading Musicians (You Control the Tempo)
You want: To set the tempo and have other Link-enabled apps follow you.
Setup:
- Select Internal as your tempo source
- Set your desired BPM using TAP, slider, or Quick Set
- Check Broadcast to Ableton Link
- Confirm the warning dialog
Best for: When you're the tempo leader and other visual apps or musicians should follow your BPM. Other Link apps will sync to whatever tempo you set.
Only enable this when you intend to be the tempo master. Other Link peers will have their tempo changed when you adjust yours.
Scenario 3: VJ Following DJ/Musicians (Safe Read-Only Sync)
You want: Your visuals to automatically follow someone else's tempo without affecting their session.
Setup:
- Select Ableton Link as your tempo source
- Leave tempo controls disabled (this is the default)
- Your visuals now follow the Link session automatically
Best for: Live music events where a DJ, musician, or Ableton Live is controlling the tempo. This is the safest option for working with live performers because you can't accidentally change their tempo.
This is the recommended setup for most live performance situations. The tempo controls are visible but grayed out, ensuring you won't accidentally affect the musicians.
Scenario 4: VJ Collaboration (Shared Tempo Control)
You want: To actively participate in a Link session where multiple people can change the tempo.
Setup:
- Select Ableton Link as your tempo source
- Check Allow tempo changes (affects all Link peers)
- Confirm the warning dialog
- Tempo controls (TAP, slider, Quick Set) become active
Best for: Collaborative visual jams with other VJs, or situations where you need to occasionally nudge the tempo while still following Link.
Any tempo changes you make will affect all connected Link peers. Only enable this when everyone in the session agrees to shared tempo control.
Quick Reference
| Your Situation | Tempo Source | Options to Enable |
|---|---|---|
| Solo VJ, no Link | Internal | None |
| You lead, others follow Link | Internal | Broadcast to Ableton Link |
| You follow DJ/musician | Ableton Link | None (receive-only) |
| VJ collaboration | Ableton Link | Allow tempo changes |
Tempo Sources
Internal
Internal mode gives you direct control over the tempo. This is ideal when you're not connected to other DJ equipment or apps.
Key features:
| Control | Description |
|---|---|
| TAP button | Click rhythmically to detect BPM |
| BPM slider | Drag to adjust tempo between 20 and 300 BPM |
| BPM input | Type an exact BPM value |
| Speed multipliers | Double or halve the effective speed |
| Quick Set buttons | Jump to preset BPM values instantly |
Use Internal mode when:
- You know the exact BPM of your music
- You're working with pre-recorded content at a fixed tempo
- You want full manual control
Ableton Link
Ableton Link is a technology that keeps music applications in time over a local network. When enabled, FXCanvas joins a Link session and automatically synchronizes with other participating apps.
What you can sync with:
- Ableton Live
- Other Link-enabled music software
- iOS music apps supporting Link
- Hardware synths with Link support
How it works:
When you select Ableton Link as your tempo source, FXCanvas joins the Link session and follows the shared tempo and beat phase. By default, FXCanvas operates in receive-only mode — it follows tempo changes from other peers but cannot change the tempo itself. This is the safest option for live performances.
Bidirectional Mode:
When Ableton Link is selected, you'll notice the tempo controls (TAP, BPM slider, Quick Set buttons) are visible but disabled by default. This prevents accidental tempo changes that could disrupt other Link participants.
To enable tempo control:
- Check Allow tempo changes (affects all Link peers)
- A warning dialog will explain the implications
- Once confirmed, tempo controls become active
- Any changes you make will affect all connected Link apps
Use Ableton Link when:
- Collaborating with musicians using Ableton Live
- Multiple visual apps need to stay in sync
- You want automatic, hands-free tempo sync
- Working alongside a DJ or musician controlling tempo (receive-only mode)
Pioneer DJ
Pioneer DJ mode connects to CDJs and mixers using the DJ Link protocol. This requires the open-beat-control bridge software, which FXCanvas manages automatically.
Supported equipment:
- Pioneer CDJ players (CDJ-2000, CDJ-3000, etc.)
- Pioneer DJM mixers
- Pioneer XDJ controllers
- rekordbox
How it works:
When Pioneer DJ mode is active, FXCanvas connects to your DJ equipment over the network and receives beat and tempo information from the current tempo master (usually the CDJ currently controlling the mix).
Use Pioneer DJ mode when:
- DJing with Pioneer equipment
- You want automatic sync without tapping
- Your CDJs are on the same network as your computer
Using the BPM Sync Panel
Opening the Panel
The BPM Sync panel is available from the Window menu. Select Window → BPM Sync to open it.
Selecting a Tempo Source
At the top of the panel, you'll see radio buttons for each tempo source:
| Radio Button | Description |
|---|---|
| Internal | Manual BPM control with TAP tempo |
| Pioneer DJ | Sync tempo from Pioneer DJ gear via open-beat-control |
| Ableton Link | Sync tempo from Ableton Link session |
| MIDI Clock | Sync tempo from MIDI clock input |
Understanding the Display
- BPM Display — Shows the current tempo in beats per minute. This updates automatically when synced to external sources.
- Beat Indicator — Visual circle that pulses on each beat. Use this to verify your visuals are properly synced with the music.
Using TAP Tempo
The TAP button lets you manually detect the BPM by tapping along with the music:
- Click TAP rhythmically in time with the beat
- After several taps, FXCanvas calculates the average BPM
- The button changes color to show progress:
- Default color — No taps registered
- Orange — Tapping in progress
- Green — Valid BPM detected
Tap on the downbeats (the strong beats) for the most accurate detection. At least 3-4 taps are needed for a reliable reading.
Using the RESYNC Button
Click RESYNC to reset the beat phase to the beginning. This is useful when:
- Your visuals have drifted out of sync
- You want to align the beat phase with a specific moment in the music
- Starting a new track or section
Speed Multipliers
Speed multipliers adjust how fast your effects respond relative to the actual BPM:
| Button | Effect | Example at 120 BPM |
|---|---|---|
| /4 | Quarter speed (4 beats become 1) | 30 effective BPM |
| /2 | Half speed (2 beats become 1) | 60 effective BPM |
| 1:1 | Normal speed (default) | 120 effective BPM |
| *2 | Double speed (1 beat becomes 2) | 240 effective BPM |
| *4 | Quadruple speed (1 beat becomes 4) | 480 effective BPM |
Quick Set BPM
When enabled, Quick Set buttons let you jump to common BPM values with one click. Default values are 60, 90, 120, and 140 BPM.
You can customize these values in Settings. See the Settings section below.
Pioneer DJ Setup
Requirements
To use Pioneer DJ sync, you need:
- Java 11 or later — Required to run the open-beat-control bridge
- Pioneer equipment — CDJs, mixers, or XDJ controllers
- Network connection — Your computer and DJ equipment must be on the same network
Checking Java Installation
FXCanvas will detect Java automatically from:
- A bundled Java runtime (if included)
- The JAVA_HOME environment variable
- Your system PATH
If Java is not found, you'll see an error message suggesting you install Java 11 or later.
Enabling Pioneer DJ Mode
- Select Pioneer DJ as your tempo source
- FXCanvas automatically starts the open-beat-control bridge
- Wait a few seconds for the bridge to connect to your network
Understanding the Device List
When connected, you'll see a collapsible Pioneer Devices section showing discovered devices:
The list shows:
| Column | Description |
|---|---|
| Lock icon — Click the lock (unlocked) icon to lock a device as the tempo source, or click the lock (locked) icon to return to auto-follow master mode | |
| Device name — Model of the device (CDJ-2000nxs2, DJM-900NXS2, etc.) | |
| Device number — Player number (1-4 for CDJs, 33 for mixers) | |
| MASTER — Badge shown when device is the DJ Link tempo master | |
| BPM — Current tempo of the device |
The tempo master is typically the CDJ that is currently playing and controlling the mix.
Troubleshooting Pioneer DJ
No devices found:
- Verify your computer is on the same network as your DJ equipment
- Check that Pro DJ Link is enabled on your CDJs
- Ensure no firewall is blocking UDP traffic
- Try restarting Pioneer DJ mode
Java not found:
- Install Java 11 or later from adoptium.net
- Set the JAVA_HOME environment variable
- Restart FXCanvas after installing Java
Bridge not starting:
- Check if another application is using OSC port 17002 or 17003
- Ensure open-beat-control.jar is present in the lib/runtime folder
- Check the application logs for error messages
Ableton Link Setup
Enabling Link
- Select Ableton Link as your tempo source
- FXCanvas automatically joins the Link session on your network
- The BPM display shows the current Link session tempo
- By default, tempo controls are disabled for safety
Connecting with Other Apps
Any Link-enabled app on the same network automatically sees other participants. Make sure:
- All devices are on the same local network (WiFi or Ethernet)
- Link is enabled in each participating app
- No firewall is blocking Link traffic (UDP multicast)
Understanding Peer Count
When connected, the panel shows the Link status with peer count:
- 0 peers — FXCanvas is in a Link session alone
- 1+ peers — Other apps are connected and synced
The peer count shows other apps, not including FXCanvas itself.
Enabling Bidirectional Mode
By default, when Ableton Link is your tempo source, tempo controls are disabled. This prevents you from accidentally changing the tempo for everyone else in the Link session.
To enable tempo control while using Ableton Link:
- Look for the Allow tempo changes (affects all Link peers) checkbox
- Check the box — a warning dialog will appear
- Read the warning carefully and click Enable if you understand the implications
- The tempo controls (TAP, BPM slider, Quick Set) become active
When to enable bidirectional mode:
- You're collaborating with other VJs who are all sharing tempo control
- You need to occasionally adjust tempo during a visual performance
- Everyone in the Link session agrees to shared tempo control
When to keep it disabled (recommended):
- You're syncing with a DJ or live musician
- Ableton Live or other production software is running in the session
- You want a "set it and forget it" sync experience
The Warning Dialog
The first time you enable either Broadcast to Ableton Link or Allow tempo changes, FXCanvas shows a warning:
Enable Link Tempo Control?
This will allow FXCanvas to control the tempo of all devices connected to this Ableton Link session.
Only enable this option when your Link session consists of visual and lighting applications. Do not enable if music production software (like Ableton Live) is connected, as this could disrupt your performance.
You can check "Don't show this again" if you're familiar with Link and understand the implications. This preference is saved and can be reset in Settings if needed.
Broadcast to Ableton Link
The Broadcast to Ableton Link option lets FXCanvas send its tempo to a Link session. This is useful when:
- Using Pioneer DJ as your source and you want to share tempo with Link apps
- Using Internal mode and you want to be the tempo master for other apps
Enabling Broadcast
When you first enable this option, a warning dialog appears:
- This reminder explains that enabling broadcast makes FXCanvas control tempo for all connected Link apps
- Only enable this when your Link session consists of visual/lighting apps
- Avoid enabling this if Ableton Live or other music production software is connected
When Broadcast is Active
- Status shows a link icon with "Link bridge active" and peer count
- Green text indicates peers are connected
- Yellow/orange text indicates no peers found yet
Settings
BPM Sync settings are available in the Settings window under the BPM Sync tab.
Available Settings
| Setting | Description |
|---|---|
| Show Quick Set BPM Buttons | Toggle the Quick Set row on or off in the BPM Sync panel |
| Quick Set BPM Values | Customize which BPM values appear as quick buttons (click to edit, right-click to remove, click + to add) |
| Reset to Defaults | Restores Quick Set values to 60, 90, 120, and 140 |
Quick Set values must be between 20 and 300 BPM, and you can have between 2 and 8 quick set buttons.
Tips and Best Practices
For Live Performance
- Test your sync before the show — Make sure Pioneer DJ or Link is working correctly during soundcheck
- Have a backup plan — Know how to quickly switch to Internal mode and tap the tempo if sync fails
- Use RESYNC strategically — Hit RESYNC at the start of a track or during transitions to ensure tight sync
Choosing the Right Tempo Source
| Tempo Source | Best For |
|---|---|
| Pioneer DJ | Club environments with professional DJ equipment |
| Ableton Link | Studio collaborations and multi-app setups |
| Internal | Standalone use or when other sync options aren't available |
Speed Multiplier Tips
- Use /2 for slower, more dramatic effects on fast music
- Use *2 for energetic, quick animations on slower music
- The 1:1 setting works well for most situations
Network Considerations
- Pioneer DJ Link and Ableton Link both require network access
- For reliability, prefer wired Ethernet over WiFi
- Ensure your firewall allows the necessary UDP traffic
Safety Tips for Using Link with Live Musicians
Working with live musicians requires extra care to avoid disrupting their performance. Here are some important guidelines:
Before the Performance
- Communicate with the musicians — Let them know you'll be connecting via Ableton Link
- Agree on who controls tempo — In most cases, the musician should be the tempo master
- Test during soundcheck — Verify Link is working and your visuals sync properly
- Default to receive-only mode — Keep "Allow tempo changes" disabled unless specifically needed
During the Performance
- Don't touch tempo controls — Even if you enable bidirectional mode, avoid changing BPM during a live set
- Monitor but don't interfere — Watch the beat indicator to ensure sync is maintained
- Know your fallback — If Link fails, be ready to switch to Internal and tap the tempo
Common Mistakes to Avoid
| Mistake | Why It's a Problem | Prevention |
|---|---|---|
| Enabling "Allow tempo changes" at a live gig | You might accidentally change the musician's tempo | Keep it disabled — use receive-only mode |
| Leaving "Broadcast to Ableton Link" enabled | Your internal tempo changes will affect the session | Only enable when you're intentionally leading |
| Not testing before the show | Link issues are stressful to debug during a performance | Always test during soundcheck |
| Using WiFi instead of Ethernet | Network instability can cause sync drift | Use wired connections when possible |
When It's Safe to Use Bidirectional Mode
Bidirectional mode (either via Broadcast to Ableton Link or Allow tempo changes) is safe when:
- You're the only performer or working with other VJs only
- Everyone agrees to shared tempo control in advance
- You're in a rehearsal or jam session, not a live show
- You're working with apps that expect tempo changes (e.g., lighting software)
Troubleshooting Ableton Link
No Peers Detected
Symptoms: Peer count shows 0 even though other Link apps are running.
Solutions:
- Verify all devices are on the same WiFi network or connected via Ethernet
- Check that Link is enabled in the other application(s)
- Temporarily disable Windows Firewall to test if it's blocking multicast traffic
- If using multiple network adapters, ensure they're on the same subnet
- Restart FXCanvas and the other Link-enabled applications
Tempo Not Syncing
Symptoms: Peer count shows connections but BPM doesn't match other apps.
Solutions:
- Click RESYNC to reset the beat phase
- Check if another app has recently changed tempo — it may take a moment to propagate
- Verify you don't have "Broadcast to Ableton Link" enabled when using Internal mode unintentionally
Tempo Controls Won't Enable
Symptoms: "Allow tempo changes" checkbox doesn't activate the controls.
Solutions:
- Ensure Ableton Link is selected as your tempo source (not Internal or Pioneer DJ)
- Check the checkbox — controls only enable when the checkbox is checked
- If the checkbox is grayed out, verify FXCanvas has joined the Link session successfully
Beat Phase Drift
Symptoms: Visuals gradually drift out of sync with the music over time.
Solutions:
- Click RESYNC to realign the beat phase
- Check that the tempo source is stable (not fluctuating)
- If using WiFi, consider switching to Ethernet for more stable timing
- Verify no other Link peer is fighting for tempo control
Link Conflicts with Other Software
Symptoms: Enabling Link causes issues with other running applications.
Solutions:
- Some DAWs need Link explicitly enabled in preferences
- Check if another application is trying to be the Link tempo master
- Close unnecessary Link-enabled apps to simplify the session
- On Windows, ensure no VPN software is interfering with multicast traffic
Still Having Issues?
If you continue to experience problems with Ableton Link:
- Check your firewall settings — Link uses UDP multicast
- Try connecting via Ethernet instead of WiFi
- Ensure all devices are on the same network subnet
- Consult the Ableton Link documentation for additional troubleshooting
Related Topics
- Getting Started — Overview of FXCanvas basics