Skip to content

A html + python flask web application that acts as a media explorer. Keeps track of files and metadata information regarding various audio and video media.

Notifications You must be signed in to change notification settings

DanielStoi/visual_and_audio_media_webapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Visual and audio media webapp

Credits

This was part of an group assignment at the University of Sydney,for the subject ISYS2120.

-Designed for the University of Sydney, School of Computer Sciences

-(Initial) Assignment Codebase by Harshana Randeni

-Initial Schema by Ryan Skelton

My group members and contributers where:

-David, Ben, Vigesh

Demo

Here are a bunch of screenshots that show different functionalities of the webapp.

This is the home screen after logging in.

home

In addition to this, clicking on any of the menu icons on the top will take you to a list of all the media of the corresponding category (eg movies, tv shows, songs). Clicking on any of the media items in the main section will take you to a separate page that has all the details about that individual media item.

This is the search functionlity (can choose to search for movies, songs, tv shows, podcasts in a dropdown menu next to search).

search

Now that a bunch of media items are on the screen, you can click on any item to get all the relevent information about that individual item.

song

As seen from the above screenshot, the genres are listed for every media item. However, genres are also clickable, which takes you to a page that lists all the media items of that genre.

genre

Outline

The media server is designed to keep track of files and metadata information regarding various audio and video media.

Schema Description

ERD As per the above schema you have various consumable media:

  1. Movies
  2. TV Shows (which have TV Episodes)
  3. Songs (which are performed by Artists and appear in Albums)
  4. Podcasts (which have Podcast Episodes)

There is also some User Account information which contains information about the user including:

  1. Contact Methods
  2. Username / password
  3. Subscribed podcasts
  4. Consumed media

We have abstracted most of the common elements such descriptions, artwork and genres into a MetaData table system. The primary Metadata table contains 3 fields:

  1. an ID field (which other tables use a FK)
  2. a MetaData type ID field (which maps to the MetaDataType table)
  3. an actual value for the metadata

Presently, there are 4 possible types of metadata:

  1. Song Genre
  2. Film Genre
  3. Artwork
  4. Description

What we had to do within the assignment

In addition to the skeleton/structure of the program, some of the functions, routes, and html templates where already completed. Essentially all of the server side (sql) code was done already, including the sample data. What the group added in reference to the server side code was password hashing and the ability to add songs and users, though SQL functions.

In the assignment, we had to code 10 tasks within the database.py file, which was a significant chunk of the database application programming code and acouple of routes in the routes.py file. This is in addition to modifing and creating templates that would be referenced by the routes.py functions to render the corresponding pages.

The group also added new functionalities, which involved adding functions to the database.py, routes.py files and creating html templates.

About

A html + python flask web application that acts as a media explorer. Keeps track of files and metadata information regarding various audio and video media.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published