CN106658047B - Streaming media server cloud data processing method and device - Google Patents
Streaming media server cloud data processing method and device Download PDFInfo
- Publication number
- CN106658047B CN106658047B CN201611109510.8A CN201611109510A CN106658047B CN 106658047 B CN106658047 B CN 106658047B CN 201611109510 A CN201611109510 A CN 201611109510A CN 106658047 B CN106658047 B CN 106658047B
- Authority
- CN
- China
- Prior art keywords
- server
- streaming media
- client
- information
- module
- 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.)
- Expired - Fee Related
Links
Images
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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234318—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into objects, e.g. MPEG-4 objects
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23103—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26291—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for providing content or additional data updates, e.g. updating software modules, stored at the client
-
- 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/647—Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
- H04N21/64723—Monitoring of network processes or resources, e.g. monitoring of network load
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The embodiment of the invention provides a streaming media server cloud data processing method and device, and relates to the field of data processing. The method comprises the following steps: the client side sends path information of the original materials in the cloud storage server, which is acquired from the cloud background management server, to the streaming media server; the streaming media server acquires the original material from the cloud storage server; the coding and decoding component in the streaming media server codes and decodes the original material to obtain a compressed material with a specified format; and the streaming media server sends the compressed materials to the client. The method solves the problems that the existing video processing software cannot meet the requirement of supporting cloud materials of various different formats, and on the other hand, under the condition of a certain bandwidth, cloud service resources cannot be effectively utilized, so that the efficiency of program making is seriously reduced.
Description
Technical Field
The invention relates to the field of data processing, in particular to a streaming media server cloud data processing method and device.
Background
According to the proposal of the national concept of 'internet +', the internet and the traditional industry are deeply fused by using an information communication technology and an internet platform, a new development ecology is created, the rapid development of cloud storage and cloud service is realized, the traditional video processing software program manufacturing system starts to develop towards the internet + concept direction, and a large amount of materials in various formats appear on the cloud storage.
At this time, the video processing software client needs a service to support cloud materials of various formats, and further, in the program making video processing system, the client needs to perform mass data interaction with the materials stored in the cloud.
The existing video processing software cannot support cloud materials of various different formats, and on the other hand, under the condition of a certain bandwidth, cloud service resources cannot be effectively utilized, so that the efficiency of program making is seriously reduced.
Disclosure of Invention
In view of the above problems, the present invention is proposed to provide a streaming media server cloud data processing method and apparatus that overcome the above problems or at least partially solve the above problems.
According to an aspect of the present invention, there is provided a method for processing streaming media server cloud data, including:
the client side sends path information of the original materials in the cloud storage server, which is acquired from the cloud background management server, to the streaming media server;
the streaming media server acquires the original material from the cloud storage server;
the coding and decoding component in the streaming media server codes and decodes the original material to obtain a compressed material with a specified format;
and the streaming media server sends the compressed material to the client.
Preferably, the streaming media server cloud data processing method is characterized in that before the step of sending, by the client, path information of the raw material in the cloud storage server, which is acquired from the cloud background management server, to the streaming media server, the method further includes:
the client sends a first connection request to a load balancing server;
the load balancing server sends a second connection request to the streaming media management server according to the first connection request;
the streaming media management server creates a new streaming media server process according to the second connection request;
the streaming media management server returns the information of the process to the load balancing server;
after receiving the information of the process, the load balancing server returns the information of the process to the client; at the same time, updating the stored information of the streaming media management server according to the information of the process;
and the client searches a corresponding streaming media server according to the process information and establishes connection with the streaming media server.
Preferably, the streaming media server cloud data processing method is characterized in that, after the step of sending the compressed material to the client by the streaming media server, the method further includes:
and the streaming media server caches the specified material in the compression format.
Preferably, the server streaming media cloud processing method based on ffmpeg is characterized in that after the step of caching the material in the specified compression format by the streaming media server, the method further includes:
when the client requests the same material again, the streaming media server sends the material in the specified compression format in the cache to the client.
Preferably, after the step of sending the data in the specified compression format to the client by the streaming media server, the streaming media server cloud data processing method further includes:
after the client receives the data in the compressed format, the streaming media management server releases the process of the streaming media server;
the stream media management server will update the stored information of the stream media management server according to the message of releasing the process.
According to another aspect of the present invention, there is provided a streaming media server cloud data processing apparatus, including:
the client comprises:
a send path message module: the path information of the original materials in the cloud storage server acquired from the cloud background management server is sent to the streaming media server;
the streaming media server includes:
a material obtaining module: the system comprises a cloud storage server, a database and a database, wherein the cloud storage server is used for storing raw materials;
the coding and decoding component module: the method is used for coding and decoding the original material in a coding and decoding assembly in the streaming media server to obtain a compressed material with a specified format;
and a material output module: and the system is used for sending the compressed material to the client.
Preferably, the cloud data processing device based on the streaming media server is characterized in that the client further includes:
a first connection request module: the system comprises a first connection request sending unit, a second connection request sending unit and a load balancing server, wherein the first connection request is used for sending a first connection request to the load balancing server;
a link building module: the system comprises a process information acquisition unit, a streaming media server and a server management unit, wherein the process information acquisition unit is used for acquiring process information of a process;
the load balancing server further comprises:
a second connection request module: the streaming media management server is used for sending a second connection request to the streaming media management server according to the first connection request;
a second create process notification module: the system is used for returning the information of the process to the client after receiving the information of the process;
a first stored information module: the information used for updating the above-mentioned flow media management server stored;
the streaming media management server further includes:
creating a process module: the server process is used for creating a new streaming media server process according to the second connection request;
a first create process notification module: and the information used for returning the process to the load balancing server.
Preferably, the cloud data processing device based on the streaming media server is characterized in that the streaming media server further includes:
a cache module: the method is used for caching the materials in the specified compression format.
Preferably, the cloud data processing device based on the streaming media server is characterized in that the streaming media server further includes:
a cache sending module: and the system is used for sending the materials in the specified compression format in the cache to the client.
Preferably, the streaming media cloud processing device based on ffmpeg is characterized in that the streaming media management server further includes:
a release process module: a process for releasing the streaming media server;
a second storage information module: and the information used for updating the stored streaming media management server according to the message for releasing the process.
In addition, the cloud materials in different formats are compressed into the materials in the specified format based on the coding and decoding assembly, so that the cloud service resources can be effectively utilized under the condition of a certain bandwidth in the process of downloading the materials by a client, and the efficiency of program making is improved; meanwhile, the compressed material format is a designated compression format, so that bandwidth fluctuation does not exist in the downloading process, and the problem of unstable link bandwidth is solved.
The foregoing description is only an overview of the technical solutions of the present invention, and the embodiments of the present invention are described below in order to make the technical means of the present invention more clearly understood and to make the above and other objects, features, and advantages of the present invention more clearly understandable.
Drawings
Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the preferred embodiments. The drawings are only for purposes of illustrating the preferred embodiments and are not to be construed as limiting the invention. Also, like reference numerals are used to refer to like parts throughout the drawings. In the drawings:
fig. 1 shows a flow chart of steps of streaming server cloud data processing according to an embodiment of the invention;
FIG. 2 is a flow diagram illustrating the steps of obtaining raw material according to one embodiment of the present invention;
FIG. 3 is a flow chart illustrating the steps of a streaming server cloud data process according to the present invention;
FIG. 4 is a structural framework diagram illustrating the establishment of long connections between clients and streaming servers according to the present invention
FIG. 5 illustrates a diagram of a streaming server cloud data processing apparatus according to the present invention;
FIG. 6 illustrates a diagram of a streaming server cloud data processing apparatus according to the present invention;
fig. 7 is a diagram illustrating an apparatus for establishing and breaking a link between streaming media and a client according to an embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
Example one
Referring to fig. 1, a flowchart illustrating steps of streaming media server cloud data processing according to an embodiment of the present invention is shown, which may specifically include the following steps:
s101: the client side sends path information of the original materials in the cloud storage server, which is acquired from the cloud background management server, to the streaming media server;
after the client establishes long connection with a streaming media server (streamingserver), the client sends a request for playing original materials to the cloud background management server, and the cloud background management server responds to the request and returns a response signal to the client; the response signal contains the path information of the original material in the streaming media server. After receiving the response signal, that is, after the client acquires the path information, the client requests the original material from the streaming media through a TCP (Transmission Control Protocol), where the request information includes the path information of the original material in the streaming media server. The source material refers to desired video data and audio data.
A long connection means that a plurality of packets can be transmitted continuously over one connection and then disconnected, and during the connection maintenance period, if no packet is transmitted, a link check packet needs to be transmitted by both parties. The short connection means that when both communication parties have data interaction, a connection is established, and after the data transmission is completed, the connection is disconnected, that is, only one service is transmitted in each connection.
A path in the cloud storage server, namely an http path (Hypertext Transfer Protocol: HyperText Transfer Protocol); and sending the http path to a streaming media server by adopting a TCP protocol.
The http path is represented as follows: http:// localhost/root/sub/abc. aspx; root is the virtual directory name, sub is the subdirectory, and abc.
For example, the response information containing the path information "/filePath/file.avi" is:
<openFile filePath="/filePath/file.avi"fid="1"videoStreamId="0"audioStreamIds="1|2|3"/>
description of the drawings: the filePath is the path of the original material on the storage server; fid is an identification which is created by the client and used for interaction, is a numerical value of the agent 64, and has uniqueness and identification; the unit type is defined in WINDOWS API and represents unsigned shaping data, and the unit64 represents unsigned 64-bit shaping data; the videotraffic id indicates whether its video stream needs to be opened, if any; audioStreamIds indicates whether its audio stream needs to be opened, if any.
S102: the streaming media server acquires the original material from the cloud storage server according to the path information;
after receiving the information of the request original material sent by the client, the streaming media server responds to the request information; and the streaming media server downloads the original material according to the path information of the original material in the cloud storage server.
The connection between the streaming media server and the cloud storage server is short connection, and real-time data interaction can be carried out; the short connection means that when both communication parties have data interaction, a connection is established, and after the data transmission is completed, the connection is disconnected, that is, only one service is transmitted in each connection.
Referring to fig. 2, the flow of the step of acquiring the source material is step S1021 to step S1026:
s1021: the streaming media server starts a thread according to the path information; the thread is started by the streaming media server for acquiring the original material;
a thread is the smallest unit of a program's execution flow. A standard thread consists of a thread ID, a current instruction Pointer (PC), a register set, and a stack. A thread is a single sequential control flow in a program. Running multiple threads simultaneously in a single program accomplishes different tasks, referred to as multithreading.
If a plurality of original materials are needed by the client, the path information is a plurality of path information, and the thread started by the streaming media server is a plurality of threads; the aim of parallel transmission is achieved when file transmission is subsequently carried out.
S1022: after the streaming media server starts a thread, acquiring description information of the original material according to the path information; such as size, length, format, etc. of the source material
And after the streaming media server starts a thread, performing information interaction with a cloud storage server, and acquiring the description information of the material corresponding to the path information.
S1023: the streaming media server is initialized according to the specification of the material;
the initialization of the streaming media server according to the specification of the material is to initialize the coding and decoding components in the streaming media server, namely, the streaming media server initializes the coder and the decoder for coding and decoding the original material and waits for the input of the material. The encoding and decoding component may be encoding and decoding in an ffmpeg mode or encoding and decoding in a mainnecept mode, and the format or protocol supported by the encoding and decoding component is not limited in the embodiment of the present invention.
Wherein ffmpeg refers to Fast forwarded Mpeg; FFmpeg is an open-source free cross-platform video and audio streaming scheme, belongs to free software, and adopts LGPL or GPL license. It provides a complete solution for recording, converting and streaming audio and video. It contains the very advanced audio/video codec library libavcodec, and many codecs in libavcodec are developed from scratch in order to ensure high portability and codec quality. FFmpeg was developed under the Linux platform, but it can also be compiled to run in other operating system environments as well.
The MainConcept can quickly compress and re-encode AVI files into high-quality MPEG video files, has high compression speed, supports batch processing operation and supports the combination of a plurality of MPEG files into one MPEG file.
S1024: the streaming media server sends the initialized message to the client;
s1025: the client sends an application message to the streaming media server; the application message is a message for the client to apply for the original material.
The client sends the message for applying for acquiring the original material to the streaming media server through a TCP (transmission control protocol);
s1026: the streaming media server acquires the original material from the cloud storage server according to the application message and the thread;
the format of the raw material acquired by the streaming media server can be a PGM format, a PPM format, a PAM format, an MP4 format, an mpeg4 and other video and audio formats.
S103: coding and decoding the original material in a coding and decoding assembly in the streaming media server to obtain a compressed material with a specified format;
and after receiving all the raw materials, the streaming media server inputs the raw materials into a decoder, the decoder decodes the raw materials to obtain frame data, and the encoder encodes the frame data into the frame data in the specified compression format, namely the compressed materials in the specified format.
If the codec component is an ffmpeg codec component, the compressed material in the specified format may be in a video format of H264 and an audio format of AAC.
The embodiment of the present invention does not limit the format or protocol supported by the codec component, and the compressed material in the specified format may also be in other formats.
S104: and the streaming media server sends the compressed materials to the client.
The streaming media server sends the compressed materials to a client; the client realizes real-time playing.
The server streaming media cloud data processing method provided by the embodiment of the invention is characterized in that a client acquires a video and audio file in a cloud storage server and performs coding and decoding, and a coding and decoding component supports coding and decoding of materials in various formats, so that the technical method can support cloud materials in various formats; on the other hand, the video and audio pictures required by the client are sent to the client in a compressed stream manner in real time, so that cloud service resources can be effectively utilized under the condition of a certain bandwidth in the process of downloading the materials by the client, and the efficiency of program making is improved; meanwhile, the compressed material format is a designated compression format, so that bandwidth fluctuation does not exist in the downloading process, and the problem of unstable link bandwidth is solved.
Example two
Referring to fig. 3, a flowchart illustrating steps of streaming media server cloud data processing according to an embodiment of the present invention is shown, which may specifically include the following steps:
the client and the streaming media server are in a long connection mode, and the specific steps are S201 to S206:
referring to fig. 4, there is shown a structural framework diagram of the client establishing long connection with streaming media according to the present invention:
s201: the client sends a first connection request to a load balancing server;
the client sends a first connection request to the load balancer to find the IP address and the port number of the streaming media management server which can be connected.
The load balancer records the IP number and the number of vacant ports of the streaming media management server (Scorpius Server) connected with the load balancer.
The load balancer is a main load balancer, and the number of the load balancers in the system is two, wherein one of the load balancers is the main load balancer, and the other load balancer is a backup load balancer. When the live load balancer is normal, the backup load balancer stores data and information; and when the main load balancer is abnormal, the backup load balancer becomes the main load balancer to work.
S202: the load balancing server sends a second connection request to the streaming media management server according to the first connection request;
the load balancing server inquires the number of the vacant ports of each streaming media management server according to the first connection request;
after receiving the first connection request, the load balancing server queries the IP of the streaming media management server connected with the load balancing server and the residual port number corresponding to the streaming media management server, and records the IP of the streaming media management server with the residual port number not being 0.
For example, the IP of the load balancing server is 10.7.21.13, and the streaming media management servers connected to the load balancing server are respectively: 10.7.21.14 IP, the remaining port number of the server is 0; 10.7.21.15, and the remaining port number of the server is 2.
The load balancing server sends a second connection request to the streaming media management server with the number of the spare ports not being 0;
the load balancing server sends a second connection request to a streaming media management server with the number of free ports being not 0 and the IP being 10.7.21.15; and meanwhile, the load balancing server waits for the streaming media management server with the IP of 10.7.21.15 to return the vacant port number.
S203: the streaming media management server creates a new streaming media server process according to the second connection request;
the streaming media management server creates a new streaming media server process by utilizing any spare port according to a second connection request;
and after receiving the second connection request, the streaming media management server with the IP of 10.7.21.15 monitors the spare port number of any one of the connection requests, and creates a new process of the streaming media server by using the port number as an interface. E.g., spare port numbers 2 and 3; the streaming media management server monitors the port number 2, and creates a new streaming media server process by using the port number 2.
The IP of the load balancer and the IP of the streaming media management server in this embodiment are any IP, and the two may directly perform data interaction. The invention is not limited in this regard.
S204: the streaming media management server returns the information of the process to the load balancing server;
the streaming media management server returns the IP address of the streaming media management server and the port number for creating the process to the load balancing server;
after the scorpiusserver creates a new process of the streaming media server, the streaming media management server returns the IP and the port number to the load balancer.
For example, a Scorpius Server with IP 10.7.21.15 returns 10.7.21.15:2 information to the load balancing server.
S205: after receiving the information of the process, the load balancing server returns the information of the process to the client; meanwhile, the stored information of the streaming media management server is updated according to the information of the process;
after receiving the IP address of the streaming media management server and the port number of the streaming media server, the load balancing server returns the IP address of the streaming media management server and the port number of the streaming media server to the client;
the load balancing server receives 10.7.21.15:2 information and returns this information to the client.
Meanwhile, the load balancing server updates the number of the available ports of the streaming media management server after the number of the available ports is reduced by 1;
the load balancing server stores the number of the available ports after the number of the available ports of the streaming media management server is reduced by 1, and then the number of the available ports corresponding to the streaming media management server (10.7.21.15) is 1; if another client continues to apply for establishing a link with the streaming media server and uses another remaining port 10.7.21.15:3 of the streaming media management server (10.7.21.15), the streaming media server
S206: and the client searches a corresponding streaming media server according to the process information and establishes connection with the streaming media server.
And the client searches a corresponding streaming media server according to the IP address of the streaming media management server and the port number of the streaming media server, and establishes connection with the streaming media server.
The client sends a request for transmitting data to the streaming media server corresponding to the port in an http mode according to 10.7.21.15: 2; the streaming media server returns interactive data after receiving the request; the long connection relationship between the client and the streaming media server is successfully established.
S207: the client side sends path information of the original materials in the cloud storage server, which is acquired from the cloud background management server, to the streaming media server;
the implementation of this step in this embodiment is the same as the implementation of step S101 in the first embodiment, and the detailed description is omitted in this embodiment.
S208: the streaming media server acquires the original material from the cloud storage server according to the path information;
the implementation of this step in this embodiment is the same as the implementation of step S102 in the first embodiment, and the detailed description is omitted in this embodiment.
S209: coding and decoding the original material in a coding and decoding assembly in the streaming media server to obtain a compressed material with a specified format;
the implementation of this step in this embodiment is the same as the implementation of step S103 in the first embodiment, and the detailed description is omitted in this embodiment.
S210: and the streaming media server sends the compressed materials to the client.
The implementation of this step in this embodiment is the same as the implementation of step S104 in the first embodiment, and the detailed description is omitted in this embodiment.
Preferably, the format for the streaming server to send the compressed material to the client further includes:
the streaming media server caches the specified material in the compressed format;
the streaming media server is provided with a caching mechanism realized by the coding and decoding component, and caches the specified compression format.
And when the client requests the same material again, the streaming media server sends the material in the specified compression format in the cache to the client.
When the client applies for the same material or a certain part of the same material again, the streaming media server does not request the material to the cloud storage again and carries out coding and decoding, and the required material or a part of the material is sent to the client in a specified compression format from the cache mechanism.
Optionally, after the client receives the compressed material in the specified format, the method further includes:
s2121, after the client receives the data in the compressed format, the streaming media management server releases the process of the streaming media server;
after the client receives the data in the compressed format, the streaming media server releases the thread; and after the thread is released, the streaming media management server releases the process of the streaming media server.
S2122, the stream media management server updates the stored information of the stream media management server according to the information for releasing the process
After the streaming media management server releases the process of the streaming media server, the port number of the process of the streaming media server corresponding to the streaming media management server is free; the streaming media management server adds 1 to the number of available port numbers; the streaming media management server adds 1 to the number of available port numbers and returns a message to the load balancing server; and the load balancing server stores the number of the available ports obtained by adding 1 to the number of the available port numbers of the streaming media management server.
The server streaming media cloud data processing method provided by the embodiment of the invention is characterized in that a client acquires a video and audio file in a cloud storage server and performs coding and decoding, and a coding and decoding component supports coding and decoding of materials in various formats, so that the technical method can support cloud materials in various formats; on the other hand, the video and audio pictures required by the client are sent to the client in a compressed stream manner in real time, so that cloud service resources can be effectively utilized under the condition of a certain bandwidth in the process of downloading the materials by the client, and the efficiency of program making is improved; meanwhile, the compressed material format is a designated compression format, so that bandwidth fluctuation does not exist in the downloading process, and the problem of unstable link bandwidth is solved. The streaming media server provides a cache mechanism to solve the problem of repeated downloading of material pictures; the available port number of the streaming media management server is updated in real time according to the use state, so that the utilization rate of the streaming media management server is improved, and the resources are not occupied inefficiently.
For simplicity of explanation, the method embodiments are described as a series of acts or combinations, but those skilled in the art will appreciate that the embodiments are not limited by the order of acts described, as some steps may occur in other orders or concurrently with other steps in accordance with the embodiments of the invention. Further, those skilled in the art will appreciate that the embodiments described in the specification are presently preferred and that no particular act is required to implement the invention.
EXAMPLE III
Referring to fig. 5, a diagram of a streaming media server cloud data processing apparatus according to the present invention is shown, including:
the client 410 includes:
send path message module 411: the path information of the raw materials in the cloud storage server 430, which is acquired from the cloud background management server 400, is sent to the streaming media server 420;
the streaming server 420 includes:
the acquire material module 421: the system is used for acquiring the raw materials from the cloud storage server 430;
ffmpeg component block 422: the method is used for encoding and decoding the original material in an encoding and decoding component in the streaming media server 420 to obtain a compressed material with a specified format;
output material module 423: for sending the compressed material to the client 410.
The sending path module message of the client 410 sends path information of the raw material in the cloud storage server 430, which is obtained from the cloud background management server 400, to the streaming media server 420; the material obtaining module 421 of the streaming media server 420 obtains the raw material from the cloud storage server 430; the ffmpeg component module 422 encodes and decodes the original material to obtain a compressed material with a specified format; the output material module 423 sends the compressed material to the client 410.
The server streaming media cloud data processing device provided by the embodiment of the invention acquires video and audio files in the cloud storage server 430 for the client 410 and performs encoding and decoding through the encoding and decoding component module 422, and the encoding and decoding component module 422 supports material encoding and decoding in various formats, so that the technical method can support cloud materials in various formats; on the other hand, the video and audio pictures required by the client 410 are sent to the client 410 in a compressed stream manner through the ffmpeg component module 422 in real time, so that cloud service resources can be effectively utilized under the condition of a certain bandwidth in the process of downloading the materials by the client 410, and the efficiency of program making is improved; meanwhile, the compressed material format is a designated compression format, so that bandwidth fluctuation does not exist in the downloading process, and the problem of unstable link bandwidth is solved.
Example four
Referring to fig. 6, there is shown a streaming media server cloud data processing apparatus according to the present invention, including:
the streaming media server cloud data processing device is characterized by comprising:
the client 510 includes:
send path message module 511: the path information of the raw materials in the cloud storage server 530, which is acquired from the cloud background management server 500, is sent to the streaming media server 520;
the streaming server 520 includes:
the acquire materials module 521: for obtaining the raw materials from the cloud storage server 530;
codec component module 522: the method is used for coding and decoding the original material in a coding and decoding component in the streaming media server 520 to obtain a compressed material with a specified format;
the output material module 523: for sending the compressed material to the client 510.
The sending path module message of the client 510 sends path information of the raw material in the cloud storage server 530, which is obtained from the cloud background management server 500, to the streaming media server 520; the material obtaining module 521 of the streaming media server 520 obtains the raw material from the cloud storage server 530; the encoding and decoding component module 522 encodes and decodes the original material to obtain a compressed material with a specified format; the output material module 523 sends the compressed material to the client 510.
Referring to fig. 7, a device diagram for establishing and breaking a link between streaming media and a client according to the present invention is shown, including:
preferably, the client 510 further comprises:
the first connection request module 512: for sending a first connection request to the load balancing server 540;
the link building module 513: the system is used for searching the corresponding streaming media server 520 according to the process information and establishing connection with the streaming media server;
the load balancing server 540 includes:
the second connection request module 541: for sending a second connection request to the streaming media management server 550 according to the first connection request;
the second created process notification module 542: for returning the information of the process to the client 510 after receiving the information of the process;
the first storage information module 543: the information used for updating the stored streaming media management server;
the streaming media management server 550 includes:
the create process module 551: for creating a new streaming server 520 process according to the second connection request;
the first created process notification module 552: information for returning the process to the load balancing server 540.
The first connection request module 512 of the client 510 sends a first connection request to the load balancing server 540; after the load balancing server 540 receives the first connection request, the second connection request module 541 of the load balancing server 540 sends a second connection request to the streaming media management server 550; after the streaming media management server 550 receives the second connection request, the process creation module 551 creates a new streaming media server 520 process according to the second connection request and notifies the first process creation notification module 552; the first created process notification module 552 returns the information of the process to the load balancing server 540; after the load balancing server 540 receives the information of the process, the second created process notification module 542 returns the information of the process to the client 510, and meanwhile, the first storage information module 543 updates the information that the number of the spare ports of the streaming media management server 550 is reduced by 1; the client 510 starts the link establishment module 513 according to the information of the process, so that the long connection between the client 510 and the streaming media server 520 is successfully established. The sending path module message of the client 510 sends path information of the raw material in the cloud storage server 530, which is obtained from the cloud background management server 500, to the streaming media server 520; the material obtaining module 521 of the streaming media server 520 obtains the raw material from the cloud storage server 530; the encoding and decoding component module 522 encodes and decodes the original material to obtain a compressed material with a specified format; the output material module 523 sends the compressed material to the client 510.
Preferably, the streaming server 520 further includes:
the caching module 524: and the system is used for caching the material in the specified compression format.
Preferably, the streaming server 520 further includes:
the buffer sending module 525: for sending the specified compressed format material in the cache to the client 510.
After the output material module 523 sends the compressed material to the client 510, the caching module 524 of the streaming media server 520 caches the material in the specified compression format. When the client 510 needs to change the material or a part of the material again, the cache sending module 525 of the streaming media server 520 sends the material in the specified compression format in the cache module 524 to the client 510.
Preferably, the streaming media management server 550 further includes:
release progress module 553: a process for releasing the streaming server 520.
The load balancing server 540 includes:
the second store information module 544: and the information used for updating the stored streaming media management server according to the message for releasing the process.
When the client 510 disconnects the long connection with the streaming server 520, the release process module 553 in the streaming management server 550 will release the process of the streaming server 520; the release process module 553 transmits a message to release the process of the streaming server 520 to the load balancing server 540; the second storage information module 544 in the load balancing server 540 updates the information of the number of free ports of the streaming media management server 550 minus 1.
The server streaming media cloud data processing method provided by the embodiment of the invention is characterized in that a client acquires a video and audio file in a cloud storage server and performs coding and decoding, and a coding and decoding component supports coding and decoding of materials in various formats, so that the technical method can support cloud materials in various formats; on the other hand, the video and audio pictures required by the client are sent to the client in a compressed stream manner in real time, so that cloud service resources can be effectively utilized under the condition of a certain bandwidth in the process of downloading the materials by the client, and the efficiency of program making is improved; meanwhile, the compressed material format is a designated compression format, so that bandwidth fluctuation does not exist in the downloading process, and the problem of unstable link bandwidth is solved. The streaming media server provides a cache mechanism to solve the problem of repeated downloading of material pictures; the available port number of the streaming media management server is updated in real time according to the use state, so that the utilization rate of the streaming media management server is improved, and the resources are not occupied inefficiently.
For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
The algorithms and displays presented herein are not inherently related to any particular computer, virtual machine, or other apparatus. Various general purpose systems may also be used with the teachings herein. The required structure for constructing such a system will be apparent from the description above. Moreover, the present invention is not directed to any particular programming language. It is appreciated that a variety of programming languages may be used to implement the teachings of the present invention as described herein, and any descriptions of specific languages are provided above to disclose the best mode of the invention.
In the description provided herein, numerous specific details are set forth. It is understood, however, that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be interpreted as reflecting an intention that: that the invention as claimed requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this invention.
Those skilled in the art will appreciate that the modules in the device in an embodiment may be adaptively changed and disposed in one or more devices different from the embodiment. The modules or units or components of the embodiments may be combined into one module or unit or component, and furthermore they may be divided into a plurality of sub-modules or sub-units or sub-components. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or elements of any method or apparatus so disclosed, may be combined in any combination, except combinations where at least some of such features and/or processes or elements are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments described herein include some features included in other embodiments, rather than other features, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments. For example, in the following claims, any of the claimed embodiments may be used in any combination.
The various component embodiments of the invention may be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. Those skilled in the art will appreciate that a microprocessor or Digital Signal Processor (DSP) may be used in practice to implement some or all of the functions of some or all of the components of the apparatus of the ffmpeg-based server streaming media cloud processing method according to an embodiment of the present invention. The present invention may also be embodied as apparatus or device programs (e.g., computer programs and computer program products) for performing a portion or all of the methods described herein. Such programs implementing the present invention may be stored on computer-readable media or may be in the form of one or more signals. Such a signal may be downloaded from an internet website or provided on a carrier signal or in any other form.
It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by one and the same item of hardware. The usage of the words first, second and third, etcetera do not indicate any ordering. These words may be interpreted as names.
Claims (8)
1. A streaming media server cloud data processing method is characterized by comprising the following steps:
the client side sends path information of the original materials in the cloud storage server, which is acquired from the cloud background management server, to the streaming media server;
the streaming media server acquires the original material from the cloud storage server;
the encoding and decoding component in the streaming media server encodes and decodes the original material to obtain a material in a specified compression format;
the sending, by the streaming media server, the specified material in the compressed format to the client specifically includes: sending the video and audio pictures required by the client to the client in real time in a compressed stream mode;
before the step of sending, by the client, path information of the original material in the cloud storage server, which is acquired from the cloud background management server, to the streaming media server, the method further includes:
the client sends a first connection request to a load balancing server;
the load balancing server sends a second connection request to the streaming media management server according to the first connection request;
the streaming media management server creates a new streaming media server process according to the second connection request;
the streaming media management server returns the information of the process to the load balancing server;
after receiving the information of the process, the load balancing server returns the information of the process to the client; meanwhile, the stored information of the streaming media management server is updated according to the information of the process;
and the client searches a corresponding streaming media server according to the process information and establishes connection with the streaming media server.
2. The method of claim 1, wherein after the step of the streaming server sending the specified compressed format material to the client, further comprising:
and the streaming media server caches the specified material in the compressed format.
3. The method according to claim 2, wherein after the step of caching the specified compressed material by the streaming server, the method further comprises:
and when the client requests the same material again, the streaming media server sends the material in the specified compression format in the cache to the client.
4. The method of claim 1, wherein after the step of the streaming server sending the specified compressed material to the client, the method further comprises:
after the client receives the material in the specified compression format, the streaming media management server releases the process of the streaming media server;
and the streaming media management server updates the stored information of the streaming media management server according to the message for releasing the process.
5. The streaming media server cloud data processing device is characterized by comprising: the system comprises a client, a streaming media server, a load balancing server and a streaming media management server;
the client comprises:
a send path message module: the path information of the original materials in the cloud storage server acquired from the cloud background management server is sent to the streaming media server;
the streaming media server includes:
a material obtaining module: the system is used for acquiring the raw materials from the cloud storage server;
the coding and decoding component module: the method is used for coding and decoding the original material in a coding and decoding assembly in the streaming media server to obtain the material in a specified compression format;
and a material output module: the system is configured to send the specified material in the compressed format to the client, and specifically configured to: sending the video and audio pictures required by the client to the client in real time in a compressed stream mode;
the client further comprises:
a first connection request module: the system comprises a first connection request sending unit, a second connection request sending unit and a load balancing server, wherein the first connection request is used for sending a first connection request to the load balancing server;
a link building module: the system comprises a server, a server and a server, wherein the server is used for searching a corresponding streaming media server according to information and establishing connection with the streaming media server;
the load balancing server includes:
a second connection request module: the streaming media management server is used for sending a second connection request to the streaming media management server according to the first connection request;
a second create process notification module: the system comprises a client, a process and a server, wherein the client is used for receiving process information and returning the process information to the client;
a first stored information module: the information used for updating the stored streaming media management server;
the streaming media management server includes:
creating a process module: the server process is used for creating a new streaming media server process according to the second connection request;
a first create process notification module: and the information used for returning the process to the load balancing server.
6. The apparatus of claim 5, wherein the streaming server further comprises:
a cache module: and the system is used for caching the material in the specified compression format.
7. The apparatus of claim 6, wherein the streaming server further comprises:
a cache sending module: and the client is used for sending the materials in the specified compression format in the cache to the client.
8. The apparatus of claim 5, wherein the streaming media management server further comprises:
a release process module: a process for releasing the streaming server;
a second storage information module: and the information used for updating the stored streaming media management server according to the message for releasing the process.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611109510.8A CN106658047B (en) | 2016-12-06 | 2016-12-06 | Streaming media server cloud data processing method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611109510.8A CN106658047B (en) | 2016-12-06 | 2016-12-06 | Streaming media server cloud data processing method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106658047A CN106658047A (en) | 2017-05-10 |
CN106658047B true CN106658047B (en) | 2020-04-10 |
Family
ID=58818363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611109510.8A Expired - Fee Related CN106658047B (en) | 2016-12-06 | 2016-12-06 | Streaming media server cloud data processing method and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106658047B (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113453025B (en) * | 2020-03-26 | 2023-02-28 | 杭州海康威视系统技术有限公司 | Data acquisition method and device |
CN111600957A (en) * | 2020-05-20 | 2020-08-28 | 中国工商银行股份有限公司 | File transmission method, device and system and electronic equipment |
CN113852840B (en) * | 2021-09-18 | 2023-08-22 | 北京百度网讯科技有限公司 | Video rendering method, device, electronic equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1403934A (en) * | 2001-09-06 | 2003-03-19 | 华为技术有限公司 | Load balancing method and equipment for convective medium server |
CN101207550A (en) * | 2007-03-16 | 2008-06-25 | 中国科学技术大学 | Load balancing system and method for realizing load balancing of multiple services |
CN102868707A (en) * | 2011-07-04 | 2013-01-09 | 腾讯科技(深圳)有限公司 | Method and system for downloading and transcoding file |
CN105828105A (en) * | 2015-12-10 | 2016-08-03 | 广东亿迅科技有限公司 | Distributed environment-based video transcoding system and video transcoding method |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160012136A1 (en) * | 2013-03-07 | 2016-01-14 | Eyeducation A.Y. LTD | Simultaneous Local and Cloud Searching System and Method |
-
2016
- 2016-12-06 CN CN201611109510.8A patent/CN106658047B/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1403934A (en) * | 2001-09-06 | 2003-03-19 | 华为技术有限公司 | Load balancing method and equipment for convective medium server |
CN101207550A (en) * | 2007-03-16 | 2008-06-25 | 中国科学技术大学 | Load balancing system and method for realizing load balancing of multiple services |
CN102868707A (en) * | 2011-07-04 | 2013-01-09 | 腾讯科技(深圳)有限公司 | Method and system for downloading and transcoding file |
CN105828105A (en) * | 2015-12-10 | 2016-08-03 | 广东亿迅科技有限公司 | Distributed environment-based video transcoding system and video transcoding method |
Also Published As
Publication number | Publication date |
---|---|
CN106658047A (en) | 2017-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11374995B2 (en) | Multimedia file processing | |
US10732917B2 (en) | Systems, methods, and apparatuses for implementing frame aggregation with screen sharing | |
US11005903B2 (en) | Processing of streamed multimedia data | |
CN105488837B (en) | Real-time off screen rendering method based on cloud computing, apparatus and system | |
US9271003B2 (en) | Real-time audio or video transcoding | |
JP7386990B2 (en) | Video playback methods, devices, equipment and computer programs | |
CN108449633B (en) | Set top box cloud system based on NFV and service implementation method | |
CN103327415B (en) | Method and device for accelerating network video downloading | |
RU2745343C1 (en) | Cloud desktop system and method of coding with compression of image sequences, and corresponding data storage | |
US11381885B2 (en) | Method and device for managing processing of media content, and computer-readable recording medium | |
JP2009506456A (en) | Remote protocol support for large object communication in any format | |
US11392402B1 (en) | Coordinated migration of network-accessible services while maintaining service availability in prior environment | |
CA2840106A1 (en) | Offline download method, multimedia file download method and system thereof | |
WO2017107911A1 (en) | Method and device for playing video with cloud video platform | |
CN106658047B (en) | Streaming media server cloud data processing method and device | |
US9607002B2 (en) | File retrieval from multiple storage locations | |
CN102202061A (en) | Client-server session parallelization | |
US20170142454A1 (en) | Third-party video pushing method and system | |
WO2017137631A1 (en) | Technologies for distributed fault-tolerant transcoding with synchronized streams | |
US20210029223A1 (en) | Accelerated Data Center Transfers | |
CN104052679A (en) | Load balancing method and device for network flow | |
US10892984B1 (en) | Framework for routing media streams in a provider network | |
CN104572964A (en) | A method and device for decompressing compressed files | |
Song et al. | An optimized hybrid remote display protocol using GPU-assisted M-JPEG encoding and novel high-motion detection algorithm | |
CN113052957A (en) | Three-dimensional virtual simulation experiment method and device and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200410 Termination date: 20201206 |