obs-localvocal

royshilGPL-2.0活跃维护

OBS 直播插件,用本地 Whisper 模型实时做语音识别和字幕,不用把音频传到云端,直播时也能直接出字幕。

OBS plugin for local speech recognition and captioning using AI

0.6.2发布于 2026-04-21 20:06 UTC1,664star +4 / 7 天131fork同步于 2026-11-10 23:48 UTC

怎么上手

由 README 提炼,执行前请确认
Windows/macOS 直接下载 Releases 中的安装包运行;Linux 用 .deb 安装或源码构建:./.github/scripts/build-linux
硬件要求按 README 说明

README 称无需 GPU,可在 CPU 上运行;同时提供 NVidia、AMD 专用安装包,Linux 构建可启用 CUDA/ROCm/Vulkan/OpenCL 后端。未给出具体显存或型号要求。

纯 CPU 可运行支持 Apple Silicon需要 CUDA支持 ROCm / AMD
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

OBS 插件,用本地 Whisper 实时把语音转成字幕并翻译,无需云端和 GPU

OBS 直播插件,用本地 Whisper 模型实时做语音识别和字幕,不用把音频传到云端,直播时也能直接出字幕。

核心能力

  • 基于 whisper.cpp 在本地实时转写语音
  • 用 CTranslate2 把转写结果翻译成任意语言
  • 数据全部留在本机,无需联网、无云成本
  • 提供 Windows/Linux/macOS 预编译安装包
  • 按 generic/NVidia/AMD 分发包适配不同加速

容易踩的坑

Linux 源码构建需先装 libcurl、libssl、icu、openblas、OpenCL、Vulkan 等开发依赖并安装 Rust;构建前需设置 ACCELERATION 为 generic/nvidia/amd;macOS 打包脚本输出目录可能与预期不符,需手动改名。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本0.6.2
  1. 0.6.2OBS Localvocal 0.6.2最新正式版2026-04-21 · 2026-04-21 20:06 UTC

    What's Changed

    New Contributors

    Full Changelog: https://github.com/royshil/obs-localvocal/compare/0.6.1...0.6.2

    Checksums

    obs-localvocal-0.6.2-macos-12-arm64.pkg: 7d5886b5d8c060350a5bd5e10476cd5a95651690117ddd09bd05d060090fd9a5
    obs-localvocal-0.6.2-macos-12-x86_64.pkg: 29506f7aecf023d5edd6f0101974b98f814830f37bf206b5ebfe2436d2c1b4a5
    obs-localvocal-0.6.2-macos-13-arm64.pkg: 057a6841199c11f6d0cc8924c25c927ee6cdf1224afabfaa28fb2ce688ffd70d
    obs-localvocal-0.6.2-macos-13-x86_64.pkg: bf61e7130c23b5a5082e452e4109e588ddebb32e668b44da6fe7284df45b556a
    obs-localvocal-0.6.2-macos-14-arm64.pkg: cd8ce70828df7e496e2f62b2b4d12398f39122a1d6bde04f0b7a13ea3a830fda
    obs-localvocal-0.6.2-macos-14-x86_64.pkg: 82e7418cd58fa0bc1dde09d09a80796aba5a188319030ecafdc974d8a0186d0b
    obs-localvocal-0.6.2-macos-15-arm64.pkg: e0a1acece3a9bf016bf3311471b33385dd1fe0e3c3636c9f0246118fa3d2e838
    obs-localvocal-0.6.2-macos-15-x86_64.pkg: 79e01249308b2d255312918437aa22588531deed6d7bbf058cffd5c6372b791e
    obs-localvocal-0.6.2-macos-embedded-arm64.pkg: 62abc6c0b6f0b979a2107e27fa60a33986b57af007496c10afa02d43143a1b85
    obs-localvocal-0.6.2-macos-embedded-x86_64.pkg: 2259f9daa8cbf1f569b009ca1dd7ec77bc81cc087106b80bb66dae0ac5fd7deb
    obs-localvocal-0.6.2-source.tar.xz: 8886f6fa65c54f4640417c830392a62eebcdd4ec0f6be67b889ff21974bcb679
    obs-localvocal-0.6.2-windows-x64-amd-Installer.exe: 3e140d048bdbdb40de866832d5ad2269c45a5ed834f246e2024c9ed50863b8db
    obs-localvocal-0.6.2-windows-x64-amd.zip: 316f8165b4a64298e171e15f54613a56173ac62d94cd8a254b1daddc11330e03
    obs-localvocal-0.6.2-windows-x64-generic-Installer.exe: c8f276ae183b81f4f4fc97bbdb5ce398a3edfd228f562c53c918f565247ca674
    obs-localvocal-0.6.2-windows-x64-generic.zip: 463f6c4733c76c80a4174f1930a8b3b329d3b92a72df0ecdb21780fab122871b
    obs-localvocal-0.6.2-windows-x64-nvidia-Installer.exe: 6ba284f16bedafddc52ba6294ea4e23e3ecd2aeac2647c9a8bc685b8886ac0ef
    obs-localvocal-0.6.2-windows-x64-nvidia.zip: dd8d4aa2640e85b5c3e47e8f1432040c150d5830cb5f62b814bfbb1f2bcde4b8
    obs-localvocal-0.6.2-x86_64-linux-gnu-amd.deb: b26446b40b69e6984647da21d5916554dd43b9d24a878e3101aa37b619affc79
    obs-localvocal-0.6.2-x86_64-linux-gnu-generic-dbgsym.ddeb: 6c1eaeb1a8111b881bcdc34bd1b82c3d900672b689f40f0491cc444034228468
    obs-localvocal-0.6.2-x86_64-linux-gnu-generic.deb: 6b487d640b993f9593bd76e770c5c3acb84d0f731960b25bb3061be9cabe58cf
    obs-localvocal-0.6.2-x86_64-linux-gnu-nvidia-dbgsym.ddeb: 339e991b061bc671eae10f7995b66455f05beea36c8ba8023c0b10642858f2aa
    obs-localvocal-0.6.2-x86_64-linux-gnu-nvidia.deb: 0a21f27251da5ce9b726ad284fcc3f5908002a8df19a0d17cb28b45714b2907f
    
  2. 0.6.1OBS Localvocal 0.6.12026-04-01 · 2026-04-01 16:17 UTC
    查看更新说明

    What's Changed

    New Contributors

    Full Changelog: https://github.com/royshil/obs-localvocal/compare/0.6.0...0.6.1

    Checksums

    obs-localvocal-0.6.1-macos-12-arm64.pkg: 3885d48fe2ac39b587678f3f68bd01d32d6c29fcad48777fd62791d723844462
    obs-localvocal-0.6.1-macos-12-x86_64.pkg: 821bd0e71c1c08494f2b04bb6faa1c5d9fdd2b5bbaa09fbeb9589ebab9916806
    obs-localvocal-0.6.1-macos-13-arm64.pkg: 7342428df4339d3a8ff39d4bf7c40cdd607af561cf12e37e59d9b826b70dfba5
    obs-localvocal-0.6.1-macos-13-x86_64.pkg: 3b7f3f748eac39129a245afd5f7d9d9ca2979635aecde1cae8aadd64c9cdcd52
    obs-localvocal-0.6.1-macos-14-arm64.pkg: fb2432e6b2403df7d026aed87a3f0acf87fa9e28b8dc15bf532fce494bbcbb6c
    obs-localvocal-0.6.1-macos-14-x86_64.pkg: 65c21e694ba0f4de40880f67ac35fa791f727bfe6d71c21fceac994c43f49ced
    obs-localvocal-0.6.1-macos-15-arm64.pkg: f245e6577aad3039d887cbb62da461b1b6b7808aa611e675cda13bb5d649fa7b
    obs-localvocal-0.6.1-macos-15-x86_64.pkg: 66cc150b6577c5cdb2d42f43ffcd5712ec374df9199c7f6ed13288b7ad745d34
    obs-localvocal-0.6.1-macos-embedded-arm64.pkg: 198663e23fcde2c84f1af15091f7ee63aa328c2b9ad40c5efdcc133c21d25bfc
    obs-localvocal-0.6.1-macos-embedded-x86_64.pkg: 6d9027fabfe8ee22083e1336de135c341f15fdde6beb49dab646b8689865fb6f
    obs-localvocal-0.6.1-source.tar.xz: 477d17fbfa497e6ec0847e2ed63458afca04ea149989a1e569706b9e4bc84859
    obs-localvocal-0.6.1-windows-x64-amd-Installer.exe: 01233af2a125172bda961a6b2ff037d442181fda098a75a2c99f0f44f64ddb05
    obs-localvocal-0.6.1-windows-x64-amd.zip: 2a2236217fa9916afd0262d479a971348b8daea27471cfcc7a4147e346cabe23
    obs-localvocal-0.6.1-windows-x64-generic-Installer.exe: d422061000fce1dd00f25454c208e81a1c002743b2314b7dcba4b23e46b2e24f
    obs-localvocal-0.6.1-windows-x64-generic.zip: 3c53b5c991069f9267c0948c6b4f0fa7981c17a7c32f2572ec6b3039aa4526b5
    obs-localvocal-0.6.1-windows-x64-nvidia-Installer.exe: c2d896d5ea4f3fa5981b065c46defd2e74fc60907b9f84ee7b2c0818ce60fa16
    obs-localvocal-0.6.1-windows-x64-nvidia.zip: c7201a9cca03426e6afd14973f59d65c18225cc3a90eaa6b4b36cc8af5e7a399
    obs-localvocal-0.6.1-x86_64-linux-gnu-amd.deb: a308957120edca448c35aef071a88b3b92524694a02938c8cfe1df4cdc6a379b
    obs-localvocal-0.6.1-x86_64-linux-gnu-generic-dbgsym.ddeb: 3b4bf343ae9e3977986706beeefcef12d053dc6a3531db331926bca870385fa5
    obs-localvocal-0.6.1-x86_64-linux-gnu-generic.deb: 65c49151735331937b5124ad0a27b7ae777b37d2806d1bffd107f07fc476d3f8
    obs-localvocal-0.6.1-x86_64-linux-gnu-nvidia-dbgsym.ddeb: 57645e35e4b9c3961ee223b027ccd7a07374f59f202cb147fe3e09e217ddd64b
    obs-localvocal-0.6.1-x86_64-linux-gnu-nvidia.deb: 09dbfeccb2370119ae9e59b1f72d2bf2eb07d24dcddf5dea310f9b864fc7f487
    
  3. 0.6.0OBS Localvocal 0.6.02026-01-05 · 2026-01-05 17:43 UTC
    查看更新说明

    Experimental release to test whether building for specific Metal versions fixes crashes on older MacOS releases

    Checksums

    obs-localvocal-0.6.0-macos-12-arm64.pkg: e6fefcd9a3e9000774b9d8b019c7f84c76e7c6c2c95c33aa71153a6f80dad421
    obs-localvocal-0.6.0-macos-12-x86_64.pkg: 75a2876e04a49b57db323bf7c5a0b4e274e26b6d431f2f9f3a19a4308f239d88
    obs-localvocal-0.6.0-macos-13-arm64.pkg: 9e3a48390ad484c9d9cb8e917a3b0113aa8bcd094bbd094aba29fd63e0112cfb
    obs-localvocal-0.6.0-macos-13-x86_64.pkg: 9070e09cccab3aa805bc82c51795d76b9f9811cd238299d252336bd66731b1ee
    obs-localvocal-0.6.0-macos-14-arm64.pkg: 9958e88ca9c0779abbb05eca1a300c11791efd01248901738e70f908d76f489e
    obs-localvocal-0.6.0-macos-14-x86_64.pkg: 7b0f5a7765133a95662c2f92437963411caf87f23d5a3c60b99746878dd63aec
    obs-localvocal-0.6.0-macos-15-arm64.pkg: a7bc9f3b4f8a7ad831520176968bdfe471e41f2c6279d282b536617ad7ca1609
    obs-localvocal-0.6.0-macos-15-x86_64.pkg: 096a0bd76959373eca576529c295a61b0490d38202088b4dcf59099068670515
    obs-localvocal-0.6.0-source.tar.xz: 62fb5718c6fe910290a21da86dc381d7933cac91e59c1d12c3c072bfd262db40
    obs-localvocal-0.6.0-windows-x64-amd-Installer.exe: d5bae74a103218ac28746e76f97c66860feb532fd605000f6fdc7d6af446323e
    obs-localvocal-0.6.0-windows-x64-amd.zip: 080914e594e4ba98667578819f1c882fe10a254600e255477107cf0191598554
    obs-localvocal-0.6.0-windows-x64-generic-Installer.exe: 680fd23684a83f3646c8a86ddc45c5527ff33cd8cd0878b259e9a61a073dce59
    obs-localvocal-0.6.0-windows-x64-generic.zip: c75990998acf81156fa8fa79e1e41c36b9883e6539f00240f653e45c2a4c9748
    obs-localvocal-0.6.0-windows-x64-nvidia-Installer.exe: 6bc838515ca8e3e853f8b6d83cad39e5f8a48149d95a7b38a359b4c61db31a73
    obs-localvocal-0.6.0-windows-x64-nvidia.zip: 0a05b96e2f645f66f6dff671d335fdc74a88055330f4be989bfe159656448727
    obs-localvocal-0.6.0-x86_64-linux-gnu-amd.deb: d83236de2f0589401450b54603b7e00b287b5fbbab39cffe696423b11050d0a9
    obs-localvocal-0.6.0-x86_64-linux-gnu-generic-dbgsym.ddeb: 49ee2d3a08f101b7a9b195baa29bc95d936e3ff00e7cd404374fbfcaf5d5647f
    obs-localvocal-0.6.0-x86_64-linux-gnu-generic.deb: 0a67c58b255e0a207b725f583194dea657a77c9d58bebf8a86e159e767a5ac23
    obs-localvocal-0.6.0-x86_64-linux-gnu-nvidia-dbgsym.ddeb: 4afb6d2b91ba813adb411d17b89d33f2ed278d1deb64f7187ed317377b7e5a25
    obs-localvocal-0.6.0-x86_64-linux-gnu-nvidia.deb: a7b9eb6f33c2818d184cfc9b2d5d0f5afc4cdb64bedd243da4d7497ca873bc37
    
  4. 0.5.3OBS Localvocal 0.5.32025-11-25 · 2025-11-25 00:16 UTC
    查看更新说明

    What's Changed

    • Update whisper dependencies to 0.0.12 by @Tabby in https://github.com/royshil/obs-localvocal/pull/264
      • Updates Vulkan SDK on Windows to 1.4.328.1
        • Adds more Vulkan operations that Whisper.cpp can make use of which should improve Vulkan performance
      • Build ROCm/HIPBLAS Whisper.cpp backend for all available GPU architectures available in ROCm instead of whatever the default was, which fixes crashes when using the HIPBLAS backend on compatible GPUs (may still crash on incompatible/unsupported GPUs)
        • See ROCm compatibility matrix for the full list of GPU architectures. Every architecture listed there is now included in the targets being built for

    Full Changelog: https://github.com/royshil/obs-localvocal/compare/0.5.2...0.5.3

    Checksums

    obs-localvocal-0.5.3-macos-arm64.pkg: 8ad273703525786a0a5c236794646451c745706781cd328eeda588011aa66e49
    obs-localvocal-0.5.3-macos-x86_64.pkg: 9d1372b53dead70cf345e40658fffff2e342c96e17b664026184523826b3735e
    obs-localvocal-0.5.3-source.tar.xz: fcbf0cd8d02d8496132c364263bc8aad4b9a45f8b1df726803fda10e803b52f0
    obs-localvocal-0.5.3-windows-x64-amd-Installer.exe: 9fd82a69b21938ed76ebd502ee3536bb5b7d2d377494173c1dcbfbd7bfbc784b
    obs-localvocal-0.5.3-windows-x64-amd.zip: 370665bdb2979814ec54fe09bf383d2b156bcd4baaadab8208e3a64223eca044
    obs-localvocal-0.5.3-windows-x64-generic-Installer.exe: 32df9baa8ab710009fe8d13e613ef87ae167061f6d6fcd0409916d98dca4041a
    obs-localvocal-0.5.3-windows-x64-generic.zip: 99e3d0ddff32e5d46cedac3ec6a51dff55e85e2382c957ecbf211f8091d89675
    obs-localvocal-0.5.3-windows-x64-nvidia-Installer.exe: d8482811d2eefee1f4e4c85c5003f1dbdde2804784df10108922a8e2da9ba386
    obs-localvocal-0.5.3-windows-x64-nvidia.zip: 0fddce727d2dd62bdf35e49f706f8e9287def391c5ff4c39f0722b7ce67c5fb8
    obs-localvocal-0.5.3-x86_64-linux-gnu-amd.deb: c3ee6d8662b5c1d82551cfc814d8fa11fdcfb47083cfbbb16513a5ae53476b0f
    obs-localvocal-0.5.3-x86_64-linux-gnu-generic-dbgsym.ddeb: f9636f03ce3b82bda2900f668c188c159918e58906d641ac7138629237db13ae
    obs-localvocal-0.5.3-x86_64-linux-gnu-generic.deb: 0899fe1afc50bc096a84c76792eabbd9e4cb05077f22df42026e98e5a3716210
    obs-localvocal-0.5.3-x86_64-linux-gnu-nvidia-dbgsym.ddeb: eb72d39d5daf92c9f48e4f4421f32fa7787359436e4f55f0b9ccc22b482f9b01
    obs-localvocal-0.5.3-x86_64-linux-gnu-nvidia.deb: ecf5f861fd41104495954b60342cb28b314d4cd4dd5e73e98ec194c20b142d27
    
  5. 0.5.2OBS Localvocal 0.5.22025-11-21 · 2025-11-21 00:33 UTC
    查看更新说明

    What's Changed

    [EDIT] Previous mention of additional AMD GPU targets was incorrect, I made a mistake in how I configured those. Next release for more AMD GPUs :)

    Full Changelog: https://github.com/royshil/obs-localvocal/compare/0.5.1...0.5.2

    Checksums

    obs-localvocal-0.5.2-macos-arm64.pkg: 7de4caa46df5c4027cf10709aa04d42cc7083f21e84faa2bd7894e1bf67eb19d
    obs-localvocal-0.5.2-macos-x86_64.pkg: 4a44a753986436dc79b543f1b24d07b2624a050d3e99279913236d013e556934
    obs-localvocal-0.5.2-source.tar.xz: 8a88cd914365a2f8fe4abd4695a2352cb31aca97902c9fd8cc5efb87c92fbfc9
    obs-localvocal-0.5.2-windows-x64-amd-Installer.exe: 1ee97fa44a2bd9685643de61d244ec6dc30bcc3c2ed36ee50ec90dd2025b5e8d
    obs-localvocal-0.5.2-windows-x64-amd.zip: 16523941cdbd81206376e00f6f1d8b08d163ebf583a1feabbf2f9b6e12000a1a
    obs-localvocal-0.5.2-windows-x64-generic-Installer.exe: 0aefbd3dd12ba6fcc7a3a2cfb70f95f92a3312c13e2a3a1a00aca573a482dbab
    obs-localvocal-0.5.2-windows-x64-generic.zip: 448787fdbf1c571144057a96b46c549c4d3bcc599dbc8b3b3914f14f3758b851
    obs-localvocal-0.5.2-windows-x64-nvidia-Installer.exe: 4f1b97e9abacbd973a5b0d6d90c29017b9b1fd2cfab5ffc95b0d0dd3c46dceaa
    obs-localvocal-0.5.2-windows-x64-nvidia.zip: bf9e911f1118da334d109f841981605bd6a75e828ae1bc04fe6e438fbf7533bd
    obs-localvocal-0.5.2-x86_64-linux-gnu-amd.deb: 8c0727878745bccd953955fe9c279998a7f703b60265a5377217e5a2e6a140d4
    obs-localvocal-0.5.2-x86_64-linux-gnu-generic-dbgsym.ddeb: 18b4563b71260c21a419c1a12948c74d3778790541287baba1d51b2f4f2d1348
    obs-localvocal-0.5.2-x86_64-linux-gnu-generic.deb: 17f6128b65bbbba8c75cc5302e0c75a76b3bc5414b5c8dd85b18527a45a3c8da
    obs-localvocal-0.5.2-x86_64-linux-gnu-nvidia-dbgsym.ddeb: 04e3d437358c640ed25a9355c9c97161ae598c3d99f76128bf9a27958bf4d6cf
    obs-localvocal-0.5.2-x86_64-linux-gnu-nvidia.deb: 59370b35f5faa6ac728962f318d439749eb9246f115b4437635a4023ea53db75
    

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Repo sponsors: Recall.ai - API for desktop recording

    If you’re looking for a hosted desktop recording API, consider checking out Recall.ai, an API that records Zoom, Google Meet, Microsoft Teams, in-person meetings, and more.

    LocalVocal - Speech AI assistant OBS Plugin

    GitHub GitHub Workflow Status Total downloads GitHub release (latest by date) GitHub stars

    Downloads

    Windows

    OSGeneric (x86_64)NVidia (x86_64)AMD (x86_64)
    Windows 10/11Static BadgeStatic BadgeStatic Badge

    Linux

    OSGeneric (x86_64)NVidia (x86_64)AMD (x86_64)
    Ubuntu 22.04 (Jammy) .debStatic BadgeStatic BadgeStatic Badge

    MacOS

    MacOSIntel x86_64ARM64 (Apple silicon - M1/M2/M3/M4)
    Generic*Static BadgeStatic Badge
    12 (Monterey)Static BadgeStatic Badge
    13 (Ventura)Static BadgeStatic Badge
    14 (Sonoma)Static BadgeStatic Badge
    15 (Sequoia)Static BadgeStatic Badge

    *While variants for specific versions of MacOS may work better on that version of MacOS, the Generic variant is likely the best option. See MacOS Variants below for more details

    Check out the latest releases for downloads and install instructions.

    Introduction

    LocalVocal lets you transcribe, locally on your machine, speech into text and simultaneously translate to any language. ✅ No GPU required, ✅ no cloud costs, ✅ no network and ✅ no downtime! Privacy first - all data stays on your machine.

    The plugin runs OpenAI's Whisper to process real-time speech and predict a transcription, utilizing Whisper.cpp from ggerganov to run the model efficiently on CPUs and GPUs. Translation is done with CTranslate2.

    Usage

    Do more with LocalVocal:

    Current Features:

    • Transcribe audio to text in real time in 100 languages
    • Display captions on screen using text sources
    • Send captions to a .txt or .srt file (to read by external sources or video playback) with and without aggregation option
    • Sync'ed captions with OBS recording timestamps
    • Send captions on a RTMP stream to e.g. YouTube, Twitch
    • Bring your own Whisper model (any GGML)
    • Translate captions in real time to major languages (with cloud prviders, Whisper built-in translation as well as NMT models)
    • CUDA, hipBLAS (AMD ROCm), Apple Arm64, AVX & SSE acceleration support
    • Filter out or replace any part of the produced captions
    • Partial transcriptions for a streaming-captions experience
    • 100s of fine-tuned Whisper models for dozens of languages from HuggingFace

    Available Versions

    LocalVocal is available in multiple versions to cater to different hardware configurations and operating systems. Below is a brief explanation of the different versions you can download:

    • Windows (please ensure you have the latest MSVC runtime installed)
    • MacOS
      • Intel (x86_64): This version is for Mac computers with Intel processors. See MacOS variants
      • Apple Silicon (arm64): This version is optimized for Mac computers with Apple Silicon (M1, M2, etc.) processors. See MacOS variants
    • Linux x86_64: This version is for Linux systems with x86_64 architecture.

    Make sure to download the version that matches your system's hardware and operating system for the best performance.

    Whisper backends are now loaded dynamically when the plugin starts, which has 2 major benefits:

    • Better CPU performance and compatibility - Whisper can automatically select the best CPU backend that works on your system out of all the ones available. This means that the plugin can now make full use of newer CPUs with more features, as well as making it usable on even older hardware than before (prior to v0.5.0 it was assumed that users would have at least AVX2 capable CPUs)
    • More stability - If a backend is present that cannot be used on your system, either due to unavailable CPU features, missing dependencies, or something else, it will simply not be loaded instead of causing a crash

    To ensure the plugin works "out-of-the-box", it is configured by default to use the CPU only (this is also the case for users upgrading from versions older than v0.5.0). This is to avoid immediate crashes on startup if for any reason your GPU cannot be used by one of the Whisper backends (e.g. the Metal backend on Apple just crashes if it is unable to allocate a buffer to load a model into)

    If you want to use GPU acceleration, please ensure you go into the plugin settings and select your desired GPU acceleration backend

    Generic variants

    These variants should run well on any system regardless of hardware configuration. They contain the following Whispercpp backends:

    • CPU
      • Generic x86_64
      • Generic x86_64 with SSE4.2
      • Sandy Bridge (CPU with SSE4.2, AVX)
      • Haswell (CPU with SSE4.2, AVX, F16C, AVX2, BMI2, FMA)
      • Sky Lake (CPU with SSE4.2, AVX, F16C, AVX2, BMI2, FMA, AVX512)
      • Ice Lake (CPU with SSE4.2, AVX, F16C, AVX2, BMI2, FMA, AVX512, AVX512_VBMI AVX512_VNNI)
      • Alder Lake (CPU with SSE4.2, AVX, F16C, AVX2, BMI2, FMA, AVX_VNNI)
      • Sapphire Rapids (CPU with SSE4.2, AVX, F16C, AVX2, BMI2, FMA, AVX512, AVX512_VBMI AVX512_VNNI, AVX512_BF16, AMX_TITLE, AMX_INT8)
    • OpenBLAS - Used in conjunction with a CPU backend to accelerate processing speed
    • Vulkan - Standard cross-platform graphics library allowing for GPU accelerated processing on GPUs that aren't supported by CUDA or ROCm. Can also work with integrated GPUs)
    • OpenCL (currently Linux only) - Industry standard parallel compute library that may be faster than Vulkan on supported GPUs
    NVidia optimized variants

    These variants contain all the backends from the generic variant, plus a CUDA backend that provides accelerated performance on supported NVidia GPUS. If the OpenCL backend is available on your platform, it also uses the CUDA OpenCL library instead of the generic one.

    Make sure you have the latest NVidia GPU drivers installed and you will likely also need the CUDA toolkit v12.8.0 or newer.

    If installing on Linux, to avoid installing the entire CUDA toolkit if you don't need it you can just install either the cuda-runtime-12.8 package to get all the runtime libs and drivers, or the cuda-libaries-12-8 package to just get the runtime libraries.

    AMD optimized variants

    These variants contain all the backends from the generic variant, plus a hipblas backend using AMD's ROCm framework that accelerates computation on supported AMD GPUs

    Please ensure you have a compatible AMD GPU driver installed

    Mac OS variants

    These variants come with the following backends available:

    • CPU
      • The same x86_64 variants as listed in Generic variants for Intel CPUs
      • m1, m2/m3, and m4 variants for ARM CPUs
    • Accelerate - Used in conjunction with a CPU backend to accelerate processing speed
    • Metal - Uses the system's GPU for accelerated processing
    • CoreML - Special backend that uses Apple's CoreML instead of Whisper's normal model processing, running on either the Metal or CPU backends
    • Vulkan - For systems that can't use Metal to accelerate transcription on the GPU (likely most if not all Intel Macs), Vulkan is available as an alternative for using the GPU. To be able to use this backend, you must first install the Vulkan SDK. After doing so, you should see an additional Vulkan GPU device for each GPU available in the "Whisper backend configuration" section of the plugin filter settings.

    The Generic MacOS version embeds the Metal shaders into whisper.cpp as intermediate bytecode, which is compiled at runtime for the computer and GPU being used. This is probably the best version to use unless you have a reason to use the others, and may be able to take advantage of newer features in Metal 4 in MacOS Tahoe

    Variants with Metal shaders pre-compiled for specific Metal API versions which may or may not work slightly better on the appropriate version of MacOS:

    • MacOS 12 - Metal 2.4
    • MacOS 13 - Metal 3.0
    • MacOS 14 - Metal 3.1
    • MacOS 15 - Metal 3.2

    Models

    The plugin ships with the Tiny.en model, and will autonomously download other Whisper models through a dropdown. There's also an option to select an external GGML Whisper model file if you have it on disk.

    If using CoreML on Apple, it will also automatically download the appropriate CoreML encoder model for your selected model.

    Get more models from https://ggml.ggerganov.com/ and HuggingFace, follow the instructions on whisper.cpp to create your own models or download others such as distilled models.

    Building

    The plugin was built and tested on Mac OSX (Intel & Apple silicon), Windows (with and without Nvidia CUDA) and Linux.

    Start by cloning this repo to a directory of your choice.

    Mac OSX

    Using the CI pipeline scripts, locally you would just call the zsh script, which builds for the architecture specified in $MACOS_ARCH (either x86_64 or arm64).

    $ MACOS_ARCH="x86_64" ./.github/scripts/build-macos -c Release
    
    Install

    The above script should succeed and the plugin files (e.g. obs-localvocal.plugin) will reside in the ./release/Release folder off of the root. Copy the .plugin file to the OBS directory e.g. ~/Library/Application Support/obs-studio/plugins.

    To get .pkg installer file, run for example

    $ ./.github/scripts/package-macos -c Release
    

    (Note that maybe the outputs will be in the Release folder and not the install folder like pakage-macos expects, so you will need to rename the folder from build_x86_64/Release to build_x86_64/install)

    Linux

    Using pre-compiled variants
    1. Clone the repository and if not using Ubuntu install the development versions of these dependencies using your distribution's package manager:

      • libcurl
      • libsimde
      • libssl
      • icu
      • openblas (preferably the OpenMP variant rather than the pthreads variant)
      • OpenCL
      • Vulkan

      Installing ccache is also recommended if you are likely to be building the plugin multiple times

    2. Install rust via rustup (recommended), or your distribution's package manager

    3. Set the ACCELERATION environment variable to one of generic, nvidia, or amd (defaults to generic if unset)

      export ACCELERATION="nvidia"
      
    4. Then from the repo directory build the plugin by running:

      ./.github/scripts/build-linux
      

      If you can't use the CI build script for some reason, you can build the plugin as follows

      cmake -B build_x86_64 --preset linux-x86_64 -DCMAKE_INSTALL_PREFIX=./release
      cmake --build build_x86_64 --target install
      
    5. Installing

      If using Ubuntu and the plugin was previously installed using a .deb package, copy the results to the standard OBS folders on Ubuntu

      sudo cp -R release/RelWithDebInfo/lib/* /usr/lib/
      sudo cp -R release/RelWithDebInfo/share/* /usr/share/
      

      Otherwise, follow the official OBS plugins guide and copy the results to your user plugins folder

      mkdir -p ~/.config/obs-studio/plugins/obs-localvocal/bin/64bit
      cp -R release/RelWithDebInfo/lib/x86_64-linux-gnu/obs-plugins/* ~/.config/obs-studio/plugins/obs-localvocal/bin/64bit/
      mkdir -p ~/.config/obs-studio/plugins/obs-localvocal/data
      cp -R release/RelWithDebInfo/share/obs/obs-plugins/obs-localvocal/* ~/.config/obs-studio/plugins/obs-localvocal/data/
      

      Note: The lib path in the release folder varies depending on your Linux distribution (e.g. on Gentoo the plugin libraries are found in release/RelWithDebInfo/lib64/obs-plugins) but the destination directory to copy them into will always be the same.

    Building Whispercpp from source along with the plugin

    If you can't use the CI build script for some reason, or simply prefer to build the Whispercpp dependency from source along with the plugin, follow the steps above but build the plugin using the following commands:

    cmake -B build_x86_64 --preset linux-x86_64 -DLINUX_SOURCE_BUILD=ON -DCMAKE_INSTALL_PREFIX=./release
    cmake --build build_x86_64 --target install
    

    When building from source, the Vulkan and OpenCL development libraries are optional and will only be used in the build if they are installed. Similarly if the CUDA or ROCm toolkits are found, they will also be used and the relevant Whisper backends will be enabled.

    The default for a full source build is to build both Whisper and the plugin optimized for the host system. To change this behaviour add one or both of the following options to the CMake configure command (the first of the two):

    • to build all CPU backends add -DWHISPER_DYNAMIC_BACKENDS=ON
    • to build all CUDA kernels add -DWHISPER_BUILD_ALL_CUDA_ARCHITECTURES=ON

    Linux (Flatpak)

    Building the plugin as a Flatpak extension for OBS Studio allows for easy distribution and installation on Linux systems.

    Prerequisites
    1. Install Flatpak and flatpak-builder:

      # On Ubuntu/Debian
      sudo apt install flatpak flatpak-builder
      
      # On Fedora
      sudo dnf install flatpak flatpak-builder
      
      # On Arch Linux
      sudo pacman -S flatpak flatpak-builder
      
    2. Add the Flathub repository:

      flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
      
    3. Install the OBS Studio Flatpak and required SDKs:

      flatpak install flathub com.obsproject.Studio
      flatpak install flathub org.kde.Sdk//6.8
      
    Building
    1. Clone the repository if you haven't already:

      git clone https://github.com/locaal-ai/obs-localvocal.git
      cd obs-localvocal
      
    2. Set the ACCELERATION environment variable to one of generic, nvidia, or amd (defaults to generic if unset):

      export ACCELERATION="nvidia"  # or "amd" or "generic"
      
    3. Build the Flatpak extension:

      ./flatpak/build.sh --disable-rofiles-fuse --force-clean build-dir ./flatpak/com.obsproject.Studio.Plugin.LocalVocal.yaml
      

      The build process will:

      • Compile all dependencies including ICU 77, whisper.cpp, CTranslate2, etc.
      • Build the LocalVocal plugin with the selected acceleration backend
      • Create a Flatpak extension that integrates with OBS Studio
    4. Installing the built extension:

      ./flatpak/build.sh --disable-rofiles-fuse --install build-dir ./flatpak/com.obsproject.Studio.Plugin.LocalVocal.yaml
      

      Or manually install using:

      flatpak-builder --user --install --force-clean build-dir ./flatpak/com.obsproject.Studio.Plugin.LocalVocal.yaml
      
    5. Verify the installation:

      flatpak list | grep LocalVocal
      
    Running OBS Studio with the Plugin

    After installation, simply launch OBS Studio from your application menu or via:

    flatpak run com.obsproject.Studio
    

    The LocalVocal plugin should now be available in OBS Studio's filters.

    Troubleshooting
    • Build fails with ICU errors: The Flatpak build uses ICU 77 which is compiled as part of the build process. This is required for Qt's uic binary compatibility.
    • CUDA/ROCm not detected: Make sure you've set the ACCELERATION environment variable before building.
    • Plugin not visible in OBS: Ensure the Flatpak extension was installed to the correct location and OBS Studio is running from Flatpak.

    Windows

    Use the CI scripts again, for example:

    > .github/scripts/Build-Windows.ps1 -Configuration Release
    

    The build should exist in the ./release folder off the root. You can manually install the files in the OBS directory.

    > Copy-Item -Recurse -Force "release\Release\*" -Destination "C:\Program Files\obs-studio\"
    
    Building with CUDA support on Windows

    LocalVocal will now build with CUDA support automatically through a prebuilt binary of Whisper.cpp from https://github.com/locaal-ai/locaal-ai-dep-whispercpp. The CMake scripts will download all necessary files.

    To build with cuda add ACCELERATION as an environment variable (with cpu, hipblas, or cuda) and build regularly

    > $env:ACCELERATION="cuda"
    > .github/scripts/Build-Windows.ps1 -Configuration Release