Giter VIP home page Giter VIP logo

lyric-video's Introduction

VIO 202 Theme 03: Lyric Video

by Christoff Linde

View the Website

https://christoff-linde.github.io/lyric-video/

The Project

This project was part of VIO202, a module I took during my BIS Multimedia studies at University of Pretoria. The assignment was to design and create a lyric video for any song of our choosing. To showcase the video, a companion website was to be developed that ties in with the aesthetic look and feel of the original album cover.

I chose Disillusioned by A Perfect Circle as my song as it is one of my all time favourite bands and albums.

The Method

The project started out with storyboarding ideas for the lyric video, experimenting with different layouts, colours and fonts. I chose a clean and precise font to match the original font used on the album cover. Keeping the colour palette simple yet striking, I used the main colours prominent on the original cover.

Actual creation of the lyric video was done entirely with Adobe After Effects. After Effects was chosen for it's superior capability to create motion graphics.

To minimize the initial download size and consequently maximise performance, I opted to export the After Effects video to .SVG with the help of the Bodymovin Plugin. The .SVG animation is then loaded with .JS in the browser as a .JSON file.

All further styling was done with .SCSS, compiled to .MIN.CSS. Interaction is handled with .JS.

I made use of GitHub Actions to serve as a CI/CD Pipeline that publishes the website.

What I Learned

Throughout the project, I learnt how to create and animate motion graphics in After Effects, and exporting them for use in a interactive web-related context.

Learning how to perform basic DOM manipulations using Javascript is another concept I had to becode familiar with, as well as adding interactivity to an otherwise mostly static page.

With GitHub Actions I learnt some of the basics of setting up and managing a simple CD/CI Pipeline.

What Can I Improve

The implementation of the project is not perfect, and some improvements can be made. For e.g., the Javascript can be updated to use the latest ES standards. State management for the animations and interactive elements could be improved to improve the readability of the code.

As an alternative to the .SVG animation HTML Canvas could potentially be used, which would provide easier interaction, something that exported Bodymovin format does not necessarily provide.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.