CN105049938A - Video playing method based on Spice and memory share - Google Patents

Video playing method based on Spice and memory share Download PDF

Info

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
Application number
CN201510545170.2A
Other languages
Chinese (zh)
Other versions
CN105049938B (en
Inventor
韩志杰
许苗新
张玉杰
朱明�
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Henan University
Original Assignee
Henan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Henan University filed Critical Henan University
Priority to CN201510545170.2A priority Critical patent/CN105049938B/en
Publication of CN105049938A publication Critical patent/CN105049938A/en
Application granted granted Critical
Publication of CN105049938B publication Critical patent/CN105049938B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4437Implementing a Virtual Machine [VM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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/643Communication 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

A kind of video broadcasting method shared based on Spice and internal memory
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.
CN201510545170.2A 2015-08-31 2015-08-31 A kind of video broadcasting method based on Spice and memory sharing Active CN105049938B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (15)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
徐浩等: "基于SPICE协议的桌面虚拟化技术研究与改进方案", 《计算机工程与科学》 *

Cited By (1)

* Cited by examiner, † Cited by third party
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