CN105049938A - Video playing method based on Spice and memory share - Google Patents
Video playing method based on Spice and memory share Download PDFInfo
- Publication number
- CN105049938A CN105049938A CN201510545170.2A CN201510545170A CN105049938A CN 105049938 A CN105049938 A CN 105049938A CN 201510545170 A CN201510545170 A CN 201510545170A CN 105049938 A CN105049938 A CN 105049938A
- Authority
- CN
- China
- Prior art keywords
- spiceclient
- spiceserver
- spice
- video
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4437—Implementing a Virtual Machine [VM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
The invention discloses a video playing method based on Spice and memory share. The method comprises the following steps: step one, configuring all Spice servers and all Spice Clients as a cluster, extending all physical memories in the cluster as a total address space and establishing a dynamic memory pool; step two, the Spice Client applying to play a video to the Spice Server, the Spice Server judging whether a physical video card of the Spice Client has the capacity of decoding and playing the video; step three, if the physical video card has no the capacity of decoding and playing, the Spice Server processing the video as image in frame by frame, compressing the image and then sending to the Spice Client; step four, if the physical video card has the capacity of decoding and playing, the Spice Client sending a request of establishing the connection to a HTTP website, the HTTP website downloading the video into a physical memory distributed to the Spice Client, a virtual machine generated by the Spice Server playing the video in combination with the physical video card of the Spice Client.
Description
Technical field
The present invention relates to the video method for downloading and playing under desktop virtual agreement, particularly relate to a kind of video broadcasting method shared based on Spice and internal memory.
Background technology
Spice(SimpleProtocolforIndependentComputingEnvironment) be that a desktop services of increasing income completely shows agreement, also the desktop virtual framework that remote desktop is experienced is to provide, client can be made as use local computer to access remote machine desktop and equipment by Spice, thus the work that CPU, GPU etc. are intensive is transferred to long-range high-performance machine from client.Spice is made up of three essential parts: SpiceServer, SpiceClient and Spice agreement, SpiceServer supports Spice agreement, acute pyogenic infection of finger tip installs the server of spice_server, and SpiceClient supports Spice agreement, and acute pyogenic infection of finger tip installs the client of spice_client.Communicated by Spice agreement between server and client side, both correspondences are provided with multiple passage, realize different functions respectively.
When SpiceClient application is connected to order video on SpiceServer, first SpiceServer generates a virtual machine VM, and the desktop of virtual machine VM is passed to SpiceClient by coding, utilize virtual video card VGPA to be shown on its screen by the desktop of virtual machine VM after SpiceClient decoding.But current, the physical display card that the company of a lot of Spice of use or himself client of client are installed just possesses the ability that high definition picture and video are play in decoding completely, does not therefore need through SpiceServer completely when displaying video.
Summary of the invention
The object of the present invention is to provide a kind of video broadcasting method shared based on Spice and internal memory, can according to the ability to play of the physical display card of SpiceClient end own, the transmission of video that appropriate selection is different and broadcast mode, effectively improve the speed that clients request video is play, and alleviate the load of SpiceServer.
For achieving the above object, the technical solution used in the present invention is:
Based on the video broadcasting method that Spice and internal memory share, comprise the following steps:
Step one, SpiceServer and all SpiceClient is configured as a cluster, all physical memories in this cluster are become a total address space by logical extension, total address space sets up dynamic memory pool, and provides a unified memory management interfaces by amendment virtual machine monitor VMM to upper level applications;
Step 2, SpiceClient send the request of application displaying video to SpiceServer, SpiceServer judges after receiving request whether the physical display card of SpiceClient has the ability that this video is play in decoding, if do not decode ability to play, then enter step 3, if there is decoding ability to play, then enter step 4;
Step 3, SpiceServer utilize Spice agreement to be image one by one by the Video processing that SpiceClient application is play, and carry out decompress(ion) broadcasting by being sent to SpiceClient by SpiceServer after MJPEG compression algorithm;
Step 4, SpiceClient send request to HTTP website and connect, SpiceServer in cluster is SpiceClient distribution physical memory from dynamic memory pool, video to be directly downloaded in the physical memory that SpiceClient is assigned with by RTMFP agreement by HTTP website, the virtual machine VM that SpiceServer generates finds this physical memory and calls the Flash plug-in unit on self player or video web-pages, in conjunction with the physical display card displaying video of SpiceClient.
SpiceServer in described cluster is as inner server, unique server_ID is defined for each SpiceClient in memory pages, SpiceServer from dynamic memory pool for SpiceClient distribute physical memory time, SpiceClient first by the server_ID in the memory pages that is assigned to compared with the server_ID of self, if both are identical, access own physical internal memory, if both differences, the server_ID in memory pages is submitted to SpiceServer, dynamic memory pool is searched by the address mapping table of preserving in SpiceServer, obtain SpiceClient want the physical address of access memory and access this internal memory.
The process that described SpiceClient and HTTP website connects is as follows: SpiceClient sends the request applying for connecting to HTTP website, HTTP website sends handshake request packet to SpiceServer after receiving request, SpiceServer forwards the handshake request packet received to SpiceClient, SpiceClient sends response data packet to HTTP website after receiving handshake request packet, connects communicate after HTTP website receives response data packet with SpiceClient.
The present invention is on the basis that Spice serves, for SpiceClient asks video playback to provide two kinds of modes: first SpiceServer and all SpiceClient is configured as a cluster, be dynamic memory pool all physics memory expansion in cluster, SpiceServer serves as inner server in the cluster.When the physical display card of client does not possess the ability of decoding displaying video, adopt the transmission of video player method that Spice service is conventional, when the physical display card of client possesses the ability of decoding displaying video, by SpiceServer from dynamic memory pool be this client distribute specified memory, after this client and HTTP website connect, video is directly downloaded in specified memory, the virtual machine VM that SpiceServer generates calls the Flash plug-in unit on self player or video web-pages, in conjunction with the physical display card displaying video of client, this process does not need SpiceServer to decode to video stream data, and re-start coding according to spice agreement, SpiceClient is transferred to after compression, shorten time delay during client terminal playing video, and alleviate the load of server.
Accompanying drawing explanation
Fig. 1 is schematic flow sheet of the present invention.
Embodiment
As shown in Figure 1, a kind of video broadcasting method shared based on Spice and internal memory of the present invention, comprises the following steps:
Step one, SpiceServer and all SpiceClient is configured as a cluster, all physical memories in this cluster are become a total dynamic memory pool by logical extension, and provides a unified memory management interfaces by amendment virtual machine monitor VMM to upper level applications.
In cluster, each SpiceClient node is all as internal memory client, and SpiceServer is both the same as internal memory client with other SpiceClient nodes, can be used to provide internal memory, simultaneously again as inner server, be used for distributing the internal memory between other internal memory clients and equally loaded.When virtual machine VM needs internal memory, need to inner server application internal memory, inner server initiates the batch operation of internal memory to internal memory client by remote system call, for virtual machine VM provides stores service.In order to distinguish the internal memory in cluster between each internal memory client node, SpiceServer, as inner server, defines unique server_ID for each SpiceClient in memory pages, as its mark in the cluster.Inner server can provide the node of internal memory according to the IP address dynamic conditioning of the SpiceClient calling virtual machine VM, the node memory being positioned at same local area network (LAN) can by priority allocation.
Step 2, SpiceClient send the request of application displaying video to SpiceServer, SpiceServer judges after receiving request whether the physical display card of SpiceClient has the ability that this video is play in decoding, if do not decode ability to play, then enter step 3, if there is decoding ability to play, then enter step 4.
Step 3, SpiceServer utilize Spice agreement to be image one by one by the Video processing that SpiceClient application is play, and carry out decompress(ion) broadcasting by being sent to SpiceClient by SpiceServer after MJPEG compression algorithm.
Step 4, SpiceClient sends request to HTTP website and connects, SpiceServer in cluster utilizes virtual machine VM from dynamic memory pool for SpiceClient distributes physical memory, video to be directly downloaded in the physical memory that SpiceClient is assigned with by RTMFP agreement by HTTP website, in this process, SpiceClient first by the server_ID in the memory pages that is assigned to compared with the server_ID of self, if both are identical, access own physical internal memory, if both differences, the server_ID in memory pages is submitted to SpiceServer, dynamic memory pool is searched by the address mapping table of preserving in SpiceServer, obtain and want the physical address of access memory and access this internal memory.Virtual machine VM finds this physical memory and calls the Flash plug-in unit on self player or video web-pages, in conjunction with the physical display card displaying video of SpiceClient.Wherein, utilize virtual machine VM from dynamic memory pool for SpiceClient distributes in the process of physical memory at SpiceServer, inner server can provide the node of internal memory according to the IP address dynamic conditioning of SpiceClient, the node memory being positioned at same local area network (LAN) can by priority allocation.
Because SpiceClient is in Intranet, direct interaction can not be carried out with HTTP website, carry out NAT penetrate so need SpiceServer to serve as forwarder at this.The process that SpiceClient and HTTP website connects is as follows: SpiceClient sends the request applying for connecting to HTTP website, HTTP website sends handshake request packet to SpiceServer after receiving request, SpiceServer forwards the handshake request packet received to SpiceClient, SpiceClient sends response data packet to HTTP website after receiving handshake request packet, connects communicate after HTTP website receives response data packet with SpiceClient.
The present invention is on the basis that Spice serves, by SpiceServer and all SpiceClient all physics memory expansion formed in cluster become shared drive, according to the broadcast performance of the physical display card of SpiceClient end own, the transmission of video that appropriate selection is different and broadcast mode, effectively improve the speed that clients request video is play, alleviate the load of SpiceServer simultaneously.
Claims (3)
1., based on the video broadcasting method that Spice and internal memory share, it is characterized in that, comprise the following steps:
Step one, SpiceServer and all SpiceClient is configured as a cluster, all physical memories in this cluster are become a total address space by logical extension, total address space sets up dynamic memory pool, and provides a unified memory management interfaces by amendment virtual machine monitor VMM to upper level applications;
Step 2, SpiceClient send the request of application displaying video to SpiceServer, SpiceServer judges after receiving request whether the physical display card of SpiceClient has the ability that this video is play in decoding, if do not decode ability to play, then enter step 3, if there is decoding ability to play, then enter step 4;
Step 3, SpiceServer utilize Spice agreement to be image one by one by the Video processing that SpiceClient application is play, and carry out decompress(ion) broadcasting by being sent to SpiceClient by SpiceServer after MJPEG compression algorithm;
Step 4, SpiceClient send request to HTTP website and connect, SpiceServer in cluster is SpiceClient distribution physical memory from dynamic memory pool, video to be directly downloaded in the physical memory that SpiceClient is assigned with by RTMFP agreement by HTTP website, the virtual machine VM that SpiceServer generates finds this physical memory and calls the Flash plug-in unit on self player or video web-pages, in conjunction with the physical display card displaying video of SpiceClient.
2. a kind of video broadcasting method shared based on Spice and internal memory as claimed in claim 1, it is characterized in that: the SpiceServer in described cluster is as inner server, unique server_ID is defined for each SpiceClient in memory pages, SpiceServer from dynamic memory pool for SpiceClient distribute physical memory time, SpiceClient first by the server_ID in the memory pages that is assigned to compared with the server_ID of self, if both are identical, access own physical internal memory, if both differences, the server_ID in memory pages is submitted to SpiceServer, dynamic memory pool is searched by the address mapping table of preserving in SpiceServer, obtain SpiceClient want the physical address of access memory and access this internal memory.
3. a kind of video broadcasting method shared based on Spice and internal memory as claimed in claim 2, it is characterized in that, the process that SpiceClient and HTTP website connects is as follows: SpiceClient sends the request applying for connecting to HTTP website, HTTP website sends handshake request packet to SpiceServer after receiving request, SpiceServer forwards the handshake request packet received to SpiceClient, SpiceClient sends response data packet to HTTP website after receiving handshake request packet, connect with SpiceClient after HTTP website receives response data packet and communicate.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510545170.2A CN105049938B (en) | 2015-08-31 | 2015-08-31 | A kind of video broadcasting method based on Spice and memory sharing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510545170.2A CN105049938B (en) | 2015-08-31 | 2015-08-31 | A kind of video broadcasting method based on Spice and memory sharing |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105049938A true CN105049938A (en) | 2015-11-11 |
CN105049938B CN105049938B (en) | 2018-06-01 |
Family
ID=54456058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510545170.2A Active CN105049938B (en) | 2015-08-31 | 2015-08-31 | A kind of video broadcasting method based on Spice and memory sharing |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105049938B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106970798A (en) * | 2017-03-31 | 2017-07-21 | 山东超越数控电子有限公司 | A kind of remote desktop figure accelerated method |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0989756A2 (en) * | 1998-09-25 | 2000-03-29 | Sarnoff Corporation | Splicing information streams |
US20030093568A1 (en) * | 2001-11-14 | 2003-05-15 | Sharp Laboratories Of America, Inc. | Remote desktop protocol compression system |
US20040174367A1 (en) * | 2003-03-07 | 2004-09-09 | Li-Hsiang Liao | System and method for processing real-time video streams |
US20060200846A1 (en) * | 2005-03-01 | 2006-09-07 | Phan Kevin T | Method and system for PVR software buffer management to support software passage |
CN101110750A (en) * | 2007-08-20 | 2008-01-23 | 阳术国 | Processing method for implementing resource sharing of built-in equipment based on p2p technology |
CN101382958A (en) * | 2008-10-21 | 2009-03-11 | 深圳华为通信技术有限公司 | Web page loading method and device |
CN101742238A (en) * | 2008-11-26 | 2010-06-16 | 深圳市彪骐数码科技有限公司 | Streaming media on-demand method and device combining RTS with P2P |
CN102387187A (en) * | 2011-07-28 | 2012-03-21 | 中兴通讯股份有限公司 | Server, client as well as method and system for remotely playing video file by using client |
CN102497433A (en) * | 2011-12-16 | 2012-06-13 | 乐视网信息技术(北京)股份有限公司 | System and method realizing P2P for web page flash player |
CN102594915A (en) * | 2012-03-19 | 2012-07-18 | 烽火通信科技股份有限公司 | Browser-based media play system and method |
CN102761603A (en) * | 2012-06-07 | 2012-10-31 | 福建升腾资讯有限公司 | Webpage flash video redirection method in VDI environment |
CN102821309A (en) * | 2011-06-08 | 2012-12-12 | 鸿富锦精密工业(深圳)有限公司 | System and method for transferring streaming media based on desktop sharing |
CN103139634A (en) * | 2011-11-30 | 2013-06-05 | 国云科技股份有限公司 | Cloud terminal virtual desktop video playing method |
CN103593243A (en) * | 2013-11-01 | 2014-02-19 | 浪潮电子信息产业股份有限公司 | Dynamic extensible method for increasing virtual machine resources |
CN104053019A (en) * | 2013-03-12 | 2014-09-17 | 中兴通讯股份有限公司 | Video playing and processing method and device based on virtual desktop |
-
2015
- 2015-08-31 CN CN201510545170.2A patent/CN105049938B/en active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0989756A2 (en) * | 1998-09-25 | 2000-03-29 | Sarnoff Corporation | Splicing information streams |
US20030093568A1 (en) * | 2001-11-14 | 2003-05-15 | Sharp Laboratories Of America, Inc. | Remote desktop protocol compression system |
US20040174367A1 (en) * | 2003-03-07 | 2004-09-09 | Li-Hsiang Liao | System and method for processing real-time video streams |
US20060200846A1 (en) * | 2005-03-01 | 2006-09-07 | Phan Kevin T | Method and system for PVR software buffer management to support software passage |
CN101110750A (en) * | 2007-08-20 | 2008-01-23 | 阳术国 | Processing method for implementing resource sharing of built-in equipment based on p2p technology |
CN101382958A (en) * | 2008-10-21 | 2009-03-11 | 深圳华为通信技术有限公司 | Web page loading method and device |
CN101742238A (en) * | 2008-11-26 | 2010-06-16 | 深圳市彪骐数码科技有限公司 | Streaming media on-demand method and device combining RTS with P2P |
CN102821309A (en) * | 2011-06-08 | 2012-12-12 | 鸿富锦精密工业(深圳)有限公司 | System and method for transferring streaming media based on desktop sharing |
CN102387187A (en) * | 2011-07-28 | 2012-03-21 | 中兴通讯股份有限公司 | Server, client as well as method and system for remotely playing video file by using client |
CN103139634A (en) * | 2011-11-30 | 2013-06-05 | 国云科技股份有限公司 | Cloud terminal virtual desktop video playing method |
CN102497433A (en) * | 2011-12-16 | 2012-06-13 | 乐视网信息技术(北京)股份有限公司 | System and method realizing P2P for web page flash player |
CN102594915A (en) * | 2012-03-19 | 2012-07-18 | 烽火通信科技股份有限公司 | Browser-based media play system and method |
CN102761603A (en) * | 2012-06-07 | 2012-10-31 | 福建升腾资讯有限公司 | Webpage flash video redirection method in VDI environment |
CN104053019A (en) * | 2013-03-12 | 2014-09-17 | 中兴通讯股份有限公司 | Video playing and processing method and device based on virtual desktop |
CN103593243A (en) * | 2013-11-01 | 2014-02-19 | 浪潮电子信息产业股份有限公司 | Dynamic extensible method for increasing virtual machine resources |
Non-Patent Citations (1)
Title |
---|
徐浩等: "基于SPICE协议的桌面虚拟化技术研究与改进方案", 《计算机工程与科学》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106970798A (en) * | 2017-03-31 | 2017-07-21 | 山东超越数控电子有限公司 | A kind of remote desktop figure accelerated method |
Also Published As
Publication number | Publication date |
---|---|
CN105049938B (en) | 2018-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11878237B2 (en) | Server and data processing method, apparatus, and system | |
US10616137B2 (en) | Capacity-based server selection | |
US20150172345A1 (en) | System and method for efficient delivery of repetitive multimedia content | |
CN113452686B (en) | Data processing method, data processing device, proxy server and storage medium | |
CN108568109B (en) | Game control method, device and storage medium | |
CN105488837A (en) | Cloud computing based real-time off-screen rendering method, apparatus and system | |
US11889133B2 (en) | Burst traffic processing method, computer device and readable storage medium | |
CN110311967B (en) | Method, device, equipment and system for pushing data and receiving data | |
CN113300985A (en) | Data processing method, device, equipment and storage medium | |
US11159625B1 (en) | Efficiently distributing connections to service instances that stream multi-tenant data | |
CN108933829A (en) | A kind of load-balancing method and device | |
WO2021223454A1 (en) | Screen projection method and system | |
CN108668179B (en) | Transmission method of media index file and related equipment | |
CN112398845B (en) | Data transmission method, data transmission device, data transmission system and electronic equipment | |
CN111586437B (en) | Barrage message processing method, system, computing device and storage medium | |
CN112769958A (en) | Point-to-point network scheduling method and system | |
CN107332894B (en) | Live broadcast method, device and system, server and storage medium | |
CN106331764A (en) | Panoramic video sharing method and panoramic video sharing device | |
CN105049938A (en) | Video playing method based on Spice and memory share | |
CN112733051A (en) | Websocket-based information push management system and method | |
CN111427703A (en) | Industrial data real-time display method and system | |
CN111416851A (en) | Method for session synchronization among multiple load balancers and load balancer | |
US20150215415A1 (en) | Data pushing method, apparatus, and system | |
US9591080B2 (en) | Method of establishing a network socket with a data server | |
CN114979695A (en) | Multi-process live broadcast method and device based on SRS, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |