Last updated:

ReaScripts Pack: Rythmoband for ADR and Dubbing within REAPER

Introduction

I recently wanted to have a bit of fun by doing voice dubbing. I found a nice YouTube channel for French speakers, @RomanDubCH. The rythmobands are very readable, the scene are nice; lot of fun!

So I wanted to go further and have a way to create my own rythmoband, to be able to dub anything.

I did a deep investigation of the publicly available solutions for this and here what I found:

As you can see, the market is extremely niche. There is only a few up to date solutions, and these ones are extremely pricey. Sure, the most expansive ones offer more than just a rythmoband builder, they also have voice to text, IA for translation etc…but all these solutions are some limits. VoxDub for eg seems quite fun but the fact it is online only can be a bit limited (and the built-in rythmoband in edit mod isn’t smooth which makes it unreadable IMHO without making a video render, which slows down the process). Other solutions are MacOS only. And most are meant to fit a ProTools solution, using Avid Satellite to send the timecode to the dubbing software.

Simple rythmoband makers seem unavailable for individuals, unless going toward somehow obsolete solutions. So, it is definitely a no-go for anyone non-professionals. This is too bad, cause dubbing can be quite fun, and isn’t that technical. This is why there is a whole fandub community.

I always wanted to try voice dubbing. One of my first REAPER Feature Requests, 10 years ago, was about rythmoband, It was time to make a rythmoband solution for REAPER!

Demo

The video below is a showcase and tutorial of first beta version of my rythmoband solution for REAPER. Released version already had several UI fine tunings (playstate is now indicated by cursor color change).

Note: the video should be played at 60 FPS to have smooth scrolling. If YouTube doesn’t show you the beginning of the video at this rate, you can check this video instead to have a more accurate preview of the scrolling rate.

🇬🇧: English Subtitles available, audio is French only.

Concepts

REAPER

Most people coming on my website already know REAPER, but in case you don’t, it’s an affordable DAW software, which can allows you to record and edit audio, as well as hosting video. It has an extensive feature set I detailed in other articles, and compared to other software of the same type, it can be extend with user made feature, like the ones shared in this pack.

Web Interface

To make my REAPER rythmoband, I initially though about using a pure ReaScript based solution. Problem is that refresh rate is too low for scrolling text, which makes it unreadable, no matter the UI framework used.

I also thought about using Video Processor, to be able to display the text in the video window, but they are way too limited and clumsy to use for the workflow I wanted.

That is why I explored Web Interface solution. During prototyping, I successfully made scrolling text as smooth as it can be (refresh rate is the one of the screen). I had concern about latency but it is in fact very responsive, so it’s all good from there!

Another benefit of using web interface is that it use Text Items as source, so it is very nice and easy to sync and adjust as it is right on the timeline with the waveform preview of audio items.

Pros

Here are the pros of using this web interface for your ADR workflow:

  • Smooth and easy to read scrolling (it is not dependent on the framerate of the video, the refresh rate is the one of your screen)
  • Affordable (REAPER has non-limited evaluation period, and this script pack is provided with one time paiement and discount prices for non-profit)
  • Works locally (no need to upload video)
  • Video hosted inside your DAW, so it’s simpler to sync with your recorded audio, with Ultra High Video resolution support
  • Timeline / Tracks paradigm from the DAW: contrary to some other rythmo band software, you can use as many video items as you want and place them in a timeline. Handy to work on very long video/audio, while keeping one project file (no need to split the video into several parts).
  • Use text items right on the timeline alongside audio items
  • Web interface can be run by several windows and external devices (but not reaper video window)
  • and of course, the whole REAPER power at your disposal, with its customization possibilities, editing feature, extendability, audio plugins (native or plugins) etc…

Extra Features

Here are some notables extra features this web interface offers:

  • Adjustable scroll speed
  • Automatic positioning of dialog lines on the UI
  • Resizable
  • Item color support
  • Track names display
  • Basic keyboard shortcuts for transport (Space for Play/Stop, Arrow Left/Right to navigate, etc…)
  • Basic master playrate support (not automation)
  • Multi-line band support (NEW: 2024-10-11)
  • Customizable global font (NEW: 2024-10-14)

Limitations

Here are the limitations of using a Web Interface for rythmoband display:

  • No dock: As the web interface run in another window than REAPER one, you can’t dock it into REAPER UI.
  • No arbitrary positioning: Some rythmoband software are capable to place line of text anywhere on the Y axis. My Web Interface is about automatic Y positioning.
  • No video printing: The web interface doesn’t display text on the video window. This also means that you can’t print your rythmoband made with text items by making a video render. If you need to do this, you will need to first export your text items into an exchange format and import them into a software dedicated to printing rythmoband or an advanced video editing software. I’ll make a tutorial about this if requested.
  • No extra ADR features: Professional dubbing softwares have special features related to export formats, translation etc. This pack focus on the rythmoband part, but it could somehow be possible to replicate some of ADR tools with other scripts (existing or not) if there is a demand.

Content

Installation

After purchase, just log into the website, to check the detailed installation instructions here, or on the dedicated Purchase Confirmation page. This pack can be installed and updated from REAPER thanks to the free ReaPack extension, via a custom repository link related to your licence, or via regular Zip download. License are valid lifetime. You will be able to enjoy updates and new scripts added to the pack without extra cost.

Web Interface Setup

You can see on the gif below how to run the Rythmoband Web Interface, after having download this script pack.

Setting up a web interface in REAPER.

Usage

Run

Here is a quick explanation about how to display the Rythmoband web interface:

  1. Select tracks and run one of the companion scripts from this pack (most likely X-Raym_Convert selected tracks to rythmoband web interface_background.lua) to push data from selected text items to the web interface
  2. Open the Rythmoband web interface in a web browser with the URL you set up. Done!

Light theme (v1.0.3)

Update 1.0.3: I just added a light theme, accessible by adding ?theme=light in the URL.

Light theme.

Track Names (v1.0.4)

Update v1.0.4, the script now features track names.

Track titles on the left.

Customizable Global Font (v1.0.8)

Update 1.0.8: Adjust text display to the font of your choice with ?font=font_name in the URL, where font name is the font of your choice. Fallback to Default is Calibri on Windows, fallback to Arial.

Note: if you already have another query like?theme=light, you have to chain the query using the & character, like this: ?theme=light&font=font_name.

Adjust text display to the font of your choice.

Underline Text (v1.1 – 2024-11-08)

You can now underline text using dedicated text items. This allow to position them arbitrary on the timeline, which means they are really easy to set up. You can use a single underscore _ character for a straight line, or a suite of arbitrary number underscore of spaces _ _ _ _ _ _ for dashed underline.

Underlines is often used for offs (character speaking off-screen), and dashed character for semi-offs (character speaking on screen, but lips not visible).

I advice to toggle on Options: Offset overlapping media items vertically if you use underline items.

Tips

Adjust Word/Syllables Length Individually

To adjust the length of each words when you need extra precision, or even syllables, you will need to create dedicated items, and stretch them. I advice to initially make items for whole sentences, and then to split it at each word using the Script: HeDa_Split Words.lua, which will split the sentence item into several word items. It will be simpler to adjust timing this way. (Note: I may write my own version of this script at some point, I’ll put it on this pack in this case).

SWS Notes Window to Edit Text

Rather than using the native Item Notes window to prepare your text items, I advice to use the SWS extension Notes window. This window isn’t linked to an item in particular, it’s content is refreshed based on first selected item. It also doesn’t need you to click on OK button to validate a change.

Extra tip: You can change the Edit Text font size with a small preference file edit:

SWS Notes window, with custom font size set to 24px.
SWS Notes to edit text items content, here with custom font size set to 36.

Window as Always on Top

If you need your web browser to be always on top of other apps, you can use one of the following free softwares:

I haven’t explore alternatives because these seems to do the job pretty well.

WindowTop also have window opacity feature which can be handy if you want to have the video fullscreen and the rythmo band above it.

Titlebar Removal

If you want to remove the buttons and main toolbar of your web browser, you can use the following free extension:

If you want to go further, you can also remove all the title bar. I have found a working solution on Windows using this free Auto Hot Key script. Not sure how it works on MacOS (and if it is needed).

Toolbar Button for Opening the Web Interface

If you plan to use this web interface on your REAPER computer, and you want a REAPER action to open it rather than typing its URL in your browser, you can use the script Script: acendan_Auto generate scripts to open web interfaces.lua, downloadable from ReaPack (see Acendan in the repository list). Then, you will be able to map the newly created action Script: acendan_Open web interface – X-Raym_Rythmoband.lua to a toolbar button, or keyboard shortcut, or just have access to from in the action list.

Automatic Voice to Text and Text Translation

We saw that most advanced ADR solution have features like Voice to Text and Text Translation. So what if you want to do that from REAPER?

Voice to Text is out of scope of this script pack, but there are other scripters experimenting on this field. Take a look at Heda’s ReaWhisper beta for eg. EDIT: 2024-10-03: Another advanced REAPER based solution would be ReaSpeech.

For text translation, I’m not aware of any current solution (thought it would be possible to make one); A workaround is simply to export your text items as file (CSV or SRT) an use automatic translation from another software by simple copy pasting.

Video Capture and Render

This tools isn’t build for video Render. Tough, if you want to have a video with the rythmo on top, the simplest method would be to just put the rythmoband on top of the REAPER video window, framelessly, and do a screencapture. Though, it may not be placed pixel perfect on the screen. Here is a more advanced workaround, by making a screen capture of a browser window:

  1. Open OBS Studio video screen capture free software.
  2. Choose Web Browser as source, and adjust width to your video width, and heigth to a desirable heigth
  3. Press record on OBS and play in REAPER, stop when it ends
  4. Open a video editing software
  5. Place your rythmoband video on top of your source video
  6. Manually sync their start time
  7. Render to video

Rythmoband videos are better in high framerate, so you should consider using a 50 or 60 fps for the rythmoband capture and your video editing project/render.

Note: for more customization, I have made a REAPER to After Effects workflow, I’ll showcase it if required at some point.

Feature Requests

Miss a function? let me know!

Notes

By buying this product, you are supporting my free scripting. Thanks!

Links

Credits

Some of the screenshots use images from Pixar Inside Out and text from PIxar movie The Incredibles.

Disclaimers

Early Release Phase

This pack is just fresh! There may be things to fine adjust to make it works on other system than mine. I don’t have any roadmap yet, I’m evaluating the need firsts, and I need to use it in real projects for this, or have user feedbacks to see if something is really missing. Though I know some things could be potentially added, like custom fonts, shot and loops marks, and things like that.

Also, prices may evolve based on demand volume, but I want to keep a version affordable for the amateur fandub scene. Though, if you enjoy it, consider buying a more expensive license, it will really help. 😉

Check Native Web Interface

Before purchase, be sure that REAPER Web Interface feature can work correctly on your system. it usually works perfectly fine if you run the web interface on the same computer than REAPER, but it worth checking beforehand, by trying one of the native Web Interface.

If you use it from a remote machine (smartphone, tablet etc), some network settings adjustments might be needed (ports opening, proxy set-up or firewall authorization, and things like that).

If you got an issue setting any web interface, please search or post on Cockos forum or any other discussion group (like reddit) as I may not be able to guide you from here, network issues are very system dependent. Usually, it’s just some authorization to check in the OS firewall, to tell that REAPER can access the internet (here on Windows for eg).

Purchase

  • Personnal use, you are an individual, a student, or a non-profit organization, and you will not use this pack on commercial projects.

  • You work for a small business company on commercial projects.

  • You are a big business company with a team of more than 5 people. Consider one purchase per team.