Spec-Zone.ru › Web APIs

MediaRecorder: свойство mimeType

Свойство mimeType только для чтения интерфейса MediaRecorder возвращает тип медиа MIME, который был указан при создании объекта MediaRecorder, или, если не был указан, выбран браузером. Это формат файла, который получился бы при записи всех записанных данных на диск.

Обратите внимание, что не все кодеки поддерживаются заданным контейнером; если вы записываете медиа с помощью кодека, который не поддерживается заданным контейнером медиа, полученный файл может работать ненадёжно или вообще не работать при попытке его воспроизведения. Ознакомьтесь с нашим руководством по типам и форматам медиа для получения информации о поддержке контейнеров и кодеков в различных браузерах.

Примечание: Термин «тип MIME» официально считается устаревшим; теперь эти строки официально называются типами медиа. Содержимое MDN Web Docs использует эти термины взаимозаменяемо.

Значение

Тип MIME медиа, описывающий формат записанной медиа, в виде строки. Эта строка может включать codecs параметр, предоставляющий подробную информацию о кодеках и конфигурациях кодеков, используемых медиа-регистратором.

Строки типов медиа стандартизированы организацией Internet Assigned Numbers Authority (IANA). Для получения официального списка определённых строк типов медиа обратитесь к статье Типы медиа на сайте IANA. Также ознакомьтесь с типами медиа, чтобы узнать больше о типах медиа и о том, как они используются в веб-контенте и веб-браузерами.

Примеры

if (navigator.mediaDevices) {
  console.log("getUserMedia supported.");

  const constraints = { audio: true, video: true };
  const chunks = [];

  navigator.mediaDevices
    .getUserMedia(constraints)
    .then((stream) => {
      const options = {
        audioBitsPerSecond: 128000,
        videoBitsPerSecond: 2500000,
        mimeType: "video/mp4",
      };
      const mediaRecorder = new MediaRecorder(stream, options);
      m = mediaRecorder;

      m.mimeType; // would return 'video/mp4'
      // …
    })
    .catch((error) => {
      console.error(error.message);
    });
}

Изменение mimeType в options на 'video/mp4; codecs="avc1.424028, mp4a.40.2"' заставляет MediaRecorder попытаться использовать профиль AVC Constrained Baseline уровня 4 для видео и AAC-LC (Low Complexity) для аудио, что подходит для мобильных устройств и других ситуаций с ограниченными ресурсами.

Предполагая, что данная конфигурация приемлема для пользовательского агента, значение, возвращаемое позже m.mimeType , будет video/mp4; codecs="avc1.424028, mp4a.40.2".

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

Спецификация
Запись потока медиа
# dom-mediarecorder-mimetype

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
mimeType 49
47–49До Chrome 49 поддерживалось только видео, а не аудио.
79
25Начиная с Firefox 71, поведение mimeType более согласованно. Например, теперь он возвращает тип медиа даже после остановки записи.
36 14.1 49
47–49До Chrome Android 49 поддерживалось только видео, а не аудио.
25 36 14 5.0 49
47–49До WebView Android 49 поддерживалось только видео, а не аудио.

См. также

  • Использование API записи потоков медиа
  • Кодеки в распространённых типах медиа
  • Веб-диктофон: демонстрация MediaRecorder + getUserMedia + визуализация API Web Audio, разработанная Крис Миллсом (исходный код на GitHub.)
  • Демонстрация записи потоков медиа simpl.info, разработанная Сэм Даттоном.
  • MediaDevices.getUserMedia()

© 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/MediaRecorder/mimeType

Spec-Zone.ru

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