“Hitherto hath the Lord helped us.” – 1 Samuel 7:12
Ebenezer Screen is an interactive, voice‑driven presentation system designed to project biblical content, sermons, hymns, and devotional material in Spanish. It combines:
- Bible verses (Reina‑Valera 1960)
- Sermons by William Branham
- Hymns and congregational songs
- Prayer and class material
- Rest / welcome / goodbye screens
All of this is orchestrated through a unified interface, with offline voice recognition (Vosk), unified search, and layouts carefully tuned for 1920p, 4K, and 8K displays.
From the project root:
python ebenezer.pyThe system will automatically open your browser at http://localhost:8000 and start:
- Web server (port
8000) - Voice server (port
2700, Vosk WebSocket) - Message bridge (port
2800for sermon search)
Use the numeric keys or the on‑screen menu to switch between sections (Bible, Hymns, Messages, Search, Class, Prayer, Specials, Rest, Goodbye, etc.).
For a first‑time installation you can run:
python setup.pyThis automated script will:
- Install all required Python dependencies
- Download the Vosk Spanish speech model (~40 MB)
- Build the index of 416+ sermons
- Download and prepare the local sermon library
Note
If the automatic Vosk download fails, you can obtain it manually:
- Download: vosk-model-small-es-0.42
- Extract into:
speaker/model/
Ebenezer/
├── bible/ # Bible module (RV1960, karaoke verses, voice search)
├── hymns/ # Hymns module (lyrics, verses/chorus, karaoke highlighting)
├── messages/ # Sermon library (416+ messages, fuzzy search, local index)
├── search/ # Unified search across Bible, messages, and hymns
├── class/ # Class / teaching screen (verses and key points)
├── prayer/ # Guided prayer / prayer texts
├── specials/ # Special presentations (songs, readings, announcements)
├── goodbye/ # Goodbye / closing screen
├── rest/ # Rest / idle screen with animated logo
├── speaker/ # Vosk voice recognition bridge (WebSocket)
├── img/ # Visual assets and background images
├── ebenezer.py # Unified Python server (HTTP + WebSocket bridges)
├── index.html # Main application shell
└── start.bat # Convenience launcher for Windows
Each module contains its own HTML/CSS/JS and, where applicable, a dedicated README.md with detailed behavior.
Voice recognition is handled by Vosk through the speaker module. Typical Spanish commands include:
"Génesis capítulo 1""Juan capítulo 3 versículo 16""Apocalipsis capítulo 1"
The system normalizes accents internally, accepts unaccented input, and displays accented book names on screen.
"Mensaje La Señal""Mensaje Fe Es La Sustancia párrafo 50"
These commands are routed to the sermon search engine, which locates the best matching sermon and, optionally, jumps to a specific paragraph.
"Cerrar Biblia""Adiós"/"Hasta luego""Descanso"
Keyboard shortcuts are also available (e.g. numeric keys to jump between sections, controls for preacher mode and karaoke navigation).
In addition to voice control, Ebenezer Screen supports keyboard shortcuts for fast navigation during a service:
-
Global navigation
1– Rest2– Speak3– Bible4– Hymns5– Messages6– Class7– Specials8– Prayer9– Goodbye
-
Within modules (where implemented)
- Arrow keys or dedicated keys to move between verses, paragraphs or hymn stanzas
- Keys to toggle preacher‑oriented / karaoke modes
- Close / escape commands to return to a neutral view (for example, Rest)
-
Utility
t– Open a new internal tab in the current Bible, Hymns or Messages module (when available)w– Close the current internal tab in the Bible, Hymns or Messages module (when available)
This allows the operator to drive the entire experience either hands‑free (voice) or with quick, low‑friction keyboard input.
- Frontend: HTML5, CSS3, vanilla JavaScript
- Responsive layouts tuned for 1920p, 4K (3840×2160) and 8K (7680×4320)
- Large, cinematic typography (rem‑based) for projection
- Karaoke‑style highlighting for words and lines
- Backend: Python 3.x
vosk– offline speech recognition (Spanish)websockets– real‑time communication with the browserrequests– integration with external APIs where needed
- External data:
table.branham.org(for sermon content by William Branham)
- Bible module with voice‑driven verse search and karaoke reading
- Messages module with local library of 416+ Spanish sermons
- Fuzzy search tolerant to spelling mistakes and partial phrases
- Hymns module with structured verses/chorus and large lyrics
- Unified search interface for Bible, sermons, and hymns
- Speaker module with offline Vosk recognition and WebSocket bridge
- Cinematic UI with dynamic backgrounds and strong text contrast
- Layout scaling for 1920p / 4K / 8K (titles, bodies, search boxes, logos)
- Expansion of the local sermon library
- Additional hymn sets and richer hymn metadata
- More advanced guided‑prayer flows
- Extra presets for special meetings and announcements
Each main folder includes its own README.md with more details:
- Bible Module
- Hymns Module
- Messages Module
- Prayer Module
- Rest Module
- Speaker Module
- Goodbye Module
- (Planned) Class Module
- (Planned) Specials Module
This is a personal worship and ministry project. If you want to contribute, suggest improvements, or report an issue, please contact the developer directly or open an issue in the repository.
Open‑source project intended for personal and ministerial use. Please review the repository for specific licensing details or attribution requirements.
“Then Samuel took a stone, and set it between Mizpeh and Shen, and called the name of it Ebenezer, saying, Hitherto hath the Lord helped us.” – 1 Samuel 7:12