Based on the Internet video application processing system of ACE framework
Technical field
The present invention relates to technical field of video transmission, particularly Internet video application processing technology field, specifically refer to a kind of Internet video application processing system based on ACE framework.
Background technology
Along with developing rapidly of network technology constantly obtains new breakthrough with Video Coding Compression Technology, the high-quality vision signal of real-time Transmission in the IP network of low cost is made to become possibility.For adapting to the High-Quality Video Transmission of multimedia technology, various video network host-host protocol is developed, as agreements such as RTSP, RTP, MP2TS, HTTP.In Video Applications performance history, except will paying close attention to itself and needing the function of exploitation, the transmission of video agreement of decorrelation has also been needed to obtain corresponding video flowing.Meanwhile, because video flowing self takies network and system resource, the performance in multiple video streaming process and efficiency also must be considered.In order to ensure development efficiency, allowing developer time and efforts be put on self development function simultaneously, building a unified Video Applications platform concept and being suggested.But Internet video application processing system of the prior art all cannot realize cross-platform application, developer needs to develop accordingly for different platforms, consuming time, and effort, efficiency is lower.
ACE framework (Adaptive Communication Environment framework, adaptive communication environ framework) be can freely use, object-oriented (OO) framework of open source code, achieve many core schemas for concurrent communication software wherein.ACE provides one group of abundant reusable C++Wrapper Facade(packaging external appearance) and frame assembly, kinds of platform can be crossed over and complete general communication software task, comprising: Event Demultiplexe and event handler assignment, signal transacting, service initialisation, interprocess communication, shared-memory management, Message routing, Distributed Services dynamically (weight) configuration, concurrence performance and synchronously, etc.The targeted customer of ACE is the developer of high-performance and real-time communication service and application.Which simplify the exploitation using interprocess communication, Event Demultiplexe, explicit dynamic link and concurrent OO network application and service.In addition, by service operationally with application dynamic link, ACE also makes the configuration of system and reshuffles to be able to robotization.
Summary of the invention
The object of the invention is to overcome above-mentioned shortcoming of the prior art, provide a kind of application that can be cross-platform, performance history is simple, and efficiency is higher, and structure is simple, with low cost, the Internet video application processing system based on ACE framework that has wide range of applications.
In order to realize above-mentioned object, the Internet video application processing system based on ACE framework of the present invention has following formation:
This system comprises: network transmission protocol module, host-host protocol parsing module, input and output Event Demultiplexe and dispatch module, message unified management and distribution module and application service module.Wherein:
Network transmission protocol module, in order to provide various Internet video access way, described system by the network transmission protocol module described in unified network transmission protocol interface interchange to obtain network video data;
Host-host protocol parsing module, in order to provide various protocol resolver, and generate analytic tree according to registered protocol resolver, different Internet video access waies is mounted on the analytic tree node described in correspondence, realizes carrying out adaptive analytic to network video data;
Input and output Event Demultiplexe and dispatch module, based on described ACE framework, and utilize multithreading be separated video flowing input and output event and assign, input and output event is automatically registered in this module carries out input and output event handling by calling described network transmission protocol module;
Message unified management and distribution module, in order to realize interacting message based on ACE framework active objects pattern, and carry out message management and distribution by unified application service interface;
Application service module, in order to provide various application service, and is undertaken alternately by described application service interface and described message unified management and distribution module, and this application service module obtains network video stream by calling described network transmission protocol module.
Should based in the Internet video application processing system of ACE framework, under described Internet video application processing system runs (SuSE) Linux OS state, described input and output Event Demultiplexe and dispatch module are input and output Event Demultiplexe based on Reactor framework and dispatch module; Under described Internet video application processing system runs Windows operation system state, described input and output Event Demultiplexe and dispatch module are input and output Event Demultiplexe based on Proactor framework and dispatch module.
Should based in the Internet video application processing system of ACE framework, described host-host protocol parsing module comprises Ethernet resolver unit, PPPoE resolver unit, IP resolver unit, UDP resolver unit, RTP resolver unit, RTSP resolver unit and MP2TS resolver unit, described each resolver unit all by the network transmission protocol module described in network transmission protocol interface interchange to obtain network video data, and all connect described input and output Event Demultiplexe and dispatch module.
Should based in the Internet video application processing system of ACE framework, described network transmission protocol module comprises IGMP network transmission protocol unit, RTSP network transmission protocol unit, http network host-host protocol unit and MMS network transmission protocol unit, and system is by each network transmission protocol unit described in unified network transmission protocol interface interchange.
Should based in the Internet video application processing system of ACE framework, described message unified management and distribution module in order to realize described application service module various application services between and application service module and between input and output Event Demultiplexe and dispatch module, the message management of synchronization message or asynchronous message and distribution mechanisms.
Should based in the Internet video application processing system of ACE framework, the various application services that described application service module provides are that user is used in other application service of native system from Application and Development service or configuration.
Should based in the Internet video application processing system of ACE framework, described Internet video application processing system also comprises platform abstraction layer, and described platform abstraction layer connects and described network transmission protocol module, host-host protocol parsing module, input and output Event Demultiplexe and dispatch module, message unified management and distribution module and application service module.
Should based in the Internet video application processing system of ACE framework, described Internet video application processing system also comprises bootstrap program module, ROMPaq module and northbound interface module, and described bootstrap program module, ROMPaq module and northbound interface module all carry out information interaction with described platform abstraction layer.
Have employed the Internet video application processing system based on ACE framework of this invention, it comprises: network transmission protocol module, host-host protocol parsing module, input and output Event Demultiplexe and dispatch module, message unified management and distribution module and application service module.Described modules all employ service configuration pattern, supports dynamic load, can carry out difference configuration according to application needs.Input and output event uses ACE framework be efficiently separated and assign, and meanwhile, message communicating employs active objects pattern to reduce the coupling of intermodule.Thus a kind of application that can be cross-platform is provided, performance history is simple, the Internet video application processing system based on ACE framework that efficiency is higher, and this system architecture is simple, with low cost, has wide range of applications.
Accompanying drawing explanation
Fig. 1 is the system architecture diagram of the Internet video application processing system based on ACE framework of the present invention.
Embodiment
In order to the technology page of the present invention more clearly can be understood, describe in detail especially exemplified by following examples.
Referring to shown in Fig. 1, is the system architecture diagram of the Internet video application processing system based on ACE framework of the present invention.
In one embodiment, should comprise based on the Internet video application processing system of ACE framework: network transmission protocol module, host-host protocol parsing module, input and output Event Demultiplexe and dispatch module, message unified management and distribution module and application service module.Wherein: described network transmission protocol module in order to provide various Internet video access way, described system by the network transmission protocol module described in unified network transmission protocol interface interchange to obtain network video data; Described host-host protocol parsing module is in order to provide various protocol resolver, and generate analytic tree according to registered protocol resolver, different Internet video access waies is mounted on the analytic tree node described in correspondence, realizes carrying out adaptive analytic to network video data; Described input and output Event Demultiplexe and dispatch module are based on described ACE framework, and utilize multithreading be separated video flowing input and output event and assign, input and output event is automatically registered in this module carries out input and output event handling by calling described network transmission protocol module; Described message unified management and distribution module in order to realize interacting message based on ACE framework active objects pattern, and carry out message management and distribution by unified application service interface; And application service module is in order to provide various application service, and undertaken alternately by described application service interface and described message unified management and distribution module, this application service module obtains network video stream by calling described network transmission protocol module, wherein, various application service can be user is used in native system other application service from Application and Development service or configuration.
In one more preferably embodiment, under described Internet video application processing system runs (SuSE) Linux OS state, described input and output Event Demultiplexe and dispatch module are input and output Event Demultiplexe based on Reactor framework and dispatch module; Under described Internet video application processing system runs Windows operation system state, described input and output Event Demultiplexe and dispatch module are input and output Event Demultiplexe based on Proactor framework and dispatch module.
In another kind more preferably embodiment, described host-host protocol parsing module comprises Ethernet resolver unit, PPPoE(Point-to-Point Protocol over Ethernet) resolver unit, IP(Internet protocol) resolver unit, UDP(User Datagram Protocol) resolver unit, RTP(RTP) resolver unit, RTSP(real time streaming transport protocol) resolver unit and MP2TS(H.264 high compression digital video coding-coding device standard) resolver unit, described each resolver unit all by the network transmission protocol module described in network transmission protocol interface interchange to obtain network video data, and all connect described input and output Event Demultiplexe and dispatch module.
In another more preferably embodiment, described network transmission protocol module comprises IGMP network transmission protocol unit, RTSP network transmission protocol unit, http network host-host protocol unit and MMS network transmission protocol unit, and system is by each network transmission protocol unit described in unified network transmission protocol interface interchange.
In another more preferably embodiment, described message unified management and distribution module in order to realize described application service module various application services between and application service module and between input and output Event Demultiplexe and dispatch module, the message management of synchronization message or asynchronous message and distribution mechanisms.
In a kind of further preferred embodiment, described Internet video application processing system also comprises platform abstraction layer, and described platform abstraction layer connects and described network transmission protocol module, host-host protocol parsing module, input and output Event Demultiplexe and dispatch module, message unified management and distribution module and application service module.
In the preferred embodiment of one, described Internet video application processing system also comprises bootstrap program module, ROMPaq module and northbound interface module, and described bootstrap program module, ROMPaq module and northbound interface module all carry out information interaction with described platform abstraction layer.
In actual applications, system of the present invention based on cross-platform ACE network programming framework establishment, and employs service configurator (Service Configurator), Reactor and Proactor framework and the active objects pattern (Active Object Pattern) in ACE.Wherein,
Service configurator: dynamically configuration service and stream when service configuration pattern allows to run, no matter they are linked in user program statically, or it dynamically loads from shared library liking, namely can configuration service (object represents a service), also can configuration flow (based on configuration file decomplier load module in period).
Reactor and Proactor framework: for the architecture mode of Event Demultiplexe and assignment.Multiplex interface select/poll is achieved, simultaneously to the asynchronous IOCP of high-level efficiency multiplex interface under high-level efficiency multiplex interface epoll and Windows under Linux in ACE.Meanwhile, L/F(leader/follower is employed when I/O multiplex interface realizes) pattern to be to support multithreading.
Active objects pattern: this pattern performs the coupling between method call for reducing method, is a kind of more transparent method for communication between tasks.Carry out realizing and provided interface expanding to this pattern in ACE.
Platform assembly is divided into network transmission protocol assembly, host-host protocol resolution component, I/O Event Demultiplexe and delivery components, message unified management and distributed components and application service assembly by function, all component all employ service configuration pattern, support dynamic load, can 3 according to application needs carry out difference configure.I/O event uses Reactor or Proactor framework be efficiently separated and assign, and meanwhile, message communicating employs active objects pattern to reduce the coupling of intermodule.
System of the present invention realizes following functions of modules:
1, network transmission protocol module: provide various Internet video access way, easily extensible.As IGMP, RTSP or HTTP etc., called by unified network transmission protocol interface (NTPI), thus obtain network video data.
2, host-host protocol parsing module: generate analytic tree according to registered protocol resolver, adaptive analytic (as RTP/RTSP/MP2TS etc.) is carried out to network video data, easily extensible.Different Internet video access waies is mounted on different protocol analysis tree nodes and resolves.
3, I/O Event Demultiplexe and dispatch module: based under Reactor(Linux in ACE) or Proactor(Windows under) framework use multithreading high efficiency separation and assignment is carried out to video flowing I/O event.I/O event is automatically registered in this module carries out I/O event handling by calling network transmission protocol module.
4, message unified management and distribution module: provide between platform and application service, message management unified between application service and application service and distribution mechanisms.This module supports synchronous and asynchronous two kinds of message, and interacting message realizes based on ACE active objects pattern, carries out message management and distribution by unified application service interface (ASI).
5, application service module: platform user uses other application services developed according to functional requirement self application service of exploitation or configuration, is loaded in platform, is undertaken alternately by ASI according to service configuration pattern.Meanwhile, application service can be called network transmission protocol module and be obtained network video stream.
Have employed the Internet video application processing system based on ACE framework of this invention, it comprises: network transmission protocol module, host-host protocol parsing module, input and output Event Demultiplexe and dispatch module, message unified management and distribution module and application service module.Described modules all employ service configuration pattern, supports dynamic load, can carry out difference configuration according to application needs.Input and output event uses ACE framework be efficiently separated and assign, and meanwhile, message communicating employs active objects pattern to reduce the coupling of intermodule.Thus a kind of application that can be cross-platform is provided, performance history is simple, the Internet video application processing system based on ACE framework that efficiency is higher, and this system architecture is simple, with low cost, has wide range of applications.
In this description, the present invention is described with reference to its specific embodiment.But, still can make various amendment and conversion obviously and not deviate from the spirit and scope of the present invention.Therefore, instructions and accompanying drawing are regarded in an illustrative, rather than a restrictive.