Android MediaMetadataRetriever возвращает нулевые значения из большинства ключей

Я хочу получить информацию из своих медиафайлов (mp3 в основном), и я получаю только нуль от тех значений, которые я хочу. Я пробовал все ключи для extractMetadata(key) . Я что-то пропускаю / пропускаю?

Основа кода:

 MediaMetadataRetriever f = new MediaMetadataRetriever(); f.setDataSource(item.getFilePath()); String title = f.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE); 

Я получаю правильные значения с ключом продолжительности (MediaMetadataRetriever.METADATA_KEY_DURATION) и ключ (MediaMetadataRetriever.METADATA_KEY_MIMETYPE) , который указывает, что работает (MediaMetadataRetriever.METADATA_KEY_MIMETYPE) источника данных / файла.

Poweramp (популярный медиаплеер) способен считывать значения метаданных, такие как title / author / composer и т. Д., Так как он отображает эти дополнительные значения в пользовательском интерфейсе. Или, возможно, Poweramp получает эти значения из какого-то другого источника или метода?

Любая помощь приветствуется.

Solutions Collecting From Web of "Android MediaMetadataRetriever возвращает нулевые значения из большинства ключей"

Это может показаться глупым, но вы пробовали много разных mp3-файлов? Как раз с моим опытом, если вы незаконно получаете ваши mp3-файлы, ключей иногда просто нет.

Poweramp поддерживает собственную базу данных в каталоге /data/data/com.maxmpz.audioplayer/databases/folders.db Для изучения этой базы данных вам понадобится внедренное устройство. Вы можете отправить мне сообщение, если хотите получить более подробную информацию

Значение метаданных ассоциируется с данным ключевым кодом при успешном завершении; Null при ошибке.