Vendored 5 packages from iOpenPod (TheRealSavi/iOpenPod): iTunesDB_Writer/ — binary iTunesDB generation iTunesDB_Shared/ — field defs, constants, album identity SQLiteDB_Writer/ — SQLite databases for Nano 6G/7G iTunesDB_Parser/ — play stats reading from iPod ipod_device/ — device detection, FireWire ID, capabilities Rationale: iOpenPod is a standalone iPod manager app, not a library. Pulling it as a pip dependency is heavy and confusing for users. Changes: + src/vendor/ — 77 .py files + calcHashAB.wasm (506 KB) ~ ipod_nano7_db.py — _find_iop_root() now returns src/vendor/ ~ requirements.txt — iopenpod replaced with wasmtime + pycryptodome ~ .gitignore — removed iOpenPod/ exclusion (setup.py reads requirements.txt automatically)
19 lines
499 B
Python
19 lines
499 B
Python
"""MHII (Artist Item) field definitions.
|
|
|
|
Declarative :class:`FieldDef` list for the MHII chunk — an artist
|
|
record inside an MHLI (artist list, MHSD type 8).
|
|
"""
|
|
|
|
from .field_base import FieldDef, _u32, _u64
|
|
|
|
_S = "mhii"
|
|
|
|
MHII_HEADER_SIZE: int = 80
|
|
|
|
MHII_FIELDS: list[FieldDef] = [
|
|
_u32("child_count", 0x0C, section_type=_S),
|
|
_u32("artist_id", 0x10, section_type=_S, required=True),
|
|
_u64("sql_id", 0x14, section_type=_S),
|
|
_u32("platform_flag", 0x1C, section_type=_S, default=2),
|
|
]
|