Skip to content

Commit

Permalink
Merge pull request #57 from one-click-studio/revert-56-52-overloaded-cpu
Browse files Browse the repository at this point in the history
Revert "52 overloaded cpu"
  • Loading branch information
tillderoquefeuil authored Aug 25, 2023
2 parents dc0b07b + 9166d53 commit 6d12c7e
Show file tree
Hide file tree
Showing 83 changed files with 2,871 additions and 6,216 deletions.
15 changes: 7 additions & 8 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ on:
push:
branches:
- main
- pre-release

jobs:
build-executables:
Expand Down Expand Up @@ -102,8 +101,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
with:
draft: ${{ github.ref == 'refs/heads/master' }}
prerelease: ${{ github.ref != 'refs/heads/master' }}
draft: true
tag_name: ${{ steps.package-json.outputs.version }}
files: |
./dist/*
Expand Down Expand Up @@ -169,19 +167,21 @@ jobs:
run: mkdir ./dist

- name: edit exe file
run: npx exe-edit .\win-dist\gabin-win-x64.exe .\dist\gabin-win-x64.exe --icon .\src\resources\icons\icon-64.ico --gui
run: |
npx exe-edit .\win-dist\gabin-win-x64.exe .\dist\gabin-win-x64-debug.exe --icon .\src\resources\icons\icon-64.ico
npx exe-edit .\win-dist\gabin-win-x64.exe .\dist\gabin-win-x64.exe --icon .\src\resources\icons\icon-64.ico --gui
- name: Upload executables to asset
id: upload-release-asset
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
with:
draft: ${{ github.ref == 'refs/heads/master' }}
prerelease: ${{ github.ref != 'refs/heads/master' }}
draft: true
tag_name: ${{ steps.package-json.outputs.version }}
files: |
./dist/gabin-win-x64.exe
./dist/gabin-win-x64-debug.exe
sign-mac-executables:
runs-on: macos-latest
Expand Down Expand Up @@ -271,8 +271,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
with:
draft: ${{ github.ref == 'refs/heads/master' }}
prerelease: ${{ github.ref != 'refs/heads/master' }}
draft: true
tag_name: ${{ steps.package-json.outputs.version }}
files: |
./mac-dist/gabin-mac-x64.zip
Expand Down
10 changes: 1 addition & 9 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,4 @@ database.json
.env
test.sh
certificate.p12
.DS_Store
/test-results/
/playwright-report/
/playwright/.cache/
/tests
/tests-examples
playwright.config.ts
* copy.*
*.wav
.DS_Store
7 changes: 1 addition & 6 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,3 @@
{
"recommendations": [
"dbaeumer.vscode-eslint",
"vue.volar",
"vue.vscode-typescript-vue-plugin",
"ms-vscode.vscode-typescript-next"
]
"recommendations": ["dbaeumer.vscode-eslint"]
}
63 changes: 8 additions & 55 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,24 @@
<p align="center">
<img src="https://github.com/one-click-studio/gabin/blob/main/src/resources/icons/icon.png?raw=true" width="150px" height="150px">
</p>

<div align="center">
<h1>Gabin</h1>
</div>
<p align="center">Automate camera switching with <em>OBS, Bitfocus Companion and any audio api</em>.</p>

<p align="center">
<img src="https://github.com/one-click-studio/gabin/actions/workflows/release.yml/badge.svg">
</p>

<img width="1392" alt="Screenshot 2023-01-18 at 10 08 19" src="https://user-images.githubusercontent.com/26444186/213129682-a180d396-4142-4cee-8ef8-7116b22483e5.png">

## Download

You can download the latest version of Gabin [here](https://github.com/one-click-studio/gabin/releases).

## Features

- ⚡️ [Vue 3](https://vuejs.org), [pnpm](https://pnpm.io) - born with fastness
- 🖌️ [unocss](https://github.com/unocss/unocss) for ultra-fast tailwind-compatible styling
- 💬 [socketIo](https://socket.io/) for main/renderer communication
Expand All @@ -22,6 +27,7 @@ You can download the latest version of Gabin [here](https://github.com/one-click
## Usage

### Development

```sh
pnpm i
```
Expand All @@ -30,68 +36,15 @@ pnpm dev
```

### Build

```sh
pnpm build
```

## Known issues

- ASIO is not working with XR32 audio mixer

## Documentation

### CLI
Gabin can be called in command line with several options :
- ```-h```, ```--help``` : Display this message
- ```-d```, ```--debug``` : Enable debug mode
- ```-v```, ```--version``` : Display version
- ```--no-auto-open``` : Disable auto open in browser

### Environment variables
You can add environment variables :
- ```GABIN_HOST``` : Hostname to use (default: ```localhost```)
- ```GABIN_HTTP_PORT``` : Port to use (default: ```1510```)
- ```GABIN_OSC_PORT``` : Port to use (default: ```32123```)
- ```GABIN_BASE_URL``` : Base url to use (default: ```/```)
- ```GABIN_LOGS_FOLDER``` : Folder to store logs (default: ```$appdata/gabin/gabin.log```)
- ```GABIN_CONFIG_FOLDER``` : Folder to store config (default: ```$appdata/gabin/database.json```)

### Video mixers options
- OBS : Gabin communicates directly with OBS via websocket to trigger shots and listen to scene change (needs OBS v28+)
- OSC : Gabin will triggers the paths you indicate for each shot and listen to scene change on his OSC port (more details below)

### OSC API/module
By default, Gabin listen OSC on ```localhost:32123```

#### API
Even if you don't choose OSC as video mixer, you can control Gabin through OSC
Command :
| path | params | description |
| ---- | ------ | ----------- |
| ```/gabin/on``` | none | power Gabin on |
| ```/gabin/off``` | none | power Gabin off |
| ```/gabin/config``` | config: string | add or edit this config |
| ```/gabin/profile``` | profileName: string | set this profile as active |

Request :
| path | params | description |
| ---- | ------ | ----------- |
| ```/gabin/profiles``` | host: string, port: number, path: string | get all profiles |
| ```/gabin/devices``` | host: string, port: number, path: string | get all audio devices |

Register :
| path | params | description |
| ---- | ------ | ----------- |
| ```/register/shot``` | host: string, port: number, path: string | get updated on each triggered shot |
| ```/register/autocam``` | host: string, port: number, path: string | get updated when play/pause Gabin |
| ```/register/defaultProfile``` | host: string, port: number, path: string | get updated when new default profile is set |

#### Module (video mixer)
| path | params | description |
| ---- | ------ | ----------- |
| ```/scene/$NAME_OF_YOUR_SCENE``` | none | tell Gabin what the current scene is |
| ```/source/$NAME_OF_YOUR_SOURCE``` | none | trigger a specific shot |
| ```/mic/$NAME_OF_YOUR_MIC``` | availabe: 1,0 | toggle mic availability
| ```/autocam``` | autocam: 1,0 | toggle autocam

---
Made in 🇫🇷 by [OneClickStudio](https://oneclickstudio.fr/).
2 changes: 1 addition & 1 deletion nodemon.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"watch": ["src"],
"ext": ".ts,.js",
"ignore": ["src/tests/*"],
"ignore": [],
"exec": "npx ts-node ./src/main/index.ts"
}
15 changes: 6 additions & 9 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "gabin",
"version": "0.2.5",
"version": "0.2.0",
"packageManager": "[email protected]",
"description": "Automate camera switching with OBS, Bitfocus Companion and any audio api.",
"author": "OneClickStudio",
Expand All @@ -12,13 +12,12 @@
"postinstall": "pnpm -C ./src/render install",
"typecheck": "tsc --noEmit -p tsconfig.json --composite false",
"dev": "cross-env GABIN_CLIENT_PORT=5999 concurrently \"pnpm run dev:client\" \"pnpm run dev:server\"",
"dev:server": "npx nodemon --no-auto-open --debug",
"dev:server": "npx nodemon",
"dev:client": "pnpm -C ./src/render dev",
"build": "shx rm -rf ./build && concurrently \"pnpm run build:client\" \"pnpm run build:server\"",
"build:server": "tsc && shx cp -R ./src/resources ./build/resources",
"build:client": "pnpm -C ./src/render build && shx mkdir -p ./build/render/dist && shx cp -R ./src/render/dist ./build/render",
"preview": "pnpm run build && node build/main/index.js",
"test": "ts-node ./src/tests/audio.ts --no-auto-open --debug"
"preview": "pnpm run build && node build/main/index.js"
},
"pkg": {
"assets": [
Expand All @@ -39,27 +38,25 @@
"finalhandler": "^1.2.0",
"obs-websocket-js": "^5.0.2",
"onnxruntime-node": "^1.13.1",
"osc-js": "^2.4.0",
"rxjs": "^7.8.0",
"serve-static": "^1.15.0",
"simple-json-db": "^2.0.0",
"socket.io": "^4.6.0",
"systray2": "github:one-click-studio/node-systray",
"wav": "^1.0.2"
"systray2": "github:one-click-studio/node-systray"
},
"devDependencies": {
"@types/deep-eql": "^4.0.0",
"@types/finalhandler": "^1.2.0",
"@types/node": "^18.13.0",
"@types/serve-static": "^1.15.0",
"@types/wav": "^1.0.1",
"concurrently": "^7.6.0",
"cross-env": "^7.0.3",
"nodemon": "^2.0.20",
"pkg": "^5.8.1",
"playwright": "^1.29.2",
"shx": "^0.3.4",
"ts-node": "^10.9.1",
"typescript": "^5.0.3",
"typescript": "^4.9.5",
"yarn": "^1.22.19"
}
}
Loading

0 comments on commit 6d12c7e

Please sign in to comment.