Thanks to visit codestin.com
Credit goes to github.com

Skip to content
forked from SevaSk/ecoute

Ecoute is a live transcription tool that provides real-time transcripts for both the user's microphone input (You) and the user's speakers output (Speaker) in a textbox.

License

Notifications You must be signed in to change notification settings

PitBosch/ecoute

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Ecoute - Riconoscimento Vocale Multilingue

Ecoute รจ un'applicazione di riconoscimento vocale in tempo reale che supporta multiple lingue, inclusa l'italiano. L'applicazione puรฒ trascrivere sia l'audio dal microfono che l'audio riprodotto dagli altoparlanti del sistema.

Caratteristiche

  • Supporto Multilingue: Italiano, Inglese, Spagnolo, Francese, Tedesco, Portoghese, Hindi, Olandese
  • Riconoscimento in Tempo Reale: Trascrizione simultanea di microfono e altoparlanti
  • Interfaccia Grafica Moderna: UI intuitiva con PyQt6 e CustomTkinter
  • Modelli Avanzati:
    • ๐Ÿš€ Voxtral-Mini-3B-2507 (Nuovo!) - Comprensione audio avanzata
    • Faster Whisper locali
    • OpenVINO Whisper ottimizzato
    • OpenAI Whisper API
    • Ollama Whisper
  • Cambio Lingua Dinamico: Possibilitร  di cambiare lingua durante l'uso
  • Database Locale: Salvataggio automatico delle trascrizioni

Installazione

  1. Clona il repository:

    git clone <repository-url>
    cd ecoute
  2. Installa le dipendenze:

    pip install -r requirements.txt
  3. Installa FFmpeg (richiesto per l'elaborazione audio):

    • Windows: Scarica da ffmpeg.org e aggiungi al PATH
    • macOS: brew install ffmpeg
    • Linux: sudo apt install ffmpeg

Utilizzo

๐Ÿš€ Con Voxtral-Mini-3B (Nuovo!)

# Setup automatico
python setup_voxtral.py

# Interfaccia moderna (consigliata)
python run_modern.py --voxtral

# Interfaccia classica
python main.py --voxtral

Nota: Richiede GPU con 10GB+ VRAM per prestazioni ottimali

Avvio Base (FasterWhisper)

# Interfaccia moderna
python run_modern.py

# Interfaccia classica
python main.py

Con OpenVINO (Ottimizzato CPU)

python run_modern.py --openvino

Con Ollama

python main.py --ollama

Nota: Richiede Ollama installato da https://ollama.ai

Con OpenAI API

python run_modern.py --api

Nota: Richiede una chiave API OpenAI configurata nell'ambiente

Controlli dell'Interfaccia

  • Menu Lingua: Seleziona la lingua per il riconoscimento vocale
  • Area Trascrizione: Visualizza le trascrizioni in tempo reale
  • Pulsante "Cancella Trascrizione": Pulisce la cronologia delle trascrizioni

Lingue Supportate

Voxtral-Mini-3B (Supporto Nativo)

  • ๐Ÿ‡ฎ๐Ÿ‡น Italiano (it) - Eccellente
  • ๐Ÿ‡บ๐Ÿ‡ธ Inglese (en) - Eccellente
  • ๐Ÿ‡ช๐Ÿ‡ธ Spagnolo (es) - Eccellente
  • ๐Ÿ‡ซ๐Ÿ‡ท Francese (fr) - Eccellente
  • ๐Ÿ‡ฉ๐Ÿ‡ช Tedesco (de) - Eccellente
  • ๐Ÿ‡ต๐Ÿ‡น Portoghese (pt) - Eccellente
  • ๐Ÿ‡ฎ๐Ÿ‡ณ Hindi (hi) - Eccellente
  • ๐Ÿ‡ณ๐Ÿ‡ฑ Olandese (nl) - Eccellente

Altri Modelli (100+ lingue)

Tutti gli altri modelli supportano 100+ lingue tramite Whisper

Modelli di Trascrizione

1. Ollama Whisper โญ RACCOMANDATO

  • Velocitร : Molto veloce
  • Accuratezza: Alta
  • Costo: Gratuito
  • Requisiti: Ollama installato
  • Comando: python main.py --ollama

2. Faster Whisper (Default)

  • Velocitร : Media
  • Accuratezza: Buona
  • Costo: Gratuito
  • Requisiti: GPU opzionale
  • Comando: python main.py

3. OpenAI Whisper API

  • Velocitร : Alta
  • Accuratezza: Molto alta
  • Costo: $0.006/minuto
  • Requisiti: Chiave API
  • Comando: python main.py --api

Configurazione

Variabili d'Ambiente

Per utilizzare l'API OpenAI:

export OPENAI_API_KEY="your-api-key-here"

Parametri Audio

I parametri di registrazione possono essere modificati in AudioRecorder.py:

  • RECORD_TIMEOUT: Timeout per la registrazione (default: 3 secondi)
  • ENERGY_THRESHOLD: Soglia di energia per il rilevamento vocale
  • DYNAMIC_ENERGY_THRESHOLD: Soglia dinamica abilitata/disabilitata

Struttura del Progetto

ecoute/
โ”œโ”€โ”€ main.py                 # Punto di ingresso principale
โ”œโ”€โ”€ AudioRecorder.py        # Gestione registrazione audio
โ”œโ”€โ”€ AudioTranscriber.py     # Trascrizione audio
โ”œโ”€โ”€ TranscriberModels.py    # Modelli di riconoscimento vocale
โ”œโ”€โ”€ custom_speech_recognition/  # Libreria personalizzata
โ””โ”€โ”€ requirements.txt        # Dipendenze Python

Risoluzione Problemi

Errore "pyaudiowpatch could not be resolved"

Assicurati di aver installato PyAudioWPatch:

pip install PyAudioWPatch

Errore FFmpeg

Verifica che FFmpeg sia installato e accessibile dal PATH:

ffmpeg -version

Problemi di Performance

  • Per migliori performance, utilizza una GPU CUDA
  • Il modello "base" รจ piรน accurato ma piรน lento del modello "tiny"

๐Ÿ“š Documentazione Aggiuntiva

Licenza

Questo progetto รจ rilasciato sotto licenza MIT. Vedi il file LICENSE per i dettagli.

Contributi

I contributi sono benvenuti! Per favore:

  1. Fai un fork del progetto
  2. Crea un branch per la tua feature
  3. Committa le modifiche
  4. Apri una Pull Request

Supporto

Per problemi o domande, apri una issue su GitHub.

About

Ecoute is a live transcription tool that provides real-time transcripts for both the user's microphone input (You) and the user's speakers output (Speaker) in a textbox.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%