SlideShare a Scribd company logo
OSCC 2019
VOIP DEVELOPMENT FOR OPENSIM
FRANK RULOF
SETH NYGARD
2
The need for an “Other” VOIP application
▌ Have multiple VoIP providers because
Mostly Non-Public users require other VoIP services then the standard offered
- Privacy reasons
- Business reasons
- Security reasons
In General
- it’s good to have multiple VoIP options in case one falls away
▌ Starting requirements :
Need spatial audio
Must be Open Source
Integration with OpenSim must be possible
3
The need for an “Other” VOIP application
▌ Use cases
Vivox is a third-party unencrypted voice that could be intercepted from a security
perspective.
VOIP services should not go via a public VOIP provider dependent on the information
that is shared.
- Training examples are
– All training that contains private information of the participants
– Military training in general
- Business examples are
– Meetings that should be kept internal to the company (company private information)
– Which contain company competition sensitive information
4
The need for an “Other” VOIP application
▌ Use cases
- Security examples are
– Meetings where health of persons is discussed
– Any meetings where sensitive private issues of people are discussed (Banks , Court)
– Any meeting which contains classified information (government, military …., examples MOSES and
Thales)
– In-world counseling and education in the US FERPA and HIPPA compliance must be met - this
applies to European laws as well
▌ Cost perspective
The cost to set up your own VOIP service would be less expensive.
▌ Echo Voice delivers an integrated encrypted audio stream solution with
OpenSim/Scenegate Viewer under the control of the Grid/Region Owner.
5
Viewer
Client PC (W10)
Whisper
Connection requests
Device settings
3D positions
Participant Notifications
Speaker indication
Device lists
OpenSim Murmur
Server (UBUNTU)
Avatar Positions
Connection credentials
Connection request
Connection Ack
Participant to channel
Acknowledgment
Register Users
Shift Users to Channels
Vivox client API
SL protocol
Murmur API
Murmur protocol
The initial set-up made on Thales local network
6
Solution
▌ Open source VoIP server ( based upon mumble/murmur)
▌ Which Provides
Spatial audio
Better noise cancellation
Parcel Audio
Encrypted audio streams
Self Hosting and lower cost
▌ Not supported yet
IM Audio via the VoIP
Group Audio via the VoIP
Apple and Linux viewers
We name the application Echo Voice Based
named after the Greek goddess echo
7
Current Roadmap road map for Echo
▌ Package build modernization
Current application is built using very old libraries and parts of which some of them even
became obsolete
Has no functional changes but is refactored to modern software packages
Improved security and need for compliance with GDRP
Considerations for public and Hypergrid Open Simulator regions
Considerations for off-line voice chat channels
Support Apple and Linux viewers
▌ Provide IM VoIP in world
Add voice in IM to allow private audio between two avatars
▌ Provide Group VoIP in world
Add voice in IM to allow private audio in groups
▌ Investigate Text to Speech in real time and Speech to Text functionality on
the viewer audio channel
8
Current Roadmap road map for Echo
▌ Current selection of VoIP providers in the SceneGate viewers
Currently viewers and OpenSim do support VIVOX/FreeSwitch as VOIP sources
With a trick the murmur based VOIP is added to the configuration
What to add
- Others may want to connect their own VoIP service so OpenSim (HELIOS) and the
SceneGate viewer would allow multiple VoIP services to select from
- Be able to menu select the VoIP service that will be used
▌ VOIP communication between non-avatars and avatars,
This would allow users that are not able to join with a viewer to still be part of the in-world
voice exchange. These changes include voice in public, in IM and in group IM. Clients
could be web-linked or available mumble clients.
Thought should be given to how to represent those non-avatars in world.
9
Development steps made till now
▌ (step 1) : vComm in Switzerland did the initial job to create a possible
instance for OpenSim
vComm has had it working for quite some time in their own modified OpenSim instance
and viewer Aula (makes it proprietary).
Thales worked together with vComm to bring the solution to the Open Source community
on the existing OpenSim development line.
▌ (step 2) : Thales created a working solution on her own intranet with the
possibility to build the different applications for the viewer/server set-up
▌ (step 3) : IMA extended the work of Thales by testing it for deploying the
VOIP service over the internet and provide the framework to supply it to the
community.
10
Current and future development
▌If your interested in joining the development
team please let us know, would like to extend
the development team to realize the roadmap
and the community wishes
11
Current Status of development
▌ Development ongoing to realize an internet-based solution as soon as
possible
▌ Already looking at step one (“Package build modernization”) of the
roadmap
▌ Topics in development
Component overview of the internet-based solution
Component characteristics
Development process
12
Mumble
Client
Viewer
Echo Voice
Bridge
Echo Voice
Add-on
ZeroC ICE
TCP/UDPScene
Murmur
Server
Open
Simulator
Region
Component overview
13
Mumble Features
- low latency + noise reduction + proven codec(s) = high quality voice
- encrypted voice and control channels = improved privacy
- open source project with large user base
- support for Windows, Linux, and Mac OS operating systems
- existing, well documented project with an active development team
- spatial volume control = good immersion in 3D world
Echo Voice Components
14
Echo Voice Components
Echo Voice Bridge
- emulates SLVoice.exe command line
- support for Windows, Linux, and Mac OS operating systems
- written in modern C++
- a single install can be used with multiple viewers
- works as a transparent TCP proxy
- supports modified mumble client and original Vivox SLVoice.exe
- currently working with Firestorm, Alchemy, and Singularity viewers
- works with 32 and 64 bit viewers
15
Echo Voice Components
Murmur Overview
Murmur
Server
Open Simulator
Region Instance
+ Add-on module
Database
Voice Users
Monitoring Tools
Future Tools
ZeroC ICE
ZeroC ICE
SQL
ZeroC ICE
- Murmur can be installed on the grid, region, and/or separate server
- Multiple instances can be installed on the same server if desired
- ZeroC ICE supports firewalls to provide secure control links
16
Echo Voice Components
Bridge - Initial
EchoVoice
Bridge
Transparent
TCP Proxy
Viewer
SLVoice
Vivox Agent
EchoVoice
Mumble Agent
XML
XML
XML
- user selected operating mode: Vivox or Mumble
- works with old Mumble version 1.2.1 + Vcomm and new modifications
17
Echo Voice Components
Bridge - Future
EchoVoice
Bridge
XML
Abstraction
TCP Proxy
Viewer
SLVoice
Vivox Agent
EchoVoice
Mumble Agent
Control API
XML
XML
Mumble Link
- auto selected operating mode: Vivox or Mumble
- refactor for compatibility with current and future Mumble versions
- future support for other voice agents
- future possible integration into viewer source code if desired
18
- Determine community requirements
- Review previous and existing works
- Create working base-line(s)
01Investigation
02Design/Development
- Setup working public demo/test regions
- Document installation, usage, and build
- Provide downloads and links to community
03Deployment
- Determine practical improvements
- Invite developers and testers
- Proof-of-concept and ongoing testing
- Write code and unit testing
- Feature road map
Current development process
19
Thank you for your attention
Panel Discussion
Frank Rulof - frank.rulof@hotmail.com
Seth Nygard - sethnygard@gmail.com
Lisa Laxton - lisa@infinitemetaverse.com

More Related Content

What's hot

Monitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHELMonitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHEL
Alessandro Silva
 
게임에서 흔히 쓰이는 최적화 전략 by 엄윤섭 @ 지스타 컨퍼런스 2013
게임에서 흔히 쓰이는 최적화 전략 by 엄윤섭 @ 지스타 컨퍼런스 2013게임에서 흔히 쓰이는 최적화 전략 by 엄윤섭 @ 지스타 컨퍼런스 2013
게임에서 흔히 쓰이는 최적화 전략 by 엄윤섭 @ 지스타 컨퍼런스 2013영욱 오
 
[IGC2018] 왓스튜디오 방영훈 - 놀면서공부하기
[IGC2018] 왓스튜디오 방영훈 - 놀면서공부하기[IGC2018] 왓스튜디오 방영훈 - 놀면서공부하기
[IGC2018] 왓스튜디오 방영훈 - 놀면서공부하기
강 민우
 
Plano cinematógrafico
Plano cinematógraficoPlano cinematógrafico
Plano cinematógrafico
Camila Silva Fernandes
 
Microfonando um coral revisado
Microfonando um coral  revisadoMicrofonando um coral  revisado
Microfonando um coral revisado
Miliane Melissa Vergasta
 
Monitoring the ELK stack using Zabbix and Grafana (Dennis Kanbier / 26-11-2015)
Monitoring the ELK stack using Zabbix and Grafana (Dennis Kanbier / 26-11-2015)Monitoring the ELK stack using Zabbix and Grafana (Dennis Kanbier / 26-11-2015)
Monitoring the ELK stack using Zabbix and Grafana (Dennis Kanbier / 26-11-2015)
Nederlandstalige Zabbix Gebruikersgroep
 
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
MinGeun Park
 
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
Alexei Vladishev - Zabbix - Monitoring Solution for EveryoneAlexei Vladishev - Zabbix - Monitoring Solution for Everyone
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
Zabbix
 
Windows server2016 presentation
Windows server2016 presentation Windows server2016 presentation
Windows server2016 presentation
☁️Seyfallah Tagrerout☁ [MVP]
 
오픈스택 기반 클라우드 서비스 구축 방안 및 사례
오픈스택 기반 클라우드 서비스 구축 방안 및 사례오픈스택 기반 클라우드 서비스 구축 방안 및 사례
오픈스택 기반 클라우드 서비스 구축 방안 및 사례
SONG INSEOB
 
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
Heungsub Lee
 
[야생의 땅: 듀랑고] 서버 아키텍처 Vol. 2 (자막)
[야생의 땅: 듀랑고] 서버 아키텍처 Vol. 2 (자막)[야생의 땅: 듀랑고] 서버 아키텍처 Vol. 2 (자막)
[야생의 땅: 듀랑고] 서버 아키텍처 Vol. 2 (자막)
Heungsub Lee
 
Trajectory generation for Servo motor drives
Trajectory generation for Servo motor drivesTrajectory generation for Servo motor drives
Trajectory generation for Servo motor drives
anusheel nahar
 
Paul Angus - CloudStack Backup and Recovery Framework
Paul Angus - CloudStack Backup and Recovery FrameworkPaul Angus - CloudStack Backup and Recovery Framework
Paul Angus - CloudStack Backup and Recovery Framework
ShapeBlue
 
[Unite2015 박민근] 유니티 최적화 테크닉 총정리
[Unite2015 박민근] 유니티 최적화 테크닉 총정리[Unite2015 박민근] 유니티 최적화 테크닉 총정리
[Unite2015 박민근] 유니티 최적화 테크닉 총정리
MinGeun Park
 
GCGC- CGCII 서버 엔진에 적용된 기술 (5) - Executor with Exception
GCGC- CGCII 서버 엔진에 적용된 기술 (5) - Executor with ExceptionGCGC- CGCII 서버 엔진에 적용된 기술 (5) - Executor with Exception
GCGC- CGCII 서버 엔진에 적용된 기술 (5) - Executor with Exception
상현 조
 
Ndc11 이창희_hdr
Ndc11 이창희_hdrNdc11 이창희_hdr
Ndc11 이창희_hdr
changehee lee
 
Nx_-_02_-_Nitrox_Confirme.pptx
Nx_-_02_-_Nitrox_Confirme.pptxNx_-_02_-_Nitrox_Confirme.pptx
Nx_-_02_-_Nitrox_Confirme.pptx
Philippe Jourdren
 

What's hot (20)

Monitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHELMonitoramento Enterprise com Zabbix+RHEL
Monitoramento Enterprise com Zabbix+RHEL
 
게임에서 흔히 쓰이는 최적화 전략 by 엄윤섭 @ 지스타 컨퍼런스 2013
게임에서 흔히 쓰이는 최적화 전략 by 엄윤섭 @ 지스타 컨퍼런스 2013게임에서 흔히 쓰이는 최적화 전략 by 엄윤섭 @ 지스타 컨퍼런스 2013
게임에서 흔히 쓰이는 최적화 전략 by 엄윤섭 @ 지스타 컨퍼런스 2013
 
Planos
PlanosPlanos
Planos
 
[IGC2018] 왓스튜디오 방영훈 - 놀면서공부하기
[IGC2018] 왓스튜디오 방영훈 - 놀면서공부하기[IGC2018] 왓스튜디오 방영훈 - 놀면서공부하기
[IGC2018] 왓스튜디오 방영훈 - 놀면서공부하기
 
Plano cinematógrafico
Plano cinematógraficoPlano cinematógrafico
Plano cinematógrafico
 
Microfonando um coral revisado
Microfonando um coral  revisadoMicrofonando um coral  revisado
Microfonando um coral revisado
 
Monitoring the ELK stack using Zabbix and Grafana (Dennis Kanbier / 26-11-2015)
Monitoring the ELK stack using Zabbix and Grafana (Dennis Kanbier / 26-11-2015)Monitoring the ELK stack using Zabbix and Grafana (Dennis Kanbier / 26-11-2015)
Monitoring the ELK stack using Zabbix and Grafana (Dennis Kanbier / 26-11-2015)
 
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
[150124 박민근] 모바일 게임 개발에서 루아 스크립트 활용하기
 
Clonezilla Server linux
Clonezilla Server linuxClonezilla Server linux
Clonezilla Server linux
 
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
Alexei Vladishev - Zabbix - Monitoring Solution for EveryoneAlexei Vladishev - Zabbix - Monitoring Solution for Everyone
Alexei Vladishev - Zabbix - Monitoring Solution for Everyone
 
Windows server2016 presentation
Windows server2016 presentation Windows server2016 presentation
Windows server2016 presentation
 
오픈스택 기반 클라우드 서비스 구축 방안 및 사례
오픈스택 기반 클라우드 서비스 구축 방안 및 사례오픈스택 기반 클라우드 서비스 구축 방안 및 사례
오픈스택 기반 클라우드 서비스 구축 방안 및 사례
 
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
 
[야생의 땅: 듀랑고] 서버 아키텍처 Vol. 2 (자막)
[야생의 땅: 듀랑고] 서버 아키텍처 Vol. 2 (자막)[야생의 땅: 듀랑고] 서버 아키텍처 Vol. 2 (자막)
[야생의 땅: 듀랑고] 서버 아키텍처 Vol. 2 (자막)
 
Trajectory generation for Servo motor drives
Trajectory generation for Servo motor drivesTrajectory generation for Servo motor drives
Trajectory generation for Servo motor drives
 
Paul Angus - CloudStack Backup and Recovery Framework
Paul Angus - CloudStack Backup and Recovery FrameworkPaul Angus - CloudStack Backup and Recovery Framework
Paul Angus - CloudStack Backup and Recovery Framework
 
[Unite2015 박민근] 유니티 최적화 테크닉 총정리
[Unite2015 박민근] 유니티 최적화 테크닉 총정리[Unite2015 박민근] 유니티 최적화 테크닉 총정리
[Unite2015 박민근] 유니티 최적화 테크닉 총정리
 
GCGC- CGCII 서버 엔진에 적용된 기술 (5) - Executor with Exception
GCGC- CGCII 서버 엔진에 적용된 기술 (5) - Executor with ExceptionGCGC- CGCII 서버 엔진에 적용된 기술 (5) - Executor with Exception
GCGC- CGCII 서버 엔진에 적용된 기술 (5) - Executor with Exception
 
Ndc11 이창희_hdr
Ndc11 이창희_hdrNdc11 이창희_hdr
Ndc11 이창희_hdr
 
Nx_-_02_-_Nitrox_Confirme.pptx
Nx_-_02_-_Nitrox_Confirme.pptxNx_-_02_-_Nitrox_Confirme.pptx
Nx_-_02_-_Nitrox_Confirme.pptx
 

Similar to IMA/Thales EchoVoice (VOIP) for OpenSimulator Presentation at OSCC19

NGNlab - The Deployment of an Open-Source Infrastructure
NGNlab - The Deployment of an Open-Source InfrastructureNGNlab - The Deployment of an Open-Source Infrastructure
NGNlab - The Deployment of an Open-Source Infrastructure
Sebastian Schumann
 
SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...
SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...
SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...
Brad Fortner
 
10.1.1.510.6198
10.1.1.510.619810.1.1.510.6198
10.1.1.510.6198
trabalhodotcorreio
 
Introduction to FreeSWITCH
Introduction to FreeSWITCHIntroduction to FreeSWITCH
Introduction to FreeSWITCH
Chien Cheng Wu
 
VoIP
VoIPVoIP
VOIP Design & Implementation
VOIP Design & ImplementationVOIP Design & Implementation
VOIP Design & Implementation
Ahmed A. Arefin
 
Innovation for Participation - Paul De Decker, Sun Microsystems
Innovation for Participation - Paul De Decker, Sun MicrosystemsInnovation for Participation - Paul De Decker, Sun Microsystems
Innovation for Participation - Paul De Decker, Sun Microsystemsrobinwauters
 
ON.LAB Mininet
ON.LAB MininetON.LAB Mininet
ON.LAB Mininet
Isabelle Guis
 
Open Source in the Enterprise
Open Source in the EnterpriseOpen Source in the Enterprise
Open Source in the Enterprise
Social Media Performance Group
 
Fire at Net Futures2015
Fire at Net Futures2015Fire at Net Futures2015
BP503 IBM Connect 2014
BP503 IBM Connect 2014BP503 IBM Connect 2014
BP503 IBM Connect 2014
Peter Lurie
 
Service Scenarios and Learnings from the Belgacom EasyHome Lab - Bernard Boël...
Service Scenarios and Learnings from the Belgacom EasyHome Lab - Bernard Boël...Service Scenarios and Learnings from the Belgacom EasyHome Lab - Bernard Boël...
Service Scenarios and Learnings from the Belgacom EasyHome Lab - Bernard Boël...
mfrancis
 
Workshop oracle
Workshop oracleWorkshop oracle
Workshop oracle
Douglas Tait
 
Open Source Telecom Software Landscape by Alan Quayle
Open Source Telecom Software Landscape by Alan QuayleOpen Source Telecom Software Landscape by Alan Quayle
Open Source Telecom Software Landscape by Alan Quayle
Alan Quayle
 
JMP206 : Calling Home: Enabling the IBM Sametime Softphone in ST9
JMP206 : Calling Home: Enabling the IBM Sametime Softphone in ST9JMP206 : Calling Home: Enabling the IBM Sametime Softphone in ST9
JMP206 : Calling Home: Enabling the IBM Sametime Softphone in ST9
Keith Brooks
 
Performance Analysis of VoIP by Communicating Two Systems
Performance Analysis of VoIP by Communicating Two Systems Performance Analysis of VoIP by Communicating Two Systems
Performance Analysis of VoIP by Communicating Two Systems
IOSR Journals
 
AN OVERVIEW OF VOICE OVER INTERNET PROTOCOL (VOIP
AN OVERVIEW OF VOICE OVER INTERNET PROTOCOL (VOIPAN OVERVIEW OF VOICE OVER INTERNET PROTOCOL (VOIP
AN OVERVIEW OF VOICE OVER INTERNET PROTOCOL (VOIP
Sean Flores
 
From the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian FoundationFrom the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian Foundation
David Wood
 
Arneb
ArnebArneb

Similar to IMA/Thales EchoVoice (VOIP) for OpenSimulator Presentation at OSCC19 (20)

NGNlab - The Deployment of an Open-Source Infrastructure
NGNlab - The Deployment of an Open-Source InfrastructureNGNlab - The Deployment of an Open-Source Infrastructure
NGNlab - The Deployment of an Open-Source Infrastructure
 
SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...
SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...
SMPTE Toronto Presentation - Open-Source Software In Broadcasting: The Power ...
 
10.1.1.510.6198
10.1.1.510.619810.1.1.510.6198
10.1.1.510.6198
 
Introduction to FreeSWITCH
Introduction to FreeSWITCHIntroduction to FreeSWITCH
Introduction to FreeSWITCH
 
VoIP
VoIPVoIP
VoIP
 
VOIP Design & Implementation
VOIP Design & ImplementationVOIP Design & Implementation
VOIP Design & Implementation
 
Innovation for Participation - Paul De Decker, Sun Microsystems
Innovation for Participation - Paul De Decker, Sun MicrosystemsInnovation for Participation - Paul De Decker, Sun Microsystems
Innovation for Participation - Paul De Decker, Sun Microsystems
 
ON.LAB Mininet
ON.LAB MininetON.LAB Mininet
ON.LAB Mininet
 
Open Source in the Enterprise
Open Source in the EnterpriseOpen Source in the Enterprise
Open Source in the Enterprise
 
Ospf
OspfOspf
Ospf
 
Fire at Net Futures2015
Fire at Net Futures2015Fire at Net Futures2015
Fire at Net Futures2015
 
BP503 IBM Connect 2014
BP503 IBM Connect 2014BP503 IBM Connect 2014
BP503 IBM Connect 2014
 
Service Scenarios and Learnings from the Belgacom EasyHome Lab - Bernard Boël...
Service Scenarios and Learnings from the Belgacom EasyHome Lab - Bernard Boël...Service Scenarios and Learnings from the Belgacom EasyHome Lab - Bernard Boël...
Service Scenarios and Learnings from the Belgacom EasyHome Lab - Bernard Boël...
 
Workshop oracle
Workshop oracleWorkshop oracle
Workshop oracle
 
Open Source Telecom Software Landscape by Alan Quayle
Open Source Telecom Software Landscape by Alan QuayleOpen Source Telecom Software Landscape by Alan Quayle
Open Source Telecom Software Landscape by Alan Quayle
 
JMP206 : Calling Home: Enabling the IBM Sametime Softphone in ST9
JMP206 : Calling Home: Enabling the IBM Sametime Softphone in ST9JMP206 : Calling Home: Enabling the IBM Sametime Softphone in ST9
JMP206 : Calling Home: Enabling the IBM Sametime Softphone in ST9
 
Performance Analysis of VoIP by Communicating Two Systems
Performance Analysis of VoIP by Communicating Two Systems Performance Analysis of VoIP by Communicating Two Systems
Performance Analysis of VoIP by Communicating Two Systems
 
AN OVERVIEW OF VOICE OVER INTERNET PROTOCOL (VOIP
AN OVERVIEW OF VOICE OVER INTERNET PROTOCOL (VOIPAN OVERVIEW OF VOICE OVER INTERNET PROTOCOL (VOIP
AN OVERVIEW OF VOICE OVER INTERNET PROTOCOL (VOIP
 
From the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian FoundationFrom the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian Foundation
 
Arneb
ArnebArneb
Arneb
 

Recently uploaded

Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
aqil azizi
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
Aditya Rajan Patra
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
MdTanvirMahtab2
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation & Control
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
Kamal Acharya
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Soumen Santra
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
AmarGB2
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
ydteq
 
Basic Industrial Engineering terms for apparel
Basic Industrial Engineering terms for apparelBasic Industrial Engineering terms for apparel
Basic Industrial Engineering terms for apparel
top1002
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
ssuser7dcef0
 
DESIGN AND ANALYSIS OF A CAR SHOWROOM USING E TABS
DESIGN AND ANALYSIS OF A CAR SHOWROOM USING E TABSDESIGN AND ANALYSIS OF A CAR SHOWROOM USING E TABS
DESIGN AND ANALYSIS OF A CAR SHOWROOM USING E TABS
itech2017
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
SUTEJAS
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
Osamah Alsalih
 
Forklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella PartsForklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella Parts
Intella Parts
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 

Recently uploaded (20)

Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
 
Basic Industrial Engineering terms for apparel
Basic Industrial Engineering terms for apparelBasic Industrial Engineering terms for apparel
Basic Industrial Engineering terms for apparel
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
 
DESIGN AND ANALYSIS OF A CAR SHOWROOM USING E TABS
DESIGN AND ANALYSIS OF A CAR SHOWROOM USING E TABSDESIGN AND ANALYSIS OF A CAR SHOWROOM USING E TABS
DESIGN AND ANALYSIS OF A CAR SHOWROOM USING E TABS
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
 
Forklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella PartsForklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella Parts
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 

IMA/Thales EchoVoice (VOIP) for OpenSimulator Presentation at OSCC19

  • 1. OSCC 2019 VOIP DEVELOPMENT FOR OPENSIM FRANK RULOF SETH NYGARD
  • 2. 2 The need for an “Other” VOIP application ▌ Have multiple VoIP providers because Mostly Non-Public users require other VoIP services then the standard offered - Privacy reasons - Business reasons - Security reasons In General - it’s good to have multiple VoIP options in case one falls away ▌ Starting requirements : Need spatial audio Must be Open Source Integration with OpenSim must be possible
  • 3. 3 The need for an “Other” VOIP application ▌ Use cases Vivox is a third-party unencrypted voice that could be intercepted from a security perspective. VOIP services should not go via a public VOIP provider dependent on the information that is shared. - Training examples are – All training that contains private information of the participants – Military training in general - Business examples are – Meetings that should be kept internal to the company (company private information) – Which contain company competition sensitive information
  • 4. 4 The need for an “Other” VOIP application ▌ Use cases - Security examples are – Meetings where health of persons is discussed – Any meetings where sensitive private issues of people are discussed (Banks , Court) – Any meeting which contains classified information (government, military …., examples MOSES and Thales) – In-world counseling and education in the US FERPA and HIPPA compliance must be met - this applies to European laws as well ▌ Cost perspective The cost to set up your own VOIP service would be less expensive. ▌ Echo Voice delivers an integrated encrypted audio stream solution with OpenSim/Scenegate Viewer under the control of the Grid/Region Owner.
  • 5. 5 Viewer Client PC (W10) Whisper Connection requests Device settings 3D positions Participant Notifications Speaker indication Device lists OpenSim Murmur Server (UBUNTU) Avatar Positions Connection credentials Connection request Connection Ack Participant to channel Acknowledgment Register Users Shift Users to Channels Vivox client API SL protocol Murmur API Murmur protocol The initial set-up made on Thales local network
  • 6. 6 Solution ▌ Open source VoIP server ( based upon mumble/murmur) ▌ Which Provides Spatial audio Better noise cancellation Parcel Audio Encrypted audio streams Self Hosting and lower cost ▌ Not supported yet IM Audio via the VoIP Group Audio via the VoIP Apple and Linux viewers We name the application Echo Voice Based named after the Greek goddess echo
  • 7. 7 Current Roadmap road map for Echo ▌ Package build modernization Current application is built using very old libraries and parts of which some of them even became obsolete Has no functional changes but is refactored to modern software packages Improved security and need for compliance with GDRP Considerations for public and Hypergrid Open Simulator regions Considerations for off-line voice chat channels Support Apple and Linux viewers ▌ Provide IM VoIP in world Add voice in IM to allow private audio between two avatars ▌ Provide Group VoIP in world Add voice in IM to allow private audio in groups ▌ Investigate Text to Speech in real time and Speech to Text functionality on the viewer audio channel
  • 8. 8 Current Roadmap road map for Echo ▌ Current selection of VoIP providers in the SceneGate viewers Currently viewers and OpenSim do support VIVOX/FreeSwitch as VOIP sources With a trick the murmur based VOIP is added to the configuration What to add - Others may want to connect their own VoIP service so OpenSim (HELIOS) and the SceneGate viewer would allow multiple VoIP services to select from - Be able to menu select the VoIP service that will be used ▌ VOIP communication between non-avatars and avatars, This would allow users that are not able to join with a viewer to still be part of the in-world voice exchange. These changes include voice in public, in IM and in group IM. Clients could be web-linked or available mumble clients. Thought should be given to how to represent those non-avatars in world.
  • 9. 9 Development steps made till now ▌ (step 1) : vComm in Switzerland did the initial job to create a possible instance for OpenSim vComm has had it working for quite some time in their own modified OpenSim instance and viewer Aula (makes it proprietary). Thales worked together with vComm to bring the solution to the Open Source community on the existing OpenSim development line. ▌ (step 2) : Thales created a working solution on her own intranet with the possibility to build the different applications for the viewer/server set-up ▌ (step 3) : IMA extended the work of Thales by testing it for deploying the VOIP service over the internet and provide the framework to supply it to the community.
  • 10. 10 Current and future development ▌If your interested in joining the development team please let us know, would like to extend the development team to realize the roadmap and the community wishes
  • 11. 11 Current Status of development ▌ Development ongoing to realize an internet-based solution as soon as possible ▌ Already looking at step one (“Package build modernization”) of the roadmap ▌ Topics in development Component overview of the internet-based solution Component characteristics Development process
  • 12. 12 Mumble Client Viewer Echo Voice Bridge Echo Voice Add-on ZeroC ICE TCP/UDPScene Murmur Server Open Simulator Region Component overview
  • 13. 13 Mumble Features - low latency + noise reduction + proven codec(s) = high quality voice - encrypted voice and control channels = improved privacy - open source project with large user base - support for Windows, Linux, and Mac OS operating systems - existing, well documented project with an active development team - spatial volume control = good immersion in 3D world Echo Voice Components
  • 14. 14 Echo Voice Components Echo Voice Bridge - emulates SLVoice.exe command line - support for Windows, Linux, and Mac OS operating systems - written in modern C++ - a single install can be used with multiple viewers - works as a transparent TCP proxy - supports modified mumble client and original Vivox SLVoice.exe - currently working with Firestorm, Alchemy, and Singularity viewers - works with 32 and 64 bit viewers
  • 15. 15 Echo Voice Components Murmur Overview Murmur Server Open Simulator Region Instance + Add-on module Database Voice Users Monitoring Tools Future Tools ZeroC ICE ZeroC ICE SQL ZeroC ICE - Murmur can be installed on the grid, region, and/or separate server - Multiple instances can be installed on the same server if desired - ZeroC ICE supports firewalls to provide secure control links
  • 16. 16 Echo Voice Components Bridge - Initial EchoVoice Bridge Transparent TCP Proxy Viewer SLVoice Vivox Agent EchoVoice Mumble Agent XML XML XML - user selected operating mode: Vivox or Mumble - works with old Mumble version 1.2.1 + Vcomm and new modifications
  • 17. 17 Echo Voice Components Bridge - Future EchoVoice Bridge XML Abstraction TCP Proxy Viewer SLVoice Vivox Agent EchoVoice Mumble Agent Control API XML XML Mumble Link - auto selected operating mode: Vivox or Mumble - refactor for compatibility with current and future Mumble versions - future support for other voice agents - future possible integration into viewer source code if desired
  • 18. 18 - Determine community requirements - Review previous and existing works - Create working base-line(s) 01Investigation 02Design/Development - Setup working public demo/test regions - Document installation, usage, and build - Provide downloads and links to community 03Deployment - Determine practical improvements - Invite developers and testers - Proof-of-concept and ongoing testing - Write code and unit testing - Feature road map Current development process
  • 19. 19 Thank you for your attention Panel Discussion Frank Rulof - frank.rulof@hotmail.com Seth Nygard - sethnygard@gmail.com Lisa Laxton - lisa@infinitemetaverse.com