Contact emails
dongseo...@intel.com, ningx...@intel.com, robert....@intel.com, harr...@intel.com, joon...@intel.com, aleksandar....@intel.com
Spec
http://w3c.github.io/mediacapture-depth/
In the Editor's Draft phase.
Summary
Media Capture Depth Stream Extensions enables to use depth stream camera.
Motivation
Depth camera becomes an area of intense research and developer interest recently, following the efforts of Realsense camera to cost-effective hardware to developers and eventually consumers. Several large tech companies released depth camera development kits such as Tango by Google, and Kinect and HoloLens by Microsoft.
Web developers are eager to experiment with this new medium but since the web lacks native support existing efforts have centered around plugins or downstream chromium changes. Native support of depth stream encourages Web developers to create next immersive experience. For example, WebVR experience on the top of real world space reconstructed by depth camera.
Interoperability and Compatibility Risk
Since the technology behind this feature is fairly new some standards and best practices are still being formulated. However, the spec is designed to provide calibrated depth stream to developers as hiding implementation details behind the API. The spec explicitly defines “The rendering of the a video stream track and a depth stream track are intended to be synchronized. The resolution of the two tracks are intended to be same. And the coordination of the two tracks are intended to be calibrated.”. So the API isn’t affected by supporting another depth camera.
In detail, there are two available depth cameras in the market such as Intel Realsense and Microsoft Kinect. Both have different distortion and calibration model, but the spec will remain stable as the spec delegates all calibration details to each browser. Developers will get a synchronized depth and color stream in a Cartesian coordinate after all necessary post-processing by a browser implementation.
With that in mind the intent is produce an experimental API that remains behind a flag until industry trends have indicated a clear trajectory. In the meantime the API should remain flexible to allow developers to experiment and provide feedback about what is required for and effective depth camera experience, but also allow the browser react to changes in the depth camera landscape quickly and without concern for breaking existing content.
Ongoing technical constraints
None.
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes.
OWP launch tracking bug
Link to entry on the feature dashboard
https://www.chromestatus.com/feature/5713419084759040
Requesting approval to ship?
NoThis sounds exciting to me! Certainly sounds reasonable to implement (maybe even a good fit for an origin trial at some point?).
As always shipping decisions will depend on the interop risk (signals from other vendors etc.).