Inspiration

As a student, my biggest "time-thief" is re-watching recorded lectures. I often find myself scrubbing through a 2-hour video just to find the 30 seconds where the professor explained one specific formula or mentioned a deadline. I realized that while we have "Search" for text. I wanted to build a tool that lets students talk to their lectures, ask questions, and jump to the exact moment the answer appears all without spending a penny.

What it does

Imagine of have a 1-hour recording of a boring Physics lecture. Instead of re-watching the whole thing to find one specific part. If we upload the video. Gemini 3 doesn't just read a transcript; it "watches" the frames (like seeing what's on the whiteboard) and "listens" to the audio at the same time. When we type a question in a chat box, like: "When did the professor explain the homework?" or "Show me the part where he drew the triangle on the board." The AI doesn't just give a text answer. It gives a timestamp (e.g., 12:45). Then it automatically moves the video player to that exact second.

How we built it

The Brain: I used the Gemini 3 Flash API. In 2026, the Flash model is free for students and handles multimodal data (video/audio) natively. Long-Context Indexing: I used Gemini's $10^6$ token context window. This allowed me to feed an entire 60-minute lecture into the model at once. The Logic: I implemented "Thinking Level: Medium" for most queries to keep it fast and free, but I used the "High" reasoning mode for complex math moments to ensure the AI didn't hallucinate timestamps. The Stack: The app is written in Python, using Streamlit for the frontend (hosted for free on Streamlit Cloud) and the Gemini File API for temporary, free video storage.

Challenges we ran into

The biggest challenge was the API Rate Limits on the free tier. we couldn't just spam the model with requests. To solve this, we wrote a "Smart Indexer" that processes the video once and creates a tiny text-based "Map" of the lecture. Another hurdle was timestamp precision. Sometimes the AI would hear a keyword but miss the visual context on the board. we fixed this by using Chain-of-Thought prompting, asking the model to: Identify the audio cue. Verify the visual on the screen (e.g., "Professor points to the board"). Provide the final timestamp.

Accomplishments that we're proud of

We are incredibly proud of building a high-tech tool with a $0 budget by combining the free tiers of Gemini 3 and Streamlit. The highlight was successfully using Gemini’s 1-million token "context window", which acts like a photographic memory for an entire hour-long lecture. We’ve proven that you don't need a big bank account to solve real student problems; you just need smart, scrappy engineering.

What we learned

Working on this project taught us how to build a unified multimodal system where the AI "watches" and "listens" to a lecture simultaneously. We learned to master the 1-million token context window, allowing the model to remember an entire hour-long video without losing the big picture. By navigating API rate limits, we discovered how to be strategic with our requests to keep the app fast and efficient. Most importantly, we realized that the right tools can turn a complex student problem into a simple, professional-feeling solution. This experience showed us that building helpful AI is more about smart data management than just writing code.

What's next for LECTURE TIME MACHINE

We plan to expand the platform by adding an automated "Study Kit" feature that generates practice quizzes and summarized cheat sheets directly from the video content. We also aim to implement a global search function, allowing students to find specific concepts across an entire semester’s worth of recordings at once. To make the experience more social, we hope to add collaborative study circles where classmates can share and verify AI-generated timestamps. Finally, we are looking into mobile optimization and multilingual support to ensure that every student can access their personal "time machine" on any device, in any language.

Built With

  • gemini3flashapi
  • geminifileapi
  • googleaistudio
  • python
  • streamlit
  • streamlitcommunitycloud
Share this project:

Updates