Парсить xm оказалось не просто сложно, а охренеть как сложно.
Невнятная документация - большая проблема.
В голове надо держать ограниченные возможности контроллера.
Выбор структур данных надо делать сразу с учетом интерфейса воспроизведения, которого нет.
Потому что уже наступал на эти грабли и переписывал кучу кода в другой задаче, где не учел, как в будущем будет программа пользоваться данными.
Короч, хз. Сам придумал головную боль.
И бросать не хочется.