Talking Clock Assignment

From MSc Voice Technology
Revision as of 08:29, 31 August 2023 by Joshua Schäuble (talk | contribs) (started page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Welcome to the shared assignment between the "Introduction to Voice Technology" and "Introduction to Programming" courses. In this interdisciplinary project, you will work in groups of 3-4 students to create a functional multilingual talking clock. This assignment will allow you to integrate your knowledge of programming with the principles of voice technology, audio recording, GitHub collaboration, open-source licensing, and FAIR data principles.

Task:

Your task is to develop a talking clock application that displays the current time in a 12-hour format while offering voice output. The project should provide a user-friendly interface, allowing users to interact with the clock. The clock is programmed in Python and uses audio recordings, which are produced as part of the assignment, as well as (optionally) text-to-speech libraries. The functional scope of the clock and its interface are not limited. The students are encouraged to develop their own feature ideas, such as allowing the user to change the language, voice, pitch, and speed, adding alarm and snooze functionalities, and/or adding support for multiple time zones. The project must adhere to ethical considerations related to data privacy and user consent.

Assignment Components:

  1. Basic Clock Functionality: Implement a clock in Python that accurately displays the current time in a 12-hour format.
  2. Audio Recording: Record audio files for time announcements.
  3. Voice Integration: Integrate your audio recordings (potentially: also integrate a text-to-speech library or API for automated voice output).
  4. User Interface: Forge an intuitive user interface (GUI) enabling users to control your clock. Consider additional features and how best to integrate them into the user interfacce.
  5. Error Handling: Construct mechanisms that handle user errors and unanticipated inputs effectively.
  6. GitHub Collaboration:
  7. Documentation:
  8. Licensing and FAIR data principles:


Timeline:

Assessment:

Resources: