Skip to content

Fundacio-i2CAT/i2cat_XR_MCU

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 

Repository files navigation

Sequential PC-MCU

Sequential PC-MCU is a multithreading server capable of connecting to a set of players and constructing virtual scene with their pointclouds.

Status

Linux Windows Maintenance

Description

PC-MCU is a multithreading server capable of connecting to a set of players and constructing virtual scene with their pointclouds. In order to do so this framework has been divided into three main modules:

1.- Acquisition: This module is devoted the acquisition of frame flows coming from of connected session players. Its main duties are then:

○ Connection to session players. The technology to do so is by means of socket.io technology against an outer orchestrator. ○ Reception of incoming frame flow. Again, we use socket.io as communication technology. ○ Decoding of input frame flow. Current PC-MCU version only deals with cwi codecs but the implementation allow any other codec format assuming there is a conversion between frame formats.

2.-Storage: This module is devoted to the storage of incoming geometry. Every time a new player is connected to PC-MCU a new mcu player is created, which is responsible of processing player events (mainly player position). Each player comes with a geometry container which stores a fixed number of last frames. Because current codec implementation demmands wolrd coordinates, this geometry container stores transformed geometry into world coordinates.

3.-Scene Builiding: Every player (consumer) is attached to a scene builder, which is in charge of of collecting latest received frames of each visible player. For doing so we have the following steps:

○ Resove visble players: given a set of session players, resolve those who are i nsight given a frustrum that characterizes our camera. ○ Collect the latest frame of each visible player. Perform a fusion of the geometry set. ○ Encode the resulting scene.# Pre-requisites

The following are the main highlights within PC-MCU:

● This system runs in Windows and Linux OS (has been tested under Windows10 and Ubuntu 12.0 LTS) ● It depends upon a running session orchestrator against which it stablishes a socket.io connection. ● Depends on a set of external libraries self contained inside the bundle. ● It is build using cmake and Visual studio for Windows and gcc for linux. ● The main programming language employed is C++ for binary and Perl for scripts. ● The main framework employed is CWI pointcloud compression library and its dependencies.

Install

In order to generate PC-MCU project, you need CMake 3.13 or newer. You can download the latest version at this link:

https://cmake.org/download/[](https://github.com/jaumeMA/ddk#installing-perl)

Just launch the installer and follow the instructions. Installing Perl

In order to generate CMake scripts, you need Perl. You can download the latest version at ActiveState website:

https://www.activestate.com/products/perl/downloads/[](https://github.com/jaumeMA/ddk#preconditions)[](https://github.com/jaumeMA/ddk#building-the-project)

Just launch the installer and follow the instructions.# Technical description (molt bàsica)

Project

This code has been developed within the research / innovation project CISCO XR-MCU.

This project has received funding from the CISCO research Gifts program In the following link you'll find some information about the program: https://research.cisco.com/research-gifts

Copyright

This code has been developed by Fundació Privada Internet i Innovació Digital a Catalunya (i2CAT). i2CAT is a non-profit research and innovation centre that promotes mission-driven knowledge to solve business challenges, co-create solutions with a transformative impact, empower citizens through open and participative digital social innovation with territorial capillarity, and promote pioneering and strategic initiatives. i2CAT aims to transfer research project results to private companies in order to create social and economic impact via the out-licensing of intellectual property and the creation of spin-offs. Find more information of i2CAT projects and IP rights at https://i2cat.net/tech-transfer/

Licence

This code is licensed under the terms AGPL license. Information about the license can be located at local file license.text. If you find that this license doesn't fit with your requirements regarding the use, distribution or redistribution of our code for your specific work, please, don’t hesitate to contact the intellectual property managers in i2CAT at the following address: techtransfer@i2cat.net Also, in the following page you’ll find more information about the current commercialization status or other licensees: Enllaç a la pàgina web de l’asset (si existeix).

Enllaços externs

https://www.gnu.org/licenses/gpl-3.0.html

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published