WO2023165372A1 - 视频流获取方法、装置、***、设备和介质 - Google Patents
视频流获取方法、装置、***、设备和介质 Download PDFInfo
- Publication number
- WO2023165372A1 WO2023165372A1 PCT/CN2023/077301 CN2023077301W WO2023165372A1 WO 2023165372 A1 WO2023165372 A1 WO 2023165372A1 CN 2023077301 W CN2023077301 W CN 2023077301W WO 2023165372 A1 WO2023165372 A1 WO 2023165372A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- target
- address
- intranet
- domain name
- edge server
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/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/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
-
- 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/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- 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/64—Addressing
- H04N21/6402—Address allocation for clients
Definitions
- the present disclosure relates to Internet technology, for example, to a video stream acquisition method, device, system, device and medium.
- the client With the rapid development of Internet technology, the client usually obtains the video stream to be played directly from the external network.
- the video will freeze or even be unwatchable, seriously affecting users viewing experience.
- the present disclosure provides a video stream acquisition method, device, system, equipment, and media to solve the problem of insufficient export bandwidth caused by multiple client terminals simultaneously pulling video streams, ensure smooth video playback, and improve user viewing experience.
- the present disclosure provides a method for acquiring a video stream, which is applied to a client end, including:
- the domain name generation method is to generate the domain name according to the IP address of the target intranet edge server, and determine the target streaming information according to the generated domain name;
- the present disclosure also provides a video stream acquisition method applied to a media server, including:
- the domain name is generated according to the IP address of the target intranet edge server, and the target streaming information is determined according to the generated domain name, so that the client can obtain the target streaming information based on the preset domain name
- domain name analysis is performed on the target streaming information to obtain the IP address of the target intranet edge server, and based on the target intranet edge server IP address, a target streaming request is sent to the target intranet edge server to obtain The target intranet edge server returns the video stream based on the target streaming request.
- the present disclosure also provides a video stream acquisition method, which is applied to an edge server of an intranet, including:
- IP address of the edge server of the intranet is the target streaming information obtained by the client based on the preset domain name resolution method using the media server Obtained by domain name resolution;
- the present disclosure also provides a device for acquiring video streams, which is integrated in the user end, including:
- the streaming information acquisition request sending module is configured to send a streaming information acquisition request to the media server, so that the media server determines the target intranet edge server IP address based on the target egress IP address in the streaming information acquisition request, and Based on the preset domain name generation method, the domain name is generated according to the IP address of the target intranet edge server, and the target streaming information is determined according to the generated domain name;
- the domain name resolution module is configured to obtain the target streaming information, and based on a preset domain name resolution method, perform domain name resolution on the target streaming information to obtain the target intranet edge server IP address;
- the target video stream acquisition module is configured to send a target streaming request to the target intranet edge server based on the IP address of the target intranet edge server, and obtain the target video returned by the target intranet edge server based on the target intranet edge server request flow.
- the present disclosure also provides a device for acquiring video streams, which is integrated in a media server, including:
- the streaming information acquisition request receiving module is configured to receive the streaming information acquisition request sent by the client;
- the IP address determination module of the target intranet edge server is configured to determine the target intranet edge server IP address based on the target egress IP address in the pull flow information acquisition request;
- the target flow information determination module is set to generate a domain name based on a preset domain name generation method, perform domain name generation according to the IP address of the target intranet edge server, and determine the target flow information according to the generated domain name, with Make the client obtain the target streaming information, perform domain name resolution on the target streaming information based on a preset domain name resolution method, obtain the target intranet edge server IP address, and based on the target intranet edge
- the server IP address sends a target streaming request to the target intranet edge server, and obtains the video stream returned by the target intranet edge server based on the target streaming request.
- the present disclosure also provides a device for acquiring video streams, which is integrated in an intranet edge server, including:
- the target streaming request receiving module is configured to receive the target streaming request sent by the client based on the IP address of the intranet edge server, wherein the IP address of the intranet edge server is based on the preset domain name resolution method of the client, and is used by the user
- the target streaming information obtained by the media server is obtained through domain name resolution;
- the target video stream determination module is configured to determine the target video stream corresponding to the target pull request, and return the target video stream, so that the client can obtain the target video stream.
- the present disclosure also provides a video stream acquisition system, the system comprising: a client, a media server, and at least one intranet edge server;
- the client is configured to implement the video stream acquisition method as provided in the first aspect
- the media server is configured to implement the video stream acquisition method as provided in the second aspect
- the intranet edge server is configured to implement the video stream acquisition method provided in the third aspect.
- the present disclosure also provides an electronic device, the electronic device comprising:
- processors one or more processors
- memory configured to store one or more programs
- the one or more processors are made to implement the above video stream acquisition method.
- the present disclosure further provides a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the above video stream acquisition method is realized.
- the present disclosure further provides a computer program product, including a computer program carried on a non-transitory computer-readable medium, where the computer program includes program codes for executing the above video stream acquisition method.
- FIG. 1 is a flow chart of a video stream acquisition method provided in Embodiment 1 of the present disclosure
- FIG. 2 is an example of a video stream acquisition process involved in Embodiment 1 of the present disclosure
- FIG. 3 is an example of another video stream acquisition process involved in Embodiment 1 of the present disclosure.
- FIG. 4 is a flow chart of a video stream acquisition method provided in Embodiment 2 of the present disclosure.
- FIG. 5 is a flow chart of a video stream acquisition method provided in Embodiment 3 of the present disclosure.
- FIG. 6 is a schematic structural diagram of a video stream acquisition device provided in Embodiment 4 of the present disclosure.
- FIG. 7 is a schematic structural diagram of a video stream acquisition device provided in Embodiment 5 of the present disclosure.
- FIG. 8 is a schematic structural diagram of a video stream acquisition device provided in Embodiment 6 of the present disclosure.
- FIG. 9 is a schematic structural diagram of a video stream acquisition system provided by Embodiment 7 of the present disclosure.
- FIG. 10 is a schematic structural diagram of an electronic device provided by Embodiment 8 of the present disclosure.
- the term “comprise” and its variations are open-ended, ie “including but not limited to”.
- the term “based on” is “based at least in part on”.
- the term “one embodiment” means “at least one embodiment”; the term “another embodiment” means “at least one further embodiment”; the term “some embodiments” means “at least some embodiments.” Relevant definitions of other terms will be given in the description below.
- Fig. 1 is a flow chart of a video stream acquisition method provided by Embodiment 1 of the present disclosure.
- This embodiment is applicable to the simultaneous acquisition of video streams by multiple client terminals in each intranet, so that multiple users watch videos at the same time
- it can be used in an application scenario where multiple client terminals on the same intranet obtain video streams in live broadcast or on-demand scenarios.
- This method can be obtained by video streaming
- the device may be implemented by means of software and/or hardware, and integrated into the user end. As shown in Figure 1, the method includes the following steps:
- the media server may refer to a background server located on an extranet.
- the external network refers to the wide area network and the public network.
- the client terminal refers to the video viewing terminal located in the intranet.
- the intranet refers to a local area network, that is, a device group formed by interconnecting multiple client terminals within a certain area.
- an intranet may consist of thousands of clients within a company. There can be one or more intranets. Multiple clients in the same intranet can use a common line to communicate with the media server in the extranet. Multiple clients in the same intranet correspond to the same egress IP address. Each client in the intranet corresponds to an intranet IP address. The intranet IP address is allocated within the intranet. The IP addresses of different intranets can be repeated and will not affect each other.
- the area where multiple client terminals are located can be regarded as a work area, and based on the network topology, the corresponding relationship between the work area and the egress IP address can be determined.
- one work area corresponds to one intranet.
- each floor of the enterprise (equivalent to each work area) uses a different intranet, that is to say, multiple clients in the same intranet are assigned to the same work area.
- one work area Corresponds to an egress IP address.
- multiple work areas correspond to one intranet.
- the 3rd floor and 4th floor of the enterprise share the same intranet, that is to say, multiple clients in the same intranet are assigned to multiple work areas.
- the work area corresponds to the same egress IP address.
- the default bit rate of the live broadcast or on-demand broadcast is 1Mbps
- the corresponding egress bandwidth of the work area needs to be no less than 1,000 Mbps. If the egress bandwidth If it is too small, the video will freeze or even become unwatchable.
- the edge server of the intranet can refer to a content distribution network (Content Delivery Network, CDN) node deployed in the intranet, which is set to cache the video stream pulled by the client, so that the client can pull the video from the edge server of the intranet There is no need to pull the stream from the external network, thus saving video export bandwidth and solving the problem of insufficient export bandwidth.
- Intranet edge servers can be deployed based on the intranet topology and business requirements. For example, if there is a work zone in each intranet, that is, a work zone corresponds to an egress IP address, a corresponding intranet edge server can be deployed for each intranet (ie, each work zone).
- a corresponding intranet edge server can be deployed for each intranet, or each work area in each intranet can be deployed Deploy an intranet edge server to save intranet bandwidth.
- the target intranet edge server may refer to the intranet edge server corresponding to the current client to pull the stream, so that the client can pull the stream from the intranet edge server.
- the default domain name generation method can be pre-set, and is used to add the IP address of the target intranet edge server to the domain name, so that the IP address of the target intranet edge server can be passed to the client through the domain name, thereby informing the user
- the client can pull streams from the target intranet edge server corresponding to the IP address of the target intranet edge server.
- the client may send a stream information acquisition request to the media server, and the stream information acquisition request may include the target egress IP address corresponding to the client and the identifier of the video stream to be pulled by the client, such as the name of the video stream.
- the media server can determine the corresponding target intranet edge server IP address based on the target egress IP address in the streaming information acquisition request, and generate the target intranet edge server IP address based on the preset domain name generation method.
- the streaming domain name corresponding to the server IP address, and the target streaming information including the IP address information of the target intranet edge server is obtained according to the streaming domain name.
- the preset domain name resolution method may refer to a domain name universal resolution method corresponding to the preset domain name generation method, so that the client can obtain the IP address of the target intranet edge server in the target streaming information.
- the domain name resolution operation can be performed locally on the user end, so that the user end can quickly obtain the resolved IP address of the edge server of the intranet to improve resolution efficiency;
- Domain name resolution operation so that the domain name resolution server in the intranet can uniformly handle the domain name resolution operations of multiple clients in the same intranet; it can also use the domain name resolution server in the extranet to perform domain name resolution operations, so that the domain name in the extranet
- the resolution server can uniformly handle domain name resolution operations of all clients in the intranet, saving device resources.
- the acquisition operation of target streaming information may be implemented in at least the following manner:
- "obtaining target streaming information" in S120 may include: receiving target streaming information sent by a media server.
- Figure 2 shows an example of a video stream acquisition process.
- the media server can obtain the target egress IP address in the request based on the streaming information sent by the client, and directly determine the target IP address according to the correspondence between the pre-configured egress IP address and the IP address of the edge server on the intranet.
- Intranet edge server IP address and based on the preset domain name generation method, the domain name is generated according to the target intranet edge server IP address, and the target streaming information is determined according to the generated domain name, and the target streaming information is sent to the client, so that The client can obtain the target stream information by receiving the target stream information sent by the media server.
- multiple clients in the same intranet can be corresponding to the same intranet edge server IP address, so that the same intranet Multiple clients in the network pull streams from the same intranet edge server.
- an egress IP address corresponds to a work area, that is, an intranet corresponds to a work area
- the client in the work area can pull streams from the same intranet edge server.
- an egress IP address corresponds to multiple work zones, that is, an intranet corresponds to multiple work zones, then the clients in all work zones of the intranet also pull streams from the same intranet edge server.
- "obtaining target stream information" in S120 may include: receiving stream management information sent by the media server, wherein the stream management information is the target exit in the media server's request for stream information acquisition
- the IP address determines the IP address of the target intranet management server, and based on the preset domain name generation method, the domain name is determined according to the IP address of the target intranet management server; based on the preset domain name resolution method, the domain name analysis is performed on the streaming management information to obtain IP address of the target intranet management server; based on the IP address of the target intranet management server, send a streaming address acquisition request to the target intranet management server, so that the target intranet management server obtains the target intranet IP address in the request based on the streaming address Determine the IP address of the target intranet edge server, and based on the preset domain name generation method, perform domain name generation according to the IP address of the target intranet edge server, and determine the target stream information according to the generated domain name; receive the target pull stream sent by the target intranet management server stream information.
- the intranet management server may be pre-deployed in the intranet and configured as a device for managing the corresponding relationship between the intranet edge server in the intranet and the client in the intranet.
- an egress IP address corresponds to multiple work areas
- an intranet management server and intranet edge servers having the same number of work zones as the intranet can be deployed in the same intranet, so that different work zones in the same intranet can correspond to different intranet edge servers.
- the intranet IP addresses of different clients are different, so the work area where the client is located can be determined based on the intranet IP address of the client, and based on the correspondence between the work area and the IP address of the edge server of the intranet, Determine the IP address of the target intranet edge server corresponding to the client; or directly determine the target corresponding to the client based on the many-to-one correspondence between the intranet IP address of the client and the IP address of the intranet edge server Intranet edge server IP address.
- Fig. 3 shows an example of another video stream acquisition process.
- the media server can obtain the target egress IP address in the request based on the streaming information sent by the client, and determine the target internal The IP address of the network management server, and based on the preset domain name generation method, the domain name is generated according to the IP address of the target intranet management server, and the streaming management information is determined according to the generated domain name, and the streaming management information is sent to the client.
- the client can perform domain name resolution on the received streaming management information, obtain the IP address of the target intranet management server, and send the streaming to the target intranet management server based on the IP address of the target intranet management server
- the address acquisition request, the streaming address acquisition request may include the The target intranet IP address corresponding to the client and the identifier of the video stream to be fetched by the client, such as the name of the video stream.
- the target intranet management server can obtain the target intranet IP address in the request based on the received streaming address, and determine the target intranet edge according to the correspondence between the pre-configured intranet IP address and the intranet edge server IP address.
- the Server IP address and based on the preset domain name generation method, perform domain name generation according to the IP address of the target intranet edge server, and determine the target streaming information according to the generated domain name, and send the target streaming information to the client, so that the client can use it.
- the target streaming information is obtained by receiving the target streaming information sent by the target intranet management server.
- the client terminals in different work areas in the same intranet can correspond to different intranet edge server IP addresses, thereby It enables clients in different work areas in the same intranet to pull streams from different intranet edge servers, avoiding the fact that clients in all work areas in the same intranet pull streams from the same intranet edge server In this case, it solves the situation that one egress IP address corresponds to multiple work areas, thereby saving intranet bandwidth.
- based on the preset domain name resolution method, perform domain name resolution on the target streaming information to obtain the IP address of the target intranet edge server may include: sending the target streaming information to the domain name resolution server, so that The domain name resolution server performs domain name resolution on the target streaming information based on the preset domain name resolution method, and obtains the IP address of the target intranet edge server, wherein the domain name resolution server is a domain name resolution server in the intranet or a domain name resolution server in the external network; Receive the IP address of the target intranet edge server returned by the domain name resolution server.
- the client can send the target stream information to the domain name resolution server located in the intranet, and the domain name resolution server located in the intranet can uniformly process the domain name resolution operations of multiple client terminals in the same intranet.
- the client can also send the target stream information to the domain name resolution server located in the external network, and the domain name resolution server located in the external network can uniformly handle the domain name resolution operations of all the client terminals in the internal network, thereby saving equipment resources.
- performing domain name resolution on the target streaming information to obtain the IP address of the target intranet edge server may include: extracting the target intranet edge in the target streaming information with a preset domain name format Server address information; resolve the target intranet edge server address information into an IP address format, and obtain the target intranet edge server IP address.
- the preset domain name format may be a domain name format generated by using a preset domain name generation method.
- the IP address of the target intranet edge server is: 10.95.3.11
- the address information of the target intranet edge server with a preset domain name format may be: 10-95-3-11.
- the domain name resolution server located locally on the client side or on the intranet or extranet can extract the address information of the target intranet edge server in the received target streaming information.
- the address information of the target intranet edge server can be parsed into an IP address format to obtain the IP address of the target intranet edge server, for example, 10.95.3.11, so that The domain name resolution method can be used to access the specified intranet edge server.
- "Based on the preset domain name resolution method, perform domain name resolution on the stream management information to obtain the target "intranet management server IP address” may include: extracting the address information of the target intranet management server with a preset domain name format in the stream management information; parsing the address information of the target internal management server into an IP address format to obtain the target intranet Management server IP address.
- the streaming management information can be analyzed to obtain the IP address of the target intranet management server.
- the address of the target intranet management server in the stream management information is: https://10-225-70-182.xx.com:9755/live/stream_config, then the extracted target intranet management server address information is : 10-225-70-182, at this time, the address information of the target intranet management server can be resolved into an IP address format, and the IP address of the target intranet management server can be obtained, for example, 10.225.70.182, so that access can be realized by means of domain name resolution The situation of the designated intranet management server.
- the client can pull the stream from the target intranet edge server located in the intranet based on the IP address of the target intranet edge server.
- the video stream to be pulled can be pre-buffered in the target intranet edge server; or, for the received
- the first streaming request used to pull the target video stream can be pulled from an external network edge server (such as an external network CDN node) based on the external network streaming address (such as aaa.bbb.cn) in the pulling request Stream, and cache the pulled target video stream, so that the cached target video stream can be returned directly for subsequent pull requests.
- the egress bandwidth required by N video streams can be changed to only one video stream.
- the export bandwidth greatly saves the video export bandwidth, avoids the situation of poor video playback fluency caused by insufficient export bandwidth, improves the efficiency of video stream acquisition, and also improves the fluency of video playback, greatly improving the user viewing experience .
- the client sends a stream information acquisition request to the media server.
- the media server determines the IP address of the target intranet edge server based on the target egress IP address in the stream information acquisition request, and based on the preset domain name generation method, performs domain name generation according to the target intranet edge server IP address, and determines the IP address based on the generated domain name.
- Target pull flow information is included in the media server.
- the client obtains the target streaming information, and based on the preset domain name resolution method, performs domain name analysis on the target streaming information to obtain the IP address of the target intranet edge server, so that based on the target intranet edge server IP address, the The target intranet edge server sends a target streaming request, and obtains the target video stream returned by the target intranet edge server based on the target streaming request.
- the client can directly pull the video stream from the specified target intranet edge server without The external network pulls the video stream, which greatly saves the export bandwidth and improves the efficiency of video stream acquisition, thereby ensuring the smoothness of video playback and improving the user viewing experience.
- Fig. 4 is a flow chart of a video stream acquisition method provided by Embodiment 2 of the present disclosure.
- This embodiment is applicable to the simultaneous acquisition of video streams by multiple client terminals in each intranet, so that multiple users watch videos at the same time In particular, it can be used in an application scenario where multiple client terminals on the same intranet obtain video streams in live broadcast or on-demand scenarios.
- the method can be executed by a device for acquiring video streams, and the device can be realized by software and/or hardware, and integrated in a media server. As shown in Figure 4, the method includes the following steps:
- S420 may include: determining the IP address of the target intranet edge server based on the pre-configured correspondence between the egress IP address and the IP address of the intranet edge server and the target egress IP address in the stream information acquisition request; Specifically, after S430, it also includes: sending the target streaming information to the user terminal.
- the egress IP address corresponding to each intranet can be configured in the media server in advance based on business requirements.
- the corresponding relationship between the IP addresses of the edge servers of the internal network corresponding to each intranet so that in actual use, the media server can directly determine the target egress IP address based on the corresponding relationship and the target egress IP address in the streaming information acquisition request.
- the IP address corresponds to the IP address of the target intranet edge server, and sends the target streaming information determined based on the target intranet edge server IP address to the client, so that the client can obtain the target streaming information sent by the media server.
- S420 and S430 may include: determining the IP address of the target intranet management server based on the target egress IP address in the streaming information acquisition request, and performing domain name generation according to the IP address of the target intranet management server based on a preset domain name generation method , and determine the streaming management information according to the generated domain name; send the streaming management information to the client, so that the client can use the preset domain name resolution method to control the streaming management Domain name resolution based on the management information to obtain the IP address of the target intranet management server, and based on the IP address of the target intranet management server, send a stream-pull address acquisition request to the target intranet management server, so that the target intranet management server can obtain the IP address based on the stream-pull address
- the target intranet IP address in the request determines the target intranet edge server IP address, and based on the preset domain name generation method, performs domain name generation according to the target intranet edge server IP address, and determines the target streaming information based on the generated domain name and returns it .
- the target intranet management server determines the IP address of the target intranet edge server based on the target intranet IP address in the streaming address acquisition request, which may include: the target intranet management server based on the pre-configured intranet IP address and the intranet
- the corresponding relationship between the IP addresses of the edge servers and the IP address of the target intranet in the pull stream address acquisition request determines the IP address of the edge server of the target intranet.
- the corresponding egress of each intranet can be pre-configured in the media server based on business requirements
- the corresponding relationship between the IP address and the IP address of the intranet management server corresponding to each intranet, and based on the network topology of the intranet, each client in each work area is pre-configured in each intranet management server
- the media server can determine the target IP address corresponding to the target egress IP address based on the corresponding relationship between the target egress IP address in the streaming information acquisition request and the pre-configured egress IP address and the intranet management server IP address.
- the IP address of the intranet management server, and the streaming management information determined based on the IP address of the target intranet management server is sent to the client.
- the client Based on the preset domain name resolution method, the client performs domain name resolution on the stream management information, obtains the IP address of the target intranet management server, and sends the stream to the target intranet management server located on the intranet based on the IP address of the target intranet management server Address get request.
- the target intranet management server can determine the corresponding IP address of the target intranet IP address based on the corresponding relationship between the target intranet IP address in the pull stream address acquisition request and the pre-configured intranet IP address and the IP address of the intranet edge server.
- the IP address of the target intranet edge server and based on the preset domain name generation method, the domain name is generated according to the IP address of the target intranet edge server, and the target streaming information is determined and returned according to the generated domain name, so that the client can obtain the target intranet
- the client After receiving the target stream information sent by the media server, or the target stream information sent by the target intranet management server, the client can perform domain name resolution on the target stream information based on the preset domain name resolution method to obtain the target intranet edge
- the IP address of the server so that the domain name resolution method can be used to access the specified intranet edge server.
- the client Based on the IP address of the target intranet edge server, the client can pull the stream from the target intranet edge server located in the intranet without pulling the video stream from the external network, thus greatly saving video export bandwidth and avoiding problems caused by insufficient export bandwidth. resulting in poor video playback fluency This improves the efficiency of video stream acquisition, improves the fluency of video playback, and greatly improves the user viewing experience.
- based on the preset domain name generation method, perform domain name generation according to the IP address of the target intranet edge server, and determine target streaming information according to the generated domain name may include: based on the preset domain name format, generating the target The IP address of the edge server on the intranet is format-transformed, and the transformed address information of the edge server on the intranet is added to the streaming address to determine the target streaming information.
- the preset domain name format may be a preset character format allowed by the domain name.
- the IP address of the target intranet edge server is: 10.95.3.11
- the address information of the target intranet edge server obtained after transforming the preset domain name format is: 10-95-3-11
- the target intranet edge server can be The address information is spliced into the pull stream address, for example, added in front of the identifier of the target video stream to be pulled.
- the actual external network streaming address can also be spliced into the target streaming information, so that the target video stream can be pulled from the external network streaming address for the first streaming request.
- the pull management information can also include the address of the external network pull stream, so that when the target video stream does not exist in the cache of the edge server of the internal network, the first pull request can be sent from the external network.
- Stream URL pulls the target video stream and caches it.
- the media server may determine the streaming management information based on a determination method similar to the above-mentioned target streaming information.
- the IP address of the target intranet management server is: 10.225.70.182
- the address information of the target intranet management server obtained after transforming the preset domain name format is: 10-225-70-182, based on the address information of the target intranet management server
- the target intranet management server address in the generated streaming management information is: https://10-225-70-182.xx.com:9755/live/stream_config.
- the client sends a stream information acquisition request to the media server.
- the media server determines the IP address of the target intranet edge server based on the target egress IP address in the stream information acquisition request, and based on the preset domain name generation method, performs domain name generation according to the target intranet edge server IP address, and determines the IP address based on the generated domain name.
- Target pull flow information The user end obtains the target stream information, and bases Based on the preset domain name resolution method, domain name resolution is performed on the target stream information to obtain the IP address of the target intranet edge server, so that the target pull stream can be sent to the target intranet edge server located in the intranet based on the IP address of the target intranet edge server.
- the client can directly pull the video stream from the specified target intranet edge server without pulling the video stream from the external network, which greatly saves the export bandwidth, and improve the efficiency of video stream acquisition, thereby ensuring the smoothness of video playback and improving the user viewing experience.
- Fig. 5 is a flow chart of a video stream acquisition method provided by Embodiment 3 of the present disclosure.
- This embodiment is applicable to the simultaneous acquisition of video streams by multiple client terminals in each intranet, so that multiple users watch videos at the same time In particular, it can be used in an application scenario where multiple client terminals on the same intranet obtain video streams in live broadcast or on-demand scenarios.
- the method can be executed by a device for acquiring video streams, and the device can be realized by means of software and/or hardware, and integrated in an edge server of an intranet. As shown in Figure 5, the method includes the following steps:
- S510 Receive the target streaming request sent by the client based on the IP address of the intranet edge server, wherein the IP address of the intranet edge server is the domain name of the target streaming information obtained by the media server based on the preset domain name resolution method. obtained by analysis.
- the client can generate a target stream request based on the target video stream ID corresponding to the target video stream to be pulled, or generate a target stream stream based on the target video stream ID corresponding to the target video stream to be pulled and the actual external network streaming address request, and based on the intranet edge server IP address directly obtained through the media server or the intranet edge server IP address obtained indirectly through the intranet management server, send a target streaming request to the specified intranet edge server, so that the intranet
- the edge server can receive the target streaming request sent by the client.
- S520 Determine the target video stream corresponding to the target pull request, and return the target video stream, so that the user terminal acquires the target video stream.
- the intranet edge server can determine the cached target video stream based on the target video stream identifier in the target pull request sent by the client, and send the cached target video stream to the client, so that the client can directly access the Pulling streams in the edge server does not need to pull video streams from the external network, which greatly saves video export bandwidth, avoids poor video playback fluency caused by insufficient export bandwidth, improves video stream acquisition efficiency, and also It improves the smoothness of video playback and greatly improves the user viewing experience.
- S520 may include: based on the target video stream identifier in the target pull request, from the preset Determine the target video stream from the cached video streams that are cached first.
- each on-demand video can be pre-cached in each intranet edge server, so that when the intranet edge server receives the target pull request, it can retrieve the target video stream ID from the cache based on the target video stream ID to be pulled.
- the target video stream is determined from multiple video streams, so that when multiple clients on the same intranet need to watch the same on-demand video at the same time, they can directly obtain the on-demand video cached by the edge server of the intranet without pulling the video from the external network stream, which greatly saves the export bandwidth and improves the efficiency of video stream acquisition, thereby ensuring the smoothness of video playback and improving the user viewing experience.
- S520 may include: based on the target video stream identifier in the target pull request, detecting whether the target video stream exists in the currently cached cached video stream; if the target video stream exists in the currently cached cached video stream, the The cached video stream is determined as the target video stream; if the target video stream does not exist in the currently cached cached video stream, the target video stream is pulled from the external network edge server based on the external network pull stream address in the target pull request, and the The pulled target video stream is cached.
- the edge server of the intranet receives the first target stream request for pulling the target video stream, it can External network pull stream address, pull stream from the external network edge server (such as external network CDN node), and cache the pulled target video stream, so that the current cache can be returned directly when the target pull request is subsequently received
- the target video stream does not need to be pulled from the external network, so that the egress bandwidth required by N video streams can be changed to the egress bandwidth that only needs to be used by one video stream, which greatly saves video egress bandwidth and avoids problems caused by insufficient egress bandwidth.
- the video playback fluency is poor, which improves the video stream acquisition efficiency, and also improves the video playback fluency, greatly improving the user viewing experience.
- the client sends a stream information acquisition request to the media server.
- the media server determines the IP address of the target intranet edge server based on the target egress IP address in the stream information acquisition request, and based on the preset domain name generation method, performs domain name generation according to the target intranet edge server IP address, and determines the IP address based on the generated domain name.
- Target pull flow information is included in the media server.
- the client obtains the target streaming information, and based on the preset domain name resolution method, performs domain name analysis on the target streaming information to obtain the IP address of the target intranet edge server, so that based on the target intranet edge server IP address, the The target intranet edge server sends a target streaming request, and obtains the target video stream returned by the target intranet edge server based on the target streaming request.
- the client can directly pull the video stream from the specified target intranet edge server without pulling the video stream from the external network, which greatly saves the export bandwidth, and improve the efficiency of video stream acquisition, thereby ensuring the smoothness of video playback and improving the user viewing experience.
- Example 1 The following is an embodiment of the video stream acquisition device provided by the embodiment of the present disclosure, which is the same as the above-mentioned implementation
- the method for acquiring video streams in Example 1 belongs to the same idea.
- Embodiment 1 For details not described in detail in the embodiment of the video stream acquiring device, reference may be made to Embodiment 1 above.
- Fig. 6 is a schematic structural diagram of a video stream acquisition device provided by Embodiment 4 of the present disclosure.
- This embodiment is applicable to multiple client terminals in each intranet to obtain video streams at the same time, so that multiple users watch videos at the same time In particular, it can be used in an application scenario where multiple client terminals on the same intranet obtain video streams in live broadcast or on-demand scenarios.
- the device is integrated in the client, and includes: a streaming information acquisition request sending module 610 , a domain name resolution module 620 and a target video stream acquisition module 630 .
- the stream information acquisition request sending module 610 is configured to send a stream information acquisition request to the media server, so that the media server determines the target intranet edge server IP address based on the target exit IP address in the stream information acquisition request, and based on the preset
- the domain name generation method is to generate the domain name according to the IP address of the edge server of the target intranet, and determine the target stream information according to the generated domain name
- the domain name resolution module 620 is set to obtain the target stream information, and based on the preset domain name resolution method, the target Perform domain name analysis on the streaming information to obtain the IP address of the target intranet edge server
- the target video stream acquisition module 630 is set to send a target streaming request to the target intranet edge server based on the target intranet edge server IP address to obtain the target intranet edge server IP address.
- the edge server returns the target video stream based on the target stream request.
- the domain name resolution module 620 includes:
- the target streaming information acquisition unit is configured to: receive the target streaming information sent by the media server.
- the target stream information acquisition unit is further configured to: receive the stream management information sent by the media server, wherein the stream management information is the target exit IP address in the media server based on the stream information acquisition request
- the IP address of the target intranet management server is determined, and based on the preset domain name generation method, the domain name is generated according to the IP address of the target intranet management server; IP address of the network management server; based on the IP address of the target intranet management server, send a stream-pull address acquisition request to the target intranet management server, so that the target intranet management server can determine the target based on the target intranet IP address in the stream-pull address acquisition request Intranet edge server IP address, and based on the preset domain name generation method, perform domain name generation according to the target intranet edge server IP address, and determine the target streaming information according to the generated domain name; receive the target streaming information sent by the target intranet management server .
- the domain name resolution module 620 also includes:
- the domain name resolution unit is configured to: send the target streaming information to the domain name resolution server, so that the domain name resolution server performs domain name resolution on the target streaming information based on the preset domain name resolution method, and obtains the IP address of the target intranet edge server, wherein,
- the domain name resolution server is a domain name resolution server in the internal network or a domain name resolution server in the external network; receive the target intranet edge returned by the domain name resolution server Server IP address.
- the domain name resolution unit is also configured to: extract the target intranet edge server address information with a preset domain name format in the target streaming information; resolve the target intranet edge server address information into an IP address format to obtain the IP address of the target intranet edge server.
- the video stream acquisition device provided in the embodiment of the present disclosure can execute the video stream acquisition method provided in Embodiment 1 of the present disclosure, and has corresponding functional modules and effects for executing the video stream acquisition method.
- the multiple units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be realized; in addition, multiple functional units
- the names are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present disclosure.
- the following is an embodiment of the video stream acquisition device provided by the embodiment of the present disclosure.
- This device belongs to the same concept as the video stream acquisition method in the second embodiment above. Details that are not described in detail in the embodiment of the video stream acquisition device can be Refer to the second embodiment above.
- FIG. 7 is a schematic structural diagram of a video stream acquisition device provided by Embodiment 5 of the present disclosure.
- This embodiment is applicable to multiple client terminals in each intranet to obtain video streams simultaneously, so that multiple users watch videos at the same time.
- the device can be used in an application scenario where multiple client terminals on the same intranet obtain video streams in live broadcast or on-demand scenarios.
- the device is integrated in the media server, and includes: a streaming information acquisition request receiving module 710 , a target intranet edge server IP address determining module 720 and a target streaming information determining module 730 .
- the streaming information acquisition request receiving module 710 is configured to receive the streaming information acquisition request sent by the client; the target intranet edge server IP address determination module 720 is configured to determine the target intranet IP address based on the target exit IP address in the streaming information acquisition request.
- Network edge server IP address; Target pulling flow information determination module 730 is set to be based on preset domain name generation mode, carries out domain name generation according to target Intranet edge server IP address, and determines target pulling flow information according to the generated domain name, so that the client Obtain the target stream information, perform domain name analysis on the target stream information based on the preset domain name resolution method, obtain the IP address of the target intranet edge server, and send the target pull stream to the target intranet edge server based on the IP address of the target intranet edge server.
- Stream request to obtain the video stream returned by the target intranet edge server based on the target stream pull request.
- the IP address determination module 720 of the target intranet edge server is set to: based on the corresponding relationship between the pre-configured egress IP address and the IP address of the intranet edge server and the target in the stream information acquisition request Export IP address, determine the IP address of the target intranet edge server;
- the device also includes: a target streaming information sending module, configured to generate based on a preset domain name, The domain name is generated according to the IP address of the edge server of the target intranet, and after the target streaming information is determined according to the generated domain name, the target streaming information is sent to the client.
- a target streaming information sending module configured to generate based on a preset domain name, The domain name is generated according to the IP address of the edge server of the target intranet, and after the target streaming information is determined according to the generated domain name, the target streaming information is sent to the client.
- the target intranet edge server IP address determination module 720 and the target stream information determination module 730 are set to:
- the streaming management information is sent to the client, so that the client performs domain name analysis on the streaming management information based on the preset domain name resolution method, obtains the IP address of the target intranet management server, and based on the target intranet management server IP address , to send a stream-pull address acquisition request to the target intranet management server, so that the target intranet management server determines the IP address of the target intranet edge server based on the target intranet IP address in the stream-pull address acquisition request, and based on the preset domain name generation method , generate a domain name according to the IP address of the edge server on the target intranet, and determine and return the target streaming information according to the generated domain name.
- the target streaming information determination module 730 is set to: convert the IP address of the target intranet edge server based on the preset domain name format, and add the transformed target intranet edge server address information To the pull stream address, determine the target pull stream information.
- the target intranet management server includes: a target intranet edge server IP address determination unit, which is set to: The flow address obtains the target intranet IP address in the request to determine the IP address of the target intranet edge server.
- the video stream acquisition device provided in the embodiment of the present disclosure can execute the video stream acquisition method provided in the second embodiment of the present disclosure, and has corresponding functional modules and effects for executing the video stream acquisition method.
- the multiple units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be realized; in addition, multiple functional units
- the names are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present disclosure.
- the following is an embodiment of the video stream acquisition device provided by the embodiment of the present disclosure.
- This device belongs to the same concept as the video stream acquisition method in the third embodiment above. Details that are not described in detail in the embodiment of the video stream acquisition device can be Refer to the third embodiment above.
- Fig. 8 is a schematic structural diagram of a device for obtaining video streams provided by Embodiment 6 of the present disclosure.
- This embodiment is applicable to multiple client terminals in each intranet simultaneously obtaining video streams, so that multiple users watch videos at the same time In particular, it can be used in live or on-demand scenarios where multiple An application scenario in which a client obtains a video stream.
- the device is integrated in an intranet edge server, and includes: a target stream pull request receiving module 810 and a target video stream determining module 820 .
- the target streaming request receiving module 810 is configured to receive the target streaming request sent by the client based on the IP address of the edge server of the intranet, wherein the IP address of the edge server of the intranet is based on the preset domain name resolution method of the client, and is obtained by using the media server.
- the obtained target stream information is obtained by domain name resolution;
- the target video stream determination module 820 is configured to determine the target video stream corresponding to the target pull request, and return the target video stream, so that the client can obtain the target video stream.
- the target video stream determining module 820 is configured to: determine the target video stream from the pre-cached cached video streams based on the target video stream identifier in the target pull request.
- the target video stream determining module 820 is further configured to: based on the target video stream identifier in the target pull request, detect whether the target video stream exists in the currently cached cached video stream; if the current cache If the target video stream exists in the cached video stream of the cached video stream, then determine the cached video stream as the target video stream; if the target video stream does not exist in the currently cached cached video stream, then based on the External network streaming address, pull the target video stream to the edge server of the external network, and cache the pulled target video stream.
- the video stream acquisition device provided in the embodiment of the present disclosure can execute the video stream acquisition method provided in the third embodiment of the present disclosure, and has corresponding functional modules and effects for executing the video stream acquisition method.
- the multiple units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be realized; in addition, multiple functional units
- the names are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present disclosure.
- FIG. 9 is a schematic structural diagram of a video stream acquisition system provided by Embodiment 7 of the present disclosure.
- This embodiment is applicable to multiple client terminals in each intranet to simultaneously obtain video streams, so that multiple users watch videos at the same time.
- it can be used in an application scenario where multiple client terminals on the same intranet obtain video streams in live broadcast or on-demand scenarios.
- the system includes: a client terminal 910 , a media server 920 and at least one intranet edge server 930 .
- the client 910 is set to implement the video stream acquisition method provided in Embodiment 1 of the present disclosure; the media server 920 is configured to implement the video stream acquisition method provided in Embodiment 2 of the present disclosure; the intranet edge server 930 is configured to implement the The video stream acquisition method provided by the third embodiment is disclosed.
- one intranet edge server 930 may be deployed for each intranet.
- This video stream captures the actual
- the current process can be as follows: the client 910 sends a streaming information acquisition request to the media server 920, and the media server 920 determines the IP address of the target intranet edge server based on the target egress IP address in the streaming information acquisition request, and based on the preset domain name generation method , generating a domain name according to the IP address of the target intranet edge server, determining the target streaming information according to the generated domain name, and sending the target streaming information to the client 910 .
- the client 910 After receiving the target streaming information sent by the media server 920, the client 910 performs domain name analysis on the target streaming information based on the preset domain name resolution method, obtains the IP address of the target intranet edge server, and based on the target intranet edge server IP address, Send a target streaming request to the target intranet edge server 930, and acquire the target video stream returned by the target intranet edge server 930 based on the target streaming request.
- the video stream acquisition system may further include: at least one intranet management server.
- An intranet management server may be deployed for each intranet, and at least one intranet edge server 930 corresponding to each intranet may be deployed based on the network topology of each intranet.
- an intranet edge server 930 may be deployed for each work zone in the intranet.
- the implementation process of the video stream acquisition system can be as follows:
- the client 910 sends a streaming information acquisition request to the media server 920, and the media server 920 determines the target intranet management server IP address based on the target exit IP address in the streaming information acquisition request, and based on the preset domain name generation method, according to the target intranet
- the IP address of the management server generates a domain name, determines stream management information according to the generated domain name, and sends the stream management information to the client 910 .
- the client 910 After receiving the streaming management information sent by the media server 920, the client 910 performs domain name analysis on the streaming management information based on the preset domain name resolution method, obtains the target intranet management server IP address, and based on the target intranet management server IP address, Send a pull stream address acquisition request to the target intranet management server.
- the target intranet management server determines the IP address of the target intranet edge server based on the target intranet IP address in the pull stream address acquisition request, and based on the preset domain name generation method, performs domain name generation according to the target intranet edge server IP address, and generates The domain name determines the target streaming information, and sends the target streaming information to the client 910.
- the client 910 After receiving the target streaming information sent by the target intranet management server, the client 910 performs domain name analysis on the target streaming information based on the preset domain name resolution method, obtains the IP address of the target intranet edge server, and then obtains the IP address of the target intranet edge server based on the IP address of the target intranet edge server. Address, send a target streaming request to the target intranet edge server 930, and obtain the target video stream returned by the target intranet edge server 930 based on the target streaming request.
- the client by deploying the edge server of the intranet in the intranet, and through domain name resolution, the client can directly pull the video stream from the specified target edge server of the intranet without The external network pulls the video stream, which greatly saves the export bandwidth and improves the efficiency of video stream acquisition, thereby ensuring the smoothness of video playback and improving the user viewing experience.
- FIG. 10 shows the structure of an electronic device 900 suitable for implementing embodiments of the present disclosure. Structure diagram.
- the electronic device shown in FIG. 10 is only an example, and should not limit the functions and application scope of the embodiments of the present disclosure.
- an electronic device 900 may include a processing device (such as a central processing unit, a graphics processing unit, etc.) 901, which may be stored in a read-only memory (Read-Only Memory, ROM) 902 according to a program Various appropriate actions and processes are performed by a program loaded into a random access memory (Random Access Memory, RAM) 903 by 908. In the RAM 903, various programs and data necessary for the operation of the electronic device 900 are also stored.
- the processing device 901, ROM 902, and RAM 903 are connected to each other through a bus 904.
- An input/output (Input/Output, I/O) interface 905 is also connected to the bus 904 .
- an input device 906 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; including, for example, a liquid crystal display (Liquid Crystal Display, LCD) , an output device 907 such as a speaker, a vibrator, etc.; a storage device 908 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 909.
- the communication means 909 may allow the electronic device 900 to perform wireless or wired communication with other devices to exchange data.
- FIG. 10 shows electronic device 900 having various means, it is not a requirement to implement or possess all of the means shown. More or fewer means may alternatively be implemented or provided.
- embodiments of the present disclosure include a computer program product, which includes a computer program carried on a non-transitory computer readable medium, where the computer program includes program code for executing the method shown in the flowchart.
- the computer program may be downloaded and installed from a network via communication means 909, or from storage means 908, or from ROM 902.
- the processing device 901 the above-mentioned functions defined in the methods of the embodiments of the present disclosure are executed.
- the electronic device provided by the embodiment of the present disclosure belongs to the same idea as the video stream acquisition method provided by the above embodiment.
- the embodiment of the present disclosure has the same features as the above embodiment. same effect.
- An embodiment of the present disclosure provides a computer storage medium, on which a computer program is stored, and when the program is executed by a processor, the video stream acquisition method provided in the foregoing embodiments is implemented.
- the computer-readable medium mentioned above in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two.
- a computer readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or Any combination of the above.
- Examples of computer-readable storage media may include, but are not limited to, electrical connections with one or more wires, portable computer disks, hard disks, RAM, ROM, Erasable Programmable Read-Only Memory (EPROM), or flash memory), optical fiber, portable compact disk read-only memory (Compact Disc Read-Only Memory, CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
- a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
- a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
- a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, which can transmit, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device .
- the program code contained on the computer readable medium can be transmitted by any appropriate medium, including but not limited to: electric wire, optical cable, radio frequency (Radio Frequency, RF), etc., or any suitable combination of the above.
- the client and the server can communicate using any currently known or future developed network protocols such as Hypertext Transfer Protocol (HyperText Transfer Protocol, HTTP), and can communicate with digital data in any form or medium
- the communication eg, communication network
- Examples of communication networks include local area networks (Local Area Network, LAN), wide area networks (Wide Area Network, WAN), internetworks (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently existing networks that are known or developed in the future.
- the above-mentioned computer-readable medium may be included in the above-mentioned user terminal, or exist independently without being assembled into the user terminal.
- the above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the client, the client:
- the media server determines the IP address of the target intranet edge server based on the target egress IP address in the streaming information acquisition request, and based on the preset domain name generation method, according to the IP address of the target intranet edge server
- the domain name is generated from the address, and the target streaming information is determined according to the generated domain name; the target streaming information is obtained, and based on the preset domain name resolution method, the domain name analysis is performed on the target streaming information to obtain the IP address of the target intranet edge server; based on the target Intranet edge server IP address, send a target streaming request to the target intranet edge server, and obtain the target video stream returned by the target intranet edge server based on the target streaming request.
- the above-mentioned computer-readable medium may be included in the above-mentioned server; or it may exist independently without being incorporated into the server.
- the above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the server, the server:
- the client receives the target streaming request sent by the client based on the IP address of the edge server on the intranet, where the IP address of the edge server on the intranet is the domain name of the target streaming information obtained by the media server based on the preset domain name resolution method. Analyze the obtained; determine the target video stream corresponding to the target pull request, and return the target video stream, so that the client can obtain the target video stream.
- Computer program code for carrying out operations of the present disclosure may be written in one or more programming languages, or combinations thereof, including but not limited to object-oriented programming languages—such as Java, Smalltalk, C++, and Includes conventional procedural programming languages - such as the "C" language or similar programming languages.
- the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
- the remote computer can be connected to the user computer through any kind of network, including a LAN or WAN, or it can be connected to an external computer (eg via the Internet using an Internet Service Provider).
- each block in a flowchart or block diagram may represent a module, program segment, or portion of code that contains one or more logical functions for implementing specified executable instructions.
- the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved.
- each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations can be implemented by a dedicated hardware-based system that performs the specified functions or operations , or may be implemented by a combination of dedicated hardware and computer instructions.
- the units involved in the embodiments described in the present disclosure may be implemented by software or by hardware. Among them, the name of the unit does not constitute a reference to the unit itself in one case
- an editable content display unit can also be described as an "editing unit”.
- exemplary types of hardware logic components include: Field Programmable Gate Arrays (Field Programmable Gate Arrays, FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (Application Specific Standard Parts, ASSP), System on Chip (System on Chip, SOC), Complex Programmable Logic Device (Complex Programming Logic Device, CPLD) and so on.
- a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device.
- a 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, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. Examples of machine-readable storage media would include one or more wire-based electrical connections, portable computer disks, hard drives, RAM, ROM, EPROM or flash memory, optical fibers, CD-ROMs, optical storage devices, magnetic storage devices, or Any suitable combination of the above.
- Example 1 provides a video stream acquisition method applied to a client, including:
- the media server determines the target intranet edge server IP address based on the target egress IP address in the streaming information acquisition request, and based on the preset domain name generation method, according to the The IP address of the edge server on the target intranet is used to generate the domain name, and the target streaming information is determined according to the generated domain name;
- Example 2 provides a method for obtaining a video stream, which is applied to a client, and further includes:
- the acquisition of the target streaming information includes:
- Example 3 provides a video stream acquisition method method, applied to the user end, also includes:
- the acquisition of the target streaming information includes:
- the streaming management information is that the media server determines the IP address of a target intranet management server based on the target egress IP address in the streaming information acquisition request, And based on the default domain name generation method, the domain name generation is determined according to the IP address of the target intranet management server;
- the target intranet management server Based on the IP address of the target intranet management server, send a streaming address acquisition request to the target intranet management server, so that the target intranet management server determines the target intranet based on the target intranet IP address in the streaming address acquisition request Edge server IP address, and based on the default domain name generation method, perform domain name generation according to the IP address of the target intranet edge server, and determine the target streaming information according to the generated domain name;
- Example 4 provides a method for obtaining a video stream, which is applied to a client, and further includes:
- the method of performing domain name resolution on the target streaming information based on the preset domain name resolution method to obtain the IP address of the target intranet edge server includes:
- the domain name resolution server performs domain name resolution on the target streaming information based on a preset domain name resolution method, and obtains the IP address of the target intranet edge server, wherein , the domain name resolution server is a domain name resolution server in an intranet or a domain name resolution server in an external network;
- Example 5 provides a method for obtaining a video stream, which is applied to a client, and further includes:
- the method of performing domain name resolution on the target streaming information based on the preset domain name resolution method to obtain the IP address of the target intranet edge server includes:
- Example 6 provides a video stream acquisition method, Applies to media servers, including:
- the domain name is generated according to the IP address of the target intranet edge server, and the target streaming information is determined according to the generated domain name, so that the client can obtain the target streaming information based on the preset domain name
- domain name analysis is performed on the target streaming information to obtain the IP address of the target intranet edge server, and based on the target intranet edge server IP address, a target streaming request is sent to the target intranet edge server to obtain The target intranet edge server returns the video stream based on the target streaming request.
- Example 7 provides a video stream acquisition method, which is applied to a media server, and further includes:
- the determining the IP address of the target Intranet edge server based on the target egress IP address in the pull flow information acquisition request includes:
- the domain name is generated based on the preset domain name generation method based on the IP address of the target intranet edge server, and the target streaming information is determined according to the generated domain name, it also includes:
- Example 8 provides a video stream acquisition method, which is applied to a media server, and further includes:
- Example 9 provides a video stream acquisition method, which is applied to a media server, and further includes:
- the method of generating a domain name based on a preset domain name is based on generating a domain name according to the IP address of the target intranet edge server, and determining the target flow information according to the generated domain name, including:
- the IP address of the target intranet edge server is format-converted, and the transformed address information of the target intranet edge server is added to the streaming address to determine the target streaming information.
- Example 10 provides a video stream acquisition method, which is applied to a media server, and further includes:
- the target intranet management server determines the target intranet edge server IP address based on the target intranet IP address in the streaming address acquisition request, including:
- the target intranet management server determines the IP address of the target intranet edge server based on the pre-configured correspondence between the intranet IP address and the intranet edge server IP address and the target intranet IP address in the pull stream address acquisition request. address.
- Example 11 provides a method for obtaining a video stream, which is applied to an intranet edge server, including:
- IP address of the edge server of the intranet is the target streaming information obtained by the client based on the preset domain name resolution method using the media server Obtained by domain name resolution;
- Example 12 provides a video stream acquisition method, which is applied to an intranet edge server, and further includes:
- the determining the target video stream corresponding to the target pull request includes:
- the target video stream is determined from pre-cached cached video streams.
- Example 13 provides a video stream acquisition method, which is applied to an intranet edge server, and further includes:
- the determining the target video stream corresponding to the target pull request includes:
- the target video stream is pulled from the external network edge server, and the pulled target video stream is processed. cache.
- Example Fourteen provides a device for obtaining a video stream, which is integrated in a user terminal, including:
- the streaming information acquisition request sending module is configured to send a streaming information acquisition request to the media server, so that the media server determines the target intranet edge server IP address based on the target egress IP address in the streaming information acquisition request, and Based on the preset domain name generation method, the domain name is generated according to the IP address of the target intranet edge server, and the target streaming information is determined according to the generated domain name;
- the domain name resolution module is configured to obtain the target streaming information, and based on a preset domain name resolution method, perform domain name resolution on the target streaming information to obtain the target intranet edge server IP address;
- the target video stream acquisition module is configured to send a target streaming request to the target intranet edge server based on the IP address of the target intranet edge server, and obtain the target video returned by the target intranet edge server based on the target intranet edge server request flow.
- Example 15 provides a device for obtaining a video stream, integrated in a media server, including:
- the streaming information acquisition request receiving module is configured to receive the streaming information acquisition request sent by the client;
- the IP address determination module of the target intranet edge server is configured to determine the target intranet edge server IP address based on the target egress IP address in the pull flow information acquisition request;
- the target streaming information determination module is configured to generate a domain name based on a preset domain name generation method, perform domain name generation according to the IP address of the target intranet edge server, and determine the target streaming information according to the generated domain name, so that the client can obtain the
- the target streaming information based on the preset domain name resolution method, performs domain name analysis on the target streaming information, obtains the IP address of the edge server of the target intranet, and sends the IP address of the edge server of the target intranet to the target intranet
- the edge server sends a target streaming request, and obtains the video stream returned by the target intranet edge server based on the target streaming request.
- Example 16 provides a device for acquiring video streams, which is integrated in an intranet edge server, including:
- the target stream request receiving module is set to receive the request sent by the client based on the IP address of the edge server on the intranet.
- the target streaming request sent, wherein, the IP address of the edge server of the intranet is obtained by performing domain name analysis on the target streaming information obtained by the media server based on the preset domain name resolution method by the client;
- the target video stream determination module is configured to determine the target video stream corresponding to the target pull request, and return the target video stream, so that the client can obtain the target video stream.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种视频流获取方法、装置、***、设备和介质。该方法应用于用户端,包括:向媒体服务器发送拉流信息获取请求,以使媒体服务器基于拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;获取目标拉流信息,并基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址;基于目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器返回的目标视频流。
Description
本申请要求在2022年03月01日提交中国专利局、申请号为202210194825.6的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
本公开涉及互联网技术,例如涉及视频流获取方法、装置、***、设备和介质。
随着互联网技术的快速发展,用户端通常是直接从外网中获取待播放的视频流。当处于同一内网的多个用户端同时访问外网,并从外网中拉取视频流时,由于出口带宽有限,从而会导致视频发生卡顿,甚至出现不可观看的情况,严重影响了用户观看体验。
发明内容
本公开提供了视频流获取方法、装置、***、设备和介质,以解决因多个用户端同时拉取视频流而导致的出口带宽不足的情况,保证视频播放流畅度,提升用户观看体验。
第一方面,本公开提供了一种视频流获取方法,应用于用户端,包括:
向媒体服务器发送拉流信息获取请求,以使所述媒体服务器基于所述拉流信息获取请求中的目标出口互联网协议(Internet Protocol,IP)地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;
获取所述目标拉流信息,并基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址;
基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的目标视频流。
第二方面,本公开还提供了一种视频流获取方法,应用于媒体服务器,包括:
接收用户端发送的拉流信息获取请求;
基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址;
基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,以使所述用户端获取所述目标拉流信息,基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,并基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的视频流。
第三方面,本公开还提供了一种视频流获取方法,应用于内网边缘服务器,包括:
接收用户端基于内网边缘服务器IP地址发送的目标拉流请求,其中,所述内网边缘服务器IP地址是所述用户端基于预设域名解析方式,对利用媒体服务器获取到的目标拉流信息进行域名解析获得的;
确定所述目标拉取请求对应的目标视频流,并将所述目标视频流进行返回,以使所述用户端获取所述目标视频流。
第四方面,本公开还提供了一种视频流获取装置,集成于用户端,包括:
拉流信息获取请求发送模块,设置为向媒体服务器发送拉流信息获取请求,以使所述媒体服务器基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;
域名解析模块,设置为获取所述目标拉流信息,并基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址;
目标视频流获取模块,设置为基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的目标视频流。
第五方面,本公开还提供了一种视频流获取装置,集成于媒体服务器,包括:
拉流信息获取请求接收模块,设置为接收用户端发送的拉流信息获取请求;
目标内网边缘服务器IP地址确定模块,设置为基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址;
目标拉流信息确定模块,设置为基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,以
使所述用户端获取所述目标拉流信息,基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,并基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的视频流。
第六方面,本公开还提供了一种视频流获取装置,集成于内网边缘服务器,包括:
目标拉流请求接收模块,设置为接收用户端基于内网边缘服务器IP地址发送的目标拉流请求,其中,所述内网边缘服务器IP地址是所述用户端基于预设域名解析方式,对利用媒体服务器获取到的目标拉流信息进行域名解析获得的;
目标视频流确定模块,设置为确定所述目标拉取请求对应的目标视频流,并将所述目标视频流进行返回,以使所述用户端获取所述目标视频流。
第七方面,本公开还提供了一种视频流获取***,所述***包括:用户端、媒体服务器和至少一个内网边缘服务器;
其中,所述用户端设置为实现如第一方面所提供的视频流获取方法;
所述媒体服务器设置为实现如第二方面所提供的视频流获取方法;
所述内网边缘服务器设置为实现如第三方面所提供的视频流获取方法。
第八方面,本公开还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储器,设置为存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的视频流获取方法。
第九方面,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的视频流获取方法。
第十方面,本公开还提供了一种计算机程序产品,包括承载在非暂态计算机可读介质上的计算机程序,所述计算机程序包含用于执行上述的视频流获取方法的程序代码。
图1是本公开实施例一提供的一种视频流获取方法的流程图;
图2是本公开实施例一所涉及的一种视频流获取过程的示例;
图3是本公开实施例一所涉及的另一种视频流获取过程的示例;
图4是本公开实施例二提供的一种视频流获取方法的流程图;
图5是本公开实施例三提供的一种视频流获取方法的流程图;
图6是本公开实施例四提供的一种视频流获取装置的结构示意图;
图7是本公开实施例五提供的一种视频流获取装置的结构示意图;
图8是本公开实施例六提供的一种视频流获取装置的结构示意图;
图9是本公开实施例七提供的一种视频流获取***的结构示意图;
图10是本公开实施例八提供的一种电子设备的结构示意图。
下面将参照附图描述本公开的实施例。虽然附图中显示了本公开的一些实施例,然而本公开可以通过多种形式来实现,提供这些实施例是为了理解本公开。本公开的附图及实施例仅用于示例性作用。
本公开的方法实施方式中记载的多个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
实施例一
图1为本公开实施例一提供的一种视频流获取方法的流程图,本实施例可适用于每个内网中的多个用户端同时获取视频流,以使多个用户同时观看视频的情况,尤其是可以用于在直播场景或者点播场景中,处于同一内网的多个用户端获取视频流的应用场景。例如,可以应用于企业内部培训时,需求每个员工同时观看同一直播视频或者同一点播视频的场景中。该方法可以由视频流获
取装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于用户端中。如图1所示,该方法包括以下步骤:
S110、向媒体服务器发送拉流信息获取请求,以使媒体服务器基于拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息。
媒体服务器可以是指位于外网的后台服务器。外网是指广域网、公网。用户端是指位于内网中的视频观看端。内网是指局域网,即在一定区域内由多台用户端互联形成的设备组。例如,内网可以由公司内的上千台用户端组成。内网可以为一个或多个。同一内网中的多个用户端可以共同使用一根公共线路与外网的媒体服务器进行通信。同一内网中的多个用户端对应同一个出口IP地址。内网中的每个用户端对应一个内网IP地址,内网IP地址是内网内部分配的,不同内网的IP地址可以重复,不会相互影响。
本公开实施例可以将多个用户端所在区域视为一个工区,并基于网络拓扑结构,可以确定工区与出口IP地址之间的对应关系。例如,一个工区对应一个内网,比如,企业的每个楼层(相当于每个工区)使用不同的内网,也就是说同一内网中的多个用户端分配到同一工区,此时一个工区对应一个出口IP地址。或者,多个工区对应一个内网,比如企业的3楼层和4楼层这两个工区共用同一个内网,也就是说同一内网中的多个用户端分配到多个工区,此时多个工区对应同一个出口IP地址。例如,相关技术中,若工区中的1000个用户端同时观看外网的一场直播或者点播,直播或者点播的默认码率是1Mbps,则该工区对应的出口带宽需要不小于1000Mbps,如果出口带宽过小,就会导致视频发生卡顿,甚至不可观看的情况。
内网边缘服务器可以是指部署在内网中的内容分发网络(Content Delivery Network,CDN)节点,设置为缓存用户端拉取的视频流,以使用户端可以从内网边缘服务器中拉取视频流,无需从外网中拉取,从而节省了视频出口带宽,解决了出口带宽不足的情况。内网边缘服务器可以基于内网拓扑结构和业务需求进行部署。例如,若每个内网中存在一个工区,即一个工区对应一个出口IP地址,则可以针对每个内网(即每个工区)部署相应的一个内网边缘服务器。若每个内网中存在多个工区,即多个工区对应同一个出口IP地址,则可以针对每个内网部署相应的一个内网边缘服务器,也可以针对每个内网中的每个工区部署一个内网边缘服务器,以便节省内网带宽。目标内网边缘服务器可以是指当前待拉流的用户端所对应的内网边缘服务器,以使该用户端可以从该内网边缘服务器中进行拉流。
预设域名生成方式可以是预先设置的,用于将目标内网边缘服务器IP地址添加至域名中的方式,以便通过域名的方式可以将目标内网边缘服务器IP地址传递给用户端,从而告知用户端可以从目标内网边缘服务器IP地址对应的目标内网边缘服务器中进行拉流。
用户端可以向媒体服务器发送拉流信息获取请求,该拉流信息获取请求可以包括该用户端对应的目标出口IP地址和该用户端待拉取的视频流标识,比如视频流名称等。媒体服务器接收到该拉流信息获取请求后,可以基于拉流信息获取请求中的目标出口IP地址确定出相应的目标内网边缘服务器IP地址,并基于预设域名生成方式,生成目标内网边缘服务器IP地址对应的拉流域名,根据该拉流域名获得包含目标内网边缘服务器IP地址信息的目标拉流信息。
S120、获取目标拉流信息,并基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址。
预设域名解析方式可以是指与预设域名生成方式相应的域名泛解析方式,以使用户端可以获得目标拉流信息中的目标内网边缘服务器IP地址。例如,本公开实施例可以在用户端本地进行域名解析操作,以使用户端可以快速获得解析后的目标内网边缘服务器IP地址,提高解析效率;也可以利用位于内网中的域名解析服务器进行域名解析操作,以便内网中的域名解析服务器可以统一处理同一内网中的多个用户端的域名解析操作;还可以利用位于外网中的域名解析服务器进行域名解析操作,以便外网中的域名解析服务器可以统一处理所有内网中的用户端的域名解析操作,节省了设备资源。
示例性地,目标拉流信息的获取操作可以至少通过如下方式进行实现:
作为一种实现方式,S120中的“获取目标拉流信息”,可以包括:接收媒体服务器发送的目标拉流信息。
图2给出了一种视频流获取过程的示例。如图2所示,媒体服务器可以基于用户端发送的拉流信息获取请求中的目标出口IP地址,根据预先配置的出口IP地址与内网边缘服务器IP地址之间的对应关系,直接确定出目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,并将目标拉流信息发送至用户端,使得用户端可以通过接收媒体服务器发送的目标拉流信息的方式,获得目标拉流信息。
针对于通过媒体服务器直接获得目标内网边缘服务器IP地址的情况(如图2所示),可以将同一内网中的多个用户端均对应同一个内网边缘服务器IP地址,从而使得同一内网中的多个用户端均从同一内网边缘服务器中进行拉流。
例如,若一个出口IP地址对应一个工区,即一个内网对应一个工区,则该工区中的用户端可以从同一个内网边缘服务器中进行拉流。若一个出口IP地址对应多个工区,即一个内网对应多个工区,则该内网的所有工区中的用户端也是从同一个内网边缘服务器中进行拉流。
作为另一种实现方式,S120中的“获取目标拉流信息”,可以包括:接收媒体服务器发送的拉流管理信息,其中,拉流管理信息是媒体服务器基于拉流信息获取请求中的目标出口IP地址确定目标内网管理服务器IP地址,并基于预设域名生成方式,根据目标内网管理服务器IP地址进行域名生成确定的;基于预设域名解析方式,对拉流管理信息进行域名解析,获得目标内网管理服务器IP地址;基于目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求,以使目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;接收目标内网管理服务器发送的目标拉流信息。
内网管理服务器可以是预先部署在内网中的,设置为管理该内网中的内网边缘服务器与该内网中的用户端之间的对应关系的设备。在一个出口IP地址对应多个工区时,可以针对每个工区设置一个内网边缘服务器,以便在同一内网中,不同工区中的用户端可以从不同内网边缘服务器中进行拉流,避免了位于该内网的所有工区中的用户端均从同一个内网边缘服务器中进行拉流的情况,节省了内网带宽。本实施例可以在同一内网中部署一个内网管理服务器以及与内网所包含的工区数量相同的内网边缘服务器,从而同一内网中的不同工区可以对应不同的内网边缘服务器。在同一内网中,不同用户端的内网IP地址是不同的,从而可以基于用户端的内网IP地址确定出该用户端所在工区,并基于工区与内网边缘服务器IP地址之间的对应关系,确定出该用户端对应的目标内网边缘服务器IP地址;或者可以基于用户端的内网IP地址与内网边缘服务器IP地址之间的多对一的对应关系,直接确定出该用户端对应的目标内网边缘服务器IP地址。
图3给出了另一种视频流获取过程的示例。如图3所示,媒体服务器可以基于用户端发送的拉流信息获取请求中的目标出口IP地址,根据预先配置的出口IP地址与内网管理服务器IP地址之间的对应关系,确定出目标内网管理服务器IP地址,并基于预设域名生成方式,根据目标内网管理服务器IP地址进行域名生成,并根据生成的域名确定拉流管理信息,并将拉流管理信息发送至用户端。用户端可以基于预设域名解析方式,对接收到的拉流管理信息进行域名解析,获得目标内网管理服务器IP地址,并基于目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求,该拉流地址获取请求可以包括该
用户端对应的目标内网IP地址和该用户端待拉取的视频流标识,比如视频流名称等。目标内网管理服务器可以基于接收到的拉流地址获取请求中的目标内网IP地址,根据预先配置的内网IP地址与内网边缘服务器IP地址之间的对应关系,确定出目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,并将目标拉流信息发送至用户端,使得用户端可以通过接收目标内网管理服务器发送的目标拉流信息的方式,获得目标拉流信息。
针对于通过利用内网管理服务器间接获得目标内网边缘服务器IP地址的情况(如图3所示),同一内网中的不同工区中的用户端可以对应不同的内网边缘服务器IP地址,从而使得同一内网中的不同工区中的用户端可以从不同的内网边缘服务器中进行拉流,避免了位于该内网的所有工区中的用户端均从同一个内网边缘服务器中进行拉流的情况,即解决了一个出口IP地址对应多个工区的情况,从而节省了内网带宽。
示例性地,S120中的“基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址”,可以包括:将目标拉流信息发送至域名解析服务器,以使域名解析服务器基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,其中,域名解析服务器为处于内网的域名解析服务器或者处于外网的域名解析服务器;接收域名解析服务器返回的目标内网边缘服务器IP地址。
用户端可以通过将目标拉流信息发送至位于内网的域名解析服务器,利用位于内网的域名解析服务器可以统一处理同一内网中的多个用户端的域名解析操作。用户端还可以将目标拉流信息发送至位于外网的域名解析服务器,利用位于外网的域名解析服务器可以统一处理所有内网中的用户端的域名解析操作,从而节省了设备资源。
示例性地,基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,可以包括:提取出目标拉流信息中的具有预设域名格式的目标内网边缘服务器地址信息;将目标内网边缘服务器地址信息解析为IP地址格式,获得目标内网边缘服务器IP地址。
预设域名格式可以是利用预设域名生成方式所生成的域名格式。例如,目标内网边缘服务器IP地址为:10.95.3.11,具有预设域名格式的目标内网边缘服务器地址信息可以为:10-95-3-11。
用户端本地或者位于内网或者外网的域名解析服务器可以提取出所接收到的目标拉流信息中的目标内网边缘服务器地址信息。例如,目标拉流信息中的拉流地址为:https://10-95-3-11.xx.com/yy.m3u8?domain=aaa.bbb.cn,则提取出的
目标内网边缘服务器地址信息为:10-95-3-11,此时可以将目标内网边缘服务器地址信息解析为IP地址格式,获得目标内网边缘服务器IP地址,比如,10.95.3.11,从而利用域名解析的方式可以实现访问指定的内网边缘服务器的情况。
示例性地,针对于通过利用内网管理服务器间接获得目标内网边缘服务器IP地址的情况(如图3所示),“基于预设域名解析方式,对拉流管理信息进行域名解析,获得目标内网管理服务器IP地址”,可以包括:提取出拉流管理信息中的具有预设域名格式的目标内网管理服务器地址信息;将目标内管理服务器地址信息解析为IP地址格式,获得目标内网管理服务器IP地址。
可以基于相同域名解析方式,对拉流管理信息进行解析,获得目标内网管理服务器IP地址。例如,拉流管理信息中的目标内网管理服务器地址为:https://10-225-70-182.xx.com:9755/live/stream_config,则提取出的目标内网管理服务器地址信息为:10-225-70-182,此时可以将目标内网管理服务器地址信息解析为IP地址格式,获得目标内网管理服务器IP地址,比如,10.225.70.182,从而利用域名解析的方式可以实现访问指定的内网管理服务器的情况。
S130、基于目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器基于目标拉流请求返回的目标视频流。
用户端可以基于目标内网边缘服务器IP地址,从位于内网的目标内网边缘服务器中进行拉流,该目标内网边缘服务器中可以预先缓存待拉取的视频流;或者,针对接收到的首个用于拉取目标视频流的拉流请求,可以基于拉流请求中的外网拉流地址(比如aaa.bbb.cn),从外网边缘服务器(比如外网CDN节点)中进行拉流,并将拉取的目标视频流进行缓存,以便针对后续拉取请求可以直接返回所缓存的目标视频流,此时可以将N路视频流需要使用的出口带宽变成只需要一路视频流使用的出口带宽,大大节省了视频出口带宽,避免了因出口带宽不足而导致的视频播放流畅度差的情况,提高了视频流获取效率,同时也提高了视频播放流畅度,大大提升了用户观看体验。
本公开实施例的技术方案,用户端向媒体服务器发送拉流信息获取请求。媒体服务器基于拉流信息获取请求中的目标出口IP地址确定出目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息。用户端获取目标拉流信息,并基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,从而可以基于目标内网边缘服务器IP地址,向位于内网中的目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器基于目标拉流请求返回的目标视频流。通过在内网中部署内网边缘服务器,并通过域名解析的方式,用户端可以直接从指定的目标内网边缘服务器中拉取视频流,无需从
外网拉取视频流,从而大大节省了出口带宽,并且提高了视频流获取效率,进而保证了视频播放流畅度,提升了用户观看体验。
实施例二
图4为本公开实施例二提供的一种视频流获取方法的流程图,本实施例可适用于每个内网中的多个用户端同时获取视频流,以使多个用户同时观看视频的情况,尤其是可以用于在直播场景或者点播场景中,处于同一内网的多个用户端获取视频流的应用场景。该方法可以由视频流获取装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于媒体服务器中。如图4所示,该方法包括以下步骤:
S410、接收用户端发送的拉流信息获取请求。
S420、基于拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址。
S430、基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,以使用户端获取目标拉流信息,基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,并基于目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器基于目标拉流请求返回的视频流。
示例性地,S420可以包括:基于预先配置的出口IP地址与内网边缘服务器IP地址之间的对应关系和拉流信息获取请求中的目标出口IP地址,确定目标内网边缘服务器IP地址;相应地,在S430之后还包括:将目标拉流信息发送至用户端。
针对于通过媒体服务器直接获得目标内网边缘服务器IP地址的情况(如上述实施例中的图2所示),可以基于业务需求预先在媒体服务器中配置出每个内网对应的出口IP地址与每个内网对应的内网边缘服务器IP地址之间的对应关系,从而在实际使用中,媒体服务器基于该对应关系和拉流信息获取请求中的目标出口IP地址,可以直接确定出该目标出口IP地址对应的目标内网边缘服务器IP地址,并将基于该目标内网边缘服务器IP地址确定的目标拉流信息发送至用户端,从而使得用户端可以获得媒体服务器发送的目标拉流信息。
示例性地,S420和S430可以包括:基于拉流信息获取请求中的目标出口IP地址确定目标内网管理服务器IP地址,并基于预设域名生成方式,根据目标内网管理服务器IP地址进行域名生成,并根据生成的域名确定拉流管理信息;将拉流管理信息发送至用户端,以使用户端基于预设域名解析方式,对拉流管
理信息进行域名解析,获得目标内网管理服务器IP地址,并基于目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求,以使目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息并进行返回。
内网管理服务器可以参见上述实施例的相关描述,此处不再赘述。
示例性地,目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定目标内网边缘服务器IP地址,可以包括:目标内网管理服务器基于预先配置的内网IP地址与内网边缘服务器IP地址之间的对应关系和拉流地址获取请求中的目标内网IP地址,确定目标内网边缘服务器IP地址。
针对于通过利用内网管理服务器间接获得目标内网边缘服务器IP地址的情况(如上述实施例中的图3所示),可以基于业务需求预先在媒体服务器中配置出每个内网对应的出口IP地址与每个内网对应的内网管理服务器IP地址之间的对应关系,以及基于内网的网络拓扑结构,预先在每个内网管理服务器中配置出每个工区中的每个用户端对应的内网IP地址与该工区对应的内网边缘服务器IP地址之间的对应关系。在实际使用中,媒体服务器可以基于拉流信息获取请求中的目标出口IP地址和预先配置的出口IP地址与内网管理服务器IP地址之间的对应关系,确定出该目标出口IP地址对应的目标内网管理服务器IP地址,并将基于该目标内网管理服务器IP地址确定的拉流管理信息发送至用户端。用户端基于预设域名解析方式,对拉流管理信息进行域名解析,获得目标内网管理服务器IP地址,并基于目标内网管理服务器IP地址,向位于内网的目标内网管理服务器发送拉流地址获取请求。目标内网管理服务器可以基于拉流地址获取请求中的目标内网IP地址和先预配置的内网IP地址与内网边缘服务器IP地址之间的对应关系,确定出目标内网IP地址对应的目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息并进行返回,从而使得用户端可以获得目标内网管理服务器发送的目标拉流信息。
用户端在接收到媒体服务器发送的目标拉流信息,或者目标内网管理服务器发送的目标拉流信息后,可以基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,从而利用域名解析的方式可以实现访问指定的内网边缘服务器的情况。其中,域名解决的过程可以参见上述实施例的相关描述,此处不再赘述。用户端可以基于目标内网边缘服务器IP地址,从位于内网的目标内网边缘服务器中进行拉流,无需从外网拉取视频流,从而大大节省了视频出口带宽,避免了因出口带宽不足而导致的视频播放流畅度差
的情况,提高了视频流获取效率,同时也提高了视频播放流畅度,大大提升了用户观看体验。
示例性地,S430中的“基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息”,可以包括:基于预设域名格式,将目标内网边缘服务器IP地址进行格式变换,并将变换后的目标内网边缘服务器地址信息添加至拉流地址中,确定目标拉流信息。
预设域名格式可以是预先设置的,域名所允许的字符格式。例如,目标内网边缘服务器IP地址为:10.95.3.11,利用预设域名格式变换后获得的目标内网边缘服务器地址信息为:10-95-3-11,并可以将该目标内网边缘服务器地址信息拼接到拉流地址中,比如添加到待拉取的目标视频流标识的前面。而且,还可以将实际的外网拉流地址拼接到目标拉流信息中,以使针对首个拉流请求可以从外网拉流地址拉取目标视频流。例如,目标拉流信息对应的拉流地址为:https://10-95-3-11.xx.com/yy.m3u8?domain=aaa.bbb.cn,其中,xx.com为待拉取的目标视频流标识,aaa.bbb.cn为外网拉流地址。
示例性地,针对于通过利用内网管理服务器间接获得目标内网边缘服务器IP地址的情况(如上述实施例中的图3所示),“基于预设域名生成方式,根据目标内网管理服务器IP地址进行域名生成,确定拉流管理信息”,可以包括:基于预设域名格式,将目标内网管理服务器IP地址进行格式变换,获得目标内网管理服务器地址信息,并基于目标内网管理服务器地址信息确定拉流管理信息。拉流管理信息除了包括目标内网管理服务器地址之外,还可以包括外网拉流地址,以便在内网边缘服务器的缓存中不存在目标视频流时,可以针对首个拉流请求从外网拉流地址拉取目标视频流并进行缓存。
媒体服务器可以基于与上述目标拉流信息类似的确定方式,确定出拉流管理信息。例如,目标内网管理服务器IP地址为:10.225.70.182,利用预设域名格式变换后获得的目标内网管理服务器地址信息为:10-225-70-182,基于该目标内网管理服务器地址信息生成的拉流管理信息中的目标内网管理服务器地址为:https://10-225-70-182.xx.com:9755/live/stream_config。若用户端需要获取外网拉流地址,则可以将确定的外网拉流地址,比如:https://aaa.bbb.cn/yy.m3u8?domain=aaa.bbb.cn也添加至拉流管理信息发送至用户端。
本实施例的技术方案,用户端向媒体服务器发送拉流信息获取请求。媒体服务器基于拉流信息获取请求中的目标出口IP地址确定出目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息。用户端获取目标拉流信息,并基
于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,从而可以基于目标内网边缘服务器IP地址,向位于内网中的目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器基于目标拉流请求返回的目标视频流。通过在内网中部署内网边缘服务器,并通过域名解析的方式,用户端可以直接从指定的目标内网边缘服务器中拉取视频流,无需从外网拉取视频流,从而大大节省了出口带宽,并且提高了视频流获取效率,进而保证了视频播放流畅度,提升了用户观看体验。
实施例三
图5为本公开实施例三提供的一种视频流获取方法的流程图,本实施例可适用于每个内网中的多个用户端同时获取视频流,以使多个用户同时观看视频的情况,尤其是可以用于在直播场景或者点播场景中,处于同一内网的多个用户端获取视频流的应用场景。该方法可以由视频流获取装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于内网边缘服务器中。如图5所示,该方法包括以下步骤:
S510、接收用户端基于内网边缘服务器IP地址发送的目标拉流请求,其中,内网边缘服务器IP地址是用户端基于预设域名解析方式,对利用媒体服务器获取到的目标拉流信息进行域名解析获得的。
用户端可以基于待拉取的目标视频流对应的目标视频流标识生成目标拉流请求,或者基于待拉取的目标视频流对应的目标视频流标识和实际的外网拉流地址生成目标拉流请求,并基于通过媒体服务器直接获得的内网边缘服务器IP地址或者通过内网管理服务器间接获得的内网边缘服务器IP地址,向所指定的内网边缘服务器发送目标拉流请求,从而使得内网边缘服务器可以接收到用户端发送的目标拉流请求。
S520、确定目标拉取请求对应的目标视频流,并将目标视频流进行返回,以使用户端获取目标视频流。
内网边缘服务器可以基于用户端发送的目标拉取请求中的目标视频流标识确定出缓存的目标视频流,并将缓存的目标视频流发送至用户端,从而用户端可以直接从位于内网的边缘服务器中进行拉流,无需从外网拉取视频流,从而大大节省了视频出口带宽,避免了因出口带宽不足而导致的视频播放流畅度差的情况,提高了视频流获取效率,同时也提高了视频播放流畅度,大大提升了用户观看体验。
示例性地,S520可以包括:基于目标拉取请求中的目标视频流标识,从预
先缓存的缓存视频流中确定目标视频流。
在点播场景中,可以将每个点播视频预先缓存至每个内网边缘服务器中,从而内网边缘服务器在接收到目标拉取请求时,可以基于待拉取的目目标视频流标识,从缓存的多个视频流中确定出目标视频流,从而同一内网的多个用户端在需要同时观看同一点播视频时,可以直接获得内网边缘服务器缓存的该点播视频,无需从外网拉取视频流,大大节省了出口带宽,并且提高了视频流获取效率,进而保证了视频播放流畅度,提升了用户观看体验。
示例性地,S520可以包括:基于目标拉取请求中的目标视频流标识,检测当前缓存的缓存视频流中是否存在目标视频流;若当前缓存的缓存视频流中存在目标视频流,则将该缓存视频流确定为目标视频流;若当前缓存的缓存视频流中不存在目标视频流,则基于目标拉取请求中的外网拉流地址,向外网边缘服务器拉取目标视频流,并将拉取的目标视频流进行缓存。
在直播场景中,由于直播视频是实时产生的,无法预先缓存直播视频,从而内网边缘服务器在接收到首个用于拉取目标视频流的目标拉流请求时,可以基于拉流请求中的外网拉流地址,从外网边缘服务器(比如外网CDN节点)中进行拉流,并将拉取的目标视频流进行缓存,以便针对后续接收到目标拉取请求时,可以直接返回当前缓存的目标视频流,无需再从外网拉取,从而可以将N路视频流需要使用的出口带宽变成只需要一路视频流使用的出口带宽,大大节省了视频出口带宽,避免了因出口带宽不足而导致的视频播放流畅度差的情况,提高了视频流获取效率,同时也提高了视频播放流畅度,大大提升了用户观看体验。
本公开实施例的技术方案,用户端向媒体服务器发送拉流信息获取请求。媒体服务器基于拉流信息获取请求中的目标出口IP地址确定出目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息。用户端获取目标拉流信息,并基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,从而可以基于目标内网边缘服务器IP地址,向位于内网中的目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器基于目标拉流请求返回的目标视频流。通过在内网中部署内网边缘服务器,并通过域名解析的方式,用户端可以直接从指定的目标内网边缘服务器中拉取视频流,无需从外网拉取视频流,从而大大节省了出口带宽,并且提高了视频流获取效率,进而保证了视频播放流畅度,提升了用户观看体验。
以下是本公开实施例提供的视频流获取装置的实施例,该装置与上述实施
例一的视频流获取方法属于同一个构思,在视频流获取装置的实施例中未详尽描述的细节内容,可以参考上述实施例一。
实施例四
图6为本公开实施例四提供的一种视频流获取装置的结构示意图,本实施例可适用于每个内网中的多个用户端同时获取视频流,以使多个用户同时观看视频的情况,尤其是可以用于在直播场景或者点播场景中,处于同一内网的多个用户端获取视频流的应用场景。如图6所示,该装置集成于用户端,包括:拉流信息获取请求发送模块610、域名解析模块620和目标视频流获取模块630。
拉流信息获取请求发送模块610,设置为向媒体服务器发送拉流信息获取请求,以使媒体服务器基于拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;域名解析模块620,设置为获取目标拉流信息,并基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址;目标视频流获取模块630,设置为基于目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器基于目标拉流请求返回的目标视频流。
在上述技术方案的基础上,域名解析模块620包括:
目标拉流信息获取单元,设置为:接收媒体服务器发送的目标拉流信息。
在上述技术方案的基础上,目标拉流信息获取单元,还设置为:接收媒体服务器发送的拉流管理信息,其中,拉流管理信息是媒体服务器基于拉流信息获取请求中的目标出口IP地址确定目标内网管理服务器IP地址,并基于预设域名生成方式,根据目标内网管理服务器IP地址进行域名生成确定的;基于预设域名解析方式,对拉流管理信息进行域名解析,获得目标内网管理服务器IP地址;基于目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求,以使目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;接收目标内网管理服务器发送的目标拉流信息。
在上述技术方案的基础上,域名解析模块620还包括:
域名解析单元,设置为:将目标拉流信息发送至域名解析服务器,以使域名解析服务器基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,其中,域名解析服务器为处于内网的域名解析服务器或者处于外网的域名解析服务器;接收域名解析服务器返回的目标内网边缘
服务器IP地址。
在上述技术方案的基础上,域名解析单元,还设置为:提取出目标拉流信息中的具有预设域名格式的目标内网边缘服务器地址信息;将目标内网边缘服务器地址信息解析为IP地址格式,获得目标内网边缘服务器IP地址。
本公开实施例所提供的视频流获取装置可执行本公开实施例一所提供的视频流获取方法,具备执行视频流获取方法相应的功能模块和效果。
上述视频流获取装置的实施例中,所包括的多个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,多个功能单元的名称也只是为了便于相互区分,并不用于限制本公开的保护范围。
以下是本公开实施例提供的视频流获取装置的实施例,该装置与上述实施例二的视频流获取方法属于同一个构思,在视频流获取装置的实施例中未详尽描述的细节内容,可以参考上述实施例二。
实施例五
图7为本公开实施例五提供的一种视频流获取装置的结构示意图,本实施例可适用于每个内网中的多个用户端同时获取视频流,以使多个用户同时观看视频的情况,尤其是可以用于在直播场景或者点播场景中,处于同一内网的多个用户端获取视频流的应用场景。如图7所示,该装置集成于媒体服务器,包括:拉流信息获取请求接收模块710、目标内网边缘服务器IP地址确定模块720和目标拉流信息确定模块730。
拉流信息获取请求接收模块710,设置为接收用户端发送的拉流信息获取请求;目标内网边缘服务器IP地址确定模块720,设置为基于拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址;目标拉流信息确定模块730,设置为基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,以使用户端获取目标拉流信息,基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,并基于目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器基于目标拉流请求返回的视频流。
在上述技术方案的基础上,目标内网边缘服务器IP地址确定模块720,设置为:基于预先配置的出口IP地址与内网边缘服务器IP地址之间的对应关系和拉流信息获取请求中的目标出口IP地址,确定目标内网边缘服务器IP地址;
该装置还包括:目标拉流信息发送模块,设置为在基于预设域名生成方式,
根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息之后,将目标拉流信息发送至用户端。
在上述技术方案的基础上,目标内网边缘服务器IP地址确定模块720和目标拉流信息确定模块730,设置为:
基于拉流信息获取请求中的目标出口IP地址确定目标内网管理服务器IP地址,并基于预设域名生成方式,根据目标内网管理服务器IP地址进行域名生成,并根据生成的域名确定拉流管理信息;将拉流管理信息发送至用户端,以使用户端基于预设域名解析方式,对拉流管理信息进行域名解析,获得目标内网管理服务器IP地址,并基于目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求,以使目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息并进行返回。
在上述技术方案的基础上,目标拉流信息确定模块730,设置为:基于预设域名格式,将目标内网边缘服务器IP地址进行格式变换,并将变换后的目标内网边缘服务器地址信息添加至拉流地址中,确定目标拉流信息。
在上述技术方案的基础上,目标内网管理服务器包括:目标内网边缘服务器IP地址确定单元,设置为:基于预先配置的内网IP地址与内网边缘服务器IP地址之间的对应关系和拉流地址获取请求中的目标内网IP地址,确定目标内网边缘服务器IP地址。
本公开实施例所提供的视频流获取装置可执行本公开实施例二所提供的视频流获取方法,具备执行视频流获取方法相应的功能模块和效果。
上述视频流获取装置的实施例中,所包括的多个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,多个功能单元的名称也只是为了便于相互区分,并不用于限制本公开的保护范围。
以下是本公开实施例提供的视频流获取装置的实施例,该装置与上述实施例三的视频流获取方法属于同一个构思,在视频流获取装置的实施例中未详尽描述的细节内容,可以参考上述实施例三。
实施例六
图8为本公开实施例六提供的一种视频流获取装置的结构示意图,本实施例可适用于每个内网中的多个用户端同时获取视频流,以使多个用户同时观看视频的情况,尤其是可以用于在直播场景或者点播场景中,处于同一内网的多
个用户端获取视频流的应用场景。如图8所示,该装置集成于内网边缘服务器,包括:目标拉流请求接收模块810和目标视频流确定模块820。
目标拉流请求接收模块810,设置为接收用户端基于内网边缘服务器IP地址发送的目标拉流请求,其中,内网边缘服务器IP地址是用户端基于预设域名解析方式,对利用媒体服务器获取到的目标拉流信息进行域名解析获得的;目标视频流确定模块820,设置为确定目标拉取请求对应的目标视频流,并将目标视频流进行返回,以使用户端获取目标视频流。
在上述技术方案的基础上,目标视频流确定模块820,设置为:基于目标拉取请求中的目标视频流标识,从预先缓存的缓存视频流中确定目标视频流。
在上述技术方案的基础上,目标视频流确定模块820,还设置为:基于目标拉取请求中的目标视频流标识,检测当前缓存的缓存视频流中是否存在目标视频流;若所述当前缓存的缓存视频流中存在所述目标视频流,则将该缓存视频流确定为目标视频流;若所述当前缓存的缓存视频流中不存在所述目标视频流,则基于目标拉取请求中的外网拉流地址,向外网边缘服务器拉取目标视频流,并将拉取的目标视频流进行缓存。
本公开实施例所提供的视频流获取装置可执行本公开实施例三所提供的视频流获取方法,具备执行视频流获取方法相应的功能模块和效果。
上述视频流获取装置的实施例中,所包括的多个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,多个功能单元的名称也只是为了便于相互区分,并不用于限制本公开的保护范围。
实施例七
图9为本公开实施例七提供的一种视频流获取***的结构示意图,本实施例可适用于每个内网中的多个用户端同时获取视频流,以使多个用户同时观看视频的情况,尤其是可以用于在直播场景或者点播场景中,处于同一内网的多个用户端获取视频流的应用场景。如图9所示,该***包括:用户端910、媒体服务器920和至少一个内网边缘服务器930。
用户端910设置为实现如本公开实施例一所提供的视频流获取方法;媒体服务器920设置为实现如本公开实施例二所提供的视频流获取方法;内网边缘服务器930设置为实现如本公开实施例三所提供的视频流获取方法。
示例性地,针对于通过媒体服务器直接获得目标内网边缘服务器IP地址的情况,可以针对每个内网部署一个内网边缘服务器930。该视频流获取***的实
现过程可以为:用户端910向媒体服务器920发送拉流信息获取请求,媒体服务器920基于拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,并将目标拉流信息发送至用户端910。用户端910接收媒体服务器920发送的目标拉流信息后,基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,并基于目标内网边缘服务器IP地址,向目标内网边缘服务器930发送目标拉流请求,获取目标内网边缘服务器930基于目标拉流请求返回的目标视频流。
示例性地,针对于通过利用内网管理服务器间接获得目标内网边缘服务器IP地址的情况,该视频流获取***还可以包括:至少一个内网管理服务器。可以针对每个内网部署一个内网管理服务器,并基于每个内网的网络拓扑结构部署每个内网对应的至少一个内网边缘服务器930。例如,可以针对内网中的每个工区部署一个内网边缘服务器930。该视频流获取***的实现过程可以为:
用户端910向媒体服务器920发送拉流信息获取请求,媒体服务器920基于拉流信息获取请求中的目标出口IP地址确定目标内网管理服务器IP地址,并基于预设域名生成方式,根据目标内网管理服务器IP地址进行域名生成,并根据生成的域名确定拉流管理信息,并将拉流管理信息发送至用户端910。用户端910接收媒体服务器920发送的拉流管理信息后,基于预设域名解析方式,对拉流管理信息进行域名解析,获得目标内网管理服务器IP地址,并基于目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求。目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,并将目标拉流信息发送至用户端910。用户端910接收目标内网管理服务器发送的目标拉流信息后,基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,并基于目标内网边缘服务器IP地址,向目标内网边缘服务器930发送目标拉流请求,获取目标内网边缘服务器930基于目标拉流请求返回的目标视频流。
本公开实施例中的视频卡顿预测***,通过在内网中部署内网边缘服务器,并通过域名解析的方式,用户端可以直接从指定的目标内网边缘服务器中拉取视频流,无需从外网拉取视频流,从而大大节省了出口带宽,并且提高了视频流获取效率,进而保证了视频播放流畅度,提升了用户观看体验。
实施例八
下面参考图10,其示出了适于用来实现本公开实施例的电子设备900的结
构示意图。图10示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图10所示,电子设备900可以包括处理装置(例如中央处理器、图形处理器等)901,其可以根据存储在只读存储器(Read-Only Memory,ROM)902中的程序或者从存储装置908加载到随机访问存储器(Random Access Memory,RAM)903中的程序而执行多种适当的动作和处理。在RAM 903中,还存储有电子设备900操作所需的多种程序和数据。处理装置901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(Input/Output,I/O)接口905也连接至总线904。
通常,以下装置可以连接至I/O接口905:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置906;包括例如液晶显示器(Liquid Crystal Display,LCD)、扬声器、振动器等的输出装置907;包括例如磁带、硬盘等的存储装置908;以及通信装置909。通信装置909可以允许电子设备900与其他设备进行无线或有线通信以交换数据。虽然图10示出了具有多种装置的电子设备900,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置909从网络上被下载和安装,或者从存储装置908被安装,或者从ROM 902被安装。在该计算机程序被处理装置901执行时,执行本公开实施例的方法中限定的上述功能。
本公开实施例提供的电子设备与上述实施例提供的视频流获取方法属于同一构思,未在本公开实施例中详尽描述的技术细节可参见上述实施例,并且本公开实施例与上述实施例具有相同的效果。
实施例九
本公开实施例提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述实施例所提供的视频流获取方法。
本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者
任意以上的组合。计算机可读存储介质的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、RAM、ROM、可擦式可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、射频(Radio Frequency,RF)等等,或者上述的任意合适的组合。
在一些实施方式中,用户端、服务器可以利用诸如超文本传输协议(HyperText Transfer Protocol,HTTP)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(Local Area Network,LAN),广域网(Wide Area Network,WAN),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述用户端中所包含的;也可以是单独存在,而未装配入该用户端中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该用户端执行时,使得该用户端:
向媒体服务器发送拉流信息获取请求,以使媒体服务器基于拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;获取目标拉流信息,并基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址;基于目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器基于目标拉流请求返回的目标视频流。
上述计算机可读介质可以是上述服务器中所包含的;也可以是单独存在,而未装配入该服务器中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:
接收用户端发送的拉流信息获取请求;基于拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址;基于预设域名生成方式,根据目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,以使用户端获取目标拉流信息,基于预设域名解析方式,对目标拉流信息进行域名解析,获得目标内网边缘服务器IP地址,并基于目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取目标内网边缘服务器基于目标拉流请求返回的视频流。或者,接收用户端基于内网边缘服务器IP地址发送的目标拉流请求,其中,内网边缘服务器IP地址是用户端基于预设域名解析方式,对利用媒体服务器获取到的目标拉流信息进行域名解析获得的;确定目标拉取请求对应的目标视频流,并将目标视频流进行返回,以使用户端获取目标视频流。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括LAN或WAN—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开多种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在一种情况下并不构成对该单元本
身的限定,例如,可编辑内容显示单元还可以被描述为“编辑单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(Field Programmable Gate Array,FPGA)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用标准产品(Application Specific Standard Parts,ASSP)、片上***(System on Chip,SOC)、复杂可编程逻辑设备(Complex Programming Logic Device,CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、RAM、ROM、EPROM或快闪存储器、光纤、CD-ROM、光学储存设备、磁储存设备、或上述内容的任何合适组合。
根据本公开的一个或多个实施例,【示例一】提供了一种视频流获取方法,应用于用户端,包括:
向媒体服务器发送拉流信息获取请求,以使所述媒体服务器基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;
获取所述目标拉流信息,并基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址;
基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的目标视频流。
根据本公开的一个或多个实施例,【示例二】提供了一种视视频流获取方法,应用于用户端,还包括:
所述获取所述目标拉流信息,包括:
接收所述媒体服务器发送的所述目标拉流信息。
根据本公开的一个或多个实施例,【示例三】提供了一种视视频流获取方
法,应用于用户端,还包括:
所述获取所述目标拉流信息,包括:
接收所述媒体服务器发送的所述拉流管理信息,其中,所述拉流管理信息是所述媒体服务器基于所述拉流信息获取请求中的目标出口IP地址确定目标内网管理服务器IP地址,并基于预设域名生成方式,根据所述目标内网管理服务器IP地址进行域名生成确定的;
基于预设域名解析方式,对所述拉流管理信息进行域名解析,获得所述目标内网管理服务器IP地址;
基于所述目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求,以使所述目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;
接收所述目标内网管理服务器发送的所述目标拉流信息。
根据本公开的一个或多个实施例,【示例四】提供了一种视视频流获取方法,应用于用户端,还包括:
所述基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,包括:
将所述目标拉流信息发送至域名解析服务器,以使所述域名解析服务器基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,其中,所述域名解析服务器为处于内网的域名解析服务器或者处于外网的域名解析服务器;
接收所述域名解析服务器返回的所述目标内网边缘服务器IP地址。
根据本公开的一个或多个实施例,【示例五】提供了一种视视频流获取方法,应用于用户端,还包括:
所述基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,包括:
提取出所述目标拉流信息中的具有预设域名格式的目标内网边缘服务器地址信息;
将目标内网边缘服务器地址信息解析为IP地址格式,获得所述目标内网边缘服务器IP地址。
根据本公开的一个或多个实施例,【示例六】提供了一种视频流获取方法,
应用于媒体服务器,包括:
接收用户端发送的拉流信息获取请求;
基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址;
基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,以使所述用户端获取所述目标拉流信息,基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,并基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的视频流。
根据本公开的一个或多个实施例,【示例七】提供了一种视频流获取方法,应用于媒体服务器,还包括:
所述基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,包括:
基于预先配置的出口IP地址与内网边缘服务器IP地址之间的对应关系和所述拉流信息获取请求中的目标出口IP地址,确定目标内网边缘服务器IP地址;
在所述基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息之后,还包括:
将所述目标拉流信息发送至所述用户端。
根据本公开的一个或多个实施例,【示例八】提供了一种视频流获取方法,应用于媒体服务器,还包括:
所述基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址;基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,包括:
基于所述拉流信息获取请求中的目标出口IP地址确定目标内网管理服务器IP地址,并基于预设域名生成方式,根据所述目标内网管理服务器IP地址进行域名生成,并根据生成的域名确定拉流管理信息;
将所述拉流管理信息发送至所述用户端,以使所述用户端基于预设域名解析方式,对所述拉流管理信息进行域名解析,获得所述目标内网管理服务器IP地址,并基于所述目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求,以使所述目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根
据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息并进行返回。
根据本公开的一个或多个实施例,【示例九】提供了一种视频流获取方法,应用于媒体服务器,还包括:
所述基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,包括:
基于预设域名格式,将所述目标内网边缘服务器IP地址进行格式变换,并将变换后的目标内网边缘服务器地址信息添加至拉流地址中,确定目标拉流信息。
根据本公开的一个或多个实施例,【示例十】提供了一种视频流获取方法,应用于媒体服务器,还包括:
所述目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定目标内网边缘服务器IP地址,包括:
所述目标内网管理服务器基于预先配置的内网IP地址与内网边缘服务器IP地址之间的对应关系和所述拉流地址获取请求中的目标内网IP地址,确定目标内网边缘服务器IP地址。
根据本公开的一个或多个实施例,【示例十一】提供了一种视频流获取方法,应用于内网边缘服务器,包括:
接收用户端基于内网边缘服务器IP地址发送的目标拉流请求,其中,所述内网边缘服务器IP地址是所述用户端基于预设域名解析方式,对利用媒体服务器获取到的目标拉流信息进行域名解析获得的;
确定所述目标拉取请求对应的目标视频流,并将所述目标视频流进行返回,以使所述用户端获取所述目标视频流。
根据本公开的一个或多个实施例,【示例十二】提供了一种视频流获取方法,应用于内网边缘服务器,还包括:
所述确定所述目标拉取请求对应的目标视频流,包括:
基于所述目标拉取请求中的目标视频流标识,从预先缓存的缓存视频流中确定目标视频流。
根据本公开的一个或多个实施例,【示例十三】提供了一种视频流获取方法,应用于内网边缘服务器,还包括:
所述确定所述目标拉取请求对应的目标视频流,包括:
基于所述目标拉取请求中的目标视频流标识,检测当前缓存的缓存视频流中是否存在目标视频流;
若当前缓存的缓存视频流中存在目标视频流,则将该缓存视频流确定为目标视频流;
若当前缓存的缓存视频流中不存在目标视频流,则基于所述目标拉取请求中的外网拉流地址,向外网边缘服务器拉取目标视频流,并将拉取的目标视频流进行缓存。
根据本公开的一个或多个实施例,【示例十四】提供了一种视频流获取装置,集成于用户端,包括:
拉流信息获取请求发送模块,设置为向媒体服务器发送拉流信息获取请求,以使所述媒体服务器基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;
域名解析模块,设置为获取所述目标拉流信息,并基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址;
目标视频流获取模块,设置为基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的目标视频流。
根据本公开的一个或多个实施例,【示例十五】提供了一种视频流获取装置,集成于媒体服务器,包括:
拉流信息获取请求接收模块,设置为接收用户端发送的拉流信息获取请求;
目标内网边缘服务器IP地址确定模块,设置为基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址;
目标拉流信息确定模块,设置为基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,以使所述用户端获取所述目标拉流信息,基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,并基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的视频流。
根据本公开的一个或多个实施例,【示例十六】提供了一种视频流获取装置,集成于内网边缘服务器,包括:
目标拉流请求接收模块,设置为接收用户端基于内网边缘服务器IP地址发
送的目标拉流请求,其中,所述内网边缘服务器IP地址是所述用户端基于预设域名解析方式,对利用媒体服务器获取到的目标拉流信息进行域名解析获得的;
目标视频流确定模块,设置为确定所述目标拉取请求对应的目标视频流,并将所述目标视频流进行返回,以使所述用户端获取所述目标视频流。
此外,虽然采用特定次序描绘了多个操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了多个实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的一些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的多种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
Claims (20)
- 一种视频流获取方法,应用于用户端,包括:向媒体服务器发送拉流信息获取请求,以使所述媒体服务器基于所述拉流信息获取请求中的目标出口互联网协议IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成并根据生成的域名确定目标拉流信息;获取所述目标拉流信息,并基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址;基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的目标视频流。
- 根据权利要求1所述的方法,其中,所述获取所述目标拉流信息,包括:接收所述媒体服务器发送的所述目标拉流信息。
- 根据权利要求1所述的方法,其中,所述获取所述目标拉流信息,包括:接收所述媒体服务器发送的拉流管理信息,其中,所述拉流管理信息是所述媒体服务器基于所述拉流信息获取请求中的目标出口IP地址确定目标内网管理服务器IP地址,并基于预设域名生成方式,根据所述目标内网管理服务器IP地址进行域名生成确定的;基于预设域名解析方式,对所述拉流管理信息进行域名解析,获得所述目标内网管理服务器IP地址;基于所述目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求,以使所述目标内网管理服务器基于所述拉流地址获取请求中的目标内网IP地址确定所述目标内网边缘服务器IP地址,并基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定所述目标拉流信息;接收所述目标内网管理服务器发送的所述目标拉流信息。
- 根据权利要求1所述的方法,其中,所述基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,包括:将所述目标拉流信息发送至域名解析服务器,以使所述域名解析服务器基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,其中,所述域名解析服务器为处于内网的域名解析服务器或者处于外网的域名解析服务器;接收所述域名解析服务器返回的所述目标内网边缘服务器IP地址。
- 根据权利要求1或4所述的方法,其中,所述基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,包括:提取出所述目标拉流信息中的具有预设域名格式的目标内网边缘服务器地址信息;将所述目标内网边缘服务器地址信息解析为IP地址格式,获得所述目标内网边缘服务器IP地址。
- 一种视频流获取方法,应用于媒体服务器,包括:接收用户端发送的拉流信息获取请求;基于所述拉流信息获取请求中的目标出口互联网协议IP地址确定目标内网边缘服务器IP地址;基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,以使所述用户端获取所述目标拉流信息,基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,并基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的视频流。
- 根据权利要求6所述的方法,其中,所述基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址,包括:基于预先配置的出口IP地址与内网边缘服务器IP地址之间的对应关系和所述拉流信息获取请求中的目标出口IP地址,确定所述目标内网边缘服务器IP地址;在所述基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息之后,还包括:将所述目标拉流信息发送至所述用户端。
- 根据权利要求6所述的方法,其中,所述基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址;基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,包括:基于所述拉流信息获取请求中的目标出口IP地址确定目标内网管理服务器 IP地址,并基于预设域名生成方式,根据所述目标内网管理服务器IP地址进行域名生成,并根据生成的域名确定拉流管理信息;将所述拉流管理信息发送至所述用户端,以使所述用户端基于预设域名解析方式,对所述拉流管理信息进行域名解析,获得所述目标内网管理服务器IP地址,并基于所述目标内网管理服务器IP地址,向目标内网管理服务器发送拉流地址获取请求,以使所述目标内网管理服务器基于所述拉流地址获取请求中的目标内网IP地址确定所述目标内网边缘服务器IP地址,并基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定所述目标拉流信息并进行返回。
- 根据权利要求6或8所述的方法,其中,所述基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,包括:基于预设域名格式,将所述目标内网边缘服务器IP地址进行格式变换,并将变换后的目标内网边缘服务器地址信息添加至拉流地址中,确定所述目标拉流信息。
- 根据权利要求8所述的方法,其中,所述目标内网管理服务器基于拉流地址获取请求中的目标内网IP地址确定所述目标内网边缘服务器IP地址,包括:所述目标内网管理服务器基于预先配置的内网IP地址与内网边缘服务器IP地址之间的对应关系和所述拉流地址获取请求中的目标内网IP地址,确定所述目标内网边缘服务器IP地址。
- 一种视频流获取方法,应用于内网边缘服务器,包括:接收用户端基于内网边缘服务器互联网协议IP地址发送的目标拉流请求,其中,所述内网边缘服务器IP地址是所述用户端基于预设域名解析方式,对利用媒体服务器获取到的目标拉流信息进行域名解析获得的;确定所述目标拉取请求对应的目标视频流,并将所述目标视频流进行返回,以使所述用户端获取所述目标视频流。
- 根据权利要求11所述的方法,其中,所述确定所述目标拉取请求对应的目标视频流,包括:基于所述目标拉取请求中的目标视频流标识,从预先缓存的缓存视频流中确定目标视频流。
- 根据权利要求11所述的方法,其中,所述确定所述目标拉取请求对应 的目标视频流,包括:基于所述目标拉取请求中的目标视频流标识,检测当前缓存的缓存视频流中是否存在目标视频流;响应于所述当前缓存的缓存视频流中存在所述目标视频流,将所述缓存视频流确定为目标视频流;响应于所述当前缓存的缓存视频流中不存在所述目标视频流,基于所述目标拉取请求中的外网拉流地址,向外网边缘服务器拉取目所述标视频流,并将拉取的所述目标视频流进行缓存。
- 一种视频流获取装置,集成于用户端,包括:拉流信息获取请求发送模块,设置为向媒体服务器发送拉流信息获取请求,以使所述媒体服务器基于所述拉流信息获取请求中的目标出口互联网协议IP地址确定目标内网边缘服务器IP地址,并基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息;域名解析模块,设置为获取所述目标拉流信息,并基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址;目标视频流获取模块,设置为基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的目标视频流。
- 一种视频流获取装置,集成于媒体服务器,包括:拉流信息获取请求接收模块,设置为接收用户端发送的拉流信息获取请求;目标内网边缘服务器互联网协议IP地址确定模块,设置为基于所述拉流信息获取请求中的目标出口IP地址确定目标内网边缘服务器IP地址;目标拉流信息确定模块,设置为基于预设域名生成方式,根据所述目标内网边缘服务器IP地址进行域名生成,并根据生成的域名确定目标拉流信息,以使所述用户端获取所述目标拉流信息,基于预设域名解析方式,对所述目标拉流信息进行域名解析,获得所述目标内网边缘服务器IP地址,并基于所述目标内网边缘服务器IP地址,向目标内网边缘服务器发送目标拉流请求,获取所述目标内网边缘服务器基于所述目标拉流请求返回的视频流。
- 一种视频流获取装置,集成于内网边缘服务器,包括:目标拉流请求接收模块,设置为接收用户端基于内网边缘服务器互联网协议IP地址发送的目标拉流请求,其中,所述内网边缘服务器IP地址是所述用户 端基于预设域名解析方式,对利用媒体服务器获取到的目标拉流信息进行域名解析获得的;目标视频流确定模块,设置为确定所述目标拉取请求对应的目标视频流,并将所述目标视频流进行返回,以使所述用户端获取所述目标视频流。
- 一种视频流获取***,包括:用户端、媒体服务器和至少一个内网边缘服务器;其中,所述用户端设置为实现如权利要求1-5中任一所述的视频流获取方法;所述媒体服务器设置为实现如权利要求6-10中任一所述的视频流获取方法;所述内网边缘服务器设置为实现如权利要求11-13中任一所述的视频流获取方法。
- 一种电子设备,包括:至少一个处理器;存储器,设置为存储至少一个程序;当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-13中任一所述的视频流获取方法。
- 一种计算机可读存储介质,存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-13中任一所述的视频流获取方法。
- 一种计算机程序产品,包括承载在非暂态计算机可读介质上的计算机程序,所述计算机程序包含用于执行如权利要求1-13中任一所述的视频流获取方法的程序代码。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210194825.6 | 2022-03-01 | ||
CN202210194825.6A CN114584808B (zh) | 2022-03-01 | 2022-03-01 | 一种视频流获取方法、装置、***、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023165372A1 true WO2023165372A1 (zh) | 2023-09-07 |
Family
ID=81776981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/077301 WO2023165372A1 (zh) | 2022-03-01 | 2023-02-21 | 视频流获取方法、装置、***、设备和介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114584808B (zh) |
WO (1) | WO2023165372A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114584808B (zh) * | 2022-03-01 | 2023-09-22 | 抖音视界有限公司 | 一种视频流获取方法、装置、***、设备和介质 |
CN117896538A (zh) * | 2024-01-09 | 2024-04-16 | 广州开得联软件技术有限公司 | 巡课的方法及装置、设备、存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106941507A (zh) * | 2016-01-04 | 2017-07-11 | 中兴通讯股份有限公司 | 请求消息的调度方法及装置 |
CN108881944A (zh) * | 2018-06-14 | 2018-11-23 | 贵州大学 | 一种流媒体加速发布方法与*** |
CN111327697A (zh) * | 2020-02-18 | 2020-06-23 | 腾讯科技(深圳)有限公司 | 一种数据下载方法、装置、设备及存储介质 |
CN111355731A (zh) * | 2020-02-28 | 2020-06-30 | 北京奇艺世纪科技有限公司 | 资源访问的方法、装置、资源访问***、设备及存储介质 |
CN113037855A (zh) * | 2021-03-22 | 2021-06-25 | 北京爱奇艺科技有限公司 | 一种多媒体访问***、方法、装置、终端及介质 |
CN114584808A (zh) * | 2022-03-01 | 2022-06-03 | 北京字节跳动网络技术有限公司 | 一种视频流获取方法、装置、***、设备和介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103188574B (zh) * | 2011-12-28 | 2017-04-19 | 华为技术有限公司 | 传输网络视频的方法及*** |
CN108702397B (zh) * | 2017-08-08 | 2021-07-06 | 达闼机器人有限公司 | 一种获取并收集客户端本地dns服务器的方法以及*** |
CN110557655B (zh) * | 2019-09-06 | 2021-10-26 | 卓米私人有限公司 | 一种视频画面显示方法、装置、电子设备及存储介质 |
CN111355971B (zh) * | 2020-02-20 | 2021-12-24 | 北京金山云网络技术有限公司 | 直播流传输方法、装置、cdn服务器及计算机可读介质 |
CN111263171A (zh) * | 2020-02-25 | 2020-06-09 | 北京达佳互联信息技术有限公司 | 直播流的流媒体数据获取方法、边缘节点区域组网*** |
CN112087644B (zh) * | 2020-09-21 | 2022-10-04 | 北京金山云网络技术有限公司 | 拉流请求处理方法、装置、***、电子设备和存储介质 |
-
2022
- 2022-03-01 CN CN202210194825.6A patent/CN114584808B/zh active Active
-
2023
- 2023-02-21 WO PCT/CN2023/077301 patent/WO2023165372A1/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106941507A (zh) * | 2016-01-04 | 2017-07-11 | 中兴通讯股份有限公司 | 请求消息的调度方法及装置 |
CN108881944A (zh) * | 2018-06-14 | 2018-11-23 | 贵州大学 | 一种流媒体加速发布方法与*** |
CN111327697A (zh) * | 2020-02-18 | 2020-06-23 | 腾讯科技(深圳)有限公司 | 一种数据下载方法、装置、设备及存储介质 |
CN111355731A (zh) * | 2020-02-28 | 2020-06-30 | 北京奇艺世纪科技有限公司 | 资源访问的方法、装置、资源访问***、设备及存储介质 |
CN113037855A (zh) * | 2021-03-22 | 2021-06-25 | 北京爱奇艺科技有限公司 | 一种多媒体访问***、方法、装置、终端及介质 |
CN114584808A (zh) * | 2022-03-01 | 2022-06-03 | 北京字节跳动网络技术有限公司 | 一种视频流获取方法、装置、***、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114584808B (zh) | 2023-09-22 |
CN114584808A (zh) | 2022-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023165372A1 (zh) | 视频流获取方法、装置、***、设备和介质 | |
WO2023116233A1 (zh) | 视频卡顿预测方法、装置、设备和介质 | |
WO2019206296A1 (zh) | 用于网关服务器的故障处理方法和装置 | |
WO2021057120A1 (zh) | 数据传输方法、装置、以及计算机存储介质 | |
WO2019000871A1 (zh) | 用于提供语音服务的方法、装置和服务器 | |
CA2468461A1 (en) | Resolving a distributed topology to stream data | |
WO2021164261A1 (zh) | 云网络设备的测试方法、存储介质和计算机设备 | |
WO2015196590A1 (zh) | 桌面云视频的播放处理方法及装置 | |
WO2023051243A1 (zh) | 视频码率切换方法、装置、电子设备及存储介质 | |
WO2017161757A1 (zh) | 一种流媒体文件分发方法及*** | |
US20200366967A1 (en) | Method and system for monitoring quality of streaming media | |
JP2022538953A (ja) | マルチメディアデータ処理方法、装置、電子機器及びコンピュータプログラム | |
US11575659B2 (en) | Systems and methods for establishing secure remote connections to media devices | |
WO2023071598A1 (zh) | 音视频同步监控方法、装置、电子设备及存储介质 | |
TW201725912A (zh) | 直播視訊媒合方法與系統 | |
WO2016086755A1 (zh) | 一种报文处理的方法和透明代理服务器 | |
WO2023061060A1 (zh) | 音视频码流的调度方法、***、介质及电子装置 | |
WO2023035879A1 (zh) | 自由视角视频的视角切换方法、装置、***、设备和介质 | |
CN114363643B (zh) | 用于智慧高速的大屏实时视频流播放方法以及装置 | |
WO2016180284A1 (zh) | 服务节点分配方法、装置、cdn管理服务器及*** | |
WO2024078208A1 (zh) | 基于ecs协议的域名查询方法及装置、存储介质及设备 | |
CN113778499B (zh) | 发布服务的方法、装置、设备和计算机可读介质 | |
CN113726801A (zh) | 应用于服务端的ab实验方法、装置、设备及介质 | |
CN109743585B (zh) | 一种监控视频收藏以及收藏夹克隆的方法和装置 | |
CN112995766B (zh) | 用于标识iptv多路视频流的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23762773 Country of ref document: EP Kind code of ref document: A1 |