New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 686756 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug

Blocking:
issue 616098



Sign in to add a comment

There is currently no way to tell apart various streams of a RealSense, or composite camera in general

Project Member Reported by martina....@intel.com, Jan 30 2017

Issue description

I'm testing out the Intel Realsense camera, which creates 3 streams - RGB, depth and infrared. When I print the MediaDeviceInfo data, the label is the same for all of them - "Intel RealSense 3D Camera R200 (8086:0a80)". The only difference is the deviceId. I thought I could at least rely on the order - that the RGB camera would be first in the list. However, with the recent master build, the RGB camera was moved to the third position, so I guess that's not guaranteed. Now I have no easy way to tell them apart, except to look at them.

Question is, where can this information be detected? Is the driver for the camera not providing sufficient information? Or is it being lost somewhere?
 
Blocking: 616098
Owner: aleksand...@intel.com
Status: Assigned (was: Untriaged)
I was just about to submit a patch about the issue.
Defined in spec [1] as videoKind.
[1]
https://w3c.github.io/mediacapture-depth/#constrainable-properties

Labels: -Type-Bug Type-Feature
bug/feature - work on API implementation is ongoing.
Project Member

Comment 3 by bugdroid1@chromium.org, Feb 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/28ea8a96d0788781f3ef06053c921d8e740a30ef

commit 28ea8a96d0788781f3ef06053c921d8e740a30ef
Author: aleksandar.stojiljkovic <aleksandar.stojiljkovic@intel.com>
Date: Tue Feb 14 13:31:15 2017

Media Capture Depth Stream Extensions API: videoKind settings and constraint.

This enables selection of depth stream on Linux; both color and
depth device have the same Label and it is not possible to apart
depth from color stream ( https://crbug.com/686756 ).

Under experimental MediaCaptureDepth feature, implements [1]:

partial dictionary MediaTrackConstraintSet {
    ConstrainDOMString videoKind;
};

and constraining logic applying it to MediaStreamTrack object.

partial dictionary MediaTrackSettings {
    DOMString videoKind;
};

This patch is verified to work with fake capture device and RealSense SR300.

[1]
https://w3c.github.io/mediacapture-depth/#mediatracksettings-dictionary

BUG= 686756 , 616098

Review-Url: https://codereview.chromium.org/2664673002
Cr-Commit-Position: refs/heads/master@{#450335}

[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/content/browser/webrtc/webrtc_depth_capture_browsertest.cc
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/content/renderer/media/media_stream_constraints_util_video_source.cc
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/content/renderer/media/media_stream_constraints_util_video_source.h
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/content/renderer/media/media_stream_constraints_util_video_source_unittest.cc
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/content/renderer/media/media_stream_video_source.cc
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/content/renderer/media/media_stream_video_track.cc
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/content/test/data/media/depth_stream_test_utilities.js
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/content/test/data/media/getusermedia-depth-capture.html
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/third_party/WebKit/Source/modules/mediastream/MediaConstraintsImpl.cpp
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.cpp
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/third_party/WebKit/Source/modules/mediastream/MediaTrackConstraintSet.idl
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/third_party/WebKit/Source/modules/mediastream/MediaTrackSettings.idl
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/third_party/WebKit/Source/modules/mediastream/MediaTrackSupportedConstraints.idl
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/third_party/WebKit/Source/platform/exported/WebMediaConstraints.cpp
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/third_party/WebKit/public/platform/WebMediaConstraints.h
[modify] https://crrev.com/28ea8a96d0788781f3ef06053c921d8e740a30ef/third_party/WebKit/public/platform/WebMediaStreamTrack.h

Status: Fixed (was: Assigned)
Labels: -OS-All OS-Linux
Status: Started (was: Fixed)
There is way to fix the issue with name; three devices shouldn't probably display the same name: Intel RealSense 3D Camera R200 (8086:0a80).

The issue is Linux only: Windows displays names: Intel RealSense 3D Camera R200 Depth, Intel RealSense 3D Camera R200 Infrared and Intel RealSense 3D Camera R200 RGB.

There is a way to get the name of the device:
e.g.

/sys/class/video4linux/video1/device/interface:
Intel(R) RealSense(TM) Camera SR300 RGB

/sys/class/video4linux/video2/device/interface:
Intel(R) RealSense(TM) Camera SR300 Depth 

I'll start work on a patch for this.

Comment 6 Deleted

The patch https://chromium-review.googlesource.com/c/572901/ fixes it; Razer Stargazer camera devices names look like on the attached before-after screenshot.
Note: also previously displayed name looks incorrect (as it used to show "Intel(R) RealSense(TM) Camera S" instead of "Intel(R) RealSense(TM) Camera SR300")


before-after.png
154 KB View Download
Project Member

Comment 8 by bugdroid1@chromium.org, Aug 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ed7555f98074e69a08a0fe4cf03dccb421d7fa6c

commit ed7555f98074e69a08a0fe4cf03dccb421d7fa6c
Author: Aleksandar Stojiljkovic <aleksandar.stojiljkovic@intel.com>
Date: Fri Aug 11 13:27:16 2017

Media Capture Depth Stream Extensions: split videoKind feature.

Split videoKind from MediaCaptureDepth to MediaCaptureDepthVideoKind
feature in order to ship it sooner then the other Media Capture Depth
stream API extensions.

videoKind is important as it enables constraining query (getUserMedia)
to depth stream - see https://codereview.chromium.org/2664673002/

BUG= 686756 , 616098

Change-Id: I4cca58d763278bbe74d693a2a2ff4b6801a4d126
Reviewed-on: https://chromium-review.googlesource.com/608067
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Aleksandar Stojiljkovic <aleksandar.stojiljkovic@intel.com>
Cr-Commit-Position: refs/heads/master@{#493711}
[modify] https://crrev.com/ed7555f98074e69a08a0fe4cf03dccb421d7fa6c/content/browser/webrtc/webrtc_depth_capture_browsertest.cc
[modify] https://crrev.com/ed7555f98074e69a08a0fe4cf03dccb421d7fa6c/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.cpp
[modify] https://crrev.com/ed7555f98074e69a08a0fe4cf03dccb421d7fa6c/third_party/WebKit/Source/modules/mediastream/MediaTrackConstraintSet.idl
[modify] https://crrev.com/ed7555f98074e69a08a0fe4cf03dccb421d7fa6c/third_party/WebKit/Source/modules/mediastream/MediaTrackSettings.idl
[modify] https://crrev.com/ed7555f98074e69a08a0fe4cf03dccb421d7fa6c/third_party/WebKit/Source/modules/mediastream/MediaTrackSupportedConstraints.idl
[modify] https://crrev.com/ed7555f98074e69a08a0fe4cf03dccb421d7fa6c/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.json5

Labels: -Type-Feature Type-Bug
Summary: There is currently no way to tell apart various streams of a RealSense, or composite camera in general (was: There is currently no way to tell apart various streams of a RealSense camera)
Changing the title and type as part of the problem is about multiple capture (sub)devices of composite camera having the same name on Linux. On Windows, this works properly (#5).
Project Member

Comment 11 by bugdroid1@chromium.org, Aug 16 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/321698ec2bac6234a1622b398a2e43504cfb80c7

commit 321698ec2bac6234a1622b398a2e43504cfb80c7
Author: Aleksandar Stojiljkovic <aleksandar.stojiljkovic@intel.com>
Date: Wed Aug 16 19:48:02 2017

Fix ambiguity with names of composited video capture devices

Webcams with multiple cameras on single device would display all
of them with the same name on Linux. This makes it look like on
Windows; using different sub cameras names.

BUG= 686756 

Change-Id: Ib717e7dd8f375ad71cfa1ea7ac19cec02337e94d
Reviewed-on: https://chromium-review.googlesource.com/572901
Commit-Queue: Aleksandar Stojiljkovic <aleksandar.stojiljkovic@intel.com>
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Christian Fremerey <chfremer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#494905}
[modify] https://crrev.com/321698ec2bac6234a1622b398a2e43504cfb80c7/media/capture/video/linux/video_capture_device_factory_linux.cc
[modify] https://crrev.com/321698ec2bac6234a1622b398a2e43504cfb80c7/media/capture/video/linux/video_capture_device_factory_linux.h

Status: Fixed (was: Started)

Sign in to add a comment