Giter Site home page Giter Site logo

paulotruta / y2bt Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 10.36 MB

A real time collaborative music player and tracklist organizer where a group can add, listen and interact with each other music in a totally private and owned cloud auto-scaling container.

License: GNU General Public License v3.0

HTML 36.51% JavaScript 59.71% CSS 3.78%
application blaze meteor meteorjs music-information-retrieval music-library music-player rpc stream-processing

y2bt's People

Contributors

archteck avatar paulotruta avatar

Watchers

 avatar

y2bt's Issues

Pagination for playlists

Pagination must be implemented in order to reduce the load while rendering and getting all the playlist data for all tracks at once... Above 40 tracks performance is gravely reduced.

Playlist index view

There should be a view where the user can see and index of every playlist on y2bt. Obviously the users own playlists should be prioritized over the community ones.
The playlist index should also be ordered by number of playlist plays (the total count of plays on every track of that playlist).

Continuous play

The application should be able to keep playing music, finding and playing the next track from the master playlist.

Allow the search results to display tracks from y2bt first

The search results template should also make a search on the local master list collection and display results before showing youtube results. If the search does not retrieve results, no information should be displayed except the youtube results.

Autoplay breaks after skipping track

After skipping a track, autoplay breaks and the track starts repeating itself, although the currently active track changes in the list and player metainfo.

Normalize tacklists

There are currently three different logic + templates for the Master Playlist + Personal Playlist + Playlists in general. This behavior must be all present in the same logic + templates.

"TypeError: audioWrapper is null" in first song play after app loads

After opening the app for the first time, this error pops up in the console.
Although this is expected behaviour (The music player markup is cleaned and directly injected in the DOM on each track load), it affects mobile browsers by immediatelly stopping execution of the action, and not playing the track.
The existance of the player must be verified before trying to clean it.

Track Queing System

A feature that allows any song to be added to a priority queue, this time based on a local Minimongo Collection (instead of a FIFO array) that has to work the same way as in the enhancement #17 , but:

  • rewriting current logic to always play the next track from this queue instead of the continuous play queue, while the first is not empty.
  • Provide a template to view and edit queued songs.
  • Enhance the player to ensure it does not bug out in case conditions (empty cues, redifining, etc).

Refactor of continuous play "playlist" source

Use a Session key to store a FIFO array that will be the feed source of the continous play feature.

  • On playing a track, the array must be emptied and then filled with all the remaining songs from the list where the user chose the song from (Same jquery stuff used now, but get all the remaining instead of just the next one).
  • On load of the next track, the first element must be removed from the array (pop).

Duplicate tracks can be added

It should not be possible for a user to add the same song twice to the master list...
A verification is must done in the database before adding the song. If it already exists, it should start playing automatically, and the active screen should change to the master list.

Music player title disappears

When a new song is added through the "Add Song" page the title displays as expected, but when changing song through the "Master List" page, the title loses formatting.
Also it sometimes disappear in "randomish" situations.

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.