Обнаружение и управление воспроизведением песен с заголовком, автором и обложкой

Вопрос или проблема

В JavaScript, как я могу сделать так, чтобы Chrome обнаруживал исполняемую песню и управлял ею из специального раздела для управления аудио или видео, с обложкой исполняемой песни из вкладки с названием и автором?вставьте описание изображения здесь

Я пытался искать в интернете или спрашивать ChatGPT, но это не помогло.

Ответ или решение

Для реализации функции обнаружения и управления воспроизведением песни в браузере Chrome с отображением заголовка, автора и обложки альбома, вы можете использовать JavaScript и Web APIs, такие как Media Session API. Данный API позволяет веб-приложениям контролировать воспроизведение медиа и управлять его представлением в системном интерфейсе.

Шаги для реализации

  1. Инициализация Media Session API:
    Прежде всего, проверьте, поддерживает ли ваш браузер Media Session API.

    if ('mediaSession' in navigator) {
       console.log("Media Session API поддерживается.");
    } else {
       console.log("Media Session API не поддерживается.");
    }
  2. Настройка метаданных медиа:
    Должны быть заданы заголовок, автор и обложка трека, чтобы они появились в интерфейсе управления медиа.

    function updateMediaMetadata(title, artist, artworkUrl) {
       if ('mediaSession' in navigator) {
           navigator.mediaSession.metadata = new MediaMetadata({
               title: title,
               artist: artist,
               album: 'Название альбома',
               artwork: [
                   { src: artworkUrl, sizes: '96x96', type: 'image/png' },
                   { src: artworkUrl, sizes: '128x128', type: 'image/png' },
                   { src: artworkUrl, sizes: '192x192', type: 'image/png' },
               ]
           });
       }
    }
  3. Обработка действий управления:
    Вы можете задать обработчики для кнопок управления воспроизведением (например, пауза, воспроизведение, следующая и предыдущая дорожка).

    if ('mediaSession' in navigator) {
       navigator.mediaSession.setActionHandler('play', function() {
           // Логика для запуска воспроизведения
           console.log("Воспроизведение начато");
       });
    
       navigator.mediaSession.setActionHandler('pause', function() {
           // Логика для приостановки воспроизведения
           console.log("Воспроизведение приостановлено");
       });
    
       navigator.mediaSession.setActionHandler('previoustrack', function() {
           // Логика для предыдущей дорожки
           console.log("Предыдущая дорожка");
       });
    
       navigator.mediaSession.setActionHandler('nexttrack', function() {
           // Логика для следующей дорожки
           console.log("Следующая дорожка");
       });
    }
  4. Обновление данных о песне:
    Вызывайте функцию updateMediaMetadata каждый раз, когда трек меняется, передавая новые данные о песне.

    // Пример вызова при смене трека
    updateMediaMetadata("Название песни", "Исполнитель", "url_oblugu.png");
  5. Тестирование:
    Запустите ваше приложение и убедитесь, что при воспроизведении музыки или видео, отображается информация о текущем треке в панели мультимедиа Chrome.

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...