CN113794909A - Video streaming system, method, server, device, and storage medium - Google Patents

Video streaming system, method, server, device, and storage medium Download PDF

Info

Publication number
CN113794909A
CN113794909A CN202111020644.3A CN202111020644A CN113794909A CN 113794909 A CN113794909 A CN 113794909A CN 202111020644 A CN202111020644 A CN 202111020644A CN 113794909 A CN113794909 A CN 113794909A
Authority
CN
China
Prior art keywords
server
target
video stream
streaming
acquisition request
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.)
Pending
Application number
CN202111020644.3A
Other languages
Chinese (zh)
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202111020644.3A priority Critical patent/CN113794909A/en
Publication of CN113794909A publication Critical patent/CN113794909A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The disclosure provides a video streaming transmission system, a video streaming transmission method, a video streaming server, a video streaming device and a storage medium, relates to the technical field of computer communication, in particular to the technical field of Internet of things and information streaming, and can be applied to scenes such as video playing. The specific scheme is as follows: the reverse proxy server receives an acquisition request aiming at the video stream and sends the acquisition request to a target forwarding server in at least one forwarding server; the target forwarding server sends the acquisition request to a target streaming media server associated with the target forwarding server; and the target streaming media server calls the target video stream indicated by the acquisition request and returns the target video stream through the target forwarding server and the reverse proxy server. A third party can obtain a plurality of video streams through one port, so that the difficulty in obtaining the video streams is reduced; the request can be forwarded to the corresponding streaming media server through the forwarding server, so that the risk that a third party cannot smoothly access the streaming media server due to address change is avoided.

Description

Video streaming system, method, server, device, and storage medium
Technical Field
The disclosure relates to the technical field of computer communication, in particular to the technical field of Internet of things and information flow, and can be applied to scenes such as video playing.
Background
An existing system for providing a streaming media service generally includes a plurality of streaming media servers, and a third party needs to access ports of different streaming media servers to acquire corresponding video streams, which increases difficulty of the third party in acquiring the video streams; in addition, the address of the streaming server may be changed in some cases, which may result in that a third party cannot smoothly access the streaming server to acquire the video stream.
Disclosure of Invention
The present disclosure provides a video streaming system, method, server, apparatus, and storage medium.
According to a first aspect of the present disclosure, there is provided a video streaming system comprising a reverse proxy server, at least one forwarding server, and a streaming media server associated with each forwarding server;
the reverse proxy server receives an acquisition request aiming at the video stream and sends the acquisition request to a target forwarding server in at least one forwarding server;
the target forwarding server receives the acquisition request and sends the acquisition request to a target streaming media server associated with the target forwarding server;
and the target streaming media server receives the acquisition request, calls the target video stream indicated by the acquisition request, and returns the target video stream through the target forwarding server and the reverse proxy server.
According to a second aspect of the present disclosure, there is provided a video streaming method applied to the streaming server of the video streaming system of the first aspect, including:
receiving an acquisition request which is sent by a target forwarding server associated with a streaming media server and aims at a video stream, wherein the acquisition request is sent to the target forwarding server by a proxy server;
and calling the target video stream indicated by the acquisition request, and returning the target video stream through the target forwarding server and the reverse proxy server.
According to a third aspect of the present disclosure, there is provided a video streaming apparatus comprising:
the request receiving module is used for receiving an acquisition request which is sent by a target forwarding server associated with the streaming media server and aims at the video stream, wherein the acquisition request is sent to the target forwarding server by the proxy server;
and the video stream returning module is used for calling the target video stream indicated by the acquisition request and returning the target video stream through the target forwarding server and the reverse proxy server.
According to a fourth aspect of the present disclosure, there is provided a streaming media server, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the video streaming method described above.
According to a fifth aspect of the present disclosure, there is provided a non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to execute the video streaming method described above.
According to a sixth aspect of the present disclosure, there is provided a computer program product comprising a computer program which, when executed by a processor, implements the video streaming method described above.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present disclosure, nor do they limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
The technical scheme provided by the disclosure has the following beneficial effects:
in the technical scheme of the disclosure, the video stream transmission system deploys the reverse proxy servers, binds the corresponding forwarding server for each streaming media server, and uses the port of the reverse proxy server as a common port for accessing all the streaming media servers, so that a third party can conveniently obtain a plurality of video streams through one port, thereby reducing the difficulty in obtaining the video streams; in addition, the request can be forwarded to the corresponding streaming media server through the forwarding server, so that the risk that a third party cannot smoothly access the streaming media server due to address change is avoided.
Drawings
The drawings are included to provide a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
fig. 1 shows an architecture diagram of a video streaming system provided by an embodiment of the present disclosure;
fig. 2 is a schematic flow chart illustrating a video streaming method provided by an embodiment of the present disclosure;
fig. 3 is a schematic diagram of a video streaming apparatus provided by an embodiment of the present disclosure;
fig. 4 shows a schematic block diagram of an example streaming media server that can be used to implement the video streaming method provided by the embodiments of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the disclosure are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
An existing system for providing a streaming media service generally includes a plurality of streaming media servers, and a third party needs to access ports of different streaming media servers to obtain corresponding video streams, which increases difficulty of obtaining video streams by the third party and also may have a large potential safety hazard. The address of the streaming media server may be changed in some cases, for example, when the streaming media service is upgraded, the address of the streaming media server may be changed, and after the streaming media service is changed, a third party may not access the streaming media service smoothly, and thus the video stream may not be acquired. In addition, when the existing platform for deploying the streaming media service is used for online or offline streaming media service, the development of the manual examination and approval port opening and closing of operation and maintenance personnel is needed, and more labor cost is increased.
The disclosed embodiments provide a video streaming system, a method, a server, a device and a storage medium, which aim to solve at least one of the above technical problems of the prior art.
Fig. 1 shows a schematic architecture diagram of a video streaming system provided by the disclosed embodiment, and as shown in fig. 1, the video streaming system includes a reverse proxy server, at least one forwarding server, and a streaming media server associated with each forwarding server. Wherein each forwarding server can communicate with the reverse proxy server, and the forwarding server can communicate with the associated streaming media server.
The Reverse Proxy server is used for Proxy receiving a connection request on the internet, then forwarding the request to an internal server (such as a forwarding server) on an internal network, and returning a result obtained from the internal server to a client requesting connection on the internet, where the Proxy server is represented as a server to the outside.
Streaming media refers to a form of media that streams audio, video, and multimedia files over a network. Compared with the network playing mode of watching after downloading, the streaming media is typically characterized in that continuous audio and video information is compressed and then put on a streaming media server, and a user can watch while downloading without waiting for the whole file to be downloaded. The streaming media server is a core system of streaming media application and is a key platform for providing video service for users; the main functions of the streaming media server are to collect, cache, schedule, transmit and play streaming media contents. The streaming media server of the embodiment of the present disclosure is mainly used for serving streaming media, which is mainly video streaming, and of course, the streaming media server may also be used for serving other types of streaming media.
The forwarding server may serve as a message forwarding node between the reverse proxy server and the streaming server, and forward a message (e.g., a request) sent by the reverse proxy server to the streaming server, and forward a message (e.g., a video stream) sent by the streaming server to the reverse proxy server.
In the embodiment of the present disclosure, the reverse proxy service may be an nginnx reverse proxy server, and of course, the reverse proxy server in the video streaming system may also be another type of server, which is not limited by the present disclosure. The video streaming system may deploy servers using the kubernets (K8s) architecture, each of which may be considered as a Pod in the kubernets architecture, although the video streaming system may deploy servers using other types of architectures, and the disclosure is not limited thereto.
Alternatively, the video streaming system may be pre-partitioned into multiple namespaces (Name spaces), and each streaming service and its forwarding server may be deployed in a specified namespace. As shown in fig. 1, the video streaming system may pre-partition a namespace a and a namespace B, and the streaming media servers in the same namespace are used for serving video streams in the same scene.
For example, at least one monitoring device is respectively arranged in an area a and an area B to acquire video streams, wherein a streaming media server in a namespace a is used for the video stream acquired by the monitoring device serving the area a, and a streaming media server in a namespace B is used for the video stream acquired by the monitoring device serving the area B. It is understood that video stream 1, video stream 2 and video stream 3 in fig. 1 are all video streams captured by the monitoring devices of area a.
In the embodiment of the disclosure, the reverse proxy server receives an acquisition request for the video stream, and sends the acquisition request to a target forwarding server in the at least one forwarding server. In the embodiment of the present disclosure, the port of the reverse proxy server may be a common port for accessing all streaming media servers in the video streaming system, and the acquisition request for the video stream sent by the third party may be received by the reverse proxy server. For ease of understanding and description, the embodiments of the present disclosure define the forwarding server that needs to receive the acquisition request sent by the reverse proxy server as the target forwarding server.
It is to be appreciated that the acquisition request can indicate a corresponding target forwarding server, and the reverse proxy server can determine the target forwarding server from the at least one forwarding server based on the indication of the acquisition request. Optionally, the obtaining request of the embodiment of the present disclosure includes name information of a forwarding service. Before the reverse proxy server sends the obtaining request to a target forwarding server in the at least one forwarding server, the reverse proxy server may further parse name information from the obtaining request, and determine the target forwarding server from the at least one forwarding server based on the name information.
The target forwarding server may receive the obtaining request sent by the reverse proxy server, and send the obtaining request to a target streaming media server associated with the target forwarding server. The forwarding servers and the streaming media servers deployed in the video streaming transmission system of the embodiment of the disclosure are in one-to-one correspondence, and when the forwarding servers and the streaming media servers are deployed, the association relationship between each forwarding server and the corresponding streaming media server can be established. For ease of understanding and description, embodiments of the present disclosure define a streaming server associated with a target forwarding server as a target streaming server.
And the target streaming media server receives the acquisition request sent by the associated target forwarding server, calls the target video stream indicated by the acquisition request, and returns the target video stream through the target forwarding server and the reverse proxy server. It is to be understood that each streaming server may be configured to serve at least one video stream, and in the embodiment of the present disclosure, the video stream indicated by the retrieval request may be defined as the target video stream. After the target streaming media service calls the target video stream, the target streaming media service can send the target video stream to the target forwarding server, then the target forwarding server sends the target video stream to the reverse proxy server, and the reverse proxy server returns the target video stream to the third party.
It is to be understood that the acquisition request may indicate a corresponding target video stream, and the target streaming media server may invoke the target video stream indicated by the acquisition request based on the indication of the acquisition request. Optionally, the obtaining request of the embodiment of the present disclosure includes address information of one path of video stream. When the streaming media server calls the target video stream indicated by the acquisition request, the streaming media server is specifically configured to: analyzing the address information from the acquisition request, and sending a video stream calling request to the video shooting equipment indicated by the address information; and receiving the target video stream returned by the video shooting device according to the video stream calling request.
As described above, the acquisition request may include name information of the target forwarding server and address information of the target video stream to be acquired. In the embodiment of the present disclosure, after the streaming media server is deployed to the video streaming system, a worker may generate a splicing address for acquiring a video stream for each video stream based on name information of a forwarding server corresponding to the streaming media server, address information of the video stream used by the streaming media server for service, and other necessary information. For example, the splicing address may include an address of the reverse proxy server, a code of a port of the reverse proxy server, name information of a forwarding server corresponding to the streaming server, address information of a video stream served by the streaming server, a name of a namespace to which the streaming server belongs, and the like. The staff member can store the splicing address to a third party, and the third party can send a video stream acquisition request containing the splicing address so as to acquire the corresponding video stream through the video stream transmission system.
For example, taking video stream 1 and the streaming media server for serving video stream 1 in fig. 1 as an example, the corresponding splicing address of video stream 1 may be: http://192.168.1.100:8080/realtime-ServiceA-NameSpaceA/main _ stream/0. flv. Among the above addresses, "192.168.1.100" is an address of the reverse proxy server, "8080" is a code of a port of the reverse proxy server, "name information of a forwarding server corresponding to the" ServiceA "streaming server," main _ stream "is address information of the video stream 1, and" NameSpaceA "is a name of a namespace to which the streaming server belongs. The third party may send a request for acquiring the video stream including the splicing address, so as to acquire the video stream 1 from the service management platform.
In the embodiment of the present disclosure, each streaming server may have a unique tag, and each forwarding server is associated and bound with the unique tag of the corresponding streaming server. In the embodiment of the disclosure, after the streaming media server is deployed to the video streaming system, a unique tag may be generated for the streaming media server, and the unique tag of the streaming media server is associated and bound with a corresponding forwarding server, so that even if the address of the streaming media server changes, the streaming media server can communicate with the forwarding server through the forwarding server.
Optionally, when the target forwarding server sends the obtaining request to the target streaming media server associated with the target forwarding server, the target forwarding server may determine a unique tag associated and bound with the target forwarding server, and send the obtaining request to the target streaming media server corresponding to the unique tag. As described above, the unique tag of each streaming media server is associated with the forwarding server corresponding to the streaming media server. Therefore, the forwarding server service may determine the unique tag bound thereto, thereby determining the target streaming media server corresponding to the unique tag, and then may forward the acquisition request to the target streaming media server.
The reverse proxy servers are deployed in the video streaming transmission system of the embodiment of the disclosure, the corresponding forwarding server is bound to each streaming media server, and the port of the reverse proxy server can be used as a common port for accessing all the streaming media servers, so that a third party can conveniently obtain a plurality of video streams through one port, and the difficulty in obtaining the video streams is reduced; in addition, the request can be forwarded to the corresponding streaming media server through the forwarding server, so that the risk that a third party cannot smoothly access the streaming media server due to address change is avoided.
Fig. 2 shows a schematic flowchart of a video streaming method provided by an embodiment of the present disclosure, where the method is applied to a streaming media server of the video streaming system, as shown in fig. 2, the method mainly includes the following steps:
s210: a transmitted acquisition request for a video stream is received from a target forwarding server associated with a streaming server.
In step S210, the acquisition request is sent by the proxy server to the target forwarding server. Specifically, a port of the reverse proxy server may be used as a common port for accessing all streaming media servers in the video streaming system, and an acquisition request sent by a third party for receiving a video stream may be received by the reverse proxy server.
The acquisition request may indicate a corresponding target forwarding server, and the reverse proxy server may determine the target forwarding server from the at least one forwarding server based on the indication of the acquisition request. Optionally, the obtaining request includes name information of a forwarding service. The target forwarding server is determined from the at least one forwarding server based on the name information after the reverse proxy server parses the name information from the get request.
The target forwarding server may receive the obtaining request sent by the reverse proxy server, and send the obtaining request to a target streaming media server associated with the target forwarding server. Optionally, each streaming media server has a unique tag, and each forwarding server is associated and bound with the unique tag of the corresponding streaming media server. In the embodiment of the disclosure, after the streaming media server is deployed to the video streaming system, a unique tag may be generated for the streaming media server, and the unique tag of the streaming media server is associated and bound with a corresponding forwarding server, so that even if the address of the streaming media server changes, the streaming media server can communicate with the forwarding server through the forwarding server. When the target forwarding server sends the obtaining request to the target streaming media server associated with the target forwarding server, the target forwarding server may determine the unique label associated and bound with the target forwarding server, and send the obtaining request to the target streaming media server corresponding to the unique label.
S220: and calling the target video stream indicated by the acquisition request, and returning the target video stream through the target forwarding server and the reverse proxy server.
It is to be understood that each streaming server may be configured to serve at least one video stream, and in the embodiment of the present disclosure, the video stream indicated by the retrieval request may be defined as the target video stream. After the target streaming media service calls the target video stream, the target streaming media service can send the target video stream to the target forwarding server, then the target forwarding server sends the target video stream to the reverse proxy server, and the reverse proxy server returns the target video stream to the third party.
It is to be understood that the acquisition request may indicate a corresponding target video stream, and the target streaming media server may invoke the target video stream indicated by the acquisition request based on the indication of the acquisition request. Optionally, the obtaining request of the embodiment of the present disclosure includes address information of one path of video stream. When the streaming media server calls the target video stream indicated by the acquisition request, the streaming media server can analyze the address information from the acquisition request, send the video stream call request to the video shooting device indicated by the address information, and then receive the target video stream returned by the video shooting device for the video stream call request.
As described above, the acquisition request may include name information of the target forwarding server and address information of the target video stream to be acquired. In the embodiment of the present disclosure, after the streaming media server is deployed to the video streaming system, a worker may generate a splicing address for acquiring a video stream for each video stream based on name information of a forwarding server corresponding to the streaming media server, address information of the video stream used by the streaming media server for service, and other necessary information. For example, the splicing address may include an address of the reverse proxy server, a code of a port of the reverse proxy server, name information of a forwarding server corresponding to the streaming server, address information of a video stream served by the streaming server, a name of a namespace to which the streaming server belongs, and the like. The staff member can store the splicing address to a third party, and the third party can send a video stream acquisition request containing the splicing address so as to acquire the corresponding video stream through the video stream transmission system.
According to the video stream transmission method provided by the embodiment of the disclosure, the port of the reverse proxy service can be used as a public port for accessing all streaming media servers, so that a third party can conveniently obtain a plurality of video streams through one port, and the difficulty in obtaining the video streams is reduced; in addition, the request can be forwarded to the corresponding streaming media server through the forwarding server, so that the risk that a third party cannot smoothly access the streaming media server due to address change is avoided.
Based on the same principle as the video streaming method described above, fig. 3 shows a schematic diagram of a video streaming apparatus provided by an embodiment of the present disclosure. As shown in fig. 3, the video streaming apparatus 300 includes a request receiving module 310 and a video stream returning module 320.
The request receiving module 310 is configured to receive an acquisition request for a video stream, which is sent by a target forwarding server associated with a streaming media server, where the acquisition request is sent to the target forwarding server by a proxy server.
The video stream returning module 320 is configured to retrieve the target video stream indicated by the obtaining request, and return the target video stream through the target forwarding server and the reverse proxy server.
According to the video stream transmission device provided by the embodiment of the disclosure, the port of the reverse proxy service can be used as a public port for accessing all the streaming media servers, so that a third party can conveniently obtain a plurality of video streams through one port, and the difficulty in obtaining the video streams is reduced; in addition, the request can be forwarded to the corresponding streaming media server through the forwarding server, so that the risk that a third party cannot smoothly access the streaming media server due to address change is avoided.
In the embodiment of the disclosure, the acquisition request includes address information of one path of video stream; when the video stream returning module 320 is configured to retrieve the target video stream indicated by the obtaining request, specifically:
analyzing the address information from the acquisition request, and sending a video stream calling request to the video shooting equipment indicated by the address information;
and receiving the target video stream returned by the video shooting device according to the video stream calling request.
In the embodiment of the present disclosure, each streaming media server has a unique tag, and each forwarding server is associated and bound with the unique tag of the corresponding streaming media server.
In the embodiment of the disclosure, the obtaining request includes name information of a forwarding service; the target forwarding server is determined from the at least one forwarding server based on the name information after the reverse proxy server parses the name information from the get request.
It is understood that the above modules of the video streaming apparatus in the embodiment of the present disclosure have functions of implementing the corresponding steps of the above video streaming method. The function can be realized by hardware, and can also be realized by executing corresponding software by hardware. The hardware or software includes one or more modules corresponding to the functions described above. The modules can be software and/or hardware, and each module can be implemented independently or by integrating a plurality of modules. For the functional description of each module of the video streaming apparatus, reference may be made to the corresponding description of the video streaming method, which is not described herein again.
The present disclosure also provides a streaming media server, a readable storage medium, and a computer program product according to embodiments of the present disclosure.
Fig. 4 shows a schematic block diagram of an example streaming media server that can be used to implement the video streaming method provided by the embodiments of the present disclosure. Streaming media servers are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other suitable computers. The streaming media server may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 4, the streaming server 400 includes a computing unit 401 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM)402 or a computer program loaded from a storage unit 408 into a Random Access Memory (RAM) 403. In the RAM 403, various programs and data necessary for the operation of the streaming server 400 can also be stored. The computing unit 401, ROM 402, and RAM 403 are connected to each other via a bus 404. An input/output (I/O) interface 405 is also connected to bus 404.
A number of components in the streaming server 400 are connected to the I/O interface 405, including: an input unit 406 such as a keyboard, a mouse, or the like; an output unit 407 such as various types of displays, speakers, and the like; a storage unit 408 such as a magnetic disk, optical disk, or the like; and a communication unit 409 such as a network card, modem, wireless communication transceiver, etc. The communication unit 409 allows the streaming server 400 to exchange information/data with other devices through a computer network such as the internet and/or various telecommunication networks.
Computing unit 401 may be a variety of general and/or special purpose processing components with processing and computing capabilities. Some examples of the computing unit 401 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various dedicated Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and so forth. The computing unit 401 executes the respective methods and processes described above, such as the video streaming method. For example, in some embodiments, the video streaming method may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as storage unit 408. In some embodiments, part or all of the computer program may be loaded and/or installed onto the streaming server 400 via the ROM 402 and/or the communication unit 409. When the computer program is loaded into RAM 403 and executed by computing unit 401, one or more steps of the video streaming method described above may be performed. Alternatively, in other embodiments, the computing unit 401 may be configured to perform the video streaming method by any other suitable means (e.g. by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server may be a cloud server, a server of a distributed system, or a server with a combined blockchain.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present disclosure may be executed in parallel or sequentially or in different orders, and are not limited herein as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved.
The above detailed description should not be construed as limiting the scope of the disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present disclosure should be included in the scope of protection of the present disclosure.

Claims (16)

1. A video streaming system comprising a reverse proxy server, at least one forwarding server, and a streaming media server associated with each forwarding server;
the reverse proxy server receives an acquisition request aiming at the video stream and sends the acquisition request to a target forwarding server in the at least one forwarding server;
the target forwarding server receives the acquisition request and sends the acquisition request to a target streaming media server associated with the target forwarding server;
and the target streaming media server receives the acquisition request, calls a target video stream indicated by the acquisition request, and returns the target video stream through the target forwarding server and the reverse proxy server.
2. The system of claim 1, wherein the get request includes name information for a forwarding service;
before the reverse proxy server sends the get request to a target forwarding server of the at least one forwarding server, the reverse proxy server is further configured to: and analyzing the name information from the acquisition request, and determining a target forwarding server from the at least one forwarding server based on the name information.
3. The system of claim 1, wherein the request for acquisition includes address information of a video stream; when the streaming media server calls the target video stream indicated by the acquisition request, the streaming media server is specifically configured to:
analyzing the address information from the acquisition request, and sending a video stream calling request to video shooting equipment indicated by the address information;
and receiving the target video stream returned by the video shooting equipment according to the video stream calling request.
4. The method of claim 3, wherein each of the streaming servers has a unique tag, and each of the forwarding servers is associated with a unique tag of the corresponding streaming server.
5. The method according to claim 4, wherein the target forwarding server, when sending the acquisition request to the target streaming server associated with the target forwarding server, is specifically configured to:
determining a unique label associated with the target forwarding server;
and sending the acquisition request to a target streaming media server corresponding to the unique label.
6. A video streaming method applied to the streaming server of the video streaming system according to claim 1, comprising:
receiving an acquisition request for a video stream sent by a target forwarding server associated with the streaming media server, wherein the acquisition request is sent to the target forwarding server by a proxy server;
and calling the target video stream indicated by the acquisition request, and returning the target video stream through the target forwarding server and the reverse proxy server.
7. The method of claim 6, wherein the request for acquisition includes address information of a video stream; the calling the target video stream indicated by the acquisition request comprises:
analyzing the address information from the acquisition request, and sending a video stream calling request to video shooting equipment indicated by the address information;
and receiving the target video stream returned by the video shooting equipment according to the video stream calling request.
8. The method of claim 6, wherein each of the streaming servers has a unique tag, and each of the forwarding servers is associated with a unique tag of the corresponding streaming server.
9. The method of claim 6, wherein the get request includes name information of a forwarding service; the target forwarding server is determined from at least one forwarding server based on the name information by the reverse proxy server after the name information is parsed from the acquisition request.
10. A video streaming apparatus comprising:
a request receiving module, configured to receive an acquisition request for a video stream, sent by a target forwarding server associated with the streaming media server, where the acquisition request is sent to the target forwarding server by a proxy server;
and the video stream returning module is used for calling the target video stream indicated by the acquisition request and returning the target video stream through the target forwarding server and the reverse proxy server.
11. The apparatus of claim 10, wherein the request for acquisition includes address information of a video stream; when the video stream returning module is configured to call the target video stream indicated by the acquisition request, the video stream returning module is specifically configured to:
analyzing the address information from the acquisition request, and sending a video stream calling request to video shooting equipment indicated by the address information;
and receiving the target video stream returned by the video shooting equipment according to the video stream calling request.
12. The apparatus of claim 10, wherein each of the streaming servers has a unique tag, and each of the forwarding servers is associated with a unique tag of the corresponding streaming server.
13. The apparatus of claim 10, wherein the get request includes name information of a forwarding service; the target forwarding server is determined from at least one forwarding server based on the name information by the reverse proxy server after the name information is parsed from the acquisition request.
14. A streaming media server, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 6-9.
15. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 6-9.
16. A computer program product comprising a computer program which, when executed by a processor, implements the method according to any one of claims 6-9.
CN202111020644.3A 2021-09-01 2021-09-01 Video streaming system, method, server, device, and storage medium Pending CN113794909A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111020644.3A CN113794909A (en) 2021-09-01 2021-09-01 Video streaming system, method, server, device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111020644.3A CN113794909A (en) 2021-09-01 2021-09-01 Video streaming system, method, server, device, and storage medium

Publications (1)

Publication Number Publication Date
CN113794909A true CN113794909A (en) 2021-12-14

Family

ID=79182517

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111020644.3A Pending CN113794909A (en) 2021-09-01 2021-09-01 Video streaming system, method, server, device, and storage medium

Country Status (1)

Country Link
CN (1) CN113794909A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114401453A (en) * 2022-01-14 2022-04-26 京东方科技集团股份有限公司 Data processing method, device, computing equipment and medium
CN114584561A (en) * 2022-03-15 2022-06-03 联想(北京)有限公司 Information processing method and device and electronic equipment
CN114697090A (en) * 2022-03-17 2022-07-01 北京声智科技有限公司 System, method, device, storage medium and product for acquiring streaming media
CN115767179A (en) * 2022-11-08 2023-03-07 北京百度网讯科技有限公司 Video stream processing method, system, electronic device and storage medium
CN116016995A (en) * 2022-12-02 2023-04-25 长扬科技(北京)股份有限公司 Video acquisition equipment and method
CN116708381A (en) * 2023-08-04 2023-09-05 腾讯科技(深圳)有限公司 Cross-network data transmission method and device, storage medium and electronic equipment
WO2023173838A1 (en) * 2022-03-18 2023-09-21 腾讯科技(深圳)有限公司 Virtual scene loading method and apparatus, device, computer-readable storage medium, and computer program product

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1612561A (en) * 2003-10-29 2005-05-04 国际商业机器公司 Network data processing system and service method in said system
CN101505414A (en) * 2009-02-23 2009-08-12 北京佳讯飞鸿电气股份有限公司 Implementing method for accessing frontend equipments of different network mode by video monitoring system
CN107911706A (en) * 2017-12-18 2018-04-13 青岛国信发展(集团)有限责任公司 The audio/video player system and method for multi-brand compatibility
CN108092995A (en) * 2018-01-12 2018-05-29 珠海市杰理科技股份有限公司 Streaming medium data processing method, device, computer equipment and storage medium
CN109889911A (en) * 2019-03-26 2019-06-14 南京海比信息技术有限公司 The method that a port carries multiple stream protocols is realized in Streaming Media reverse proxy service
CN109963171A (en) * 2017-12-14 2019-07-02 腾讯科技(深圳)有限公司 Transmitting of Multi-media Information method, transmission device and storage medium
CN110138729A (en) * 2019-04-02 2019-08-16 视联动力信息技术股份有限公司 A kind of data capture method and view networked system
CN110445837A (en) * 2019-07-05 2019-11-12 视联动力信息技术股份有限公司 High concurrent group system and building method, high concurrent request processing method and device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1612561A (en) * 2003-10-29 2005-05-04 国际商业机器公司 Network data processing system and service method in said system
CN101505414A (en) * 2009-02-23 2009-08-12 北京佳讯飞鸿电气股份有限公司 Implementing method for accessing frontend equipments of different network mode by video monitoring system
CN109963171A (en) * 2017-12-14 2019-07-02 腾讯科技(深圳)有限公司 Transmitting of Multi-media Information method, transmission device and storage medium
CN107911706A (en) * 2017-12-18 2018-04-13 青岛国信发展(集团)有限责任公司 The audio/video player system and method for multi-brand compatibility
CN108092995A (en) * 2018-01-12 2018-05-29 珠海市杰理科技股份有限公司 Streaming medium data processing method, device, computer equipment and storage medium
CN109889911A (en) * 2019-03-26 2019-06-14 南京海比信息技术有限公司 The method that a port carries multiple stream protocols is realized in Streaming Media reverse proxy service
CN110138729A (en) * 2019-04-02 2019-08-16 视联动力信息技术股份有限公司 A kind of data capture method and view networked system
CN110445837A (en) * 2019-07-05 2019-11-12 视联动力信息技术股份有限公司 High concurrent group system and building method, high concurrent request processing method and device

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114401453A (en) * 2022-01-14 2022-04-26 京东方科技集团股份有限公司 Data processing method, device, computing equipment and medium
CN114401453B (en) * 2022-01-14 2024-04-16 京东方科技集团股份有限公司 Data processing method, device, computing equipment and medium
CN114584561A (en) * 2022-03-15 2022-06-03 联想(北京)有限公司 Information processing method and device and electronic equipment
CN114697090A (en) * 2022-03-17 2022-07-01 北京声智科技有限公司 System, method, device, storage medium and product for acquiring streaming media
CN114697090B (en) * 2022-03-17 2024-01-09 北京声智科技有限公司 Streaming media acquisition system, method, device, storage medium and product
WO2023173838A1 (en) * 2022-03-18 2023-09-21 腾讯科技(深圳)有限公司 Virtual scene loading method and apparatus, device, computer-readable storage medium, and computer program product
US11980812B2 (en) 2022-03-18 2024-05-14 Tencent Technology (Shenzhen) Company Limited Cloud gaming by streaming video data on playback device
CN115767179A (en) * 2022-11-08 2023-03-07 北京百度网讯科技有限公司 Video stream processing method, system, electronic device and storage medium
CN116016995A (en) * 2022-12-02 2023-04-25 长扬科技(北京)股份有限公司 Video acquisition equipment and method
CN116016995B (en) * 2022-12-02 2023-08-22 长扬科技(北京)股份有限公司 Video acquisition equipment and method
CN116708381A (en) * 2023-08-04 2023-09-05 腾讯科技(深圳)有限公司 Cross-network data transmission method and device, storage medium and electronic equipment
CN116708381B (en) * 2023-08-04 2023-11-14 腾讯科技(深圳)有限公司 Cross-network data transmission method and device, storage medium and electronic equipment

Similar Documents

Publication Publication Date Title
CN113794909A (en) Video streaming system, method, server, device, and storage medium
CN111198859B (en) Data processing method, device, electronic equipment and computer readable storage medium
CN112445868B (en) Service message processing method and device
CN111427701A (en) Workflow engine system and business processing method
CN111478781B (en) Message broadcasting method and device
CN109151056B (en) Method and system for pushing messages based on Canal
CN111818194A (en) Domain name based access system and method
CN110245014B (en) Data processing method and device
CN111274104B (en) Data processing method, device, electronic equipment and computer readable storage medium
CN113535371A (en) Method and device for multithreading asynchronous loading of resources
CN113824689B (en) Edge computing network, data transmission method, device, equipment and storage medium
CN113365140B (en) MP4 online playing method, device, equipment, storage medium and program product
CN114374703A (en) Method, device and equipment for acquiring cloud mobile phone information and storage medium
CN115248735A (en) Log data output control method, device, equipment and storage medium
CN113765871B (en) Method and device for managing fort machine
CN114070889A (en) Configuration method, traffic forwarding method, device, storage medium, and program product
CN113852835A (en) Live broadcast audio processing method and device, electronic equipment and storage medium
CN113779018A (en) Data processing method and device
CN112099841A (en) Method and system for generating configuration file
CN112559001A (en) Method and device for updating application
CN114157917B (en) Video editing method and device and terminal equipment
US20210144048A1 (en) Method and apparatus for outputting information
CN114095758B (en) Cloud image intercepting method and related device
CN112799863B (en) Method and device for outputting information
CN114416414B (en) Fault information positioning method, device, equipment and storage medium

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