SlideShare a Scribd company logo
1 of 4
Download to read offline
Professional Experience - Innowatch Control Server Design

1. Introducing Innowatch

2 Years ago, I worked as a Senior Developer at Innotive, a huge software company in Korea. At
that time, the company was trying to develop a huge CCTV solution. That solution was Innowatch.
A huge feature of Innowatch was that it could display more than two hundred cameras on one
screen at the same time and in real time. As a consequence of network bandwidth, it was
impossible to show more than two hundred cameras on a single screen. However, Innotive found
a solution. Innowatch uses several video servers that combine from the data from twenty to forty
cameras into a single video. The video server data is sent to the screen software that splits the
origin data. If the screen software requests to zoom using a certain camera, the video server
transfers high quality data.


The pictures below demonstrate some of these features.




[Feature1-1] building observation in 3D
[Feature1-1] Song-Do security system


2. Structure of project team

The project involved three teams:
   1.   Camera Video Team
   2.   UI Team
   3.   Control Server Team




[feature2-1] Project Team
As I mentioned, the camera video team developed the video server to encode the many cameras
to 1 screen and the UI team developed the screen software and console program. The console
software supplies various features that controls the screen and triggers the alarm whenever an
emergency situation is raised.


Finally, the control server team plays a key part in the communication of the software, notably, in
the transfer of video data and also passing command Console to Screen(Player)


3. My Role

I worked as senior developer and designed all of the network communications. Below [feature3-1]
shows the communication architect.




[Feature3-1] Control Server Architecture


There are two kinds of communication channel, Sync Service and Data Service. Sync Service
provides a sync service between Play and IConsole and Video Server for adjusting the screen. In
contrast, Data Service to transfer data, such as a request for setting the UI, storing information of
UI or Video server information.
In order to develop the Sync Server, I normally employed socket programming. However, to
develop the Data Service, I used Web Service, which is a standard technique worldwide, having
been established by W3C. Major reasons for using Web Service were that the project was using
many platforms such as Linux and Windows, and the issue of reusability.


In addition, in order to the control server, we developed 5 applications. Below [feature3-1]
summarizes each client application.




[Feature3-1] Control Server Application


In conclusion, I designed the entirety of the structure. I also wrote a guidance document for
developers using communication framework, using the experience I have gained from being
involved with the framework over the past seven years.   Additionally, I have also participated in
developing Sync Service and DB Services.

More Related Content

Similar to CCTV Solution with WCF

Use of Automation Codecs Streaming Video Applications Based on Cloud Computing
Use of Automation Codecs Streaming Video Applications Based on Cloud ComputingUse of Automation Codecs Streaming Video Applications Based on Cloud Computing
Use of Automation Codecs Streaming Video Applications Based on Cloud ComputingTELKOMNIKA JOURNAL
 
Module 2 3
Module 2 3Module 2 3
Module 2 3ryanette
 
Android Mobile Application for Video Streaming using Load Balancing
Android Mobile Application for Video Streaming using Load BalancingAndroid Mobile Application for Video Streaming using Load Balancing
Android Mobile Application for Video Streaming using Load BalancingIRJET Journal
 
Tizen-based Samsung TV SDK Overview
Tizen-based Samsung TV SDK OverviewTizen-based Samsung TV SDK Overview
Tizen-based Samsung TV SDK OverviewRyo Jin
 
Developing for Hybrid Cloud with Bluemix
Developing for Hybrid Cloud with BluemixDeveloping for Hybrid Cloud with Bluemix
Developing for Hybrid Cloud with BluemixRoberto Pozzi
 
Building advanced web services in the browser
Building advanced web services in the browserBuilding advanced web services in the browser
Building advanced web services in the browserDisruptive Code
 
Streaming multimedia application for mobile devices for audio & video
Streaming multimedia application for mobile devices for audio & videoStreaming multimedia application for mobile devices for audio & video
Streaming multimedia application for mobile devices for audio & videoMike Taylor
 
NexGen Software Inc
NexGen Software IncNexGen Software Inc
NexGen Software Incpervinder
 
A Benchmark to Evaluate Mobile Video Upload to Cloud Infrastructures
A Benchmark to Evaluate Mobile Video Upload to Cloud InfrastructuresA Benchmark to Evaluate Mobile Video Upload to Cloud Infrastructures
A Benchmark to Evaluate Mobile Video Upload to Cloud InfrastructuresUniversity of Southern California
 
Android Live Streaming Box Technical
Android Live Streaming Box Technical Android Live Streaming Box Technical
Android Live Streaming Box Technical Jimmin Kurichiyil
 
Multimedia authoring tools and User interface design
Multimedia authoring tools and User interface designMultimedia authoring tools and User interface design
Multimedia authoring tools and User interface designSagar Rai
 
Uc how it works
Uc how it worksUc how it works
Uc how it workscircus3d
 
(Download)
(Download)(Download)
(Download)Videoguy
 
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...Edge AI and Vision Alliance
 
Cloud Based Video Production and Editing
Cloud Based Video Production and EditingCloud Based Video Production and Editing
Cloud Based Video Production and EditingPaul Richards
 

Similar to CCTV Solution with WCF (20)

Use of Automation Codecs Streaming Video Applications Based on Cloud Computing
Use of Automation Codecs Streaming Video Applications Based on Cloud ComputingUse of Automation Codecs Streaming Video Applications Based on Cloud Computing
Use of Automation Codecs Streaming Video Applications Based on Cloud Computing
 
Module 2 3
Module 2 3Module 2 3
Module 2 3
 
Android Mobile Application for Video Streaming using Load Balancing
Android Mobile Application for Video Streaming using Load BalancingAndroid Mobile Application for Video Streaming using Load Balancing
Android Mobile Application for Video Streaming using Load Balancing
 
Tizen-based Samsung TV SDK Overview
Tizen-based Samsung TV SDK OverviewTizen-based Samsung TV SDK Overview
Tizen-based Samsung TV SDK Overview
 
Client Server Live Hosting Documentation
Client Server Live Hosting Documentation Client Server Live Hosting Documentation
Client Server Live Hosting Documentation
 
Developing for Hybrid Cloud with Bluemix
Developing for Hybrid Cloud with BluemixDeveloping for Hybrid Cloud with Bluemix
Developing for Hybrid Cloud with Bluemix
 
Building advanced web services in the browser
Building advanced web services in the browserBuilding advanced web services in the browser
Building advanced web services in the browser
 
Streaming multimedia application for mobile devices for audio & video
Streaming multimedia application for mobile devices for audio & videoStreaming multimedia application for mobile devices for audio & video
Streaming multimedia application for mobile devices for audio & video
 
503 434-438
503 434-438503 434-438
503 434-438
 
NexGen Software Inc
NexGen Software IncNexGen Software Inc
NexGen Software Inc
 
A Benchmark to Evaluate Mobile Video Upload to Cloud Infrastructures
A Benchmark to Evaluate Mobile Video Upload to Cloud InfrastructuresA Benchmark to Evaluate Mobile Video Upload to Cloud Infrastructures
A Benchmark to Evaluate Mobile Video Upload to Cloud Infrastructures
 
Android Live Streaming Box Technical
Android Live Streaming Box Technical Android Live Streaming Box Technical
Android Live Streaming Box Technical
 
Multimedia authoring tools and User interface design
Multimedia authoring tools and User interface designMultimedia authoring tools and User interface design
Multimedia authoring tools and User interface design
 
Fm3610071011
Fm3610071011Fm3610071011
Fm3610071011
 
Uc how it works
Uc how it worksUc how it works
Uc how it works
 
(Download)
(Download)(Download)
(Download)
 
CVInDoc2017
CVInDoc2017CVInDoc2017
CVInDoc2017
 
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
 
201001162_report
201001162_report201001162_report
201001162_report
 
Cloud Based Video Production and Editing
Cloud Based Video Production and EditingCloud Based Video Production and Editing
Cloud Based Video Production and Editing
 

CCTV Solution with WCF

  • 1. Professional Experience - Innowatch Control Server Design 1. Introducing Innowatch 2 Years ago, I worked as a Senior Developer at Innotive, a huge software company in Korea. At that time, the company was trying to develop a huge CCTV solution. That solution was Innowatch. A huge feature of Innowatch was that it could display more than two hundred cameras on one screen at the same time and in real time. As a consequence of network bandwidth, it was impossible to show more than two hundred cameras on a single screen. However, Innotive found a solution. Innowatch uses several video servers that combine from the data from twenty to forty cameras into a single video. The video server data is sent to the screen software that splits the origin data. If the screen software requests to zoom using a certain camera, the video server transfers high quality data. The pictures below demonstrate some of these features. [Feature1-1] building observation in 3D
  • 2. [Feature1-1] Song-Do security system 2. Structure of project team The project involved three teams: 1. Camera Video Team 2. UI Team 3. Control Server Team [feature2-1] Project Team
  • 3. As I mentioned, the camera video team developed the video server to encode the many cameras to 1 screen and the UI team developed the screen software and console program. The console software supplies various features that controls the screen and triggers the alarm whenever an emergency situation is raised. Finally, the control server team plays a key part in the communication of the software, notably, in the transfer of video data and also passing command Console to Screen(Player) 3. My Role I worked as senior developer and designed all of the network communications. Below [feature3-1] shows the communication architect. [Feature3-1] Control Server Architecture There are two kinds of communication channel, Sync Service and Data Service. Sync Service provides a sync service between Play and IConsole and Video Server for adjusting the screen. In contrast, Data Service to transfer data, such as a request for setting the UI, storing information of UI or Video server information.
  • 4. In order to develop the Sync Server, I normally employed socket programming. However, to develop the Data Service, I used Web Service, which is a standard technique worldwide, having been established by W3C. Major reasons for using Web Service were that the project was using many platforms such as Linux and Windows, and the issue of reusability. In addition, in order to the control server, we developed 5 applications. Below [feature3-1] summarizes each client application. [Feature3-1] Control Server Application In conclusion, I designed the entirety of the structure. I also wrote a guidance document for developers using communication framework, using the experience I have gained from being involved with the framework over the past seven years. Additionally, I have also participated in developing Sync Service and DB Services.