Skip to main content

Bulk Generate SRT Subtitles From Video Locally No API Needed

Project description

translatevideo

-Bulk scans video files and transribes and translates video audio into srt subtitle files. Places srt files adjacent to video files.

--Runs on windows/linux/mac

--AMD/Intel/Nvidia GPU compatibility on windows/mac/linux using whisper CPP - Vulkan. Unlike whisper python which is only compatible with NVIDIA GPU's.

Currently only translates into English from other languages. Fastest when transcribing english audio.

Free, all processing is done locally. There is no api. Uses whisper cpp and argos translate to do the transribing and transcription.

Install

- Download and install ffpmeg (https://www.ffmpeg.org/download.html)
	- Add bin path to enviornment path variable

- Download and install Whisper CPP. https://github.com/ggerganov/whisper.cpp.
	Windows:
	- For GPU support install the Vulkan SD and add to enviornment paths prior to compiling for Vulkan
	- Install w64devkit for C++ compiler. When compiling insert the flag -G "MinGW Makefiles"
		Example if compiling with Vulkan GPU support: cmake -B build -DGGML_VULKAN=1 -G "MinGW Makefiles"
	- After compiling download some models. See github.
	- Add whispercpp build/bin to windows enviornment variables

- Install TranslateVideo
	required: need python 3.8 or 3.9 (https://www.python.org/downloads/release/python-390/)
	pip install --upgrade translatevideo
	or
	pip install --upgrade  translatevideo@git+https://github.com/codexhound/translatevideo

- See examples for usage
	- Setup config.tsv (tab delimited, seperate options by tab)
	- Need to set an english only and nonenglish model as below in config
		C:\Software\whisper.cpp\models\ggml-large-v3-turbo-q5_0.bin	Model	0	nonenglishmodel
		C:\Software\whisper.cpp\models\ggml-small.en-q5_0.bin	Model	0	englishmodel
	- Need to set at least 1 videos path:
		D:\Share\VIDEOS\Movies	Movies	0	videopath
	- Need to set a temporary directory
		D:\Share\tempgensubtitles	Temp	0	tempdir

- Usage Command Line:
	translatevideo
- Usuage Python
	import translatevideo.gensubtitles as gensubtitles
	gensubtitles.generatesubtitles()
	

Future additions:


Translate into other languages besides English

Generate merged srt files (with the from language and the translated too language side by side

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

translatevideo-0.8.1.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

translatevideo-0.8.1-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file translatevideo-0.8.1.tar.gz.

File metadata

  • Download URL: translatevideo-0.8.1.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.0

File hashes

Hashes for translatevideo-0.8.1.tar.gz
Algorithm Hash digest
SHA256 cdd38bb76d83e0d161e75ad97d1ac84231aefdb9339c041d3258bd7b09e22473
MD5 4a60857148033ecfb737db13c0a7f13b
BLAKE2b-256 2040f540957a742b8e45f51c3f47ee9d07106d6d5fab647e33c96d1e34eb9424

See more details on using hashes here.

File details

Details for the file translatevideo-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: translatevideo-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.0

File hashes

Hashes for translatevideo-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 50df621980e7d9286c0d73fecc4030d09b90880d54a38802aad497ae59a72b2c
MD5 7cbc27b7a6eb0e47f9867f3093d19e9e
BLAKE2b-256 2162fb5b2637e8bd31cf113271f11a081101d3637d42080d60680af399eb61b7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page