Go to file
2024-11-13 07:58:26 +01:00
css player embeds mejs-controls.svg with document; patch mediaelement to use inlined iconSprite 2024-11-12 02:50:31 +01:00
demo documentation updates 2024-11-13 07:42:01 +01:00
dist improve build process; add documentation 2024-11-10 07:48:37 +01:00
jsmediatags@b7bbcdccee add jsmediatags 2024-11-10 15:10:19 +01:00
mediaelement@0026d05078 update to latest mediaelement; use playlist from mediaelement-plugins; css build script 2024-11-10 06:58:04 +01:00
mediaelement-plugins@6b5de466fd update to latest mediaelement; use playlist from mediaelement-plugins; css build script 2024-11-10 06:58:04 +01:00
patches add patches for playlist/play() exception debugging 2024-11-13 07:35:05 +01:00
plugins initial commit 2024-09-21 16:05:22 +02:00
src remove obsolete id3-minimized source 2024-11-13 07:43:06 +01:00
.gitignore ignore npm tempfiles 2024-11-11 02:37:07 +01:00
.gitmodules add jsmediatags submodule 2024-11-10 15:08:43 +01:00
.minify.json add minify configfile 2024-11-11 02:36:39 +01:00
COPYING.txt initial commit 2024-09-21 16:05:22 +02:00
eslint.config.js fix problems reported by eslint 2024-11-10 15:08:12 +01:00
index.html initial commit 2024-09-21 16:05:22 +02:00
LICENSE.txt initial commit 2024-09-21 16:05:22 +02:00
Makefile add target "clean" 2024-11-13 07:41:46 +01:00
package.json add test using eslint 2024-11-11 03:14:48 +01:00
README.md add prominent note about known issues 2024-11-13 07:58:26 +01:00
RELEASE.txt initial commit 2024-09-21 16:05:22 +02:00

MyPlayer - A Web-MP3-Player with Playlist Support

*Note:* MyPlayer is currently undergoing a major rewrite, where it being updated to the latest version of mediaelement.js. This effort includes porting the playlist feature to the playlist provided by mediaelement-plugins.

This iteraton of MyPlayer, as present in this GIT repository, has known issues, especially when changing tracks in the playlist, and not all configuration demos/source types have been extensively tested (i currently focus on the "m3u" scenario).

Since i am doing this in my free time, i can not give you a roadmap or timeline on when the rewrite will be done and the software fully tested. Until then, the previous version of MyPlayer is available at https://tk-sls.de/ref/myplayer.dist.tar.gz.

About

This project provides a JavaScript constructor MyPlayer({...options...}) that can be used to embed lists of audio files as read from an index document or an M3U into a web document.

They will be displayed in a playback GUI with a playlist that can optionally be filled from the "title" and "artist" values of the files' ID3 tags (v1 and v2 are supported).

The player is "detachable", meaning it can start in a detached state or the user can open it in a new window, preventing that playback breaks when the user leaves the page.

Tested Compatibility:

MP3: Firefox, Chrome, Internet Exploder OGG Audio: Firefox, Chrome

Usage

MyPlayer requires jQuery. See for example https://www.w3schools.com/jquery/jquery_get_started.asp on how to include a recent version.

MyPlayer requires the Javascript file from dist/js and the CSS and SVG files from dist/css.

Sample inclusions in an HTML document:

<head>
    <link href="css/myplayer.min.css" type="text/css" rel="stylesheet" />
    <script type="text/javascript" src="js/jquery.min.js"></script>
    <script type="text/javascript" src="js/myplayer.min.js"></script>
</head>

Sample instanciation reading playlist entries from a file ./mp3.m3u:

<div class="player"></div>
    <script>
        $(function(){ MyPlayer({
            element: '.player',
            mode: 'm3u',
            detachable: false,
            m3u: './mp3.m3u',
            loop: true,
            shuffle: false
        })});
    </script>
</div>

Contributing

  • Use npm install to install some JavaScript utilities.
  • Use make to perform a build of the software.
  • See subdirectory src for javascript sources, specifically player.js.
    • Use src/build.sh to re-generate the minified script js/myplayer.min.js.
  • See subdirectory css for CSS, specifically local.css.
    • Use css/build.sh to re-generate the minified CSS css/myplayer.min.css.