# MyPlayer - A Web-MP3-Player with Playlist Support

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.

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

Sample inclusions in an HTML document:

```html
<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:

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

See also [the demo page](demos/index.html) for several examples.

## Contributing

* See subdirectory [src](./src) for javascript sources, specifically [player.js](src/player.js).
  - Use `src/build.sh` to re-generate the minified script `js/myplayer.min.js`.
* See subdirectory [css](./css) for CSS, specifically [local.js](src/local.js).
  - Use `css/build.sh` to re-generate the minified CSS `css/myplayer.min.css`.

## Author, Copyright and License

* Author: tilt@linuxfoo.de
* Release: Nov. 10 2024
* License: MIT


