summaryrefslogtreecommitdiff
path: root/README.md
blob: 71af1e5a3de51b92b7f77317ac853db3c5b071b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# deadbeef-playlist

This is a Python library for reading and writing playlists in the "DBPL" binary
format, created by my absolute favorite desktop audio player
[DeaDBeeF](https://github.com/DeaDBeeF-Player/deadbeef).

I created it to be able to edit paths to audio files in the playlist, although
it's possible to change any tracks properties.

## Installation

It's available in Pypi:
```
pip install dbpl
```

## Example

Let's imagine you have a large `.dbpl` playlist with hundreds of items, and you want
to change tracks paths from `/data/music` to `/Volumes/music`. Write a script
named `script.py`:

```python
from dbpl import Playlist
from argparse import ArgumentParser

if __name__ == '__main__':
    parser = ArgumentParser()
    parser.add_argument('--input', required=True, help='input file')
    parser.add_argument('--output', required=True, help='output file')
    args = parser.parse_args()

    playlist = Playlist(args.input)
    for t in playlist.tracks:
        uri = t.get_uri()
        uri = uri.replace('/data/music', '/Volumes/music')
        t.set_uri(uri)
    playlist.save(args.output)
```

## License

MITg