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.2.tar.gz (11.0 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.2-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: translatevideo-0.8.2.tar.gz
  • Upload date:
  • Size: 11.0 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.2.tar.gz
Algorithm Hash digest
SHA256 d30efc4cde6736a31df662fbb477b048a126aaa603f730a56ccdbe7a2c7c07d2
MD5 5bcd4d4fa10a455dbd44d357581e1c9a
BLAKE2b-256 6fb3de9e8ff995d3d43dd859de9cad11f97be3e782c5d702b580e37e429c8898

See more details on using hashes here.

File details

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

File metadata

  • Download URL: translatevideo-0.8.2-py3-none-any.whl
  • Upload date:
  • Size: 12.4 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 961f2e946b7262b9b5770d8597f5f68f886d3abe8e3873ff76b88858b83c9c81
MD5 1d729d884fa5903679046f9e7173d544
BLAKE2b-256 2c2d2acfe5baaef6bf4ba132b95abe737c8d5cf472d32b79c48a3ddd2281deab

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