Open App

Music Scripter

Generate scripts synchronized to music beats, rhythm, and song structure.

Overview

Music Scripter tool

Music Scripter analyzes audio to detect beats, tempo, and song structure, then generates funscript points synchronized to the music. It is designed for PMV content or any video where you want the script to follow the rhythm.

Enhanced with the Bridge

Music Scripter works in your browser. If you have the ScriptCompiler Bridge installed, audio analysis runs natively on your machine for improved performance and additional format support. The Bridge is optional.

How It Works

  1. You load an audio or video file into Music Scripter
  2. The audio is analyzed for beat detection, tempo tracking, beat classification, and section detection
  3. Detected beats appear as yellow markers on the waveform
  4. You choose a pattern and adjust settings
  5. A preview of the generated script is shown as a green line over the waveform
  6. Click Apply to Script to add the generated points to the timeline
Click to seek
Click anywhere on the waveform to seek to that position. The video player stays in sync.

Getting Started

  1. Click the Music icon in the Tools Panel to open Music Scripter
  2. Drop an audio file or video file onto the drop zone, or click to browse
  3. Wait for analysis to complete (the progress stage is shown while it runs)
  4. Choose a pattern from the toolbar
  5. Adjust settings and preview the result
  6. Click Apply to Script to add points to the timeline

Supported audio formats: MP3, WAV, OGG, and FLAC. Video files are also accepted. When the Bridge is installed, it extracts audio using FFmpeg, which supports additional formats.

Replace mode
Enable the Replace checkbox to replace all existing timeline points when applying. Leave it unchecked to merge the generated points with your existing script.

Settings

Setting Description
Sensitivity (Sens) Beat detection sensitivity (10-90%). Higher detects more beats; lower detects only the strongest ones.
Intensity (Int) Stroke intensity (10-100%). Controls how much of the position range is used. Lower values create smaller movements.
Range Min/max position values (0-100). Defines the vertical range for generated strokes.
Pulse Duration (Dur) Visible in Pulse mode only. Controls how long each pulse takes (100-800ms) from start to peak and back to rest.

Rhythm Patterns

Pattern Description
Bounce Full strokes timed so the peak lands exactly on each beat. Creates alternating up/down motion.
Wave Smooth sinusoidal motion that peaks at each beat. Feels natural and flowing.
Pulse Quick strokes that snap back to rest between beats. Overlapping pulses are automatically skipped.
Energy Map Stroke height follows the loudness of each beat. Creates dynamic movement that tracks the music's intensity.

Beat Types

Each detected beat is classified by its dominant frequency range:

Type Frequency Range Typically represents
Kick 20-250 Hz Bass drum, low-end punch
Snare 250-4000 Hz Snare drum, mid-range hits
Hihat 4000-16000 Hz Hi-hat, high-frequency transients

Beat type information is displayed in the waveform view and can be used to understand the rhythm structure of the analyzed audio.

Song Sections

In addition to individual beats, Music Scripter detects the overall structure of the song by analyzing chroma and timbre features. Sections like intro, verse, chorus, bridge, and outro are identified automatically and shown in the waveform. Use this to understand the song's shape and apply different patterns to different sections.

Tips

Choose Audio with a Clear Beat

Songs with strong, consistent beats work best. Ambient or complex polyrhythmic music may produce inconsistent results.

Use Video Files Directly

You do not need to extract audio separately. Drop the video file directly into Music Scripter and audio extraction is handled automatically.

Start with Default Settings

Begin with defaults and adjust based on the preview. Small changes to sensitivity can significantly change the number of beats detected.

Use Energy Map for Dynamic Songs

Energy Map works well for songs with dynamic volume changes because stroke height automatically follows the music's intensity.

Combine with Manual Editing

Use Music Scripter as a starting point, then manually adjust sections that need to match visual content more precisely.