Spec-Zone.ru › Web APIs

MediaCapabilities: метод encodingInfo()

Базовая Широкодоступная

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с января 2020 года.

  • Узнать больше
  • Показать полную совместимость
  • Отправить отзыв

Примечание: Эта функция доступна в Потоках Web Workers.

Метод encodingInfo() интерфейса MediaCapabilities возвращает промис, который выполняется с возможностями тестируемой конфигурации медиа для кодирования. Он содержит три булевых свойства supported, smooth, и powerefficient, которые описывают совместимость устройства с типом медиа.

Синтаксис

encodingInfo(configuration)

Параметры

configuration

Объект со свойством type и либо свойством video или audio, содержащим конфигурацию соответствующего типа:

type

Тип тестируемого медиа. Принимает одно из двух значений:

record

Представляет конфигурацию для записи медиа, например, с помощью MediaRecorder.

webrtc

Представляет конфигурацию, предназначенную для передачи электронными средствами (например, с помощью RTCPeerConnection). Примечание: Firefox использует transmission для этого типа, и webrtc не работает.

transmission Нестандартный

Синоним webrtc для использования в Firefox.

video

Объект конфигурации для видеоисточника медиа. Он имеет следующие свойства:

contentType

Строка, содержащая допустимый тип MIME видео, и (необязательно) codecs параметр.

width

Ширина видео.

height

Высота видео.

bitrate

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

framerate

Количество кадров, составляющих одну секунду воспроизведения видео.

audio

Объект конфигурации для аудиоисточника медиа. Он имеет следующие свойства:

contentType

Строка, содержащая допустимый тип MIME аудио, и (необязательно) codecs параметр.

channels

Количество каналов, используемых аудиодорожкой.

bitrate

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

samplerate

Количество аудиосэмплов, составляющих одну секунду аудиофайла.

Возвращаемое значение

Промис Promise, который выполняется с объектом, содержащим три булевых атрибута:

supported

true , если медиаконтент может быть закодирован вообще. В противном случае, значение false.

smooth

true , если воспроизведение медиа будет плавным (высокого качества). В противном случае, значение false.

powerEfficient

true , если воспроизведение медиа будет экономичным по энергопотреблению. В противном случае, значение false.

Браузеры будут сообщать о поддержке конфигурации медиа как smooth и powerEfficient до тех пор, пока не будут записаны статистические данные об этом устройстве. Все поддерживаемые аудиокодеки сообщаются как энергоэффективные.

Исключения

TypeError

Выбрасывается, если значение configuration , переданное методу encodingInfo() , недействительно, что может быть по следующим причинам:

  • тип не видео или аудио,
  • contentType не является допустимым кодеком MIME,
  • существует какая-либо другая ошибка в конфигурации медиа, переданной методу, включая пропуск каких-либо configuration элементов.

Примеры

//Create media configuration to be tested
const mediaConfig = {
  type: "record", // or 'transmission'
  video: {
    contentType: "video/webm;codecs=vp8.0", // valid content type
    width: 1920, // width of the video
    height: 1080, // height of the video
    bitrate: 120000, // number of bits used to encode 1s of video
    framerate: 48, // number of frames making up that 1s.
  },
};

// check support and performance
navigator.mediaCapabilities.encodingInfo(mediaConfig).then((result) => {
  console.log(
    `This configuration is ${result.supported ? "" : "not "}supported,`,
  );
  console.log(`${result.smooth ? "" : "not "}smooth, and`);
  console.log(`${result.powerEfficient ? "" : "not "}power efficient.`);
});

Спецификации

Спецификация
Возможности медиа
# ref-for-dom-mediacapabilities-encodinginfo

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
encodingInfo 101 101
63Значение webrtc опции type называется transmission.
87 15.4 101
63Значение webrtc опции type называется transmission.
70 15.4 19.0 101

См. также

  • MediaCapabilities.decodingInfo()

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaCapabilities/encodingInfo

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API