PHPackages                             orkan/winamp - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [CLI &amp; Console](/categories/cli)
4. /
5. orkan/winamp

ActiveLibrary[CLI &amp; Console](/categories/cli)

orkan/winamp
============

Winamp Media Library CLI tools

7.0.0(2y ago)29MITPHP

Since Apr 26Pushed 2y ago1 watchersCompare

[ Source](https://github.com/orkan/winamp)[ Packagist](https://packagist.org/packages/orkan/winamp)[ Docs](https://github.com/orkan/winamp)[ RSS](/packages/orkan-winamp/feed)WikiDiscussions master Synced 6d ago

READMEChangelogDependencies (8)Versions (31)Used By (0)

Winamp Media Library CLI tools `v7.0.0`
=======================================

[](#winamp-media-library-cli-tools-v700)

Fixes invalid entries in M3U playlists.

Every time you change the location of your media files, the playlists won't take those changes and you will get the wrong paths. This tool tries to find missing entries in all your playlists and update it accordingly.

For best results, place your media files in alphabetical subfolders (see Media folder). In the case of a different folder layout, semi-automatic methods have been implemented (see Validation).

Installation
------------

[](#installation)

`$ composer require orkan/winamp`

Commands
--------

[](#commands)

### &gt; vendor\\bin\\winamp show

[](#-vendorbinwinamp-show)

Displays Winamp playlists

### &gt; vendor\\bin\\winamp math

[](#-vendorbinwinamp-math)

Add or substract playlists

### &gt; vendor\\bin\\winamp rebuild

[](#-vendorbinwinamp-rebuild)

Scan and fix all entries from Winamp playlists.xml or any provided playlist file (\*.m3u).

Validation
----------

[](#validation)

There are 5 steps to validate each track:

```
  a) Check that the playlist entry is pointing to an existing file. If not, then:
  b) Check that file exists in mapped location (see Relocate). If not, then:
  c) Check that file exists after renaming (see Rename). If not, then:
  d) Check that file exists in [Media folder] by testing the first letter. If not, then:
  e) Ask for an action:
     [1] Update - enter new path for current track
     [2] Relocate - replace path for current and remaining tracks
     [3] Rename - rename filenames with regex pattern
     [4] Remove - remove current playlist entry
     [5] Skip (default) - leave current track and skip to next one
     [6] Exit - return to prompt line

```

For more information and options type: `vendor\bin\winamp rebuild --help`

Media folder
------------

[](#media-folder)

The user \[Media folder\] structure should be organized into sub folders each named with Regular Expressions notation, describing letters range of filenames they are holding, ie. \[A-Z\] or \[0-9\].

Example:

```
[Media folder]
  |
  +-- [0-9] For filenames starting with a number (also default Escape folder)
  +-- [A-D] For filenames starting with letters: a, b, c, d
  +-- ...
  +-- [T-T] For filenames starting with letter: t

```

Third Party Packages
--------------------

[](#third-party-packages)

- [Symfony Console](https://symfony.com/doc/current/components/console.html) The Console Component
- [Monolog](https://github.com/Seldaek/monolog) for extended logging
- [getID3](https://www.getid3.org/) for ID3tag support

About
-----

[](#about)

### Requirements

[](#requirements)

PHP ^7.4

### Author

[](#author)

[Orkan](https://github.com/orkan)

### License

[](#license)

MIT

### Updated

[](#updated)

Sat, 13 Apr 2024 01:09:38 +02:00

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~37 days

Recently: every ~20 days

Total

30

Last Release

765d ago

Major Versions

2.2.1 → 3.0.02021-05-09

3.2.0 → 4.0.02021-12-30

4.3.0 → 5.0.02024-01-21

5.4.0 → 6.0.02024-04-06

6.0.1 → 7.0.02024-04-12

### Community

Maintainers

![](https://www.gravatar.com/avatar/f62c04d2a52a482ff032d87e40b7d6e0a41b29995d81fa43c3083cc74984b358?d=identicon)[orkan](/maintainers/orkan)

---

Top Contributors

[![orkan](https://avatars.githubusercontent.com/u/129182?v=4)](https://github.com/orkan "orkan (31 commits)")

---

Tags

batchcliconsolem3um3u8phpplaylistswinampphpcliconsolebatchm3u8playlistm3uwinamp

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/orkan-winamp/health.svg)

```
[![Health](https://phpackages.com/badges/orkan-winamp/health.svg)](https://phpackages.com/packages/orkan-winamp)
```

###  Alternatives

[nunomaduro/collision

Cli error handling for console/command-line PHP applications.

4.6k331.8M8.5k](/packages/nunomaduro-collision)[nunomaduro/termwind

It's like Tailwind CSS, but for the console.

2.5k239.8M286](/packages/nunomaduro-termwind)[seregazhuk/php-watcher

Automatically restart PHP application once the source code changes

394137.8k4](/packages/seregazhuk-php-watcher)[laminas/laminas-cli

Command-line interface for Laminas projects

563.7M54](/packages/laminas-laminas-cli)[nunomaduro/laravel-console-task

Laravel Console Task is a output method for your Laravel/Laravel Zero commands.

2582.1M11](/packages/nunomaduro-laravel-console-task)[alecrabbit/php-console-spinner

Extremely flexible spinner for \[async\] php cli applications

24032.0k2](/packages/alecrabbit-php-console-spinner)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
