Repository navigation
Releases: StreamTranslate/obs-streamtranslate
Release list
v0.1.10 — static Linux library and OBS 33 support
Linux now bundles libwebsockets, so cloud OBS hosts no longer need to install that separate library. OBS and the system TLS libraries remain required. Windows supports OBS 33’s new plugin folder and retains compatibility with OBS 32. The Mac installer is Developer ID signed, notarized by Apple, and stapled.
Downloads and installation
- Mac: quit OBS, install StreamTranslate-OBS-Plugin.pkg, then reopen OBS.
- Windows OBS 32/33: extract the obs-streamtranslate folder from StreamTranslate-OBS-Plugin-Windows.zip into C:\ProgramData\obs-studio\plugins. Keep the DLL and cacert.pem together.
- Portable OBS 33: extract that folder into the portable OBS plugins folder.
- Portable OBS 32 / existing installation-folder update: use StreamTranslate-OBS-Plugin-Windows-OBS32-Portable.zip in your OBS root. Avoid installing a duplicate ProgramData copy when updating an existing OBS32 folder installation.
- Linux/cloud OBS: install obs-streamtranslate-linux.so (also available as obs-streamtranslate.so). The libwebsockets license is attached.
Restart OBS after updating. Existing Plugin Keys and filter settings stay in the OBS configuration.
Verification
- Actual Linux OBS module/audio/TLS/reconnect tests passed with and without a system libwebsockets installation.
- Windows OBS 32 and 33 normal/portable layouts loaded once, sent audio, and reconnected in the local Windows ARM VM using x64 emulation. Untrusted TLS was rejected.
- The installed Mac candidate produced English and Japanese captions through production StreamTranslate. After a 45-second induced stall, it reconnected automatically and final translated captions resumed within five seconds, with zero recorded write/resample errors or queue drops.
- Final Mac release metadata and package payload verified; Apple notarization and Gatekeeper checks passed.
Physical Windows hardware, a long public broadcast, and IRL Toolkit’s private server remain untested. SHA256SUMS.txt contains download checksums.
v0.1.9 — macOS live status and diagnostics
macOS diagnostics and status fix
- The OBS filter's Status line now refreshes when the connection changes instead of remaining on an old “disconnected / reconnecting” message.
- Adds a real Show diagnostics / help button with connection state, captured/sent audio counters, recent delivery, queue size, errors and the last server close code. Plugin keys are excluded.
- Explains account/trial restrictions, exhausted hours and rejected keys; these do not retry endlessly.
- Declares the Mac installer's arm64 architecture to avoid unnecessary Intel/Rosetta relaunches.
- macOS installer signed with Developer ID, accepted by Apple's notary service, stapled and verified with Gatekeeper.
Quit OBS, download and install the new .pkg, then reopen OBS. Existing keys/settings are retained. Installer/admin-password prompts are normal; bypassing Gatekeeper is not required.
Platform scope: macOS plugin is v0.1.9. Windows and Linux assets are unchanged v0.1.8 binaries included to preserve existing download links. No two-speaker/stereo functionality is added to this Mac release.
Verification: native libobs deferred UI refresh/diagnostics tests, retry-policy tests, native WebSocket reconnect/PCM tests, installer payload/version inspection and Gatekeeper assessment passed. Live OBS UI verification follows installation.
v0.1.8 — restore macOS 14 installer compatibility
Rebuilds the macOS installer on the macOS 26 runner with a macOS 14 deployment target and pinned macOS 14-compatible bundled libraries. The plugin and all three bundled dylibs were inspected in the CI-built package and report minimum macOS 14.0; the package version is 0.1.8. Windows and Linux binaries are unchanged from v0.1.7 because plugin source did not change. The package is ad-hoc signed, not Developer ID notarized. Actual execution on macOS 14 has not been tested.
v0.1.7 — macOS 26 OBS installer
Build the macOS arm64 installer on GitHub Actions macos-26 and align bundle/component/distribution versions to 0.1.7. Plugin behavior is unchanged from v0.1.6. The macOS and Linux assets were built from the v0.1.7 main commit; the Windows ZIP is the unchanged v0.1.6 binary because this release changes only the Mac build workflow and package metadata. The Windows job for v0.1.7 is still running. The Mac installer remains ad-hoc/unsigned and may require Open Anyway in macOS Privacy & Security.
v0.1.6 — OBS reconnect handling
Fixes unnecessary OBS reconnect loops:
- Idle shutdowns stay stopped until you press Reconnect / Test connection.
- Rejected plugin keys pause with a clear message. Paste the current key and reconnect.
- Sources that send no audio wait for fresh non-silent audio before retrying.
- Network interruptions and service restarts still reconnect automatically.
Preserves the Stop button and properties-dialog crash fix. Tested with actual libobs capture, silence, mute/unmute, competing filters, TCP interruption, and translated-caption recovery against staging and production using synthetic speech.
Install the updated plugin and fully quit/reopen OBS. Existing installations do not update automatically. Mac package: Apple Silicon; Windows/Linux: x64. Physical capture-card compatibility is not established by these tests.
v0.1.5 — OBS Stop stability
Fixes an OBS crash when pressing Stop after Reconnect, and keeps the filter visibly paused while disconnected. Audio now stops queuing immediately on Stop. Built for OBS 32-compatible plugin ABI. Restart OBS after installing.
v0.1.4 — Mac OBS 32 compatibility fix
Fix Mac OBS plugin not appearing in Audio Filters after installing v0.1.3.
The v0.1.3 Mac binary was built with OBS 33 development headers, so OBS 32.2.2 rejected it before loading the filter. This release builds the Mac plugin against OBS 32.2.2 headers. The Stop (pause sending audio) and Reconnect / Test connection controls from v0.1.3 are retained.
If the filter disappeared after installing v0.1.3, install the new Mac .pkg and fully quit/reopen OBS. Your saved filter and plugin key stay in your OBS configuration. Windows builds now use headers matched to the OBS 31.0.3 binary used by CI.
Verified on OBS 32.2.2 for macOS: plugin loaded, saved StreamTranslate filter restored, and audio WebSocket connected. The Stop button is present in the built plugin; its click behavior was not manually exercised in this smoke test.
v0.1.3 — Filter Stop button
Adds a Stop button to the filter's own properties panel, right next to Reconnect, so you can pause sending audio without quitting OBS or hiding the filter.
Whats new
- New "Stop (pause sending audio)" button in the StreamTranslate filter properties.
- "Reconnect / Test connection" now also resumes from a Stop -- it doubles as Start again.
- Pausing is momentary and not saved: a fresh OBS session always starts unpaused.
Existing installs are unaffected -- the server does not check plugin version, so nothing already running gets invalidated. This only changes what a fresh install gets.
Verified: compiles clean with zero errors on real CI across Linux, macOS, and Windows (see the Actions run for this commit).
v0.1.2 — Capture reliability and diagnostics
Capture reliability and diagnostic update. The compatible production server is live.
- A filter that connects without sending audio cannot replace a working source. Different producing filters are protected against accidental takeover.
- Record callback, channel-level, conversion, queue, network and reconnect health, including source mute/active state. Bounded diagnostic snapshots can survive a temporary network interruption. No extra recorded audio or captions are included in these diagnostics.
- A filter rejected because another source is active stops reconnecting repeatedly. Stop the other source first, then use Reconnect / Test connection.
- Muting clears queued audio and is rechecked before sending.
Existing installations require an update and OBS restart. Keep your existing Plugin Key and caption Browser Source. Install before rehearsal, never during a live show. macOS package is Apple Silicon (arm64); Windows is x64; Linux is x64. The macOS package remains unsigned.
Setup: https://streamtranslate.live/obs-plugin.html
Validation: native libobs32.2.2 on macOS with generated right-only stereo, mute/unmute, callback interruption/resumption, forced TCP loss/reconnect and a nonproducing second filter. Production checks verified audio admission/ownership and real speech through translation to browser overlays. Synthetic tests do not certify every capture card, USB driver or YoloLiv model.
Artifact provenance: macOS installer from successful job in run 35933333303 (7dea0d2). Windows/Linux artifacts from successful run 35928554589 (2c29897); plugin source and those platform workflows are identical between the commits. The difference is only macOS installer version metadata. SHA256SUMS.txt accompanies the downloads.
v0.1.0 — OBS plugin (macOS, Windows, Linux)
Live translated captions captured inside OBS — no browser tab, no microphone permission, nothing running on your phone.
Full setup guide: https://streamtranslate.live/obs-plugin.html
macOS
Download StreamTranslate-OBS-Plugin.pkg below, then open it.
macOS will block it the first time ("Apple could not verify..."). The plugin isn't signed with an Apple Developer certificate yet, so Gatekeeper flags it. Two ways past it:
Option A — allow it in Settings (no Terminal)
- Double-click the .pkg and let it get blocked, then click Done
- Open System Settings → Privacy & Security
- Scroll to the bottom — you'll see "StreamTranslate-OBS-Plugin.pkg was blocked"
- Click Open Anyway, then run the installer again
(Note: on recent macOS versions, right-click → Open does not work for .pkg files. Use the steps above.)
Option B — one Terminal command
xattr -d com.apple.quarantine ~/Downloads/StreamTranslate-OBS-Plugin.pkg
Then double-click the .pkg normally.
The installer places the plugin in your user OBS plugins folder. Restart OBS afterwards.
Windows
Download StreamTranslate-OBS-Plugin-Windows.zip and extract it into your OBS folder — it drops the file into obs-plugins\64bit. Restart OBS.
Linux / Cloud OBS (IRLToolkit and similar)
Use obs-streamtranslate-linux.so, or build from source (see the README).
If your OBS runs on a cloud provider, you can't place files on their server yourself — message their support and ask them to install this plugin, linking this repository. It's open source and Linux-compatible, which is what they require. That's the only step you need them for; everything after is done from your own OBS remote.
Setting it up
- Filter (sends us your audio): right-click your mic or stream audio source → Filters → + → StreamTranslate → paste your Plugin Key from your StreamTranslate control page. It works like any audio filter and doesn't change your audio.
- Overlay (shows the captions): add your overlay URL as a Browser Source. Position and size it however you like.
Change languages any time from your control page — it applies live and never asks for microphone access. Muting the audio source in OBS pauses captions instantly.