-
-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
80 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,81 @@ | ||
# obs-cleanstream | ||
CleanStream is an OBS plugin that cleans live audio streams from unwanted words and utterances | ||
**🚧 EXPERIMENTAL 🚧** | ||
|
||
CleanStream is an OBS plugin that cleans live audio streams from unwanted words and utterances. | ||
|
||
**🚧 EXPERIMENTAL 🚧** | ||
|
||
<div align="center"> | ||
|
||
[![GitHub](https://img.shields.io/github/license/royshil/obs-cleanstream)](https://github.com/royshil/obs-cleanstream/blob/main/LICENSE) | ||
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/royshil/obs-cleanstream/main.yml)](https://github.com/royshil/obs-cleanstream/actions/workflows/main.yml) | ||
[![Total downloads](https://img.shields.io/github/downloads/royshil/obs-cleanstream/total)](https://github.com/royshil/obs-cleanstream/releases) | ||
[![GitHub release (latest by date)](https://img.shields.io/github/v/release/royshil/obs-cleanstream)](https://github.com/royshil/obs-cleanstream/releases) | ||
|
||
</div> | ||
|
||
## Download | ||
Check out the [latest releases](https://github.com/royshil/obs-cleanstream/releases) for downloads and install instructions. | ||
|
||
## Requirements | ||
- OBS version 28+ ([download](https://obsproject.com/download)) | ||
|
||
We do not support older versions of OBS since the plugin is using newer APIs. | ||
|
||
## Introduction | ||
CleanStream is an OBS plugin that cleans live audio streams from unwanted words and utterances, such as "uh"s and "um"s, and other words that you can configure, like profanity. | ||
|
||
It is using a neural network ([OpenAI Whisper](https://github.com/openai/whisper)) to predict in real time the speech and remove the unwanted words. | ||
|
||
It's using the [Whisper.cpp](https://github.com/ggerganov/whisper.cpp) project from [ggerganov](https://github.com/ggerganov) to run the Whisper network in a very efficient way. | ||
|
||
### 🚧🚧🚧 **This plugin is still experimental and is not ready for live production use.** 🚧🚧🚧 | ||
|
||
But it is working and you can try it out. *Please report any issues you find.* 🙏 | ||
|
||
We're working on improving the plugin and adding more features. If you have any ideas or suggestions, please open an issue. | ||
|
||
GPU support is coming soon. Whisper.cpp is using GGML which should have GPU support for major platforms. We will bring it to the plugin when it's ready. | ||
|
||
## Building | ||
|
||
The plugin was built and tested on Mac OSX, Windows and Ubuntu Linux. Help is appreciated in building on other OSs and packages. | ||
|
||
The building pipelines in CI take care of the heavy lifting. Use them in order to build the plugin locally. Note that due to the fact we're building and packaging OpenCV and ONNX Runtime the build times are quite long. | ||
|
||
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. | ||
|
||
```sh | ||
$ ./.github/scripts/build-macos.zsh -c Release -t macos-x86_64 | ||
``` | ||
|
||
#### Install | ||
The above script should succeed and the plugin files will reside in the `./release` folder off of the root. Copy the files to the OBS directory e.g. `/Users/you/Library/Application Support/obs-studio/obs-plugins`. | ||
|
||
To get `.pkg` installer file, run | ||
```sh | ||
$ ./.github/scripts/package-macos.zsh -c Release -t macos-x86_64 | ||
``` | ||
(Note that maybe the outputs in the e.g. `build_x86_64` will be in the `Release` folder and not the `install` folder like `pakage-macos.zsh` expects, so you will need to rename the folder from `build_x86_64/Release` to `build_x86_64/install`) | ||
|
||
### Linux (Ubuntu-ish) | ||
|
||
Use the CI scripts again | ||
```sh | ||
$ ./.github/scripts/build-linux.sh | ||
``` | ||
|
||
### Windows | ||
|
||
Use the CI scripts again, for example: | ||
|
||
```powershell | ||
> .github/scripts/Build-Windows.ps1 -Target x64 -CMakeGenerator "Visual Studio 17 2022" | ||
``` | ||
|
||
The build should exist in the `./release` folder off the root. You can manually install the files in the OBS directory, e.g. `C:\Program Files\obs-studio\obs-plugins`. | ||
|