Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot recieve remote video on device without camera #388

Closed
Ascold2017 opened this issue May 12, 2020 · 2 comments
Closed

Cannot recieve remote video on device without camera #388

Ascold2017 opened this issue May 12, 2020 · 2 comments

Comments

@Ascold2017
Copy link

Ascold2017 commented May 12, 2020

Environment details
Windows 10 x64
Chrome 81.0.4044.129
SDK 2.12.7
Vue.js 2.6.10

Did this work before?
I have two PC devices: with a camera and without. When I calling from a device with camera to a device without a camera, second device received a video track from the caller (first device). But, when I calling from a device without a camera - I don't receive a video track from the remote participant (from a device, who has a camera).

Expected behavior
Participant, who don't have a camera device always receive video track from a remote participant, who has a camera device

Actual behavior
Participants, who don't have a camera device receive video track from a remote participant, who has a camera device only if caller has a camera device.

Logs

Creating video session:
const sessionType = QB.webrtc.CallType[isAvailableVideoDevice ? 'VIDEO' : 'AUDIO']; 
const session = QB.webrtc.createNewSession(participants, sessionType, rootState.quickBlox.userId, {
    bandwidth: '512'
});

const mediaParams = {
  audio: isAvailableAudioDevice,
  video: isAvailableVideoDevice,
  options: {
      muted: false,
      mirror: true
  }
};

session.getUserMedia(mediaParams, function(err: any, stream: any) {
    if (err) {
      reject(err);
    } else {
      session.localStream = stream;
      resolve(session);
    }
});

...
Accept Incoming call:

const mediaParams = {
    audio: isAvailableAudioDevice,
    video: isAvailableVideoDevice,
    options: {
       muted: false,
       mirror: true
    }
};

state.currentVideoSession.getUserMedia(mediaParams, function(err: any, stream: any) {
    if (err) throw err;
    state.currentVideoSession.accept({});
});

....

Listener:

QB.webrtc.onRemoteStreamListener = function(session: any, userId: any, remoteStream: MediaStream) {
              ...
      state.currentVideoSession.peerConnections[userId].stream = remoteStream;
      commit('SET_REMOTE_VIDEO_STREAM', remoteStream);
};

Steps to reproduce the behavior

  1. Need 2 devices: first with camera device and second without it.
  2. Call from the device without a camera.
  3. Accept incoming call on device with a camera

Any others comments?
This problem also reproduces on webrtc example.

@ghost
Copy link

ghost commented Oct 7, 2021

Hello,

This is Nikolay from QuickBlox support.

Please try updating the SDK to the latest version:
https://github.com/QuickBlox/quickblox-javascript-sdk/releases/tag/2.13.10

Also, please try using our updated sample:
https://github.com/QuickBlox/quickblox-javascript-sdk/tree/gh-pages/samples/webrtc

@ghost
Copy link

ghost commented Dec 7, 2021

The issue is being closed as outdated.

If it is still relevant, feel free to open a new issue.

@ghost ghost closed this as completed Dec 7, 2021
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant