Supported Formats
WebPlayer automatically detects and plays a wide range of audio, video, streaming, and playlist formats. It also supports links from major media services.
Audio formats
Links to these file types are detected and played using the HTML5 Audio API.
| Format | Extensions | Notes |
|---|---|---|
| MP3 | .mp3 | The most widely supported audio format. Works in all browsers. |
| WAV | .wav | Uncompressed audio. Large file sizes but universal support. |
| OGG | .ogg, .oga | Ogg Vorbis audio. Supported in Chrome, Firefox, and Edge. |
| FLAC | .flac | Lossless audio compression. Supported in Chrome, Firefox, Edge, and Safari 11+. |
| M4A | .m4a | AAC audio in an MP4 container. Good support across browsers. |
| AAC | .aac | Advanced Audio Coding. Widely supported, especially on Apple devices. |
| WebM Audio | .webm | WebM container with Vorbis or Opus audio. Chrome, Firefox, and Edge. |
Video formats
Video files are played inline with a video viewport in the player.
| Format | Extensions | Notes |
|---|---|---|
| MP4 | .mp4 | H.264/AVC video. The most widely supported video format. |
| WebM | .webm | VP8/VP9 video. Supported in Chrome, Firefox, and Edge. |
| OGG Video | .ogv | Theora video. Supported in Chrome, Firefox, and Edge. |
Streaming
WebPlayer supports HTTP Live Streaming (HLS) via .m3u8 manifest files. HLS streams are played using the browser's native HLS support (Safari) or via the hls.js library in other browsers.
<!-- HLS stream link --> <a href="https://example.com/stream/manifest.m3u8">Live Stream</a>
Playlist formats
WebPlayer can parse playlist files and add all contained tracks to the player.
| Format | Extensions | Description |
|---|---|---|
| XSPF | .xspf | XML Shareable Playlist Format. Supports track metadata including title, artist, album, duration, and album art. The recommended format for rich playlists. |
| M3U | .m3u, .m3u8 | Simple text-based playlist format. Each line is a URL. Extended M3U (#EXTM3U) supports track titles and durations. M3U8 variant is also used for HLS streaming. |
| PLS | .pls | INI-style playlist format. Supports titles and track lengths. Common with internet radio streams. |
Playlist file example (XSPF)
<?xml version="1.0" encoding="UTF-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
<trackList>
<track>
<title>Song Title</title>
<creator>Artist Name</creator>
<location>https://example.com/song.mp3</location>
<image>https://example.com/cover.jpg</image>
<duration>215000</duration>
</track>
</trackList>
</playlist>Services
Media URLs from these services are detected and played using their respective embed players.
| Service | URL Patterns | Notes |
|---|---|---|
| YouTube | youtube.com/watch?v=..., youtu.be/... | Individual videos and playlist URLs. Playback uses the embedded YouTube player. |
| Vimeo | vimeo.com/123456 | Individual video URLs. Playback uses the embedded Vimeo player. |
| SoundCloud | soundcloud.com/artist/track | Track and playlist URLs. Requires SoundCloud embed support. |
| Spotify | open.spotify.com/track/... | Track, album, and playlist URLs. Opens Spotify embed for preview playback. |
| Bandcamp | artist.bandcamp.com/track/... | Track and album URLs. Uses Bandcamp embed for playback. |
Detection behavior
The scanner examines all anchor (<a>) elements within the configured scan area. It identifies media links by inspecting the href attribute for known file extensions and service URL patterns. Links with the htrack class are always included regardless of their URL. Links with the noplay class are always excluded.