【问题标题】:Improve opentok stream quality while publishing from video source从视频源发布时提高 opentok 流质量
【发布时间】:2018-03-16 12:34:57
【问题描述】:

我正在使用 opentok 流式传输视频文件 MediaStreamTrack 示例代码:

        <video id="myPreview" controls ></video>

        const mediaStream = $('#myPreview')[0].captureStream()
        OT.initPublisher(el, {
              style: {
                nameDisplayMode: "on",
                buttonDisplayMode: "off",
              },
              // resolution: "320x240",
              // frameRate: 20,
              audioSource: mediaStream.getAudioTracks()[0],
              videoSource: mediaStream.getVideoTracks()[0],
            });

效果很好,但问题是当观众大约 20 岁时,视频质量会像素化。

更多上下文: 我上传了一个视频并使用 blob 在预览中播放视频。

我愿意寻求更好的解决方案:

一个。将视频上传到服务器并在myPreview 中流式传输编辑过的中等质量(不知道该怎么做)视频。

b.将视频上传到 3rd 方服务并通过他们的播放器加载视频。

提前致谢。

【问题讨论】:

    标签: angularjs video-streaming html5-video video-processing opentok


    【解决方案1】:

    确保您有足够的带宽供发布者和订阅者使用。例如,如果一个订阅者没有足够的带宽来接收 VGA,它将接收到质量较低的流,但所有其他订阅者都应该没问题。如果发布者没有很好的上传带宽,那么订阅者就很难接收到好的质量。 我希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      您可能希望在发布者上设置 minVideoBitrate,这将强制设置最低比特率。这是一个以每秒位数为单位的整数值。如果有参与者无法处理该最小比特率,那么他们将降至仅音频。

      OT.initPublisher(el, {
        style: {
          nameDisplayMode: "on",
          buttonDisplayMode: "off",
        },
        minVideoBitrate: 2500000,
        audioSource: mediaStream.getAudioTracks()[0],
        videoSource: mediaStream.getVideoTracks()[0],
      });
      

      【讨论】:

      • initPublisher中没有这个选项。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-06
      • 1970-01-01
      • 2018-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多