Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IE 11中的getUserMedia或IE 11中的MediaStream_Javascript_Html_Reactjs_Internet Explorer 11_Temasys - Fatal编程技术网

Javascript IE 11中的getUserMedia或IE 11中的MediaStream

Javascript IE 11中的getUserMedia或IE 11中的MediaStream,javascript,html,reactjs,internet-explorer-11,temasys,Javascript,Html,Reactjs,Internet Explorer 11,Temasys,在IE 11中插件的帮助下,我正在尝试使用getUserMedia函数getUserMedia返回IE不支持的MediaStream实例 以下是我的示例代码: import React from 'react' import { render } from 'react-dom' class App extends React.Component { state = { toggle: false, } componentDidMount() { AdapterJ

在IE 11中插件的帮助下,我正在尝试使用
getUserMedia
函数
getUserMedia
返回IE不支持的MediaStream实例

以下是我的示例代码:

import React from 'react'
import { render } from 'react-dom'

class App extends React.Component {
  state = {
    toggle: false,
  }

  componentDidMount() {
    AdapterJS.webRTCReady(isUsingPlugin => {
      console.log('isUsingPlugin....', isUsingPlugin)
      navigator.getUserMedia({
        video: {
          mandatory: {
            maxWidth: 640,
          },
          optional: [
            { maxFrameRate: 120 },
            { minFrameRate: 120 },
          ],
        },
      }, (st) => {
        try {
          this.videoRef.srcObject = st
        }
        catch (eee) {
          console.error(eee)
        }
        this.setState({ toggle: !this.state.toggle })
      }, (error) => {
        console.log('error....', error)
      })
    })
  }
  setRef = ref => {
    this.videoRef = ref
  }

  render() {
    return (
      <div>
        <video ref={this.setRef} autoPlay={true} />
      </div>
    )
  }
}

render(
  <App />,
  document.getElementById('root'),
)
我也试过了

this.videoRef.src = window.URL.createObjectURL(st)
这在IE中也不起作用

这是你的电话号码


我如何让它在IE上工作?任何帮助都将不胜感激。

我希望您使用的是WebRTC适配器,它有助于标准化执行这些任务的API

Temasys拥有自己的适配器,该适配器构建在WebRTC适配器之上,并在保留类似接口的同时向其插件添加支持

因此,IE也将支持MediaStream和其他东西,因为它是由适配器库定义的

WebRTC适配器JS:

Temasys AdapterJS:

我希望这能解决你的问题


检查此示例代码的实现:

我已经集成了。但是,它仍然不起作用。你能包括你在这里得到的错误/堆栈跟踪吗?当我使用
this.videoRef.srcObject=st
时没有错误,并且它没有显示任何内容。我希望你正确地遵循文档。我没有看到您将MediaStream附加到视频元素。因为IE的视频元素不能获取MediaStream对象,所以temasys将其转换为对象元素并对其执行一些操作。myVideoElement=attachMediaStream(myVideoElement,myStream);如文件所示:谢谢。我已经将其包含在我的项目中,但忘记了将其添加到示例中的这一步骤。然而,它给了我一个暗示。
this.videoRef.src = window.URL.createObjectURL(st)