Google Summer of Code 2024 Final Report

Ash

Particulars

Organization: VideoLAN
Project: VLC Qt Interface Redesign
Project Size: Large
Contributor: Ashutosh Verma
Mentors: Fatih Uzunoğlu, Pierre Lamot

Introduction

The VLC interface is quite outdated on Linux and Windows. It has a lot of features, but some are not properly exposed. The interface is currently being reworked. The new designs shared on the mailing list are to be used and parts of those are to be developed, using QML. The new interface is simpler, more user-friendly, and has a better “media center” feel to it. It requires integration with the media library and with the current interface. QML is needed for the UI/UX.

Work

The work involved designing and developing a Home view for VLC Media Player 4, for when the media library is available / when VLC is run with the - -no-media-library argument. Previously, this Home view existed in VLC media player only when the media library is unavailable, unlike other players.

When the media library is available, the newly-built Home view deals with both video and audio content, presenting them in the Continue Watching section for recently watched videos, the Favorites section for videos and audios marked favorites, and the New Media section that holds all videos and audios newly added to the media library. The pre-existing Video and Music views deal with video and audio media content respectively, exclusively.

The work could be deconstructed down into 4 distinct parts:

  1. Implementing mixed-listing of video and audio media feature in the media library.
  2. Adding media library public APIs as accessors to mixed media from the media library.
  3. Introducing new C++ data models and refactoring pre-existing ones, in the Qt interface.
  4. Developing new QML views and components to render mixed media, in the Qt interface.

The Home view Figma designs created by me were these, and the mockup provided by my mentors was this.

The linked merge requests are:

VLC media player Home view (when media library is available)

See All sub-view of Continue Watching section

See All sub-view of Favorites section

See All sub-view of New Media section

A Note of Thanks

This time was an excellent experience for me during which I got to learn many new things and received guidance from my mentors. I would like to say thanks to both of my mentors, Fatih Uzunoğlu and Pierre Lamot, for their invaluable mentorship and support throughout the entire GSoC ˈ24 period. I am very grateful to have had you two such knowledgeable, experienced and wonderful people as my mentors.

One of my mentors with me in our bootstrap meetup : )