Tools icon indicating copy to clipboard operation
Tools copied to clipboard

Can a person without Camera join video conferencing?

Open shubhra-ahead opened this issue 5 years ago • 7 comments

Network not connected

When a user does not have camera on his system or he does not choose to allow the camera, then the connection is not established and stream does not work.

We want the stream to show only audio in case the viewing audience does not have camera at his end.

We tried below:

You can use our troubleshooting guide to test the camera and detect if it is there. [https://webdemo.agora.io/agora_webrtc_troubleshooting/]

If it is not there, then you would just set audio to true and video to false. For example, in the create stream, see below.

var localStream = AgoraRTC.createStream({ audio: true, video: false});

But this above method is not working. When we try to join with audio true and video false, then an error is coming and user is not able to join the stream.

This is getting very urgent and we are getting for any resolution in ticket as well from exact 1 month now.

shubhra-ahead avatar Oct 24 '20 08:10 shubhra-ahead

Please check the video I have recorded for the error we are seeing here: https://www.awesomescreenshot.com/video/1512984?key=52f682299a96cab13d2b87f92344acc9

We are not at all able to establish a connection when we do not allow video camera.

shubhra-ahead avatar Oct 28 '20 08:10 shubhra-ahead

@shubhra-ahead what is the error when you call createStream with audio:true video:false?

plutoless avatar Oct 30 '20 04:10 plutoless

@plutoless There is no error in the console and it is showing black screen without audio and when we enable video is it working fine with audio and video.

shubhra-ahead avatar Oct 30 '20 06:10 shubhra-ahead

i mean what is the callback result of createStream in your project if you call it with audio:true video:false?

plutoless avatar Oct 30 '20 07:10 plutoless

We are getting below error: init local stream failed
Object info: "Permission denied" msg: "NotAllowedError" type: "error"

Vaibhav-Agarwal06 avatar Oct 30 '20 07:10 Vaibhav-Agarwal06

@vai that means you are not properly granting the privilege. Please double check if you have granted mic privilege because you only have audio: true here.

plutoless avatar Nov 02 '20 01:11 plutoless

@shubhra-ahead Hello, I included this check for those who don't have access to a camera.

      var devices = await AgoraRTC.getDevices();
      var cameras = devices.filter(device => device.kind === 'videoinput');
      const audioTrack = await AgoraRTC.createMicrophoneAudioTrack();
      rtc.localAudio = audioTrack;
      if (cameras.length > 0) {
        const videoTrack = await AgoraRTC.createCameraVideoTrack();
        rtc.localVideo = videoTrack;
        await rtc.client.publish([audioTrack, videoTrack]);
        rtc.localVideo.play("agora_local", {
          fit: "contain",
        });
        this.setState({
          cameraInstall: true,
        })
      } else {
        await rtc.client.publish([audioTrack]);
        console.warn("No camera only audio!!!");
        this.setState({
          cameraInstall: false,
        })
      }

Jartz avatar Nov 08 '21 16:11 Jartz