zoukankan      html  css  js  c++  java
  • MediaStreamTrack.applyConstraints()方法

    MediaStreamTrack接口的applyConstraints()方法的作用是向轨道应用一组约束。 这些约束使网站或应用程序可以为轨道的可约束属性(例如帧频,尺寸,回声消除等)建立理想值和可接受的范围值。

    约束可用于确保媒体符合您喜欢的某些准则。 例如,您可能更喜欢高清视频,但要求帧速率稍低一些,以帮助将数据速率保持在足够低的水平,以免使网络过载。 约束还可以指定理想的和/或可接受的大小或大小范围。 

    语法

    const promise = track.applyConstraints(constraints);

    参数

    constraints 可选的

    一个MediaTrackConstraints对象,列出要应用于轨道的可约束属性的约束。任何现有的约束都将替换为指定的新值,并且未包括的所有可约束属性都将恢复为其默认约束。 如果省略此参数,那么将清除所有当前设置的自定义约束。 

    返回值

    当约束应用成功的时,返回一个Promise对象。 如果约束应用失败,则使用名为OverconstrainedError的MediaStreamError失败回调Promise,以指示无法满足约束。 如果指定的约束过于严格而无法在试图配置轨道时找到匹配项,则会发生这种情况。

    例子

    下面的例子显示了如何指定基本和高级约束集。 它指定页面或Web应用程序需要在640和1280之间的宽度以及在480和720之间的高度,每对中的后一个数字是首选。 advanced属性进一步指定1920 x 1280的图像大小是首选,如果没有可用的宽高比,则为1.333。 

    const constraints = {
                      {min: 640, ideal: 1280},
                  height:   {min: 480, ideal: 720},
                  advanced: [{ 1920, height: 1280},{aspectRatio: 1.333}]
                };
    
    navigator.mediaDevices.getUserMedia({ video: true })
    .then(mediaStream => {
        const track = mediaStream.getVideoTracks()[0];
        track.applyConstraints(constraints)
        .then(() => {
            // Do something with the track such as using the Image Capture API.
        })
        .catch(e => {
            // The constraints could not be satisfied by the available devices.
        });
    });
  • 相关阅读:
    JS 定义函数的参数的个数,传入参数的个数对调用的影响
    jQuery常见操作总结
    jQuery hover事件
    Ajax实现登陆并友好提示错误信息
    JS实现弹出登录框
    .NET源码 SortedSet(红黑树)
    C#链接SQL Server数据库
    628. Maximum Product of Three Numbers 最大的三个数的乘积
    501. Find Mode in Binary Search Tree 找二叉搜索树的众数
    235. Lowest Common Ancestor of a Binary Search Tree 二叉搜索树的LCA
  • 原文地址:https://www.cnblogs.com/iuyy/p/13407844.html
Copyright © 2011-2022 走看看