【问题标题】:How to restart video track after stopping it in twilio?在 twilio 中停止视频轨道后如何重新启动视频轨道?
【发布时间】:2020-12-27 17:00:26
【问题描述】:

我正在使用 twilio-video v2.7。

目标:

停止后重新启动视频轨道。

用例:

当视频关闭时关闭摄像头 LED 指示灯,反之亦然,就像 google meet。

const toggleVideo = () => {
    const isOff = !isVideoOn;
    room.localParticipant.videoTracks.forEach((t) => {
      if (isOff) {
        t.track.enable();
        t.track.attach(screenRef.current)
      } else {
        t.track.disable();
        t.track.stop()
        t.unpublish()
        t.track.detach()
      }
    });
    setVideoToggle(isOff);
  };

【问题讨论】:

    标签: javascript reactjs twilio webrtc twilio-video


    【解决方案1】:

    不久前,我使用此代码将媒体静音/取消静音。你可以随意改变它。如果有什么不清楚的,请让我现在在 cmets 中。

    /**
     * Mute/unmute your media in a Room.
     * @param {Room} room - The Room you have joined
     * @param {'audio'|'video'} kind - The type of media you want to mute/unmute
     * @param {'mute'|'unmute'} action - Whether you want to mute/unmute
     */
    function muteOrUnmuteYourMedia(room, kind, action) {
      const publications = kind === 'audio'
        ? room.localParticipant.audioTracks
        : room.localParticipant.videoTracks;
    
      publications.forEach(function(publication) {
        if (action === 'mute') {
          publication.track.disable();
        } else {
          publication.track.enable();
        }
      });
    }
    /**
     * Mute your video in a Room.
     * @param {Room} room - The Room you have joined
     * @returns {void}
     */
    function muteYourVideo(room) {
      muteOrUnmuteYourMedia(room, 'video', 'mute');
    }
    /**
     * UnMute your video in a Room.
     * @param {Room} room - The Room you have joined
     * @returns {void}
     */
    function muteYourVideo(room) {
      muteOrUnmuteYourMedia(room, 'video', 'unmute');
    }

    【讨论】:

      【解决方案2】:

      我认为您需要重新发布视频轨道。只要您正在处理已发布的轨道事件,这就足够了。

      t.track.publish()

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-11-09
        • 1970-01-01
        • 1970-01-01
        • 2020-02-21
        • 1970-01-01
        • 1970-01-01
        • 2013-09-12
        相关资源
        最近更新 更多