--- title: MediaStreamTrack slug: Web/API/MediaStreamTrack tags: - API - API потоков медия - MediaStreamTrack - WebRTC - Видео - Запись медиа и API для потоков - Интерфейс - Медиа - аудио translation_of: Web/API/MediaStreamTrack --- <div>{{APIRef("Media Capture and Streams")}}</div> <p><span class="seoSummary">Интерфейс <strong><code>MediaStreamTrack</code></strong><strong> </strong>представляет один медиа трек в потоке; обычно это аудио или видео трек, но могут использоваться и другие типы.</span></p> <h2 id="Свойства">Свойства</h2> <p>В дополнение к свойствам, перечисленным ниже, <code>MediaStreamTrack</code> имеет свойства с ограничениями, которые можно установить с помощью {{domxref("MediaStreamTrack.applyConstraints", "applyConstraints()")}} и просмотреть с через {{domxref("MediaStreamTrack.getConstraints", "getConstraints()")}} и {{domxref("MediaStreamTrack.getSettings", "getSettings()")}}. Смотрите <a href="/en-US/docs/Web/API/Media_Streams_API/Constraints">capabilities, constraints, and settings</a>, чтобы узнать, как правильно работать со свойствами с ограничениями. Если использовать их неправильно, ваш код будет ненадёжным.</p> <dl> <dt>{{domxref("MediaStreamTrack.contentHint")}}</dt> <dd>Строка, которую веб приложение может использовать для создания подсказок, какой тип данных содержит трек, чтобы их могли различать пользователи API.</dd> <dt>{{domxref("MediaStreamTrack.enabled")}}</dt> <dd>Имеет значение <code>true</code>, если трек включён, то есть может может отображать поток медиа; или <code>false</code>, если он выключен, то есть отображает не поток данных, а чёрное изображение без звука. Если трек отключён, это свойство можно менять, но это не будет давать никакого эффекта. <div class="note"><strong>Обратите внимание:</strong> Вы можете создать стандартную функцию "заглушить звук", устанавливая свойство <code>enabled</code> в значение <code>false</code>. Свойство <code>muted</code> используется, когда данные отсутствуют из-за технической проблемы.</div> </dd> <dt>{{domxref("MediaStreamTrack.id")}} {{readonlyInline}}</dt> <dd>Возвращает объект {{domxref("DOMString")}}, содержащий уникальный идентификатор (GUID) трека; генерируется браузером.</dd> <dt>{{domxref("MediaStreamTrack.isolated")}} {{readonlyInline}}</dt> <dd>Возвращает <code>true</code>, если трек <strong>изолирован</strong>, то есть не доступен документу, которому принадлежит. Это случается, когда устанавливается свойство {{domxref("MediaStreamTrack.peerIdentity", "peerIdentity")}} или трек исходит от cross-origin ресурса.</dd> <dt>{{domxref("MediaStreamTrack.kind")}} {{readonlyInline}}</dt> <dd>Возвращает объект {{domxref("DOMString")}} со значением <code>"audio"</code>, если это аудио трек или <code>"video"</code>, если это видео трек. Не меняется, когда трек отвязывается от источника.</dd> <dt>{{domxref("MediaStreamTrack.label")}} {{readonlyInline}}</dt> <dd>Возвращает объект {{domxref("DOMString")}}, содержащий установленные агентом метки, обозначающие источник трека, например <code>"internal microphone"</code> (внутренний микрофон). Строка может быть пустой и является таковой, если не подключён никакой источник. Когда трек отвязывается от источника, метка не меняется.</dd> <dt>{{domxref("MediaStreamTrack.muted")}} {{readonlyInline}}</dt> <dd>Возвращает <code>true</code>, если трек не может предоставить данные по техническим причинам. <div class="note"><strong>Обратите внимание:</strong> Вы можете создать стандартную функцию "заглушить звук", устанавливая свойство <code>enabled</code> в значение <code>false</code>, и возвращать звук, снова устанавливая его в значение <code>true</code>.</div> </dd> <dt>{{domxref("MediaStreamTrack.readonly")}} {{readonlyInline}}</dt> <dd>Возвращает <code>true</code>, если трек предназначен только для чтения (например, если его источник - видео файл или камера, настройки которой не могут быть изменены), иначе <code>false</code>.</dd> <dt>{{domxref("MediaStreamTrack.readyState")}} {{readonlyInline}}</dt> <dd>Возвращает одно из следующих значений, обозначающих статус трека: <ul> <li><code>"live"</code> означает, что источник подключён и делает всё, чтобы предоставить данные в реальном времени. В этом случае, поток данных можно включать и выключать с помощью свойство {{domxref("MediaStreamTrack.enabled", "enabled")}}.</li> <li><code>"ended"</code> означает, что источник больше не предоставляет и больше не будет предоставлять данные.</li> </ul> </dd> <dt>{{domxref("MediaStreamTrack.remote")}} {{readonlyInline}} {{deprecated_inline}}</dt> <dd>Имеет значение <code>true</code>, если источником трека является {{domxref("RTCPeerConnection")}}, иначе <code>false</code>.</dd> </dl> <h2 id="Методы">Методы</h2> <dl> <dt>{{domxref("MediaStreamTrack.applyConstraints()")}}</dt> <dd>Позволяет приложению указывать желательные и/или допустимые диапазоны значений для любого количества свойств с ограничениями объекта <code>MediaStreamTrack</code>.</dd> <dt>{{domxref("MediaStreamTrack.clone()")}}</dt> <dd>Возвращает копию объекта <code>MediaStreamTrack</code>.</dd> <dt>{{domxref("MediaStreamTrack.getCapabilities()")}}</dt> <dd>Возвращает список свойств с ограничениями, доступных объекту <code>MediaStreamTrack</code>.</dd> <dt>{{domxref("MediaStreamTrack.getConstraints()")}}</dt> <dd>Возвращает объект {{domxref('MediaTrackConstraints')}}, содержащий установленные ограничения на трек; возвращаемое значение удовлетворяет ограничениям, установленным методом {{domxref("MediaStreamTrack.applyConstraints", "applyConstraints()")}}.</dd> <dt>{{domxref("MediaStreamTrack.getSettings()")}}</dt> <dd>Возвращает объект {{domxref("MediaTrackSettings")}}, содержащий текущее значение всех свойств с ограничениями объекта <code>MediaStreamTrack</code>.</dd> <dt>{{domxref("MediaStreamTrack.stop()")}}</dt> <dd>Останавливает проигрывание источника, к которому привязан трек. И источник, и трек отвязываются. Состояние трека устанавливается в значение <code>ended</code>.</dd> </dl> <h2 id="События">События</h2> <dl> <dt><code><a href="/en-US/docs/Web/API/MediaStreamTrack/ended_event">ended</a></code></dt> <dd>Вызывается, когда проигрывание трека останавливается (когда значение {{domxref("MediaStreamTrack.readyState", "readyState")}} становится <code>ended</code>).<br> Обработчик может быть установлен как свойство <code><a href="/en-US/docs/Web/API/MediaStreamTrack/onended">onended</a></code>.</dd> <dt><code><a href="/en-US/docs/Web/API/MediaStreamTrack/mute_event">mute</a></code></dt> <dd>Вызывается, когда {{domxref("MediaStreamTrack.muted", "muted")}} принимает значение <code>true</code>, что означает, что трек временно не может предоставлять данные (например, при плохом подключении сети).<br> Обработчик может быть установлен как свойство <code><a href="/en-US/docs/Web/API/MediaStreamTrack/onmute">onmute</a></code>.</dd> <dt><code><a href="/en-US/docs/Web/API/MediaStreamTrack/isolationchange_event">isolationchange</a></code></dt> <dd>Вызывается, когда свойство {{domxref("MediaStreamTrack.isolated", "isolated")}} принимает значение <code>true</code> из-за того, что документ больше не имеет разрешение на доступ к треку.<br> Обработчик может быть установлен как свойство <code><a href="/en-US/docs/Web/API/MediaStreamTrack/onisolationchange">onisolationchange</a></code>.</dd> <dt><code><a href="/en-US/docs/Web/API/MediaStreamTrack/overconstrained_event">overconstrained</a></code> {{deprecated_inline}}</dt> <dd>Вызывается, когда источник не удовлетворяет ограничениям трека, что делает его непригодным для использования.<br> Обработчик может быть установлен как свойство <code><a href="/en-US/docs/Web/API/MediaStreamTrack/onoverconstrained">onoverconstrained</a></code>.</dd> <dt><code><a href="/en-US/docs/Web/API/MediaStreamTrack/unmute_event">unmute</a></code></dt> <dd>Вызывается, когда данные снова становятся доступными, то есть пропадают технические проблемы.<br> Обработчик может быть установлен как свойство <code><a href="/en-US/docs/Web/API/MediaStreamTrack/onunmute">onunmute</a></code>.</dd> </dl> <h2 id="Спецификации">Спецификации</h2> <table class="standard-table"> <tbody> <tr> <th scope="col">Specification</th> <th scope="col">Status</th> <th scope="col">Comment</th> </tr> <tr> <td>{{SpecName('Media Capture', '#mediastreamtrack', 'MediaStreamTrack')}}</td> <td>{{Spec2('Media Capture')}}</td> <td>Initial definition</td> </tr> <tr> <td>{{SpecName("WebRTC Identity", "#isolated-track", "Isolated tracks")}}</td> <td>{{Spec2("WebRTC Identity")}}</td> <td>Additional properties for isolated track support</td> </tr> </tbody> </table> <h2 id="Поддержка_браузерами">Поддержка браузерами</h2> <div> <p>{{Compat("api.MediaStreamTrack")}}</p> </div> <h2 id="Смотрите_также">Смотрите также</h2> <ul> <li><a href="/en-US/docs/Web/API/Media_Streams_API">Media Capture and Streams API</a></li> <li>{{domxref("MediaStream")}}</li> </ul>