{"id":15136515,"url":"https://github.com/jhj0517/whisper-webui","last_synced_at":"2025-05-14T07:09:39.655Z","repository":{"id":153141151,"uuid":"608663046","full_name":"jhj0517/Whisper-WebUI","owner":"jhj0517","description":"A Web UI for easy subtitle using whisper model.","archived":false,"fork":false,"pushed_at":"2025-05-06T05:45:36.000Z","size":1577,"stargazers_count":1933,"open_issues_count":100,"forks_count":270,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-05-06T06:40:49.400Z","etag":null,"topics":["ai","gradio","open-source","python","pytorch","web-ui","whisper"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jhj0517.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["jhj0517"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2023-03-02T13:42:01.000Z","updated_at":"2025-05-06T05:57:40.000Z","dependencies_parsed_at":null,"dependency_job_id":"c4ee6ccf-4f67-44a6-a052-4bee668fec47","html_url":"https://github.com/jhj0517/Whisper-WebUI","commit_stats":{"total_commits":967,"total_committers":14,"mean_commits":69.07142857142857,"dds":0.02585315408479838,"last_synced_commit":"ad418ca785f2bee7c7f3b3176045c7c8c0693999"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jhj0517%2FWhisper-WebUI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jhj0517%2FWhisper-WebUI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jhj0517%2FWhisper-WebUI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jhj0517%2FWhisper-WebUI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jhj0517","download_url":"https://codeload.github.com/jhj0517/Whisper-WebUI/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254092788,"owners_count":22013290,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","gradio","open-source","python","pytorch","web-ui","whisper"],"created_at":"2024-09-26T06:22:20.803Z","updated_at":"2025-05-14T07:09:34.639Z","avatar_url":"https://github.com/jhj0517.png","language":"Python","funding_links":["https://github.com/sponsors/jhj0517"],"categories":[],"sub_categories":[],"readme":"# Whisper-WebUI\nA Gradio-based browser interface for [Whisper](https://github.com/openai/whisper). You can use it as an Easy Subtitle Generator!\n\n![screen](https://github.com/user-attachments/assets/caea3afd-a73c-40af-a347-8d57914b1d0f)\n\n\n\n## Notebook\nIf you wish to try this on Colab, you can do it in [here](https://colab.research.google.com/github/jhj0517/Whisper-WebUI/blob/master/notebook/whisper-webui.ipynb)!\n\n# Feature\n- Select the Whisper implementation you want to use between :\n   - [openai/whisper](https://github.com/openai/whisper)\n   - [SYSTRAN/faster-whisper](https://github.com/SYSTRAN/faster-whisper) (used by default)\n   - [Vaibhavs10/insanely-fast-whisper](https://github.com/Vaibhavs10/insanely-fast-whisper)\n- Generate subtitles from various sources, including :\n  - Files\n  - Youtube\n  - Microphone\n- Currently supported subtitle formats : \n  - SRT\n  - WebVTT\n  - txt ( only text file without timeline )\n- Speech to Text Translation \n  - From other languages to English. ( This is Whisper's end-to-end speech-to-text translation feature )\n- Text to Text Translation\n  - Translate subtitle files using Facebook NLLB models\n  - Translate subtitle files using DeepL API\n- Pre-processing audio input with [Silero VAD](https://github.com/snakers4/silero-vad).\n- Pre-processing audio input to separate BGM with [UVR](https://github.com/Anjok07/ultimatevocalremovergui). \n- Post-processing with speaker diarization using the [pyannote](https://huggingface.co/pyannote/speaker-diarization-3.1) model.\n   - To download the pyannote model, you need to have a Huggingface token and manually accept their terms in the pages below.\n      1. https://huggingface.co/pyannote/speaker-diarization-3.1\n      2. https://huggingface.co/pyannote/segmentation-3.0\n\n### Pipeline Diagram\n![Transcription Pipeline](https://github.com/user-attachments/assets/1d8c63ac-72a4-4a0b-9db0-e03695dcf088)\n\n# Installation and Running\n\n- ## Running with Pinokio\n\nThe app is able to run with [Pinokio](https://github.com/pinokiocomputer/pinokio).\n\n1. Install [Pinokio Software](https://program.pinokio.computer/#/?id=install).\n2. Open the software and search for Whisper-WebUI and install it.\n3. Start the Whisper-WebUI and connect to the `http://localhost:7860`.\n\n- ## Running with Docker \n\n1. Install and launch [Docker-Desktop](https://www.docker.com/products/docker-desktop/).\n\n2. Git clone the repository\n\n```sh\ngit clone https://github.com/jhj0517/Whisper-WebUI.git\n```\n\n3. Build the image ( Image is about 7GB~ )\n\n```sh\ndocker compose build \n```\n\n4. Run the container \n\n```sh\ndocker compose up\n```\n\n5. Connect to the WebUI with your browser at `http://localhost:7860`\n\nIf needed, update the [`docker-compose.yaml`](https://github.com/jhj0517/Whisper-WebUI/blob/master/docker-compose.yaml) to match your environment.\n\n- ## Run Locally\n\n### Prerequisite\nTo run this WebUI, you need to have `git`, `3.10 \u003c= python \u003c= 3.12`, `FFmpeg`.\n\n**Edit `--extra-index-url` in the [`requirements.txt`](https://github.com/jhj0517/Whisper-WebUI/blob/master/requirements.txt) to match your device.\u003cbr\u003e** \nBy default, the WebUI assumes you're using an Nvidia GPU and CUDA 12.4. If you're using Intel or another CUDA version, read the [`requirements.txt`](https://github.com/jhj0517/Whisper-WebUI/blob/master/requirements.txt) and edit `--extra-index-url`.\n\nPlease follow the links below to install the necessary software:\n- git : [https://git-scm.com/downloads](https://git-scm.com/downloads)\n- python : [https://www.python.org/downloads/](https://www.python.org/downloads/) **`3.10 ~ 3.12` is recommended.** \n- FFmpeg :  [https://ffmpeg.org/download.html](https://ffmpeg.org/download.html)\n- CUDA : [https://developer.nvidia.com/cuda-downloads](https://developer.nvidia.com/cuda-downloads)\n\nAfter installing FFmpeg, **make sure to add the `FFmpeg/bin` folder to your system PATH!**\n\n### Installation Using the Script Files\n\n1. git clone this repository\n```shell\ngit clone https://github.com/jhj0517/Whisper-WebUI.git\n```\n2. Run `install.bat` or `install.sh` to install dependencies. (It will create a `venv` directory and install dependencies there.)\n3. Start WebUI with `start-webui.bat` or `start-webui.sh` (It will run `python app.py` after activating the venv)\n\nAnd you can also run the project with command line arguments if you like to, see [wiki](https://github.com/jhj0517/Whisper-WebUI/wiki/Command-Line-Arguments) for a guide to arguments.\n\n# VRAM Usages\nThis project is integrated with [faster-whisper](https://github.com/guillaumekln/faster-whisper) by default for better VRAM usage and transcription speed.\n\nAccording to faster-whisper, the efficiency of the optimized whisper model is as follows: \n| Implementation    | Precision | Beam size | Time  | Max. GPU memory | Max. CPU memory |\n|-------------------|-----------|-----------|-------|-----------------|-----------------|\n| openai/whisper    | fp16      | 5         | 4m30s | 11325MB         | 9439MB          |\n| faster-whisper    | fp16      | 5         | 54s   | 4755MB          | 3244MB          |\n\nIf you want to use an implementation other than faster-whisper, use `--whisper_type` arg and the repository name.\u003cbr\u003e\nRead [wiki](https://github.com/jhj0517/Whisper-WebUI/wiki/Command-Line-Arguments) for more info about CLI args.\n\nIf you want to use a fine-tuned model, manually place the models in `models/Whisper/` corresponding to the implementation.\n\nAlternatively, if you enter the huggingface repo id (e.g, [deepdml/faster-whisper-large-v3-turbo-ct2](https://huggingface.co/deepdml/faster-whisper-large-v3-turbo-ct2)) in the \"Model\" dropdown, it will be automatically downloaded in the directory.\n\n![image](https://github.com/user-attachments/assets/76487a46-b0a5-4154-b735-ded73b2d83d4)\n\n# REST API\nIf you're interested in deploying this app as a REST API, please check out [/backend](https://github.com/jhj0517/Whisper-WebUI/tree/master/backend).\n\n## TODO🗓\n\n- [x] Add DeepL API translation\n- [x] Add NLLB Model translation\n- [x] Integrate with faster-whisper\n- [x] Integrate with insanely-fast-whisper\n- [x] Integrate with whisperX ( Only speaker diarization part )\n- [x] Add background music separation pre-processing with [UVR](https://github.com/Anjok07/ultimatevocalremovergui)  \n- [x] Add fast api script\n- [ ] Add CLI usages\n- [ ] Support real-time transcription for microphone\n\n### Translation 🌐\nAny PRs that translate the language into [translation.yaml](https://github.com/jhj0517/Whisper-WebUI/blob/master/configs/translation.yaml) would be greatly appreciated!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjhj0517%2Fwhisper-webui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjhj0517%2Fwhisper-webui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjhj0517%2Fwhisper-webui/lists"}