Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aoirint/id3py
ID3 tag (MP3 file metadata) library (<=ID3v2.3) for Python
https://github.com/aoirint/id3py
Last synced: about 1 month ago
JSON representation
ID3 tag (MP3 file metadata) library (<=ID3v2.3) for Python
- Host: GitHub
- URL: https://github.com/aoirint/id3py
- Owner: aoirint
- License: mit
- Created: 2023-02-04T01:27:47.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-04T03:48:32.000Z (10 months ago)
- Last Synced: 2024-11-07T12:49:02.694Z (about 2 months ago)
- Language: Python
- Homepage:
- Size: 102 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# aoirint_id3py
**This library is under construction and before alpha stage. API will be changed without notice. There are many bugs and unimplemented features.**
Python Library to parse audio ID3 tag specified by [ID3.org](https://id3.org).
This library is intended to be a non-GPL dependent ID3 tag parser.
## Environment
- Windows 10, Ubuntu 20.04
- Python 3.9, 3.10, 3.11## Install
- [PyPI](https://pypi.org/project/aoirint-id3/)
```shell
pip3 install aoirint-id3
```## Usage
See [example](example/main.py).
## Implementation
- ID3v1
- ID3v1.1
- (Partial) ID3v2.2
- (Partial) ID3v2.3### Implemented ID3v2.2 Frames
- TT2: Song title
- TP1: Artist name
- TAL: Album name
- TYE: Year
- TRK: Track number and Total track number
- COM: Comment### Implemented ID3v2.3 Frames
- TIT2: Song title
- TPE1: Artist name
- TALB: Album name
- TYER: Year
- TRCK: Track number and Total track number
- COMM: Comment
- APIC: Album art## TODO
- Support more ID3v2.2 frames
- Album art
- Support more ID3v2.3 frames
- User-friendly ID3v2 Frame API## Poetry reference
### Lock Python version with pyenv
```shell
env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.9.x
pyenv local 3.9.xpoetry env remove python
poetry env use python
```### Install dependencies
```shell
poetry install
```### Add a package
```
poetry add 'mypackage'
poetry add --group test 'mypackage'
poetry add --group build 'mypackage'
```### Dump requirements.txt
```shell
poetry export --without-hashes -o requirements.txt
poetry export --without-hashes --with dev -o requirements-dev.txt
```### Run pytest
```shell
poetry run pytest tests/
```## Reference
-
-
-
-