Как получить обложку альбома из аудиофайла с сервера по URL (Glide)

Мне нужно получить эскиз аудиофайла по URL-адресу.

Я нашел, как это сделать для файлов во внутренней памяти.

Но как я могу сделать это для удаленных аудиофайлов по URL-адресу? У меня есть URL-адрес файла, и я могу получить байт [] файла.

Для удаленных изображений я делаю это так:

контент - byte[] с сервера.

bitmap = Glide
         .with(context)
         .asBitmap()
         .load(content)
         .submit(size.getWidth(), size.getHeight())
         .get();

Если вы имеете в виду обложку альбома, то это может быть вам полезно: stackoverflow.com/questions/42482390/…

Janaaaa 17.07.2018 18:15
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
1
122
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Не нашел, как это сделать с помощью Glide. И я сделал это с помощью этого:

Bitmap bitmap = null;
MediaMetadataRetriever mediaMetadataRetriever = null;
byte[] data;

try {
    mediaMetadataRetriever = new MediaMetadataRetriever();
    mediaMetadataRetriever.setDataSource(url.toString(), new HashMap<String, String>());
    data = mediaMetadataRetriever.getEmbeddedPicture();
    if (data != null) {
            bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
        }
    } catch (Exception e) {
        Log.e(TAG, " ", e);
    } finally {
        if (mediaMetadataRetriever != null) {
            mediaMetadataRetriever.release();
        }
    }
    return bitmap;
}

Другие вопросы по теме