mirror of
https://github.com/RekuNote/Hatenatools3.git
synced 2026-10-30 16:19:13 +00:00
Initial release of Hatenatools3
Python 3 port of Hatenatools, optimised for compatibility with RexiMemo-org/hatena-server-py3. Includes Python 3 compatibility fixes, restored functionality from the original Hatenatools, and additional porting/behavior fixes.
This commit is contained in:
1 parent
d5bb128b76
commit
c0b38d0d9a
8 files changed
+1078
-1137
No files matched your search
@@ -0,0 +1,46 @@
|
||||
# Hatenatools3
|
||||
|
||||
**Python 3 port by RekuNote (aka `rekushiiiiii`)**
|
||||
|
||||
Hatenatools3 is a Python 3 port of **Hatenatools**, originally created by **pbsds (Peder Bergebakken Sundt)**.
|
||||
|
||||
A separate Python 3 port of Hatenatools already exists. Hatenatools3 is not intended to claim precedence over that work. This port is specifically maintained and optimised for compatibility with **RexiMemo's Python 3 Hatena server**:
|
||||
|
||||
https://github.com/RexiMemo-org/hatena-server-py3
|
||||
|
||||
## Compatibility goal
|
||||
|
||||
The distribution is named **Hatenatools3**, but the internal Python package directory intentionally remains named `Hatenatools`. This preserves the layout expected by `hatena-server-py3` and allows the tools to be used as a drop-in replacement/update without renaming the server's module paths.
|
||||
|
||||
The port preserves the newer Hatenatools master feature set while adding Python 3 compatibility work, including support for Python 3.13+ where the standard-library `audioop` module is no longer available.
|
||||
|
||||
## Included tools
|
||||
|
||||
- `PPM.py` v1.5 — PPM/TMB metadata, thumbnails, frames, sound, and ffmpeg export (`-e` / `-E`).
|
||||
- `UGO.py` v0.93 — UGO read/write, item editing, embedded assets, and XML conversion.
|
||||
- `NTFT.py` v0.95 — NTFT image decoding/encoding with Pillow support.
|
||||
|
||||
## Requirements
|
||||
|
||||
- Python 3
|
||||
- NumPy
|
||||
- Pillow for image functionality
|
||||
- ffmpeg for optional PPM video export
|
||||
|
||||
## Credits
|
||||
|
||||
- Original Hatenatools: pbsds (Peder Bergebakken Sundt)
|
||||
- Hatenatools3 Python 3 port: RekuNote (aka `rekushiiiiii`)
|
||||
- Steven — DSiBrew documentation and frame decoding example
|
||||
- Remark — 8x8 preview-image tiling help
|
||||
- JSAfive — `.tmb` and `.ugo` samples
|
||||
- Austin Burk, Midmad, and WDLmaster — sound codec research
|
||||
- jaames — proper p-frame translation
|
||||
- WORD559 — ffmpeg video export
|
||||
- wyntrr-end — ffmpeg export duration and frame scaling
|
||||
|
||||
## License
|
||||
|
||||
Hatenatools3 retains the original Hatenatools **AGPL-3.0** licensing. See `License.txt`.
|
||||
|
||||
Original format documentation: https://github.com/pbsds/hatena-server/wiki
|
||||
Reference in new issue
Block a user
