Map<String, dynamic> toMap() { return { 'startIndex': startIndex, 'playPosition': playPosition.inSeconds, 'repeatMode': repeatMode.index, 'customData': customData, }; }