chrome.mediaGalleries

Описание

Используйте chrome.mediaGalleries API, чтобы получать доступ к медиафайлам (аудио, изображениям, видео) на локальных дисках пользователя (с его согласия).

Разрешения

mediaGalleries

Доступность

Только для ChromeOS

Типы

AddGalleryWatchResult

Свойства

  • galleryId

    string

  • выполнено

    Логическое значение

GalleryChangeDetails

Свойства

  • galleryId

    string

    Идентифицирует измененную галерею.

  • Тип события изменения.

GalleryChangeType

Перечисление

"contents_changed"
Контент галереи изменился.

"watch_dropped"
Отслеживание прекращено, поскольку устройство было отключено, разрешение на доступ к галерее было отозвано или по другой причине.

GetMediaFileSystemsInteractivity

Перечисление

"no"
Не выполнять интерактивные действия.

"yes"
Попросить пользователя настроить доступ к медиагалереям.

"if_needed"
Предложить пользователю выбрать разрешенные галереи, только если возвращаемый набор пуст.

GetMetadataType

Перечисление

"all"
Получить MIME-тип, теги метаданных и прикрепленные изображения.

"mimeTypeAndTags"
Получить только MIME-тип и теги метаданных.

"mimeTypeOnly"
Получить только MIME-тип.

MediaFileSystemMetadata

Свойства

  • deviceId

    Строка (необязательно)

    Если галерея медиафайлов находится на съемном устройстве, уникальный идентификатор устройства, когда оно подключено к сети.

  • galleryId

    string

    Уникальный и постоянный идентификатор галереи медиафайлов.

  • isAvailable

    Логическое значение

    True, если устройство доступно.

  • isMediaDevice

    Логическое значение

    Значение True, если устройство, на котором находится медиагалерея, было определено как медиаустройство, например устройство PTP или MTP, или если на нем есть каталог DCIM.

  • isRemovable

    Логическое значение

    True, если галерея медиафайлов находится на съемном устройстве.

  • name

    string

    Название файловой системы.

MediaFileSystemsDetails

Свойства

  • интерактивный

    GetMediaFileSystemsInteractivity необязательное

    Запрашивать ли у пользователя разрешение на доступ к дополнительным медиагалереям, прежде чем возвращать разрешенный набор. По умолчанию звук отключен. Если передано значение yes или если приложению не предоставлен доступ к галереям медиафайлов и передано значение if_needed, будет показано диалоговое окно настройки галереи медиафайлов.

MediaMetadata

Свойства

  • album

    Строка (необязательно)

    Определяется для аудио и видео.

  • художник

    Строка (необязательно)

  • attachedImages

    Blob[]

    Изображения, встроенные в метаданные медиафайла. Чаще всего это обложка альбома или значок видео.

  • комментарий

    Строка (необязательно)

  • Строка (необязательно)

  • диск

    number (необязательно)

  • продолжительность

    number (необязательно)

    Определяется для аудио и видео. Значение указывается в секундах.

  • жанр

    Строка (необязательно)

  • высота

    number (необязательно)

    Определяется для видео. в пикселях.

  • language

    Строка (необязательно)

  • mimeType

    string

    MIME-тип, определенный браузером.

  • rawTags

    Все метаданные в медиафайле. Для форматов с несколькими потоками порядок потоков будет сохранен. Метаданные контейнера – это первый элемент.

  • поворот

    number (необязательно)

    Определяется для видео. Указывается в градусах.

  • название

    Строка (необязательно)

  • Универсал

    number (необязательно)

  • ширина

    number (необязательно)

MediaMetadataOptions

Свойства

  • metadataType

    GetMetadataType необязательный

    Указывает, какой поднабор метаданных нужно получить. Если параметр не указан, по умолчанию используется значение all.

StreamInfo

Свойства

  • теги

    Объект

    Нефильтрованный словарь тегов для трансляции в формате "строка-строка".

  • тип

    string

    Описывает формат контейнера или кодек потока, например mp3, h264.

Методы

addGalleryWatch()

Promise
chrome.mediaGalleries.addGalleryWatch(
  galleryId: string,
  callback?: function,
)
: Promise<AddGalleryWatchResult>

Добавляет отслеживание галереи с указанным идентификатором. Затем запускается обратный вызов с результатом успеха или неудачи.

Параметры

  • galleryId

    string

  • обратный вызов

    function необязательно

    Параметр callback выглядит следующим образом:

    (result: AddGalleryWatchResult) => void

Возвраты

  • Chrome 116 и более поздних версий

    Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.

addUserSelectedFolder()

chrome.mediaGalleries.addUserSelectedFolder(
  callback: function,
)
: void

Показать пользователю окно выбора каталога и добавить выбранный каталог в качестве галереи. Если пользователь отменит выбор, selectedFileSystemName будет пустым. Для показа диалогового окна требуется жест пользователя. Если жест пользователя отсутствует, обратный вызов будет выполнен так, как если бы пользователь отменил действие.

Параметры

  • обратный вызов

    function

    Параметр callback выглядит следующим образом:

    (mediaFileSystems: DOMFileSystem[], selectedFileSystemName: string) => void

    • mediaFileSystems

      DOMFileSystem[]

    • selectedFileSystemName

      string

getMediaFileSystemMetadata()

chrome.mediaGalleries.getMediaFileSystemMetadata(
  mediaFileSystem: DOMFileSystem,
)
: MediaFileSystemMetadata | undefined

Получить метаданные об определенной файловой системе мультимедиа.

Параметры

  • mediaFileSystem

    DOMFileSystem

Возвраты

getMediaFileSystems()

Promise
chrome.mediaGalleries.getMediaFileSystems(
  details?: MediaFileSystemsDetails,
  callback?: function,
)
: Promise<DOMFileSystem[]>

Получить медиагалереи, настроенные в этом агенте пользователя. Если ни один из них не настроен или недоступен, обратный вызов получит пустой массив.

Параметры

  • подробные сведения

    MediaFileSystemsDetails необязательный

  • обратный вызов

    function необязательно

    Параметр callback выглядит следующим образом:

    (mediaFileSystems: DOMFileSystem[]) => void

    • mediaFileSystems

      DOMFileSystem[]

Возвраты

  • Promise<DOMFileSystem[]>

    Chrome 116 и более поздних версий

    Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.

getMetadata()

Promise
chrome.mediaGalleries.getMetadata(
  mediaFile: Blob,
  options?: MediaMetadataOptions,
  callback?: function,
)
: Promise<MediaMetadata>

Получает метаданные медиафайла. Это должно работать для файлов в медиагалереях, а также для других файловых систем DOM.

Параметры

  • mediaFile

    BLOB-объект

  • Параметры

    MediaMetadataOptions необязательный

  • обратный вызов

    function необязательно

    Параметр callback выглядит следующим образом:

    (metadata: MediaMetadata) => void

Возвраты

  • Promise<MediaMetadata>

    Chrome 116 и более поздних версий

    Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.

removeGalleryWatch()

chrome.mediaGalleries.removeGalleryWatch(
  galleryId: string,
)
: void

Удаляет отслеживание галереи с указанным идентификатором.

Параметры

  • galleryId

    string

События

onGalleryChanged

chrome.mediaGalleries.onGalleryChanged.addListener(
  callback: function,
)

Срабатывает, когда галерея медиафайлов изменяется или удаляется.

Параметры

  • обратный вызов

    function

    Параметр callback выглядит следующим образом:

    (details: GalleryChangeDetails) => void