SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
Motivation
Our Results
Summary
Real-time data streaming and motion control over the Internet
Implement real-time QoS-aware data streaming for Internet-connected things.
Andrey Nechypurenko
andreynech@gmail.com
Maksym Parkachov
mparkachov@me.com
Ultracode-Munich, April 2014
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Stream data between connected things
Problem statement
Let’s build the vehicle and control it over the Internet
As a hobby project, we start developing small vehicle equipped with on-board
computer connected to WLan adapter and web-camera. The idea was to control the
car over Internet.
Main challenges
Find or build mechanical platform
Build electronic which can:
Compress live video stream to h264 format in real-time
Support W-WLan connectivity
Have enough IO channels to control motors
Develop software which can:
Deliver video stream and sensor data to the remote driver
Receive user input such as steering and acceleration
Deliver control commands from the driver to the vehicle software and drive actuators
Support client and server NAT and firewall traversal
Provide high quality video under variable network conditions
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Stream data between connected things
Problem statement
High level system overview
The whole system software has two main tasks:
Deliver video stream and sensor data from the vehicle to the remote driver and
Deliver control commands from the driver to the vehicle software and drive vehicle
actuators.
Communication happens over the Internet where it is typical to have two firewalls
(and/or NATs) on the client and server side.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Stream data between connected things
Problem statement
Mechanic and electronic
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Stream data between connected things
Problem statement
Need for adaptive video streaming
It is important to provide constant frame rate with predictable latency to precisely
control the vehicle. Otherwise, the wall may suddenly appears ahead of the car :-) .
Negative effect of the changing network conditions leads to:
1 Delays in video stream (picture freezes).
2 Corrupted frames (because of dropped frames, etc.).
3 “Fast forward” effect when the next chunk of data arrives.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Solution - QoS aware streaming
The adaptive Quality of Service (QoS) aware streaming implementation is required to
let the driver precisely control remote vehicle.
To solve the problems mentioned above:
We constantly observe network conditions.
If sensor data could not be send fast enough, adapt to satisfy main goal.
For example, reduce video frame-rate or increase compression rate (e.g. reduce
video quality).
The core adaptation logic resides in the vehicle on-board application.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Main software modules
To provide this functionality two main modules are required:
Driver application which will be further reffered as cockpit.
Vehicle on-board application which will be reffered as vehicle.
In addition, to perform firewall traversal in the secure and efficient way, additional
application is required on the server side. In this project, ZeroC Ice open-source
middleware is used for all communication needs.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Cockpit application.
Cockpit application
Cockpit application is responsible for receiving video stream, decoding, and
visualizing it.
In addition cockpit application receives control signals from input hardware and
transmit commands to the vehicle.
Implementation is heavily multithreaded and uses graphics hardware acceleration.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Cockpit application
An OpenGL-based application to remotely control the robot manually. Sensor data
(including video from cameras) are rendered in real-time and control commands are
sent back to the vehicle.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
On-board software
The vehicle on-board application has the following responsibilities:
Receive commands (such as steering and acceleration) and control actuators.
Capture video, compress it in real-time and send to the cockpit application.
Collect statistic about network bandwidth to perform adaptation in case of
changed network conditions.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
QoS aware streaming
Use TCP instead of UDP to get better feedback about packet delivery status.
Permanently monitor the size of output queue with compressed frames to deduce
the current QoS conditions.
Define the set of states characterized by maximum and minimum queue size to
transition to the better or worth state. In addition, the time-based weight is
introduced which is calculated based on the overall time spent in certain state. It
prevents the system from permanently jumping from one state to another.
React on the state changes by dynamically adjusting frame size and codec target
bitrate (if it is supported by codec).
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Alternatives for streaming implementations
Two implementation options were
considered:
Using GStreamer RTSP server.
Custom transport protocol for RTP
payload using Ice middleware.
To make final decision, both variants were
implemented and compared.
Reasons why Ice was considered as communication solution:
Reduce complexity when implementing complex bidirectional communication.
Transparently handles cross-platform issues such as endianess.
There are two versions of Ice. IceE which has reduced footprint and easier to
cross-compile. The complete version provides the full set of functionality.
Very easy to change the communication protocol. Changing between UDP,
TCP or SSL is the matter of change endpoint description in the configuration file.
There is service application Glacier which solves firewall/NAT related problems.
Asynchronous Method Invocation (AMI) which makes possible to collect more
information about bufferization and transmission performance.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Test setup
Stream video using two alternative implementations. Use
Linux kernel trafic shaping capabilities to simulate variable
network bandwidth.
Use prerecorded video
For test purposes, we feed the prerecorded video instead of live capturing. Original file
is scaled down on the fly to make the test comparable with live streaming from
web-camera.
Decoding pipeline for cockpit application was not changed.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Test setup
Linux kernel network traffic shaping capabilities are used to restrict the available
bandwidth and see how both streaming implementations would react on it.
1 MPlayer video output window.
2 Terminal window where traffic shaping
commands are issued.
3 MPlayer console output.
4 KNemo network monitor window.
1 Cockpit application window.
2 Terminal window where traffic shaping
commands are issued.
3 Vehicle application console output.
4 KNemo network monitor window.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Important observations for RTSP server
When available bandwidth decreased
below the level required to transmit the
video with current encoding parameters
(resolution, frame rate, quality, etc.):
Communication channel is saturated.
Displayed frame rate is significantly
reduced.
No adaptation is occurred.
“Old” frames might be also dropped
which leads to lowered framerate
compared to the original video.
Concluion:
Such behavior is unacceptable for real-time streaming required to control remote
vehicle.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Important observations for VETER infrastructure
When available bandwidth decreased:
Vehicle application detects changed
networking condition.
Reacts by reducing frame size (current
implementation divides the original
size by the power of two for each
state).
Keeps the same frame rate as original
video.
As a result, used bandwidth is below
current limit and is not saturated.
Conclusion:
Quality of the video is reduced but frame rate remains the same, which is
important for real-time remote control.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Implementation Strategy
Adaptation
Important observations for VETER infrastructure
After preconfigured amount of time,
attempts to return to the original video
quality (frame size).
If required bandwidth available,
continues to increase frame size.
Conclusion:
Improved bandwidth usage and as a result best possible quality with constant
frame rate is presented to the drivers.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Motivation
Our Results
Summary
Summary
Conclusions:
Currently there is no out of the box solution for adaptive real-time video streaming
suited for IoT embedded systems.
Using GStreamer and Ice it is possible to build such solution.
To react on network QoS changes, frame size could be changed on the fly using
videoscale or appropriate hardware accelerated elements like for example
TIVidScale.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
Appendix For Further Reading
Source code and information availability I
Web site:
http://veterobot.org
Main Veter-project web site.
Blog:
http://veter-project.blogspot.com
Veter-project blog with regular updates about the project.
GitHub:
http://www.github.org/veter-team
Complete source code and documentation repostiroy.
veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet

Más contenido relacionado

La actualidad más candente

[White paper] Maintain-Accurate-Network-Diagrams
[White paper] Maintain-Accurate-Network-Diagrams[White paper] Maintain-Accurate-Network-Diagrams
[White paper] Maintain-Accurate-Network-DiagramsNetBrain Technologies
 
Lte kpi dt guide & measure method.
Lte kpi dt guide & measure method.Lte kpi dt guide & measure method.
Lte kpi dt guide & measure method.Klajdi Husi
 
Finding the best Radio Network Planning and Radio Network Optimization software
Finding the best Radio Network Planning and Radio Network Optimization softwareFinding the best Radio Network Planning and Radio Network Optimization software
Finding the best Radio Network Planning and Radio Network Optimization softwareMuhammad Waqas Akram
 
UC SDN Use Case
UC SDN Use CaseUC SDN Use Case
UC SDN Use CaseIMTC
 
Wcdma radio-network-optimization-guide
Wcdma radio-network-optimization-guideWcdma radio-network-optimization-guide
Wcdma radio-network-optimization-guideDobrin Dobrev
 
2 g and 3g kpi improvement by parameter optimization (nsn, ericsson, huawei) ...
2 g and 3g kpi improvement by parameter optimization (nsn, ericsson, huawei) ...2 g and 3g kpi improvement by parameter optimization (nsn, ericsson, huawei) ...
2 g and 3g kpi improvement by parameter optimization (nsn, ericsson, huawei) ...Jean de la Sagesse
 
Sapc upcc-pcrf- part 2 tbp
Sapc upcc-pcrf- part 2 tbpSapc upcc-pcrf- part 2 tbp
Sapc upcc-pcrf- part 2 tbpMustafa Golam
 
LTE KPIs and Formulae
LTE KPIs and FormulaeLTE KPIs and Formulae
LTE KPIs and FormulaeMradul Nagpal
 
Mobile Experience Management and Network Services Health Check with Aruba Air...
Mobile Experience Management and Network Services Health Check with Aruba Air...Mobile Experience Management and Network Services Health Check with Aruba Air...
Mobile Experience Management and Network Services Health Check with Aruba Air...Aruba, a Hewlett Packard Enterprise company
 
Unified methodology for effective correlation of soc power
Unified methodology for effective correlation of soc powerUnified methodology for effective correlation of soc power
Unified methodology for effective correlation of soc powerPankaj Singh
 
Telecom self organizing network
Telecom self organizing networkTelecom self organizing network
Telecom self organizing networkPankaj Chomal
 
Overcoming challenges of_verifying complex mixed signal designs
Overcoming challenges of_verifying complex mixed signal designsOvercoming challenges of_verifying complex mixed signal designs
Overcoming challenges of_verifying complex mixed signal designsPankaj Singh
 
Top 10 3 G Radio Optimisation Actions
Top 10 3 G Radio Optimisation ActionsTop 10 3 G Radio Optimisation Actions
Top 10 3 G Radio Optimisation ActionsAbdul Muin
 

La actualidad más candente (20)

Lte kpis
Lte kpisLte kpis
Lte kpis
 
[White paper] Maintain-Accurate-Network-Diagrams
[White paper] Maintain-Accurate-Network-Diagrams[White paper] Maintain-Accurate-Network-Diagrams
[White paper] Maintain-Accurate-Network-Diagrams
 
Lte kpi dt guide & measure method.
Lte kpi dt guide & measure method.Lte kpi dt guide & measure method.
Lte kpi dt guide & measure method.
 
NetBrain CE 5.0
NetBrain CE 5.0NetBrain CE 5.0
NetBrain CE 5.0
 
Finding the best Radio Network Planning and Radio Network Optimization software
Finding the best Radio Network Planning and Radio Network Optimization softwareFinding the best Radio Network Planning and Radio Network Optimization software
Finding the best Radio Network Planning and Radio Network Optimization software
 
Dynamic Mapping with Automation
Dynamic Mapping with AutomationDynamic Mapping with Automation
Dynamic Mapping with Automation
 
Umts Kpi
Umts KpiUmts Kpi
Umts Kpi
 
UC SDN Use Case
UC SDN Use CaseUC SDN Use Case
UC SDN Use Case
 
Wcdma radio-network-optimization-guide
Wcdma radio-network-optimization-guideWcdma radio-network-optimization-guide
Wcdma radio-network-optimization-guide
 
Airheads Tech Talks: Advanced Clustering in AOS 8.x
Airheads Tech Talks: Advanced Clustering in AOS 8.xAirheads Tech Talks: Advanced Clustering in AOS 8.x
Airheads Tech Talks: Advanced Clustering in AOS 8.x
 
2 g and 3g kpi improvement by parameter optimization (nsn, ericsson, huawei) ...
2 g and 3g kpi improvement by parameter optimization (nsn, ericsson, huawei) ...2 g and 3g kpi improvement by parameter optimization (nsn, ericsson, huawei) ...
2 g and 3g kpi improvement by parameter optimization (nsn, ericsson, huawei) ...
 
EMEA Airheads- ArubaOS - Understanding Control-Plane-Security
EMEA Airheads-  ArubaOS - Understanding Control-Plane-SecurityEMEA Airheads-  ArubaOS - Understanding Control-Plane-Security
EMEA Airheads- ArubaOS - Understanding Control-Plane-Security
 
Sapc upcc-pcrf- part 2 tbp
Sapc upcc-pcrf- part 2 tbpSapc upcc-pcrf- part 2 tbp
Sapc upcc-pcrf- part 2 tbp
 
LTE KPIs and Formulae
LTE KPIs and FormulaeLTE KPIs and Formulae
LTE KPIs and Formulae
 
Mobile Experience Management and Network Services Health Check with Aruba Air...
Mobile Experience Management and Network Services Health Check with Aruba Air...Mobile Experience Management and Network Services Health Check with Aruba Air...
Mobile Experience Management and Network Services Health Check with Aruba Air...
 
Unified methodology for effective correlation of soc power
Unified methodology for effective correlation of soc powerUnified methodology for effective correlation of soc power
Unified methodology for effective correlation of soc power
 
EMEA Airheads- Instant AP- Instant AP Best Practice Configuration
EMEA Airheads- Instant AP- Instant AP Best Practice ConfigurationEMEA Airheads- Instant AP- Instant AP Best Practice Configuration
EMEA Airheads- Instant AP- Instant AP Best Practice Configuration
 
Telecom self organizing network
Telecom self organizing networkTelecom self organizing network
Telecom self organizing network
 
Overcoming challenges of_verifying complex mixed signal designs
Overcoming challenges of_verifying complex mixed signal designsOvercoming challenges of_verifying complex mixed signal designs
Overcoming challenges of_verifying complex mixed signal designs
 
Top 10 3 G Radio Optimisation Actions
Top 10 3 G Radio Optimisation ActionsTop 10 3 G Radio Optimisation Actions
Top 10 3 G Radio Optimisation Actions
 

Similar a Real time data streaming and motion control over the internet

Bandit framework for systematic learning in wireless video based face recogni...
Bandit framework for systematic learning in wireless video based face recogni...Bandit framework for systematic learning in wireless video based face recogni...
Bandit framework for systematic learning in wireless video based face recogni...ieeepondy
 
Imaging automotive 2015 addfor v002
Imaging automotive 2015   addfor v002Imaging automotive 2015   addfor v002
Imaging automotive 2015 addfor v002Enrico Busto
 
Imaging automotive 2015 addfor v002
Imaging automotive 2015   addfor v002Imaging automotive 2015   addfor v002
Imaging automotive 2015 addfor v002Enrico Busto
 
Enabling SDN for Service Providers by Khay Kid Chow
Enabling SDN for Service Providers by Khay Kid ChowEnabling SDN for Service Providers by Khay Kid Chow
Enabling SDN for Service Providers by Khay Kid ChowMyNOG
 
Probabilistic Approach to Provisioning of ITV - Amos K.
Probabilistic Approach to Provisioning of ITV - Amos K.Probabilistic Approach to Provisioning of ITV - Amos K.
Probabilistic Approach to Provisioning of ITV - Amos K.Amos Kohn
 
Probabilistic Approach to Provisioning of ITV - By Amos_Kohn
Probabilistic Approach to Provisioning of ITV - By Amos_KohnProbabilistic Approach to Provisioning of ITV - By Amos_Kohn
Probabilistic Approach to Provisioning of ITV - By Amos_KohnAmos Kohn
 
Iaetsd arm based remote surveillance and motion detection
Iaetsd arm based remote surveillance and motion detectionIaetsd arm based remote surveillance and motion detection
Iaetsd arm based remote surveillance and motion detectionIaetsd Iaetsd
 
Server-based and Network-assisted Solutions for Adaptive Video Streaming
Server-based and Network-assisted Solutions for Adaptive Video StreamingServer-based and Network-assisted Solutions for Adaptive Video Streaming
Server-based and Network-assisted Solutions for Adaptive Video StreamingEswar Publications
 
Network Monitoring System ppt.pdf
Network Monitoring System ppt.pdfNetwork Monitoring System ppt.pdf
Network Monitoring System ppt.pdfkristinatemen
 
network monitoring system ppt
network monitoring system pptnetwork monitoring system ppt
network monitoring system pptashutosh rai
 
Web Enabling Variable Frequency Drives
Web Enabling Variable Frequency DrivesWeb Enabling Variable Frequency Drives
Web Enabling Variable Frequency DrivesNajam Siddiqui
 
FIWARE Global Summit - Real-time Media Stream Processing Using Kurento
FIWARE Global Summit - Real-time Media Stream Processing Using KurentoFIWARE Global Summit - Real-time Media Stream Processing Using Kurento
FIWARE Global Summit - Real-time Media Stream Processing Using KurentoFIWARE
 
Effective and Secure Scheme for Video Multicasting using Real Time Transport ...
Effective and Secure Scheme for Video Multicasting using Real Time Transport ...Effective and Secure Scheme for Video Multicasting using Real Time Transport ...
Effective and Secure Scheme for Video Multicasting using Real Time Transport ...IRJET Journal
 
HARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODER
HARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODERHARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODER
HARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODERcscpconf
 
Video Streaming Compression for Wireless Multimedia Sensor Networks
Video Streaming Compression for Wireless Multimedia Sensor NetworksVideo Streaming Compression for Wireless Multimedia Sensor Networks
Video Streaming Compression for Wireless Multimedia Sensor NetworksIOSR Journals
 

Similar a Real time data streaming and motion control over the internet (20)

Bandit framework for systematic learning in wireless video based face recogni...
Bandit framework for systematic learning in wireless video based face recogni...Bandit framework for systematic learning in wireless video based face recogni...
Bandit framework for systematic learning in wireless video based face recogni...
 
Imaging automotive 2015 addfor v002
Imaging automotive 2015   addfor v002Imaging automotive 2015   addfor v002
Imaging automotive 2015 addfor v002
 
Imaging automotive 2015 addfor v002
Imaging automotive 2015   addfor v002Imaging automotive 2015   addfor v002
Imaging automotive 2015 addfor v002
 
Enabling SDN for Service Providers by Khay Kid Chow
Enabling SDN for Service Providers by Khay Kid ChowEnabling SDN for Service Providers by Khay Kid Chow
Enabling SDN for Service Providers by Khay Kid Chow
 
Probabilistic Approach to Provisioning of ITV - Amos K.
Probabilistic Approach to Provisioning of ITV - Amos K.Probabilistic Approach to Provisioning of ITV - Amos K.
Probabilistic Approach to Provisioning of ITV - Amos K.
 
Probabilistic Approach to Provisioning of ITV - By Amos_Kohn
Probabilistic Approach to Provisioning of ITV - By Amos_KohnProbabilistic Approach to Provisioning of ITV - By Amos_Kohn
Probabilistic Approach to Provisioning of ITV - By Amos_Kohn
 
Resume marky20181025
Resume marky20181025Resume marky20181025
Resume marky20181025
 
Iaetsd arm based remote surveillance and motion detection
Iaetsd arm based remote surveillance and motion detectionIaetsd arm based remote surveillance and motion detection
Iaetsd arm based remote surveillance and motion detection
 
Real Time Image Processing
Real Time Image ProcessingReal Time Image Processing
Real Time Image Processing
 
Server-based and Network-assisted Solutions for Adaptive Video Streaming
Server-based and Network-assisted Solutions for Adaptive Video StreamingServer-based and Network-assisted Solutions for Adaptive Video Streaming
Server-based and Network-assisted Solutions for Adaptive Video Streaming
 
Network Monitoring System ppt.pdf
Network Monitoring System ppt.pdfNetwork Monitoring System ppt.pdf
Network Monitoring System ppt.pdf
 
network monitoring system ppt
network monitoring system pptnetwork monitoring system ppt
network monitoring system ppt
 
Web Enabling Variable Frequency Drives
Web Enabling Variable Frequency DrivesWeb Enabling Variable Frequency Drives
Web Enabling Variable Frequency Drives
 
FIWARE Global Summit - Real-time Media Stream Processing Using Kurento
FIWARE Global Summit - Real-time Media Stream Processing Using KurentoFIWARE Global Summit - Real-time Media Stream Processing Using Kurento
FIWARE Global Summit - Real-time Media Stream Processing Using Kurento
 
Mobile Internet Optimization: An effective tool for operators
Mobile Internet Optimization: An effective tool for operatorsMobile Internet Optimization: An effective tool for operators
Mobile Internet Optimization: An effective tool for operators
 
Effective and Secure Scheme for Video Multicasting using Real Time Transport ...
Effective and Secure Scheme for Video Multicasting using Real Time Transport ...Effective and Secure Scheme for Video Multicasting using Real Time Transport ...
Effective and Secure Scheme for Video Multicasting using Real Time Transport ...
 
YUVsoft Profile
YUVsoft ProfileYUVsoft Profile
YUVsoft Profile
 
HARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODER
HARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODERHARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODER
HARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODER
 
LVTS Projects
LVTS ProjectsLVTS Projects
LVTS Projects
 
Video Streaming Compression for Wireless Multimedia Sensor Networks
Video Streaming Compression for Wireless Multimedia Sensor NetworksVideo Streaming Compression for Wireless Multimedia Sensor Networks
Video Streaming Compression for Wireless Multimedia Sensor Networks
 

Más de BeMyApp

Introduction to epid
Introduction to epidIntroduction to epid
Introduction to epidBeMyApp
 
Introduction ciot workshop premeetup
Introduction ciot workshop premeetupIntroduction ciot workshop premeetup
Introduction ciot workshop premeetupBeMyApp
 
Présentation des APIs cognitives IBM Watson
Présentation des APIs cognitives IBM WatsonPrésentation des APIs cognitives IBM Watson
Présentation des APIs cognitives IBM WatsonBeMyApp
 
Crédit Agricole S.A. Personae et Parcours
Crédit Agricole S.A. Personae et ParcoursCrédit Agricole S.A. Personae et Parcours
Crédit Agricole S.A. Personae et ParcoursBeMyApp
 
Cisco Paris DevNet Hackathon slideshow - Intro
Cisco Paris DevNet Hackathon slideshow - IntroCisco Paris DevNet Hackathon slideshow - Intro
Cisco Paris DevNet Hackathon slideshow - IntroBeMyApp
 
Tumeurs Neuroendocrines : une vue d'ensemble
Tumeurs Neuroendocrines : une vue d'ensembleTumeurs Neuroendocrines : une vue d'ensemble
Tumeurs Neuroendocrines : une vue d'ensembleBeMyApp
 
Building your first game in Unity 3d by Sarah Sexton
Building your first game in Unity 3d  by Sarah SextonBuilding your first game in Unity 3d  by Sarah Sexton
Building your first game in Unity 3d by Sarah SextonBeMyApp
 
Using intel's real sense to create games with natural user interfaces justi...
Using intel's real sense to create games with natural user interfaces   justi...Using intel's real sense to create games with natural user interfaces   justi...
Using intel's real sense to create games with natural user interfaces justi...BeMyApp
 
Introduction to using the R200 camera & Realsense SDK in Unity3d - Jon Collins
Introduction to using the R200 camera & Realsense SDK in Unity3d - Jon CollinsIntroduction to using the R200 camera & Realsense SDK in Unity3d - Jon Collins
Introduction to using the R200 camera & Realsense SDK in Unity3d - Jon CollinsBeMyApp
 
Audio Mixer in Unity5 - Andy Touch
Audio Mixer in Unity5 - Andy TouchAudio Mixer in Unity5 - Andy Touch
Audio Mixer in Unity5 - Andy TouchBeMyApp
 
Shaders - Claudia Doppioslash - Unity With the Best
Shaders - Claudia Doppioslash - Unity With the BestShaders - Claudia Doppioslash - Unity With the Best
Shaders - Claudia Doppioslash - Unity With the BestBeMyApp
 
[HACKATHON CISCO PARIS] Slideshow du workshop Smart City
[HACKATHON CISCO PARIS] Slideshow du workshop Smart City[HACKATHON CISCO PARIS] Slideshow du workshop Smart City
[HACKATHON CISCO PARIS] Slideshow du workshop Smart CityBeMyApp
 
Tools to Save Time
Tools to Save TimeTools to Save Time
Tools to Save TimeBeMyApp
 
[Workshop e résidents] présentation intent, craft ai, dalkia et incubateur
[Workshop e résidents] présentation intent, craft ai, dalkia et incubateur[Workshop e résidents] présentation intent, craft ai, dalkia et incubateur
[Workshop e résidents] présentation intent, craft ai, dalkia et incubateurBeMyApp
 
[Webinar E-résidents #1] Présentation des différents métiers du bâtiment conn...
[Webinar E-résidents #1] Présentation des différents métiers du bâtiment conn...[Webinar E-résidents #1] Présentation des différents métiers du bâtiment conn...
[Webinar E-résidents #1] Présentation des différents métiers du bâtiment conn...BeMyApp
 
[IoT World Forum Webinar] Review of CMX Cisco technology
[IoT World Forum Webinar] Review of CMX Cisco technology[IoT World Forum Webinar] Review of CMX Cisco technology
[IoT World Forum Webinar] Review of CMX Cisco technologyBeMyApp
 
HP Helion Episode 6: Cloud Foundry Summit Recap
HP Helion Episode 6: Cloud Foundry Summit RecapHP Helion Episode 6: Cloud Foundry Summit Recap
HP Helion Episode 6: Cloud Foundry Summit RecapBeMyApp
 
Webinar UI/UX by Francesco Marcellino
Webinar UI/UX by Francesco MarcellinoWebinar UI/UX by Francesco Marcellino
Webinar UI/UX by Francesco MarcellinoBeMyApp
 
HP Helion Webinar #5 - Security Beyond Firewalls
HP Helion Webinar #5 - Security Beyond FirewallsHP Helion Webinar #5 - Security Beyond Firewalls
HP Helion Webinar #5 - Security Beyond FirewallsBeMyApp
 
HP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pillHP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pillBeMyApp
 

Más de BeMyApp (20)

Introduction to epid
Introduction to epidIntroduction to epid
Introduction to epid
 
Introduction ciot workshop premeetup
Introduction ciot workshop premeetupIntroduction ciot workshop premeetup
Introduction ciot workshop premeetup
 
Présentation des APIs cognitives IBM Watson
Présentation des APIs cognitives IBM WatsonPrésentation des APIs cognitives IBM Watson
Présentation des APIs cognitives IBM Watson
 
Crédit Agricole S.A. Personae et Parcours
Crédit Agricole S.A. Personae et ParcoursCrédit Agricole S.A. Personae et Parcours
Crédit Agricole S.A. Personae et Parcours
 
Cisco Paris DevNet Hackathon slideshow - Intro
Cisco Paris DevNet Hackathon slideshow - IntroCisco Paris DevNet Hackathon slideshow - Intro
Cisco Paris DevNet Hackathon slideshow - Intro
 
Tumeurs Neuroendocrines : une vue d'ensemble
Tumeurs Neuroendocrines : une vue d'ensembleTumeurs Neuroendocrines : une vue d'ensemble
Tumeurs Neuroendocrines : une vue d'ensemble
 
Building your first game in Unity 3d by Sarah Sexton
Building your first game in Unity 3d  by Sarah SextonBuilding your first game in Unity 3d  by Sarah Sexton
Building your first game in Unity 3d by Sarah Sexton
 
Using intel's real sense to create games with natural user interfaces justi...
Using intel's real sense to create games with natural user interfaces   justi...Using intel's real sense to create games with natural user interfaces   justi...
Using intel's real sense to create games with natural user interfaces justi...
 
Introduction to using the R200 camera & Realsense SDK in Unity3d - Jon Collins
Introduction to using the R200 camera & Realsense SDK in Unity3d - Jon CollinsIntroduction to using the R200 camera & Realsense SDK in Unity3d - Jon Collins
Introduction to using the R200 camera & Realsense SDK in Unity3d - Jon Collins
 
Audio Mixer in Unity5 - Andy Touch
Audio Mixer in Unity5 - Andy TouchAudio Mixer in Unity5 - Andy Touch
Audio Mixer in Unity5 - Andy Touch
 
Shaders - Claudia Doppioslash - Unity With the Best
Shaders - Claudia Doppioslash - Unity With the BestShaders - Claudia Doppioslash - Unity With the Best
Shaders - Claudia Doppioslash - Unity With the Best
 
[HACKATHON CISCO PARIS] Slideshow du workshop Smart City
[HACKATHON CISCO PARIS] Slideshow du workshop Smart City[HACKATHON CISCO PARIS] Slideshow du workshop Smart City
[HACKATHON CISCO PARIS] Slideshow du workshop Smart City
 
Tools to Save Time
Tools to Save TimeTools to Save Time
Tools to Save Time
 
[Workshop e résidents] présentation intent, craft ai, dalkia et incubateur
[Workshop e résidents] présentation intent, craft ai, dalkia et incubateur[Workshop e résidents] présentation intent, craft ai, dalkia et incubateur
[Workshop e résidents] présentation intent, craft ai, dalkia et incubateur
 
[Webinar E-résidents #1] Présentation des différents métiers du bâtiment conn...
[Webinar E-résidents #1] Présentation des différents métiers du bâtiment conn...[Webinar E-résidents #1] Présentation des différents métiers du bâtiment conn...
[Webinar E-résidents #1] Présentation des différents métiers du bâtiment conn...
 
[IoT World Forum Webinar] Review of CMX Cisco technology
[IoT World Forum Webinar] Review of CMX Cisco technology[IoT World Forum Webinar] Review of CMX Cisco technology
[IoT World Forum Webinar] Review of CMX Cisco technology
 
HP Helion Episode 6: Cloud Foundry Summit Recap
HP Helion Episode 6: Cloud Foundry Summit RecapHP Helion Episode 6: Cloud Foundry Summit Recap
HP Helion Episode 6: Cloud Foundry Summit Recap
 
Webinar UI/UX by Francesco Marcellino
Webinar UI/UX by Francesco MarcellinoWebinar UI/UX by Francesco Marcellino
Webinar UI/UX by Francesco Marcellino
 
HP Helion Webinar #5 - Security Beyond Firewalls
HP Helion Webinar #5 - Security Beyond FirewallsHP Helion Webinar #5 - Security Beyond Firewalls
HP Helion Webinar #5 - Security Beyond Firewalls
 
HP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pillHP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pill
 

Último

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 

Último (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

Real time data streaming and motion control over the internet

  • 1. Motivation Our Results Summary Real-time data streaming and motion control over the Internet Implement real-time QoS-aware data streaming for Internet-connected things. Andrey Nechypurenko andreynech@gmail.com Maksym Parkachov mparkachov@me.com Ultracode-Munich, April 2014 veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 2. Motivation Our Results Summary Stream data between connected things Problem statement Let’s build the vehicle and control it over the Internet As a hobby project, we start developing small vehicle equipped with on-board computer connected to WLan adapter and web-camera. The idea was to control the car over Internet. Main challenges Find or build mechanical platform Build electronic which can: Compress live video stream to h264 format in real-time Support W-WLan connectivity Have enough IO channels to control motors Develop software which can: Deliver video stream and sensor data to the remote driver Receive user input such as steering and acceleration Deliver control commands from the driver to the vehicle software and drive actuators Support client and server NAT and firewall traversal Provide high quality video under variable network conditions veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 3. Motivation Our Results Summary Stream data between connected things Problem statement High level system overview The whole system software has two main tasks: Deliver video stream and sensor data from the vehicle to the remote driver and Deliver control commands from the driver to the vehicle software and drive vehicle actuators. Communication happens over the Internet where it is typical to have two firewalls (and/or NATs) on the client and server side. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 4. Motivation Our Results Summary Stream data between connected things Problem statement Mechanic and electronic veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 5. Motivation Our Results Summary Stream data between connected things Problem statement Need for adaptive video streaming It is important to provide constant frame rate with predictable latency to precisely control the vehicle. Otherwise, the wall may suddenly appears ahead of the car :-) . Negative effect of the changing network conditions leads to: 1 Delays in video stream (picture freezes). 2 Corrupted frames (because of dropped frames, etc.). 3 “Fast forward” effect when the next chunk of data arrives. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 6. Motivation Our Results Summary Implementation Strategy Adaptation Solution - QoS aware streaming The adaptive Quality of Service (QoS) aware streaming implementation is required to let the driver precisely control remote vehicle. To solve the problems mentioned above: We constantly observe network conditions. If sensor data could not be send fast enough, adapt to satisfy main goal. For example, reduce video frame-rate or increase compression rate (e.g. reduce video quality). The core adaptation logic resides in the vehicle on-board application. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 7. Motivation Our Results Summary Implementation Strategy Adaptation Main software modules To provide this functionality two main modules are required: Driver application which will be further reffered as cockpit. Vehicle on-board application which will be reffered as vehicle. In addition, to perform firewall traversal in the secure and efficient way, additional application is required on the server side. In this project, ZeroC Ice open-source middleware is used for all communication needs. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 8. Motivation Our Results Summary Implementation Strategy Adaptation Cockpit application. Cockpit application Cockpit application is responsible for receiving video stream, decoding, and visualizing it. In addition cockpit application receives control signals from input hardware and transmit commands to the vehicle. Implementation is heavily multithreaded and uses graphics hardware acceleration. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 9. Motivation Our Results Summary Implementation Strategy Adaptation Cockpit application An OpenGL-based application to remotely control the robot manually. Sensor data (including video from cameras) are rendered in real-time and control commands are sent back to the vehicle. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 10. Motivation Our Results Summary Implementation Strategy Adaptation On-board software The vehicle on-board application has the following responsibilities: Receive commands (such as steering and acceleration) and control actuators. Capture video, compress it in real-time and send to the cockpit application. Collect statistic about network bandwidth to perform adaptation in case of changed network conditions. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 11. Motivation Our Results Summary Implementation Strategy Adaptation QoS aware streaming Use TCP instead of UDP to get better feedback about packet delivery status. Permanently monitor the size of output queue with compressed frames to deduce the current QoS conditions. Define the set of states characterized by maximum and minimum queue size to transition to the better or worth state. In addition, the time-based weight is introduced which is calculated based on the overall time spent in certain state. It prevents the system from permanently jumping from one state to another. React on the state changes by dynamically adjusting frame size and codec target bitrate (if it is supported by codec). veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 12. Motivation Our Results Summary Implementation Strategy Adaptation Alternatives for streaming implementations Two implementation options were considered: Using GStreamer RTSP server. Custom transport protocol for RTP payload using Ice middleware. To make final decision, both variants were implemented and compared. Reasons why Ice was considered as communication solution: Reduce complexity when implementing complex bidirectional communication. Transparently handles cross-platform issues such as endianess. There are two versions of Ice. IceE which has reduced footprint and easier to cross-compile. The complete version provides the full set of functionality. Very easy to change the communication protocol. Changing between UDP, TCP or SSL is the matter of change endpoint description in the configuration file. There is service application Glacier which solves firewall/NAT related problems. Asynchronous Method Invocation (AMI) which makes possible to collect more information about bufferization and transmission performance. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 13. Motivation Our Results Summary Implementation Strategy Adaptation Test setup Stream video using two alternative implementations. Use Linux kernel trafic shaping capabilities to simulate variable network bandwidth. Use prerecorded video For test purposes, we feed the prerecorded video instead of live capturing. Original file is scaled down on the fly to make the test comparable with live streaming from web-camera. Decoding pipeline for cockpit application was not changed. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 14. Motivation Our Results Summary Implementation Strategy Adaptation Test setup Linux kernel network traffic shaping capabilities are used to restrict the available bandwidth and see how both streaming implementations would react on it. 1 MPlayer video output window. 2 Terminal window where traffic shaping commands are issued. 3 MPlayer console output. 4 KNemo network monitor window. 1 Cockpit application window. 2 Terminal window where traffic shaping commands are issued. 3 Vehicle application console output. 4 KNemo network monitor window. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 15. Motivation Our Results Summary Implementation Strategy Adaptation Important observations for RTSP server When available bandwidth decreased below the level required to transmit the video with current encoding parameters (resolution, frame rate, quality, etc.): Communication channel is saturated. Displayed frame rate is significantly reduced. No adaptation is occurred. “Old” frames might be also dropped which leads to lowered framerate compared to the original video. Concluion: Such behavior is unacceptable for real-time streaming required to control remote vehicle. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 16. Motivation Our Results Summary Implementation Strategy Adaptation Important observations for VETER infrastructure When available bandwidth decreased: Vehicle application detects changed networking condition. Reacts by reducing frame size (current implementation divides the original size by the power of two for each state). Keeps the same frame rate as original video. As a result, used bandwidth is below current limit and is not saturated. Conclusion: Quality of the video is reduced but frame rate remains the same, which is important for real-time remote control. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 17. Motivation Our Results Summary Implementation Strategy Adaptation Important observations for VETER infrastructure After preconfigured amount of time, attempts to return to the original video quality (frame size). If required bandwidth available, continues to increase frame size. Conclusion: Improved bandwidth usage and as a result best possible quality with constant frame rate is presented to the drivers. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 18. Motivation Our Results Summary Summary Conclusions: Currently there is no out of the box solution for adaptive real-time video streaming suited for IoT embedded systems. Using GStreamer and Ice it is possible to build such solution. To react on network QoS changes, frame size could be changed on the fly using videoscale or appropriate hardware accelerated elements like for example TIVidScale. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet
  • 19. Appendix For Further Reading Source code and information availability I Web site: http://veterobot.org Main Veter-project web site. Blog: http://veter-project.blogspot.com Veter-project blog with regular updates about the project. GitHub: http://www.github.org/veter-team Complete source code and documentation repostiroy. veterobot.org, Andrey Nechypurenko, Maksym Parkachov Real-time data streaming and motion control over the Internet