🌱 Inspiration

Our team has always loved how sound shapes emotion in film and games — but books have never had that same immersive experience. We wanted to change that. Echo was born from the idea that reading shouldn’t be silent. What if a story could sound alive? What if every storm, every city, every quiet room had its own evolving soundscape?

🔊 What it does

Echo reads a book or story, analyses the text page by page, and generates a structured description of the setting, weather, ambient sounds, and emotional tone. This data can then drive an adaptive soundtrack that evolves with the narrative — for example, shifting from soft rain to thunder as tension rises.

đź§± How we built it

We used Python, CrewAI, and Ollama’s Mistral model to create a local multi-agent system. • Each agent analyses one aspect of the text — setting, ambience, or emotion. • A formatter agent combines their findings into a consistent JSON output. • The program processes each page individually while maintaining continuity of setting and weather. • We used PyMuPDF to extract text from PDFs and convert it into analyzable chunks.

⚙️ Challenges we ran into

One major challenge was controlling the LLM’s creativity — it often added unnecessary description or invented details. We solved this by enforcing restricted vocabularies and strict JSON formatting rules. We also had to manage context across pages, ensuring that weather or mood only changed when the text clearly indicated it.

🏆 Accomplishments that we’re proud of

We successfully built a fully local, structured AI pipeline that turns literature into sound-ready data. Our model can analyse entire books and produce consistent, replayable ambient cues — laying the groundwork for adaptive audiobooks and immersive reading experiences.

📚 What we learned

We learned the value of constraint-based prompting, multi-agent orchestration, and the importance of context retention in AI analysis. The project also deepened our understanding of how to translate narrative cues into meaningful emotional and environmental data.

🚀 What’s next for Echo

Next, we plan to: • Build a sound database mapped to each tag (e.g., “stormy_city” → thunder + traffic sounds). • Create a real-time playback engine that syncs ambient sound with story progression. • Expand Echo to handle scene-level transitions and dialogue-driven emotion shifts.

Our ultimate goal: to make every story an audible world — where reading becomes an experience you can truly feel.

Built With

Share this project:

Updates