GitHub

Tomeo Video Player

Note that, as this is a University project, you will need to request access to the repository to view the code.

This project is a university project developed by my team and me for a course on user interfaces. Our goal was to create a video player using the Qt framework in C++. The team members involved in this project were:

  • Alejandro Bertinelli Salamero
  • Bogdan Ciurea
  • Gabriel Gheorghe
  • Christian Constantin Pustianu
  • Boris Radulov

Software Features

The Tomeo Video Player includes the following features as requested by the university:

  • Video Import: Load videos into the player.
  • Play/Pause Video: Control video playback.
  • Next/Previous Video: Navigate between videos.
  • Volume Control: Adjust the audio volume.
  • Gallery View: Display all videos in a gallery format.
  • Metadata Editing: Edit video details such as title, author, description, and geolocation.
  • Trip (Playlist) Creation: Create playlists and add videos to them.
  • Geolocation Map: View the geolocation of the video.
  • Highlights Creation: Mark and create highlights at desired timestamps.
  • Help Menu: Access help and support.
  • Language Support: Use the software in different languages.

You can watch a demo video of the software here:

Tomeo Video Player

Technologies Used

The Tomeo Video Player was developed using:

  • C++: The core programming language.
  • Qt Framework: For building the graphical user interface and handling multimedia.
  • YouTube Videos: Supplementary resources for learning and implementing features.

Development Process

This project was highly organized, with significant emphasis on documentation and planning, as required for achieving a high grade. The development was divided into five cycles:

  1. Navigation Bar and Import Button: Initial setup and basic functionality.
  2. Partially Finished Player with Tabs at the Bottom: Developing the core player functionality.
  3. Map and Finished Player: Integrating the map and completing the player features.
  4. Trips and Highlights: Adding playlist and highlight features.
  5. Design Overhaul, Help Section, and Language Support: Finalizing the design, adding help resources, and supporting multiple languages.

Due to the user interfaces focus of this module, we created extensive mockups before starting the coding phase. Below are some examples of the mockups we developed:

Mockup 1 Mockup 2

Challenges and Learning

Throughout the development process, we faced challenges such as integrating the geolocation map and ensuring smooth playback for various video formats. These challenges enhanced our problem-solving skills and our ability to work collaboratively.