CLI para transcrição de audiências judiciais com WhisperX e diarização
Project description
tecjustica-transcribe
CLI para transcrição de audiências judiciais com WhisperX e diarização de falantes.
Pré-requisitos
- GPU NVIDIA com 6 GB+ de VRAM (ex: RTX 3050, RTX 3060)
- Driver NVIDIA instalado
- ffmpeg instalado (
sudo apt install ffmpeg) - Python 3.10 a 3.13
Token HuggingFace (para identificar falantes)
A diarização (identificar quem está falando) usa o modelo pyannote, que exige um token gratuito do HuggingFace:
- Crie uma conta em https://huggingface.co
- Aceite os termos do modelo em https://huggingface.co/pyannote/speaker-diarization-community-1
- Gere um token em https://huggingface.co/settings/tokens
O comando init vai pedir esse token e salvá-lo automaticamente.
Sem o token, você ainda pode transcrever usando
--sem-diarizacao— a transcrição funciona, só não identifica os falantes.
Instalação
uv tool install tecjustica-transcribe
Ou com pip:
pip install tecjustica-transcribe
Uso
# 1. Diagnosticar e preparar a máquina (pede o token na primeira vez)
tecjustica-transcribe init
# 2. Transcrever uma audiência (gera .txt, .srt e .json)
tecjustica-transcribe transcrever audiencia.mp4
# Transcrever sem identificar falantes (não precisa de token)
tecjustica-transcribe transcrever audiencia.mp4 --sem-diarizacao
# Escolher pasta de saída
tecjustica-transcribe transcrever audiencia.mp4 --output ./minha-pasta
Saída
O comando gera 3 arquivos na pasta ./transcricoes/:
.txt— texto puro com[SPEAKER_00],[SPEAKER_01], etc..srt— legendas com timestamps (compatível com players de vídeo).json— dados completos com timestamps por palavra e falantes
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tecjustica_transcribe-0.1.1.tar.gz.
File metadata
- Download URL: tecjustica_transcribe-0.1.1.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.16 {"installer":{"name":"uv","version":"0.9.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
798d3ecd73cfa45b8fec81a0ceac99bd73ba3d2a73ccbe22dbea7cfc1f46005a
|
|
| MD5 |
ee842c72bc1a0a35af43e92ff3eacedb
|
|
| BLAKE2b-256 |
95c5189345bec2569e270c0141d348f31eaa80faaa1af9ce45d8258a286e62d7
|
File details
Details for the file tecjustica_transcribe-0.1.1-py3-none-any.whl.
File metadata
- Download URL: tecjustica_transcribe-0.1.1-py3-none-any.whl
- Upload date:
- Size: 8.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.16 {"installer":{"name":"uv","version":"0.9.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
146594994578cb2939f616d8b976e745edd247de9b98df9ce8099245800be435
|
|
| MD5 |
a7b44a3f1da1c2ab7fa00e6ddbde8269
|
|
| BLAKE2b-256 |
e66a2baf70360bb66a861114ba3225da91db46970b0450e5a22d240ff161011f
|