Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,23 @@

All notable OpenBeat changes should be summarized here for users. GitHub Releases can still use generated notes, but this file should keep the plain-language history easy to scan.

## Unreleased
## 0.1.0
Comment thread
eimexdev marked this conversation as resolved.

- OpenBeat is now released under the MIT License.
- Audio OpenBeat can't read, such as `.m4a`, `.aac`, or `.mov` files, now gives a short message listing the supported formats (WAV, AIFF, FLAC, OGG Vorbis, MP3) instead of a Python error.
- Installer updates now prepare and verify the new files before replacing the installed ones. If an update fails or is interrupted, the previous installation is kept or restored by running the installer again.
- The macOS installer now works on Intel Macs as well as Apple silicon. One package contains a runtime for each and installs the right one. It requires macOS 14 Sonoma or later.
- The macOS installer stages its files in a folder only root can change, instead of a shared temporary folder, and stops with a clear error if it cannot tell which user to install for.
- Release builds use one resolved commit for testing, building, and tagging, and pinned build dependencies.
- When beat analysis or click-track rendering fails, OpenBeat now shows the helper's error instead of a missing-file error, and no longer imports an older click track as if it were new.
- On Windows, OpenBeat should now work when the Windows user name or the media path contains non-English characters, such as `José` or `Música`. Subtitle export to such folders is not fixed yet.

Known limits:

- The installers are not code-signed yet, so macOS and Windows show a warning the first time you run them. See the install guide for how to continue.
- Windows 11 Smart App Control may block the unsigned Windows installer, with no option to run it anyway.
- Automatic click-track and subtitle placement on the timeline remains best-effort.

## 0.0.2 - 2026-04-19

- Bundled the OpenBeat runtime into macOS and Windows installer packages.
Expand Down
34 changes: 29 additions & 5 deletions docs/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,9 @@ If you prefer source builds, the public repository includes development setup an

OpenBeat needs macOS 14 Sonoma or later. The same package works on Apple silicon and Intel Macs: it contains a runtime for each and installs the one that matches your Mac, without needing Rosetta.

1. Run the `.pkg` installer.
2. If macOS Gatekeeper blocks the package, open System Settings > Privacy & Security and allow the package, then run it again.
3. Restart DaVinci Resolve.
4. Confirm the scripts appear under `Workspace > Scripts > OpenBeat`.
1. Run the `.pkg` installer. The first time, macOS blocks it; see [First Install Warnings](#first-install-warnings).
2. Restart DaVinci Resolve.
3. Confirm the scripts appear under `Workspace > Scripts > OpenBeat`.

The installer copies OpenBeat into:

Expand All @@ -32,7 +31,7 @@ The installer copies OpenBeat into:

## Windows

1. Run `OpenBeat-windows-<version>-installer.exe`.
1. Run `OpenBeat-windows-<version>-installer.exe`. The first time, Windows warns about it; see [First Install Warnings](#first-install-warnings).
2. Accept the default Resolve Fusion support folder unless you have moved Resolve's scripting support files.
3. Restart DaVinci Resolve.
4. Confirm the scripts appear under `Workspace > Scripts > OpenBeat`.
Expand All @@ -42,6 +41,31 @@ The installer copies OpenBeat into:
- Scripts: `%APPDATA%\Blackmagic Design\DaVinci Resolve\Support\Fusion\Scripts\Utility\OpenBeat`
- Modules: `%APPDATA%\Blackmagic Design\DaVinci Resolve\Support\Fusion\Modules\OpenBeat`

## First Install Warnings

OpenBeat's installers are not code-signed yet, so macOS and Windows warn that they come from an unknown developer. This happens once per download. The installers are built in public by the repository's GitHub Actions workflows, and each release's notes name the commit it was built from.

### macOS

On macOS 15 Sequoia and later:

1. Double-click the `.pkg`. macOS says it "Not Opened" because Apple could not verify it. Click **Done**.
2. Open **System Settings > Privacy & Security** and scroll to **Security**. Next to the message that the OpenBeat package was blocked, click **Open Anyway**.
3. If macOS asks, confirm with your password or Touch ID. When the warning appears again, click **Open** (some macOS versions label it **Open Anyway**). The installer starts.

The **Open Anyway** button appears for about an hour after you try to open the package. If it is missing, double-click the package again first.

On macOS 14 Sonoma, Control-click the `.pkg`, choose **Open**, then click **Open** in the dialog.

You only need to do this for the installer. Once installed, Resolve runs OpenBeat without further prompts.

### Windows

1. Your browser may say the file isn't commonly downloaded. In Edge, open the download's **...** menu and choose **Keep**, then **Show more > Keep anyway**. In Chrome, choose **Keep**.
2. When you run the installer, Microsoft Defender SmartScreen shows "Windows protected your PC". Click **More info**, then **Run anyway**.

If Windows 11 says **Smart App Control** blocked the installer, there is no "Run anyway" option. Smart App Control can block unsigned apps that Microsoft's reputation service doesn't know yet, which may include a new OpenBeat release, and it has no per-app exception. You can turn it off in **Windows Security > App & browser control > Smart App Control settings**. On an up-to-date Windows 11 you can turn it back on there later; older versions only let you turn it back on by resetting Windows. Signed Windows installers are planned.

## Update

Install the newer package over the old one, then restart Resolve. The installer replaces the OpenBeat script and module folders, but it does not remove your project markers, generated click tracks, generated subtitle files, or analysis cache.
Expand Down
4 changes: 4 additions & 0 deletions docs/release-checklist.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Use this checklist before publishing an OpenBeat release.
- Update `version` in `pyproject.toml`.
- Update `__version__` in `openbeat/__init__.py`.
- Confirm the release tag will be `v<version>`.
- Add the release date to the version's heading in `CHANGELOG.md`.

## Local Checks

Expand Down Expand Up @@ -38,6 +39,7 @@ lua -e 'assert(loadfile("resolve/Fusion/Modules/OpenBeat/OpenBeatCommon.lua"))'

On macOS, on an Apple silicon Mac and, when one is available, an Intel Mac:

- Download the `.pkg` with a browser, so it is quarantined like a user's download, and confirm the Gatekeeper steps in [install.md](install.md#first-install-warnings) still match what macOS shows.
- Run the `.pkg` installer. On Apple silicon it should not ask to install Rosetta.
- In Installer's log (**Window > Installer Log**), confirm the postinstall reports installing the `arm64` runtime on Apple silicon and the `x86_64` runtime on Intel.
- Restart Resolve.
Expand All @@ -46,6 +48,7 @@ On macOS, on an Apple silicon Mac and, when one is available, an Intel Mac:

On Windows:

- Download the installer with Edge and confirm the download and SmartScreen steps in [install.md](install.md#first-install-warnings) still match what Windows shows.
- Run the installer executable.
- Restart Resolve.
- Confirm `Workspace > Scripts > OpenBeat` appears.
Expand All @@ -58,6 +61,7 @@ For both platforms:
- Verify clip marker creation.
- Verify click-track WAV generation.
- Verify subtitle SRT generation.
- Run an action on an `.m4a` or `.mov` clip and confirm Resolve shows the unsupported-format message.
Comment thread
eimexdev marked this conversation as resolved.
- Treat automatic click-track and subtitle timeline placement as best-effort only.

## Publish GitHub Release
Expand Down
2 changes: 1 addition & 1 deletion openbeat/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
__all__ = ["__version__"]

__version__ = "0.0.2"
__version__ = "0.1.0"
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "openbeat"
version = "0.0.2"
version = "0.1.0"
description = "Free and open-source beat editing helpers for DaVinci Resolve Free."
readme = "README.md"
license = "MIT"
Expand Down
Loading