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
2 changes: 1 addition & 1 deletion whisperwebuiv2/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ appVersion: "1.0.7"
description: A Web UI for easy subtitle using whisper model.
name: whisperwebuiv2
type: application
version: 1.0.11
version: 1.0.19
10 changes: 9 additions & 1 deletion whisperwebuiv2/OlaresManifest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ metadata:
description: A Web UI for easy subtitle using whisper model.
icon: https://app.cdn.olares.com/appstore/whisperwebui/icon.png
appid: whisperwebuiv2
version: '1.0.11'
version: '1.0.19'
title: Whisper-WebUI
categories:
- AI
Expand Down Expand Up @@ -87,13 +87,21 @@ spec:

Post-processing with speaker diarization using the pyannote model

upgradeDescription: |
Add the Helm release revision to the download Job name so upgrades do not patch its immutable pod template.
Replace the Bitnami OpenResty proxy with official OpenResty and run it as UID/GID 1000 with writable runtime paths.
developer: jhj0517
website: https://github.com/jhj0517/Whisper-WebUI
sourceCode: https://github.com/jhj0517/Whisper-WebUI
submitter: Olares
locale:
- en-US
- zh-CN
- de-DE
- es-ES
- it-IT
- fr-FR
- ja-JP
doc: https://github.com/jhj0517/Whisper-WebUI
license:
- text: Apache-2.0 License
Expand Down
35 changes: 35 additions & 0 deletions whisperwebuiv2/i18n/de-DE/OlaresManifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
metadata:
title: Whisper-WebUI
description: Eine Web-UI für einfache Untertitel mit dem Whisper-Modell
spec:
fullDescription: |
Eine Gradio-basierte Browseroberfläche für Whisper. Nutzen Sie sie als einfachen Untertitel-Generator!

**Funktionen**
Wählen Sie die gewünschte Whisper-Implementierung:
- openai/whisper
- SYSTRAN/faster-whisper (Standard)
- Vaibhavs10/insanely-fast-whisper

Untertitel aus verschiedenen Quellen erzeugen, darunter:
- Dateien
- Youtube
- Mikrofon

Derzeit unterstützte Untertitelformate:
- SRT
- WebVTT
- txt (nur Textdatei ohne Zeitachse)

Speech to Text Translation
- Von anderen Sprachen nach Englisch. (Dies ist Whispers End-to-End Speech-to-Text-Übersetzungsfunktion)

Text to Text Translation
- Untertiteldateien mit Facebook-NLLB-Modellen übersetzen
- Untertiteldateien mit der DeepL API übersetzen

Audio-Eingabe mit Silero VAD vorverarbeiten.

Audio-Eingabe mit UVR vorverarbeiten, um BGM zu trennen.

Nachverarbeitung mit Speaker Diarization über das pyannote-Modell
35 changes: 35 additions & 0 deletions whisperwebuiv2/i18n/es-ES/OlaresManifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
metadata:
title: Whisper-WebUI
description: Una interfaz web para subtítulos fáciles con el modelo whisper
spec:
fullDescription: |
Una interfaz de navegador basada en Gradio para Whisper. ¡Úsala como un generador sencillo de subtítulos!

**Funciones**
Elige la implementación de Whisper que quieras usar entre:
- openai/whisper
- SYSTRAN/faster-whisper (usada por defecto)
- Vaibhavs10/insanely-fast-whisper

Genera subtítulos desde varias fuentes, incluyendo:
- Archivos
- Youtube
- Micrófono

Formatos de subtítulos admitidos actualmente:
- SRT
- WebVTT
- txt (solo archivo de texto sin línea de tiempo)

Speech to Text Translation
- De otros idiomas al inglés. (Función de traducción speech-to-text de extremo a extremo de Whisper)

Text to Text Translation
- Traducir archivos de subtítulos con modelos Facebook NLLB
- Traducir archivos de subtítulos con la API de DeepL

Preprocesar la entrada de audio con Silero VAD.

Preprocesar la entrada de audio para separar BGM con UVR.

Postprocesado con diarización de hablantes usando el modelo pyannote
35 changes: 35 additions & 0 deletions whisperwebuiv2/i18n/fr-FR/OlaresManifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
metadata:
title: Whisper-WebUI
description: Une interface web pour des sous-titres faciles avec le modèle whisper
spec:
fullDescription: |
Une interface navigateur basée sur Gradio pour Whisper. Utilisez-la comme générateur de sous-titres simple !

**Fonctionnalités**
Choisissez l’implémentation Whisper à utiliser parmi :
- openai/whisper
- SYSTRAN/faster-whisper (utilisée par défaut)
- Vaibhavs10/insanely-fast-whisper

Générez des sous-titres à partir de diverses sources, notamment :
- Fichiers
- Youtube
- Microphone

Formats de sous-titres actuellement pris en charge :
- SRT
- WebVTT
- txt (fichier texte uniquement, sans timeline)

Speech to Text Translation
- D’autres langues vers l’anglais. (Fonction de traduction speech-to-text de bout en bout de Whisper)

Text to Text Translation
- Traduire des fichiers de sous-titres avec les modèles Facebook NLLB
- Traduire des fichiers de sous-titres avec l’API DeepL

Prétraitement de l’entrée audio avec Silero VAD.

Prétraitement de l’entrée audio pour séparer le BGM avec UVR.

Post-traitement avec diarisation des locuteurs via le modèle pyannote
35 changes: 35 additions & 0 deletions whisperwebuiv2/i18n/it-IT/OlaresManifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
metadata:
title: Whisper-WebUI
description: Una Web UI per sottotitoli semplici con il modello whisper
spec:
fullDescription: |
Un’interfaccia browser basata su Gradio per Whisper. Usala come Easy Subtitle Generator!

**Funzionalità**
Seleziona l’implementazione Whisper da usare tra:
- openai/whisper
- SYSTRAN/faster-whisper (usata di default)
- Vaibhavs10/insanely-fast-whisper

Genera sottotitoli da varie fonti, tra cui:
- File
- Youtube
- Microfono

Formati sottotitoli attualmente supportati:
- SRT
- WebVTT
- txt (solo file di testo senza timeline)

Speech to Text Translation
- Da altre lingue all’inglese. (Funzione di traduzione speech-to-text end-to-end di Whisper)

Text to Text Translation
- Traduci file sottotitoli con i modelli Facebook NLLB
- Traduci file sottotitoli con l’API DeepL

Pre-elaborazione dell’audio in ingresso con Silero VAD.

Pre-elaborazione dell’audio in ingresso per separare il BGM con UVR.

Post-elaborazione con speaker diarization usando il modello pyannote
35 changes: 35 additions & 0 deletions whisperwebuiv2/i18n/ja-JP/OlaresManifest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
metadata:
title: Whisper-WebUI
description: whisper モデルで簡単に字幕を作成する Web UI
spec:
fullDescription: |
Whisper 向けの Gradio ベースのブラウザ UI。Easy Subtitle Generator として使えます!

**機能**
使用する Whisper 実装を選択:
- openai/whisper
- SYSTRAN/faster-whisper(デフォルト)
- Vaibhavs10/insanely-fast-whisper

次を含むさまざまなソースから字幕を生成:
- ファイル
- Youtube
- マイク

現在対応の字幕フォーマット:
- SRT
- WebVTT
- txt(タイムラインなしのテキストのみ)

Speech to Text Translation
- 他言語から英語へ。(Whisper のエンドツーエンド speech-to-text 翻訳機能)

Text to Text Translation
- Facebook NLLB モデルで字幕ファイルを翻訳
- DeepL API で字幕ファイルを翻訳

Silero VAD で音声入力を前処理。

UVR で BGM を分離する音声入力の前処理。

pyannote モデルによる話者ダイアライゼーションの後処理
2 changes: 1 addition & 1 deletion whisperwebuiv2/whisperwebuiv2/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
apiVersion: v2
appVersion: '1.25.3-2'
appVersion: '1.29.2.5'
description: description
name: whisperwebuiv2
type: application
Expand Down
54 changes: 40 additions & 14 deletions whisperwebuiv2/whisperwebuiv2/templates/clientproxy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,19 @@ data:
}

server {

client_body_temp_path /tmp/client_body;

proxy_temp_path /tmp/proxy;

fastcgi_temp_path /tmp/fastcgi;

uwsgi_temp_path /tmp/uwsgi;

scgi_temp_path /tmp/scgi;
listen 8080;
access_log /opt/bitnami/openresty/nginx/logs/access.log;
error_log /opt/bitnami/openresty/nginx/logs/error.log;
access_log /dev/stdout;
error_log /dev/stderr;

location /config {
proxy_pass http://whisperwebui-svc.whisperwebuiv2server-shared:7860;
Expand Down Expand Up @@ -72,9 +82,14 @@ data:

# Terminal entrance (:8081)
server {
client_body_temp_path /tmp/client_body;
proxy_temp_path /tmp/proxy;
fastcgi_temp_path /tmp/fastcgi;
uwsgi_temp_path /tmp/uwsgi;
scgi_temp_path /tmp/scgi;
listen 8081;
access_log /opt/bitnami/openresty/nginx/logs/access.log;
error_log /opt/bitnami/openresty/nginx/logs/error.log;
access_log /dev/stdout;
error_log /dev/stderr;

client_max_body_size 10m;

Expand All @@ -101,9 +116,14 @@ data:

# Whisper-WebUI API entrance (:8082)
server {
client_body_temp_path /tmp/client_body;
proxy_temp_path /tmp/proxy;
fastcgi_temp_path /tmp/fastcgi;
uwsgi_temp_path /tmp/uwsgi;
scgi_temp_path /tmp/scgi;
listen 8082;
access_log /opt/bitnami/openresty/nginx/logs/access.log;
error_log /opt/bitnami/openresty/nginx/logs/error.log;
access_log /dev/stdout;
error_log /dev/stderr;

client_max_body_size 500m;

Expand Down Expand Up @@ -165,19 +185,26 @@ spec:
items:
- key: nginx.conf
path: nginx.conf
- name: nginx-runtime
emptyDir: {}
containers:
- name: nginx
image: "docker.io/beclab/aboveos-bitnami-openresty:1.25.3-2"
image: "docker.io/openresty/openresty:1.29.2.5-bookworm-fat"
command:
- /usr/local/openresty/bin/openresty
args:
- -g
- "daemon off; pid /tmp/nginx.pid;"
securityContext:
runAsUser: 1000
runAsGroup: 1000
ports:
- containerPort: 8080
protocol: TCP
- containerPort: 8081
protocol: TCP
- containerPort: 8082
protocol: TCP
env:
- name: OPENRESTY_CONF_FILE
value: /etc/nginx/nginx.conf
readinessProbe:
exec:
command:
Expand All @@ -200,11 +227,10 @@ spec:
memory: 64Mi
volumeMounts:
- name: nginx-config
mountPath: /etc/nginx/nginx.conf
subPath: nginx.conf
- name: nginx-config
mountPath: /opt/bitnami/openresty/nginx/conf/server_blocks/nginx.conf
mountPath: /etc/nginx/conf.d/default.conf
subPath: nginx.conf
- name: nginx-runtime
mountPath: /var/run/openresty

---
apiVersion: v1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ spec:
apiVersion: batch/v1
kind: Job
metadata:
name: {{ .Release.Name }}-download-models
name: {{ .Release.Name }}-download-models-{{ .Release.Revision }}
namespace: {{ .Release.Namespace }}
labels:
app: {{ .Release.Name }}-downloadmodels
Expand All @@ -129,6 +129,9 @@ spec:
metadata:
labels:
app: {{ .Release.Name }}-downloadmodels
gateway.olares.io/shared-caller-outbound: "false"
annotations:
linkerd.io/inject: disabled
spec:
containers:
- name: {{ .Release.Name }}-downloadmodels
Expand Down