Download Latest Version mediaPlaylists-1.2.tar.gz (5.2 kB)
Email in envelope

Get an email when there's a new version of mediaPlaylists

Home
Name Modified Size InfoDownloads / Week
mediaPlaylists-1.2.checksums 2026-03-23 220 Bytes
mediaPlaylists-1.2.tar.gz 2026-03-23 5.2 kB
Changelog.txt 2026-03-23 207 Bytes
LICENSE 2026-03-20 1.6 kB
README.md 2026-03-20 3.3 kB
Totals: 5 Items   10.4 kB 2

Unified Playlist Tools

A modular set of command-line utilities for creating and manipulating M3U and WPL playlists.

This project provides three small, specialized tools:

  • playlist – frontend/dispatcher
  • m3u – backend for M3U/M3U8 playlists
  • wpl – backend for WPL (Windows Media Player) playlists

Purpose

The tools provide a unified, clear and robust CLI for playlist manipulation. The design focuses on:

  • deterministic behavior
  • strict separation of frontend and backend
  • easy extensibility (e.g., PLS, XSPF)
  • minimal I/O
  • clean, testable code

Note on Twonky Media Server

The Twonky Media Server fully supports WPL playlists for both audio and video content. This makes the wpl backend particularly useful for Twonky-based DLNA installations, where a single playlist format can be used across media types, including server-side playlists.

Components

  1. playlist (dispatcher)

The frontend tool. It detects the playlist format based on the file extension and invokes the appropriate backend.

Supported formats:

  • .m3u, .m3u8 → handled by m3u
  • *.wpl → handled by wpl

playlist does not implement playlist logic itself. It only parses options, selects the backend, and forwards the request.

Example: > playlist -p mylist.m3u push song1.mp3 song2.mp3

Internally executes: > m3u -p mylist.m3u push song1.mp3 song2.mp3

  1. m3u (backend)

Backend tool for classic text-based playlists.

Supported actions: > init, push, pop, shift, del, flush, list

Note: > M3U does not support titles; the -t option is ignored.

  1. wpl (backend)

Backend tool for Windows Media Player playlists (SMIL XML).

Supports the same actions as m3u, but uses WPL structures:

     <media src="..."/> entries  
     <seq> ordering  
     title via -t  
     type via -a (audio) or -v (video)

Common CLI Syntax

Synopsis

toolname [options] <action> [file...]

Options

  -p <playlist>         Path to the playlist file (required)
  -t <title>            Title (WPL only)
  -a                    WPL type: audio
  -v                    WPL type: video (default)
  -h                    Show help

Actions

  init            Create a new playlist
  push            Append entries
  pop             Remove last occurrence of each entry
  shift           Remove first occurrence of each entry
  del             Remove all occurrences of each entry
  flush           Remove all media entries
  list            List all entries

Examples

M3U:
  playlist -p songs.m3u init
  playlist -p songs.m3u push track1.mp3 track2.mp3
  playlist -p songs.m3u del track1.mp3
WPL:
  playlist -p videos.wpl -t "My Videos" init
  playlist -p videos.wpl push movie1.mp4 movie2.mp4
  playlist -p videos.wpl pop movie2.mp4

Architecture

  playlist
     ├── detects file extension
     ├── parses options
     └── invokes backend

  m3u
     └── processes M3U/M3U8 playlists

  wpl
     └── processes WPL (XML) playlists

License

(c) 2026 Hans-Hermann Froehlich
All rights reserved.

For license information, see LICENSE

Source: README.md, updated 2026-03-20