WO2015120766A1 - 一种视频优化***及方法 - Google Patents

一种视频优化***及方法 Download PDF

Info

Publication number
WO2015120766A1
WO2015120766A1 PCT/CN2015/071210 CN2015071210W WO2015120766A1 WO 2015120766 A1 WO2015120766 A1 WO 2015120766A1 CN 2015071210 W CN2015071210 W CN 2015071210W WO 2015120766 A1 WO2015120766 A1 WO 2015120766A1
Authority
WO
WIPO (PCT)
Prior art keywords
video
resource
transcoding
attribute information
source
Prior art date
Application number
PCT/CN2015/071210
Other languages
English (en)
French (fr)
Inventor
雷霆
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2015120766A1 publication Critical patent/WO2015120766A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate

Definitions

  • the present invention relates to the field of video processing technologies, and in particular, to a video optimization system and method.
  • FIG. 1 is a schematic structural diagram of a video service in the prior art.
  • the video optimization system When the terminal sends a video access request to a video provider, the video optimization system The video access request will also be obtained.
  • the video optimization system first matches the cache system to match whether there is a video resource corresponding to the access request. If there is a video resource in the cache system, the video optimization system will directly read the video from the cache system. If the video resource does not exist in the cache system, the video optimization system forwards the video access request to the network server, and then delivers the video resource returned by the network server to the terminal.
  • the current video optimization system can directly read out the cached video data in the cache system, the current cache system can only cache the source video resources, so if the network is congested, if the source video resources in the cache system are directly cached, Sending to the terminal will cause the video resource transmission between the video optimization system and the client to be slow or even impossible to transmit.
  • the embodiment of the invention provides a video optimization system and method for solving the problem that the video resource transmission speed between the video optimization system and the client is slow or even impossible to be transmitted in the case of network congestion in the prior art.
  • a first aspect of the embodiments of the present invention provides a video optimization system, including:
  • a determining module configured to: when receiving an access request of the source video resource sent by the client, determining that at least one transcoded video resource corresponding to the requested source video resource is cached in the video cache system, where the transcoded video resource Support transmission in network congestion state;
  • a processing module configured to determine, in the source video resource and the at least one transcoded video resource, a video resource that supports transmission in a current network congestion state
  • a sending module configured to send the determined video resource to the client.
  • the processing module is specifically configured to obtain a source video resource and a code rate corresponding to each video resource in the at least one transcoded video resource, where the obtained code rate is obtained. Determining, according to the determined code rate, the video corresponding to the code rate in the source video resource and the at least one transcoding resource, Resources, as video resources that support transmission in the pre-network congestion state.
  • a second aspect of the embodiments of the present invention provides a video cache system, including:
  • a management module configured to obtain source video attribute information of the cached source video resource, and determine at least one destination video attribute information according to the source video attribute information of the source video resource, where the destination video attribute information is the source video The video attribute information of the destination video obtained after the resource is transcoded;
  • a sending module configured to send the source video resource, the source video attribute information, and the at least one destination video attribute information to a video transcoding system
  • a cache module configured to receive at least one transcoded video resource obtained by transcoding the source video resource according to the source video attribute information and the at least one destination video attribute information returned by the video transcoding system, And receiving the received at least one transcoded video resource, wherein different transcoded video resources support transmission in different network congestion states.
  • the management module is specifically configured to obtain a rating parameter that is used to perform a rating on a quality of a video resource, and determine a characterization video resource corresponding to a rating parameter that is greater than or equal to a threshold.
  • the video attribute information of the attribute, and the determined video attribute information is used as the destination video attribute information.
  • the source video attribute information acquired by the management module includes a source code rate of the source video resource, and each destination video attribute information is included. Each includes a destination bit rate that is less than the source code rate, and each of the destination video attribute information includes a different target bit rate.
  • the management module is further configured to obtain a total number of access requests for each video resource in all cached video resources, and the total number of access requests exceeds a threshold.
  • the resource acts as the source video resource.
  • the management module is further configured to send an authentication request for carrying the identifier information of the video cache system to the transcoding system, and receive the video transcoding system to return Representing the response information passed by the video cache system for authentication.
  • the management module is further configured to send, to the video transcoding system, a transcoding request for applying a transcoding resource, where the transcoding request carries the The source video attribute information and the at least one destination video attribute information, when receiving the response information indicating that the transcoding resource application is successful, returned by the video transcoding system, sending the source video resource to the video transcoding system .
  • a third aspect of the embodiments of the present invention provides a video transcoding system, including:
  • a transcoding management module configured to receive a source video resource to be transcoded and a source video attribute information corresponding to the source video resource, and at least one destination video attribute information, where the destination video attribute information is the source Video attribute information after the video resource is transcoded;
  • a transcoding module configured to transcode the source video resource into at least one transcoded video resource based on the source video attribute information and the at least one destination video attribute information, where different transcoded video resources are supported differently Transmission under network congestion;
  • a sending module configured to send the at least one transcoded video resource to the video buffer system.
  • the transcoding module is specifically configured to obtain a source code rate included in the source video attribute information and a destination bit rate included in each destination attribute information, according to For each destination code rate, the source video resource is transcoded into at least one transcoded video resource having a destination code rate, wherein one transcoded video resource has a destination bit rate, and each transcoded video resource has a purpose
  • the code rates vary.
  • the transcoding management module is further configured to receive an authentication of the identifier information that is sent by the video cache system and that carries the video cache system. And, when the identifier information matches the preset identifier information, sending, to the video buffer system, response information that identifies the authentication of the video cache system.
  • the transcoding management module is further configured to receive a transcoding request sent by the video caching system for applying a transcoding resource, where the transcoding request is And carrying the source video attribute information and the at least one destination video attribute information, returning the response information of the transcoding resource application success to the video buffer system, and receiving the source video resource sent by the video cache system.
  • a fourth aspect of the embodiments of the present invention provides a video optimization method, including:
  • the determined video resource is sent to the client.
  • the video resources that are supported in the previous network congestion state are determined in the source video resource and the at least one transcoded video resource, including:
  • a fifth aspect of the embodiments of the present invention provides a video buffering method, including:
  • At least one transcoded video resource obtained by transcoding the source video resource according to the source video attribute information and the at least one destination video attribute information, where different The code video resource supports transmission in different network congestion states; and the received at least one transcoded video resource is buffered.
  • the source video attribute information includes a source code rate of the source video resource, and each destination video attribute information includes a destination bit rate that is less than the source code rate. And the destination bit rate included in each destination video attribute information is different.
  • the method before acquiring the source video attribute information of the cached source video resource, the method further includes:
  • the video resource whose total number of access requests exceeds the threshold is used as the source video resource.
  • the method before the sending the source video resource and the source video attribute information and the at least one destination video attribute information to the transcoding system, the method further includes:
  • the source video resource and the source video attribute information of the source video resource and the at least one destination video attribute information are sent to the video transcoding system, including:
  • transcoding request for applying a transcoding resource, where the transcoding request carries the source video attribute information and the at least one destination video attribute information;
  • a video optimization system is further provided.
  • the video optimization system determines whether at least one corresponding to the active video resource is cached in the video cache system. Code video resources, if active video is cached in the video cache system When the at least one transcoded video resource corresponding to the resource is used, the video optimization system determines, according to the current network congestion status, the video resource that can be transmitted in the current network congestion state in the source video resource and the at least one transcoded video resource, and acquires the video resource.
  • the obtained video resource is sent to the client, so that the video optimization system sends different video resources to the client according to different network congestion states, for example, sending a transcoded low-rate transcoded video resource when the network is severely congested.
  • the transcoded video resource or the source video resource of the high bit rate is sent, so that the video resource can be transmitted to the value client more smoothly under the premise of ensuring the video quality, thereby improving the user experience. .
  • the video cache system when the source video resource that is cached in the video cache system is frequently accessed, acquires source video attribute information of the source video resource and at least one destination video attribute information corresponding to the source video resource, and Transmitting the source video resource, the source video attribute information, and the at least one destination video attribute information to the video transcoding system, and then receiving the at least one transcoded video resource returned by the video transcoding system, where the code rate of the transcoded video resource is smaller than the source video resource.
  • the last video cache system will cache the transcoded video resources, thereby realizing the cache of the transcoded video resources by the video cache system, and improving the utilization of the cache system.
  • the embodiment of the present invention further provides a video transcoding method, in which the video transcoding system is based on a source video resource, source video attribute information, and at least one destination video attribute information sent by a video caching system.
  • the video resource is transcoded into at least one transcoded video resource, and each transcoded video resource has a destination video attribute information, for example, transcoding the source video resource into a plurality of transcoded video resources having different code rates, and finally the video is transferred.
  • the code system sends all the transcoded video resources to the video buffer system for caching, so the video transcoding system realizes the transcoding of the multi-video attributes of the source video resources, so that the video transcoding system can provide multiple video attributes for the video caching system. Transcode video resources.
  • FIG. 1 is a schematic structural diagram of a video service system in the prior art
  • FIG. 2 is a schematic structural diagram of a video optimization system according to an embodiment of the present invention.
  • FIG. 3 is a schematic structural diagram of a video buffer system according to an embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of a video transcoding system according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of a video service system according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of a process of video access according to an embodiment of the present invention.
  • FIG. 7 is a flowchart of a video optimization method according to an embodiment of the present invention.
  • FIG. 8 is a flowchart of a video buffering method according to an embodiment of the present invention.
  • FIG. 9 is a flowchart of a video transcoding method according to an embodiment of the present invention. .
  • the video optimization system When the client initiates a video access request to the video service provider that provides the video service, the video optimization system will also receive the video access request, and the video optimization system first queries the cache system whether the video resource that the user needs to access is cached. When the video resource is cached in the system, the video optimization system directly reads the video resource from the cache system and forwards the video resource to the client; if the video resource does not exist in the cache system, the video optimization system acquires the video resource from the network server. Video resources, and forward the obtained video resources to the client.
  • the video optimization system in the above solution can only send the source video resources provided by the network server to the client.
  • the video optimization system can only send the source video file to the client, which will result in a video optimization system.
  • the video resource transfer between the client and the client is slower and cannot even be transmitted.
  • a video optimization system including a determining module, a processing module, and a sending module, and a determining module, configured to determine a cache when receiving an access request of a video resource sent by the client.
  • At least one transcoded video resource corresponding to the requested source video resource is cached in the system, and is used for determining, in the source video resource and the at least one transcoded video resource, the transcoded video resource that is supported in the previous network congestion state, and sending A module for sending the determined video resource to the client.
  • the video optimization system can provide the client with video resources that use the network congestion state based on different network congestion states, for example, providing a low-code rate transcoding video resource when the congestion state is severe, and providing when the network congestion state is not serious.
  • the high-rate transcoded video resource or the source video resource not only makes full use of the network resources, but also enhances the user experience.
  • Embodiment 1 is a diagrammatic representation of Embodiment 1:
  • the embodiment of the present invention further provides a video optimization system, as shown in FIG. 2, which is a schematic structural diagram of a video optimization system according to an embodiment of the present invention.
  • the system includes:
  • the determining module 201 is configured to: when receiving the access request of the source video resource sent by the client, determine that at least one transcoded video resource corresponding to the requested source video resource is cached in the cache system;
  • the processing module 202 is configured to determine, in the source video resource and the at least one transcoded video resource, a transcoded video resource that supports transmission in a previous network congestion state;
  • the sending module 203 is configured to send the obtained transcoded video resource to the client.
  • the determining module 201 in the video optimization system first determines whether the video resource is cached in the cache system, where the video resources cached in the cache system are
  • the possibility for example, may be a source video resource, that is, a video resource that has not undergone transcoding, and may of course be a source video resource and a transcoded transcoded video resource.
  • the video optimization system can only return the source video resource to the client;
  • the video optimization system may select to return the transcoded video resource to the client, and the specific selection manner is as follows:
  • the transcoded video resources include the following three types:
  • transcoded video resource having a resolution of 240P, a frame rate of 25, a codec format of H264, and a code rate of 322 kpbs;
  • transcoded video resource having a resolution of 480P, a frame rate of 25, a codec format of H264, and a code rate of 1205 kpbs;
  • the video optimization system needs to determine which type of transcoded video resource to send.
  • the video optimization system will acquire the current state of network congestion, and the processing module 202 in the video optimization system will acquire all the transcoded video resources.
  • a code rate corresponding to each transcoded video resource determining, in each of the obtained code rates, a code rate that is transmitted in a current network congestion state, and determining a location in the at least one transcoding resource based on the determined code rate.
  • the transcoded video resource corresponding to the code rate is used as a transcoded video resource that supports transmission in a pre-network congestion state.
  • the processing module 202 selects 322 kpbs among the three code rates of 1205 kpbs, 732 kpbs, and 322 kpbs, and then determines the transcoded video resource corresponding to the code rate, that is, has a resolution of 240P, Transcoding video resources with a frame rate of 25, a codec format of H264, and a code rate of 322 kpbs can ensure that the transcoded video resources can be smoothly transmitted to the client when the network is heavily congested by selecting a transcoded video resource with a low bit rate. The ability to view the video of the process while also ensuring the quality of the video resources.
  • the video optimization system will determine a high-code rate transcoded video resource, that is, a transcoded video having a resolution of 480P, a frame rate of 25, a codec format of H264, and a code rate of 1205 kpbs.
  • the resource then sends the high-rate video resource to the client; of course, when the network congestion status is not serious, the source video resource can also be directly sent to the client.
  • the video optimization system when the video optimization system obtains the video resource access request from the client, it is determined whether at least one transcoded video resource corresponding to the video resource is cached in the cache system, and at least the video resource corresponding to the cached system is cached in the cache system.
  • the video optimization system determines, according to the current network congestion status, the transcoded video resource that can be smoothly transmitted in the current network congestion state in the source video resource and the at least one transcoded video resource, and acquires The transcoded video resource is sent to the client, so that the video optimization system dynamically adjusts the video resource sent to the client based on different network congestion states, that is, when the network congestion is severe, the low-rate transcoded video resource is sent.
  • the network congestion status is light, the high-rate transcoded video resource or the source video resource is sent, so that the video optimization system can smoothly transmit the video resources required by the user to the client under the premise of ensuring the video quality, thereby improving The user experience.
  • Embodiment 2 is a diagrammatic representation of Embodiment 1:
  • the video buffer system supports transcoding video resources of different code rates, and the present invention is implemented as shown in FIG. 3, in order to enable the video optimization system to provide the client with a transcoded video resource that supports different network congestion states.
  • a schematic diagram of a structure of a video caching system, the video caching system includes:
  • the management module 301 is configured to obtain the source video attribute information of the cached source video resource, and determine at least one destination video attribute information according to the source video attribute information of the source video resource, where the destination video attribute information is obtained by transcoding the source video resource. Video attribute information of the destination video;
  • the sending module 302 is configured to send the source video resource and the source video attribute information and the at least one destination video attribute information to the transcoding system;
  • the cache module 303 is configured to receive at least one transcoded video resource obtained by transcoding the source video resource according to the source video attribute information and the at least one destination video attribute information returned by the transcoding system, and receive the at least the received video resource A transcoded video resource is cached, wherein different transcoded video resources are supported for transmission in different network congestion states.
  • the video cache system needs to cache the video resources with higher frequency of the client request, specifically, in the video cache system.
  • the total number of access requests for each video resource will be counted. If the total number of access requests for a video resource exceeds a preset threshold, the video cache system will send the video resource acquisition request to the network server, and receive the video returned by the network server. After the resource is cached, the video resource is cached, and the cached video resource is the source video resource.
  • the management module 301 calculates the total number of accesses of each of the source video resources of the cached video resources. If there is a source video resource whose total number of access requests exceeds the threshold, then The source video resource is used as a source video resource that can be transcoded. For example, the total number of access requests of a certain source video resource is 550, and the threshold set in the management module 301 is 500. When frequently requested, the management module 301 will generate a transcoding task for video transcoding of the source video resource.
  • the management module 301 will obtain and obtain source video attribute information of the source video resource.
  • the source video attribute information here must include at least a code rate, that is, 1367 kpbs.
  • the source video attribute information may further include one of video resolution, format, frame rate, and coded format.
  • the video attribute information of the source video resource may be: resolution 720P, frame rate 25, video format FLV, code rate 1367 kbps.
  • the management module 301 After the management module 301 obtains the source video attribute information of the source video resource, the management module 301 acquires a rating parameter that characterizes the quality of the video resource by the user, and determines a video attribute that represents the video resource attribute corresponding to the rating parameter that is greater than the equal threshold. Information, and the determined video attribute information is used as the destination video attribute information. For example, the management module 301 retrieves a user experience quality (English: Quality of Experience, QoE) model that stores user experience parameters, and stores a correspondence between user experience quality and video attribute information in the QoE model, such as Table 1 shows:
  • QoE Quality of Experience
  • Each of the experience scores in Table 1 corresponds to three video attribute information, for example, the corresponding video attribute information of 4.0. It includes:
  • the management module 301 After the management module 301 obtains the source attribute information of the source video resource, the at least one video attribute information with the experience score greater than or equal to 4.0 may be determined as the target view based on the QoE model. Frequency attribute information.
  • the source video attribute information acquired by the management module 301 is: resolution 720P, frame rate 25, code format H264, code rate 1367kpbs, based on the data recorded in the QoE model, the user experience score is 4.0 in the QoE model.
  • the video attribute information is as follows:
  • the selected target video attribute information is the highest user experience score, such as the video attribute information corresponding to 4.0 in Table 1, but in actual
  • the application may select video attribute information corresponding to different experience scores according to different application scenarios, for example, the destination video attribute information corresponding to the experience score of 3.5 may be selected.
  • the management module 301 can determine at least one destination video attribute information based on the source video attribute information.
  • the transcoding system needs to authenticate the video cache system, so the management module 301 will
  • the authentication request carrying the identification information of the video caching system is sent to the video transcoding system, where the identification information may be, but is not limited to, the IP address of the video caching system, and the video transcoding system receives the authentication request carrying the identification information.
  • the video transcoding system matches the identification information in the authentication request with the pre-stored identification information. If the video transcoding system matches, the video transcoding system sends the response information of the successful authentication to the management module 301.
  • the management module 301 will notify the sending module 302 of the video caching system.
  • the sending module 302 will apply to the video transcoding system for transcoding resources. Simply speaking, it is determined whether the video transcoding system can provide sufficient transcoding resources to transcode the source video resources, so the sending module 302 will transcode.
  • the system sends a transcoding request for applying the transcoding resource, and the source video attribute information and the at least one destination video attribute information are carried in the transcoding request.
  • the transcoding system passes the source video attribute information in the transcoding request and at least one destination video genus sexual information can determine whether there are enough transcoding resources to transcode the source video resources.
  • the sending module 302 receives the response information that the transcoding system returns the application for the transcoding resource failure, the sending module 302 is in a waiting state, that is, the source video resource in the buffer module 303 is not sent to the video transcoding system. This avoids the problem that the video buffering system blindly transmits the source video resources to the transcoding system, which causes the processing pressure of the transcoding system to increase, or causes the video transcoding system to be abnormal.
  • the sending module 302 If the sending module 302 receives the response information of the transcoding resource application successfully returned by the video transcoding system, the sending module 302 sends the source video resource buffered in the buffer module 303 to the video transcoding system, so that the video transcoding system can Transcoding based on source video resources.
  • At least one transcoded video resource after the transcoding is completed is sent to the video buffer system, and after the buffering module 303 in the video caching system receives the transcoded video resource, it will receive At least one transcoded video resource is cached.
  • the cache module 303 After the cache module 303 successfully caches the transcoded video resource, the cache module 303 sends a cached success message to the video transcoding system to enable the video transcoding system to determine to complete the video transcoding based on the information. At the same time, the cache module 303 notifies the management module 301 to delete the previously established transcoding task. Of course, the untranscoded source video resource is also saved in the cache system.
  • the video cache system when the source video resource that is cached in the video cache system is frequently accessed, acquires source video attribute information of the source video resource and at least one destination video attribute corresponding to the source video resource. And transmitting the source video resource, the source video attribute information, and the at least one destination video attribute information to the video transcoding system, and then receiving at least one transcoded video resource returned by the video transcoding system, where the code rate of the transcoded video resource is less than The code rate of the source video resource, and finally the video buffer system will cache the transcoded video resource, thereby realizing the buffering of the transcoded video resources of different code rates by the video caching system, and improving the utilization of the video caching system.
  • the video buffer system caches transcoded video resources of different code rates
  • the video buffer system can provide transcoded video resources of different code rates for the video optimization system, so that the video optimization system can cache according to the current network congestion status.
  • the system selects the transcoded video resource suitable for transmission in the current network state and sends it to the client. Under the premise of ensuring the video quality, the video transmission fluency between the video optimization system and the client is improved, and the user's Use experience.
  • Embodiment 3 is a diagrammatic representation of Embodiment 3
  • FIG. 4 is a schematic structural diagram of a video transcoding system according to an embodiment of the present invention.
  • the video transcoding system includes:
  • the transcoding management module 401 is configured to receive the source video resource to be transcoded and the source video attribute information corresponding to the source video resource and the at least one destination video attribute information that are sent by the cache system;
  • the transcoding module 402 is configured to transcode the source video resource into at least one transcoded video resource based on the source video attribute information and the at least one destination video attribute information;
  • the sending module 403 is configured to send the at least one transcoded video resource to the cache system.
  • the cache system needs to be authenticated before transcoding, so the source code is received in the transcoding management module 401.
  • the transcoding management module 401 further receives the authentication request sent by the cache system, where the authentication request carries the identification information of the cache system, which may be, but is not limited to, an IP address.
  • the video transcoding system will not provide a transcoding service for the caching system.
  • the transcoding management module 401 of the video transcoding system returns the response information of the successful authentication to the cache system.
  • the video caching system needs to apply for transcoding resources to the video transcoding system, so the video caching system sends the response information to the video transcoding system based on the successful response information.
  • Applying a transcoding request for transcoding resources the transcoding request carries source video attribute information of the source video resource to be transcoded and at least one destination video attribute information.
  • the transcoding management module 401 in the video transcoding system determines the code rate of the source video resource from the source video attribute information, and determines, from the at least one destination video attribute information, each video attribute information.
  • the code rate for example, the code rate in the source video attribute information is 1367kpbs, and the destination attribute information has three in total, and the corresponding code rates are: 1205kpbs, 732kpbs, 322kpbs.
  • the video transcoding system determines that the source video resources with a code rate of 1367 kpbs need to be transcoded into transcoded video resources with a code rate of 1205 kpbs, 732 kpbs, and 322 kpbs, respectively. Under such preconditions, the transcoding management module 401 will statistically calculate whether the transcoding resource that can be used in the current transcoding system can complete the transcoding task. If the transcoding task cannot be completed, the transcoding management module 401 will A wait instruction is generated and sent to the cache system to instruct the video cache system to wait for video transcoding.
  • the transcoding management module 401 determines that the current transcoding resource can complete the transcoding task, the transcoding management module 401 generates a response message indicating that the transcoding resource application is successful, and sends the response information to the video buffer system.
  • the video caching system will send the source video resource to be transcoded to the video transcoding system based on the response information.
  • the transcoding management module 401 After the transcoding management module 401 receives the source video resource to be transcoded, the transcoding management module 401 transfers the source video resource to the transcoding module 402, and the transcoding module 402 will be based on the source video resource and the source video resource of the source video resource.
  • the information and at least one destination attribute information are transcoded, and the video resource after transcoding by the video transcoding system has the destination video attribute information, as follows:
  • the source video attribute information of the source video resource is: resolution 720P, frame rate 25, video format FLV, and code rate 1367 kbps.
  • the destination video attribute information is:
  • the final transcoding system transcodes the source video resource to:
  • transcoded video resource having a resolution of 240P, a frame rate of 25, a codec format of H264, and a code rate of 322 kpbs;
  • transcoded video resource having a resolution of 360P, a frame rate of 25, a codec format of H264, and a code rate of 732 kpbs;
  • a transcoded video resource having a resolution of 480P, a frame rate of 25, a codec format of H264, and a code rate of 1205 kpbs.
  • the obtained at least one transcoded video resource is sent to the video cache system for buffering by the sending module 403.
  • the video transcoding system When the video transcoding system receives the response information returned by the video buffer system to characterize the cache success Thereafter, the video transcoding system will determine that the transcoding is complete and delete the transcoding task.
  • the video transcoding system transcodes the source video resource into at least one transcoded video resource, each transcoded video resource, based on the source video resource, the source video attribute information, and the at least one destination video attribute information sent by the cache system.
  • Each has a destination video attribute information, such as transcoding the source video resource into a plurality of transcoded video resources having different code rates, and finally the video transcoding system sends all the transcoded video resources to the video buffer system for caching, so
  • the video transcoding system implements transcoding of multiple video attributes of the source video resource, and the video transcoding system also implements video transcoding of multiple bit rates.
  • Embodiment 4 is a diagrammatic representation of Embodiment 4:
  • the embodiment of the present invention further provides a video service system.
  • FIG. 5 it is a schematic structural diagram of a video service system according to an embodiment of the present invention.
  • the service system includes: a video optimization system, and a Cache connected to the video optimization system.
  • the system, as well as the video transcoding system connected to the Cache system, the business processes between the various systems are as follows:
  • the client initiates a video access request to the network server.
  • the video optimization system queries the Cache system to cache the accessed video resource. If the video resource is cached, the process proceeds to step 3. If the video resource is not cached in the Cache system, the process proceeds to step 4;
  • the video optimization system acquires the video resources cached in the Cache system
  • the video optimization system forwards the video resources obtained in the Cache system to the client;
  • the video optimization system requests video resources from the network server
  • the video optimization system receives the video resource returned by the web server
  • the video optimization system forwards the video resource returned by the web server to the client;
  • the Cache system counts the total number of accesses of the requested video resources in a unit time. When there is a video resource whose total number of accesses is greater than the threshold, the video resource is requested from the network server.
  • the Cache system caches the video resources returned by the web server
  • the Cache system collects real-time statistics on the video resources of the cached video resources that have access times exceeding the threshold
  • the Cache system creates a transcoding task, obtains source video attribute information of the video resource whose access times exceed the threshold, and acquires at least one item.
  • Video attribute information
  • the Cache system sends an authentication request carrying the IP address of the Cache system to the video transcoding system. If the information of the authentication failure is received, the transcoding task is terminated. If the information of successful authentication is received, step 13 is performed. ;
  • the Cache system sends a request for transcoding resources to the transcoding system, where the request carries the source video attribute information and the at least one destination video attribute information. If the transcoding resource application fails, the Cache system adjusts to wait for the transcoding status. If the transcoding resource application is successful, step 14 is performed;
  • the Cache system sends the video resource to the video transcoding system
  • the video transcoding system starts the transcoding task according to the video resource, the source video attribute information, and the at least one destination video attribute information sent by the Cache system, and the source video attribute information includes the source video resource source code rate and at least one destination video attribute information.
  • the destination video attribute information includes a destination bit rate, and the destination bit rates in each of the destination video attribute information are different;
  • the video transcoding system sends the transcoded at least one transcoded video resource to the Cache system for buffering, wherein each transcoded video resource in the at least one transcoded video resource has a destination bit rate;
  • the Cache system After the Cache system successfully caches at least one transcoded video resource, the Cache system sends the successfully cached information to the video transcoding system.
  • the Cache system deletes the transcoding task.
  • the Cache system provides video resources for the video transcoding system, and the video transcoding system returns the transcoded video resources that have been transcoded to the Cache system for caching, so that the Cache system realizes the buffering of the transcoded video data and makes full use of the video.
  • the cache space in the Cache system is not limited
  • the Cache system also obtains different video attribute information before transcoding, so the transcoding system can obtain different transcoding video resources based on the video resources that need to be transcoded and different video attribute information, that is, the Cache system is implemented. Cache of different video attribute information.
  • the video optimization system determines that the manner of returning the video resources to the client is changed accordingly.
  • the specific process is shown in FIG. 6, and the following steps are included in FIG. 6:
  • the client sends a video resource access request to the network server.
  • the video optimization system queries the Cache system whether to cache the video resource
  • the Cache system returns the code rate of all the transcoded video resources corresponding to the buffered video resource to the video optimization system;
  • the video optimization system determines the network congestion status between the current and the client
  • the video optimization system determines the current code rate that is adapted to the current network state according to the current network congestion state between the client and the client;
  • the video optimization system returns the transcoded video resource acquired in the Cache system to the client.
  • the video optimization system determines the transcoded video resource suitable for the current network congestion state based on the network congestion state with the client, and determines the video coding resource suitable for the current network congestion state.
  • the process of video resource transmission between clients improves the user experience.
  • Embodiment 5 is a diagrammatic representation of Embodiment 5:
  • FIG. 7 is a flowchart of a video optimization method according to an embodiment of the present invention, where the method includes:
  • the video optimization system When the client sends a video resource access request to the video service provider, the video optimization system first queries whether the cache system caches the requested video resource. If the requested video resource is cached in the cache system, the video optimization system will retrieve the video resource. The video resources cached in the cache system.
  • the video resource cached in the video cache system includes at least one transcoded video resource, wherein different transcoded video resources support transmission in different network congestion states, and the video optimization system determines the video cache system.
  • the video optimization system determines the video cache system.
  • transcoded video resource having a resolution of 360P, a frame rate of 25, a codec format of H264, and a code rate of 732 kpbs;
  • a transcoded video resource having a resolution of 480P, a frame rate of 25, a codec format of H264, and a code rate of 1205 kpbs.
  • the video optimization system will detect the congestion state of the network between the current client and the client, and then select a transcoded video resource suitable for transmission in the current network congestion state based on the network congestion state. For example, when the network congestion is serious, the resolution is 240P. Transcoding video resources with a frame rate of 25, a codec format of H264, and a code rate of 322 kpbs; when the network congestion state is light, a transcoded video resource having a resolution of 480P, a frame rate of 25, a codec format of H264, and a code rate of 1205 kpbs is selected or Send source video resources directly.
  • FIG. 8 is a flowchart of a video caching method according to an embodiment of the present invention, where the method includes:
  • S802. Determine at least one destination video attribute information according to source video attribute information of the source video resource.
  • S803. Send source video resources, source video attribute information, and at least one destination video attribute information to a transcoding system.
  • the video caching system before S801, the video caching system further acquires the total number of accesses of each of the video resources that have been cached, and then uses the video resource whose total number of requests for request exceeds the threshold as the source video resource. In other words, video resources that are frequently requested will be used as video resources to be transcoded.
  • the source video resource source code rate is included in the source video attribute information, and of course, the resolution and format of the source video resource may also be included.
  • the information such as the frame rate and the compiled code format.
  • the video attribute information of the source video resource may be: resolution 720P, frame rate 25, video format FLV, and code rate 1367 kbps.
  • the video caching system acquires a rating parameter that characterizes the quality of the video resource by the user based on the obtained source video attribute information, and determines video attribute information representing the video resource attribute corresponding to the rating parameter that is greater than or equal to the threshold, and The determined video attribute information is used as the target video attribute information.
  • the user's quality rating of the video resource is saved in the QoE model, and the parameters saved by the QoE model are as shown in Table 2.
  • Each video attribute information in Table 2 corresponds to an experience score. The higher the score, the better the user experience of the video resource corresponding to the video attribute information.
  • the video caching system retrieves all the video attribute information of the experience score equal to 4 in Table 2, including the following video attribute information:
  • the video cache system will use the determined video attribute information as the destination video attribute information.
  • the video buffer system can send the source video resource to the cache system for video transcoding.
  • the video buffering system in order to prevent the video buffering system from blindly transmitting the source video resource to the video transcoding system, and increasing the processing pressure of the video transcoding system, or even the problem of failure, the video buffering system will transmit to the video transcoding system. Transmitting a transcoding request for the transcoding resource, the source video attribute information and the destination video attribute information are carried in the transcoding request, so that the video transcoding system can be based on the bit rate and the destination video attribute information in the source video attribute information. The code rate in it determines if there are enough transcoding resources.
  • the video caching system adjusts the transcoding task to the waiting state until the transcoding system has sufficient transcoding resources, and then performs the transcoding task. .
  • the video buffering system If the video buffering system receives the response information of the successful application of the transcoding resource returned by the video transcoding system, the video buffering system sends the source video resource to the video transcoding system.
  • If the source video attribute information sent by the video buffer system to the video transcoding system is: resolution 720P, frame rate 25, video format FLV, code rate 1367 kbps;
  • the destination video attribute information is:
  • the transcoded video resource received by the video caching system should be:
  • transcoded video resource having a resolution of 240P, a frame rate of 25, a codec format of H264, and a code rate of 322 kpbs;
  • transcoded video resource having a resolution of 360P, a frame rate of 25, a codec format of H264, and a code rate of 732 kpbs;
  • a transcoded video resource having a resolution of 480P, a frame rate of 25, a codec format of H264, and a code rate of 1205 kpbs.
  • the video caching system When the video caching system receives the transcoded video resource, the video caching system will cache these transcoded video resources.
  • the video buffering system further needs to apply for authentication to the video transcoding system, that is, the video optimization system generates an authentication request carrying the identification information, and Send the authentication request to the video transcoding system, if it receives the video transfer
  • the code system fails the response information
  • the transcoding task is terminated. If the video cache system is successfully authenticated, the transcoding task is continued.
  • the video cache system when the cached source video resource is frequently accessed in the video cache system, acquires source video attribute information of the source video resource and at least one destination video attribute information corresponding to the source video resource, and the source is The video resource, the source video attribute information, and the at least one destination video attribute information are sent to the video transcoding system, and then received at least one transcoded video resource returned by the video transcoding system, where the code rate of the transcoded video resource is smaller than the code of the source video resource. Rate, the final video caching system will cache transcoded video resources, which also improves the utilization of the video caching system.
  • FIG. 9 is a flowchart of a video transcoding method according to an embodiment of the present invention. , the method includes:
  • S901 Receive source video resources to be transcoded sent by the video buffer system, source video attribute information corresponding to the source video resources, and at least one destination video attribute information.
  • the video transcoding system When the video caching system needs to perform video transcoding, the video transcoding system will receive the information required for transcoding sent by the video caching system, wherein the destination video attribute information is a video that is encoded after the source video resource is transcoded.
  • the attribute information includes at least a code rate of the source video resource in the source video attribute information, and the target video attribute information includes a code rate of the transcoded video resource.
  • the video transcoding system first receives a transcoding request for requesting a transcoding resource sent by the video caching system, where the transcoding request carries source video attribute information and at least one destination video attribute information, at the source. Both the video attribute information and the destination video attribute information contain the code rate, so the video transcoding system determines whether there is enough in the current video transcoding system based on the source code rate of the source video attribute information and the destination bit rate in the destination video attribute information. Transcode resources to transcode.
  • the video transcoding system will send a response message to the video buffer system for successful transcoding resource application, and then the video transcoding system will receive the source sent by the video buffer system. Video resources.
  • the video transcoding system After the video transcoding system obtains the source video resource, the video transcoding system obtains the source code rate in the source video attribute information and the destination bit rate in each destination video attribute information, and the source video resource is obtained according to each destination bit rate. Transcoding into at least one transcoded video resource having a destination code rate, wherein one transcoded video resource has a code rate, and each transcoded video resource has a different target bit rate, so different transcoded video resources can Supports transmission under different network congestion conditions.
  • the video transcoding system transcodes the source video resource into at least one transcoded video resource, each transcoded video, based on the source video resource, the source video attribute information, and the at least one destination video attribute information sent by the video buffer system.
  • the resources all have a destination video attribute information, for example, transcoding the source video resource into a plurality of transcoded video resources having different code rates, and finally the video transcoding system sends all the transcoded video resources to the video buffer system for caching, so
  • the video transcoding system realizes transcoding of multiple video attributes of the source video resource, and the video transcoding system also realizes video transcoding of multiple code rates.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide functions for implementing the functions specified in one or more blocks of a flow or a flow and/or a block diagram of a flowchart step.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

一种视频优化***及方法,视频优化***在接收到客户端发送的源视频资源的访问请求时,确定视频缓存***中缓存有视频资源对应的至少一个转码视频资源,视频优化***将根据当前网络拥塞状态,在源视频资源以及至少一个转码视频资源中确定出能够在当前网络拥塞状态下传输的转码视频资源,并将获取到的转码视频资源发送至客户端,这样实现了视频优化***基于不同的网络拥塞状态向客户端发送不同码率的转码视频资源,即:在网络拥塞严重时发送低码率的转码视频资源,在网络拥塞状态较轻时则发送高码率的转码视频资源,这样就能够为客户端提供更加流畅的视频资源,也提升了用户的使用体验。

Description

一种视频优化***及方法 技术领域
本发明涉及视频处理技术领域,尤其涉及一种视频优化***及方法。
背景技术
随着网络技术的发展,移动数据业务也得到了快速的发展,目前,互联网厂商利用电信运营商网络给终端提供视频服务,随着是视频业务流量的增加,运营商将面临不断增加运营宽带的需求。
为了满足当前视频服务器的需求,当前的视频优化***引入了缓存Cache***,如图1所示为现有技术中视频业务的结构示意图,当终端向视频供应商发送视频访问请求时,视频优化***也将获取到该视频访问请求,视频优化***会首先到缓存***匹配是否存在访问请求对应的视频资源,若是在缓存***中存在视频资源时,视频优化***将直接从缓存***中读取该视频资源,若是在缓存***中不存在该视频资源时,则视频优化***将视频访问请求转发至网络服务器,然后将网络服务器中返回的视频资源下发至终端。
虽然当前的视频优化***可以直接到缓存***中读取出缓存的视频数据,但是目前的缓存***只能缓存源视频资源,因此在网络拥塞的情况下,若是直接将缓存***中的源视频资源发送至终端,则会出现视频优化***与客户端之间的视频资源传输速度较慢,甚至无法传输的问题。
发明内容
本发明实施例提供了一种视频优化***及方法,用以解决现有技术中在网络拥塞的情况下,视频优化***与客户端之间的视频资源传输速度较慢,甚至无法传输的问题。
其具体的技术方案如下:
本发明实施例第一方面提供了一种视频优化***,包括:
确定模块,用于在接收到客户端发送的源视频资源的访问请求时,确定视频缓存***中缓存有被请求的所述源视频资源对应的至少一个转码视频资源,其中,转码视频资源支持在网络拥塞状态下传输;
处理模块,用于在源视频资源以及所述至少一个转码视频资源中确定出支持在当前网络拥塞状态下传输的视频资源;
发送模块,用于将确定出的所述视频资源发送至所述客户端。
结合第一方面,在第一种可能的实现方式中,所述处理模块,具体用于获取源视频资源以及所述至少一个转码视频资源中每个视频资源分别对应的码率,在获取的各个码率中,确定出符合在当前网络拥塞状态下传输的码率,基于确定出的码率,在所述源视频资源以及所述至少一个转码资源中确定出所述码率对应的视频资源,作为支持在前网络拥塞状态下传输的视频资源。
本发明实施例第二方面提供了一种视频缓存***,包括:
管理模块,用于获取已缓存的源视频资源的源视频属性信息,根据所述源视频资源的源视频属性信息,确定至少一个目的视频属性信息,所述目的视频属性信息为将所述源视频资源转码后得到的目的视频所具有的视频属性信息;
发送模块,用于将所述源视频资源以及所述源视频属性信息、所述至少一个目的视频属性信息发送至视频转码***;
缓存模块,用于接收所述视频转码***返回的根据所述源视频属性信息以及所述至少一个目的视频属性信息,将所述源视频资源进行转码处理得到的至少一个转码视频资源,并将接收到的所述至少一个转码视频资源进行缓存,其中,不同的转码视频资源支持在不同的网络拥塞状态下传输。
结合第二方面,在第一种可能的实现方式中,所述管理模块,具体用于获取表征用户对视频资源的质量进行评级的评级参数,确定出大于等于阈值的评级参数对应的表征视频资源属性的视频属性信息,并将确定出的视频属性信息作为目的视频属性信息。
结合第二方面,在第二种可能的实现方式中,所述管理模块获取的所述源视频属性信息中包含所述源视频资源的源码率,每个目的视频属性信息中 均包含小于所述源码率的目的码率,且每个目的视频属性信息中包含的目的码率各不相同。
结合第二方面,在第三种可能的实现方式中,所述管理模块,还用于获取已缓存的所有视频资源中每个视频资源的总访问请求数,将总访问请求数超过阈值的视频资源作为所述源视频资源。
结合第二方面,在第四种可能的实现方式中,所述管理模块,还用于向所述转码***发送携带视频缓存***的标识信息的鉴权请求,接收所述视频转码***返回的表征所述视频缓存***鉴权通过的响应信息。
结合第二方面,在第五种可能的实现方式中,所述管理模块,还用于向所述视频转码***发送申请转码资源的转码请求,所述转码请求中携带了所述源视频属性信息以及所述至少一个目的视频属性信息,在接收到所述视频转码***返回的表征转码资源申请成功的响应信息时,将所述源视频资源发送至所述视频转码***。
本发明实施例第三方面提供了一种视频转码***,包括:
转码管理模块,用于接收视频缓存***发送的待转码的源视频资源以及所述源视频资源对应的源视频属性信息以及至少一个目的视频属性信息,所述目的视频属性信息为所述源视频资源转码后所具有的视频属性信息;
转码模块,用于基于所述源视频属性信息以及所述至少一个目的视频属性信息,将所述源视频资源转码为至少一个转码视频资源,其中,不同的转码视频资源支持在不同的网络拥塞状态下传输;
发送模块,用于将所述至少一个转码视频资源发送至所述视频缓存***。
结合第三方面,在第一种可能的实现方式中,所述转码模块,具体用于获取所述源视频属性信息中包含的源码率以及每个目的属性信息中包含的目的码率,根据每个目的码率,将所述源视频资源转码为具有目的码率的至少一个转码视频资源,其中,一个转码视频资源具有一个目的码率,且每个转码视频资源具有的目的码率各不相同。
结合第三方面,在第二种可能的实现方式中,所述转码管理模块,还用于接收所述视频缓存***发送的携带所述视频缓存***的标识信息的鉴权 信息,当所述标识信息与预设标识信息匹配时,向所述视频缓存***发送表征所述视频缓存***鉴权通过的响应信息。
结合第三方面,在第三种可能的实现方式中,所述转码管理模块,还用于接收所述视频缓存***发送的用于申请转码资源的转码请求,所述转码请求中携带所述源视频属性信息以及至少一个目的视频属性信息,向所述视频缓存***返回转码资源申请成功的响应信息,并接收所述视频缓存***发送的所述源视频资源。
本发明实施例第四方面提供了一种视频优化方法,包括:
在接收到客户端发送的源视频资源的访问请求时,确定视频缓存***中缓存有被请求的所述源视频资源对应的至少一个转码视频资源,其中,转码视频资源支持在网络拥塞状态下传输;
在源视频资源和所述至少一个转码视频资源中确定出支持当前网络拥塞状态下传输的视频资源;
将确定出的所述视频资源发送至所述客户端。
结合第四方面,在第一种可能的实现方式中,在源视频资源和所述至少一个转码视频资源中确定出支持在前网络拥塞状态下传输的视频资源,包括:
获取源视频资源以及所述至少一个转码资源中每个视频资源分别对应的码率;
在获取的各个码率中,确定出符合在当前网络拥塞状态下传输的码率;
基于确定出的码率,在所述源视频资源以及所述至少一个转码资源中确定出所述码率对应的视频资源,作为支持在前网络拥塞状态下传输的视频资源。
本发明实施例第五方面提供了一种视频缓存方法,包括:
获取已缓存的源视频资源的源视频属性信息;
根据所述源视频资源的源视频属性信息,确定至少一个目的视频属性信息,所述目的视频属性信息为将所述源视频资源转码后得到的目的视频所具有的视频属性信息;
将所述源视频资源以及所述源视频属性信息、所述至少一个目的视频属性信息发送至视频转码***;
接收所述视频转码***返回的根据所述源视频属性信息以及所述至少一个目的视频属性信息,将所述源视频资源进行转码处理得到的至少一个转码视频资源,其中,不同的转码视频资源支持在不同的网络拥塞状态下传输;并将接收到的所述至少一个转码视频资源进行缓存。
结合第五方面,在第一种可能的实现方式中,所述源视频属性信息中包含所述源视频资源的源码率,每个目的视频属性信息中均包含小于所述源码率的目的码率,且每个目的视频属性信息中包含的目的码率各不相同。
结合第五方面,在第二种可能的实现方式中,在获取已缓存的源视频资源的源视频属性信息之前,还包括:
获取已缓存的所有视频资源中每个视频资源的总访问请求数;
将总访问请求数超过阈值的视频资源作为所述源视频资源。
结合第五方面,在第三种可能的实现方式中,在将所述源视频资源以及所述源视频属性信息、所述至少一个目的视频属性信息发送至转码***之前,还包括:
向所述视频转码***发送携带视频缓存***的标识信息的鉴权请求;
接收所述视频转码***返回的表征所述视频缓存***鉴权通过的响应信息。
结合第五方面,在第四种可能的实现方式中,将所述源视频资源以及所述源视频资源的源视频属性信息、至少一个目的视频属性信息发送至视频转码***,包括:
向所述视频转码***发送申请转码资源的转码请求,所述转码请求中携带了所述源视频属性信息以及所述至少一个目的视频属性信息;
在接收到所述视频转码***返回的表征转码资源申请成功的响应信息时,将所述源视频资源发送至所述视频转码***。
在本发明实施例中还提供了一种视频优化***,该视频优化***在接收到客户端发送的源视频资源的访问请求时,确定视频缓存***中是否缓存有源视频资源对应的至少一个转码视频资源,若视频缓存***中缓存有源视频 资源对应的至少一个转码视频资源时,视频优化***将根据当前网络拥塞状态,在源视频资源以及至少一个转码视频资源中确定出能够在当前网络拥塞状态下传输的视频资源,并将获取到的视频资源发送至客户端,这样实现了视频优化***基于网络拥塞状态的不同向客户端发送不同的视频资源,如:在网络拥塞严重时发送转码后的低码率转码视频资源,在网络拥塞状态较轻时则发送高码率的转码视频资源或者是源视频资源,这样在保证视频质量的前提下,能够更加流畅的将视频资源传输值客户端,提升了用户的使用体验。
另外,本发明实施例中当视频缓存***中已缓存的源视频资源被频繁访问时,视频缓存***获取源视频资源的源视频属性信息,以及源视频资源对应的至少一个目的视频属性信息,并将源视频资源、源视频属性信息、至少一个目的视频属性信息发送至视频转码***,然后接收视频转码***返回的至少一个转码视频资源,该转码视频资源的码率小于源视频资源的码率,最后视频缓存***将缓存转码视频资源,从而实现了视频缓存***对转码视频资源的缓存,提升了缓存***的利用率。
另外,本发明实施例中还提供了一种视频转码的方法,在该方法中视频转码***基于视频缓存***发送的源视频资源、源视频属性信息以及至少一个目的视频属性信息,将源视频资源转码为至少一个转码视频资源,每个转码视频资源都具有一个目的视频属性信息,比如说将源视频资源转码为多个具有不同码率的转码视频资源,最后视频转码***将所有转码视频资源发送至视频缓存***进行缓存,因此通过视频转码***实现了源视频资源多视频属性的转码,这样视频转码***就能够为视频缓存***提供多视频属性的转码视频资源。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中视频服务***的结构示意图;
图2为本发明实施例中一种视频优化***的结构示意图;
图3为本发明实施例中一种视频缓存***的结构示意图;
图4为本发明实施例中一种视频转码***的结构示意图;
图5为本发明实施例中一种视频服务***的示意图;
图6为本发明实施例中一种视频访问的过程示意图;
图7为本发明实施例中一种视频优化方法的流程图;
图8为本发明实施例中一种视频缓存方法的流程图;
图9为本发明实施例中一种视频转码方法的流程图。。
具体实施方式
客户端向提供视频服务的视频服务运营商发起视频访问请求时,视频优化***也将接收到该视频访问请求,视频优化***会首先向缓存***查询是否缓存了用户需要访问的视频资源,若是缓存***中缓存该视频资源时,则视频优化***直接从缓存***中读取该视频资源,并转发至客户端;若是缓存***中不存在该视频资源时,则视频优化***将向网络服务器获取该视频资源,并将获取到的视频资源转发至客户端。
因此上述方案中视频优化***只能向客户端发送网络服务器提供的源视频资源,在网络拥塞较为严重的情况下,视频优化***也只能向客户端发送源视频文件,这样会导致视频优化***与客户端之间的视频资源传输速度较慢,甚至无法传输的问题。
为了解决上述问题,在本发明实施例中提供了一种视频优化***,包括确定模块,处理模块和发送模块;确定模块,用于在接收到客户端发送的视频资源的访问请求时,确定缓存***中缓存有被请求的源视频资源对应的至少一个转码视频资源,用于在源视频资源以及至少一个转码视频资源中确定出支持在前网络拥塞状态下传输的转码视频资源,发送模块,用于将确定出的视频资源发送至客户端。通过该视频优化***可以基于不同的网络拥塞状态,为客户端提供使用网络拥塞状态的视频资源,比如说在拥塞状态严重时提供低码率的转码视频资源,在网络拥塞状态不严重时提供高码率的转码视频资源或者是源视频资源,这样不仅充分利用了网络资源,也提升了用户的使用体验。
下面通过附图以及具体实施例对本发明技术方案做详细的说明,应当理 解,本发明实施例以及实施例中的技术特征只是对本发明技术方案的说明而不是限定。
实施例一:
本发明实施例还提供了一种视频优化***,如图2所示本发明实施例中的视频优化***的结构示意图,该***包括:
确定模块201,用于在接收到客户端发送的源视频资源的访问请求时,确定缓存***中缓存有被请求的源视频资源对应的至少一个转码视频资源;
处理模块202,用于在源视频资源以及至少一个转码视频资源中确定出支持在前网络拥塞状态下传输的转码视频资源;
发送模块203,用于将获取到的转码视频资源发送至客户端。
具体来讲,当视频优化***接收到客户端的视频访问请求时,该视频优化***中的确定模块201首先是在缓存***中确定是否缓存有该视频资源,其中缓存***中缓存的视频资源有多种可能性,比如说可以是源视频资源,也就是没有经过转码处理的视频资源,当然可以是源视频资源和经过转码后的转码视频资源。
若是客户端的视频访问请求对应的视频资源在缓存***中是源视频资源时,则视频优化***也只能向客户端返回源视频资源;
若是客户端的视频访问请求对应的视频资源在缓存***中是转码视频资源时,则视频优化***可以选择向客户端返回转码视频资源,具体的选择方式如下:
方式一:若是缓存***缓存的转码视频资源只有一种,此时该视频优化***将获取当前与客户端之间的网络拥塞状态,当网络拥塞不严重时,则向客户端返回源视频资源,若是网络拥塞状态严重时,则将源视频资源对应的转码视频资源返回至客户端。
方式二:若是缓存***缓存的转码视频资源包括多种,比如说转码视频资源包括如下三种:
具有分辨率240P、帧率25、编译码格式H264、码率322kpbs的转码视频资源;
具有分辨率360P、帧率25、编译码格式H264、码率732kpbs的转码视 频资源;
具有分辨率480P、帧率25、编译码格式H264、码率1205kpbs的转码视频资源;
在此种情况下该视频优化***需要确定发送哪一种转码视频资源,此时该视频优化***将获取当前网络拥塞的状态,视频优化***中的处理模块202将获取所有转码视频资源中每个转码视频资源分别对应的码率,在获取的各个码率中确定出符合在当前网络拥塞状态下传输的码率,基于确定出的码率,在至少一个转码资源中确定出所述码率对应的转码视频资源作为支持在前网络拥塞状态下传输的转码视频资源。
比如说当网络拥塞状态较为严重时,处理模块202将在1205kpbs、732kpbs、322kpbs这3个码率中选择出322kpbs,然后确定出该码率对应的转码视频资源,即:具有分辨率240P、帧率25、编译码格式H264、码率322kpbs的转码视频资源,通过选择低码率的转码视频资源可以保证在网络严重拥塞时转码视频资源能够流畅的传输至客户端,这样保证用户能够观看到流程的视频,同时也保证了视频资源的质量。
若是网络拥塞状态不严重时,则视频优化***将确定出一个高码率的转码视频资源,即:可以是具有分辨率480P、帧率25、编译码格式H264、码率1205kpbs的转码视频资源,然后将高码率的视频资源发送至客户端;当然在网络拥塞状态不严重时,也可以直接将源视频资源发送至客户端。
在本发明实施例一中视频优化***在获取到客户端的视频资源访问请求时,确定缓存***中是否缓存有视频资源对应的至少一个转码视频资源,若缓存***中缓存有视频资源对应的至少一个转码视频资源时,视频优化***将根据当前网络拥塞状态,在源视频资源以及至少一个转码视频资源中确定出在当前网络拥塞状态下能够流畅传输的转码视频资源,并将获取到的转码视频资源发送至客户端,这样实现了视频优化***基于不同网络拥塞状态,动态的调整发送至客户的视频资源,即:在网络拥塞严重时发送低码率的转码视频资源,在网络拥塞状态较轻时则发送高码率的转码视频资源或者源视频资源,这样视频优化***能够在保证视频质量的前提下,将用户需要的视频资源更加流畅的发送至客户端,从而提升了用户的使用体验。
实施例二:
为了使视频优化***能够为客户端提供支持不同网络拥塞状态的转码视频资源,因此在本发明实施例中视频缓存***支持不同码率的转码视频资源,如图3所示为本发明实施例中一种视频缓存***的结构示意图,该视频缓存***包括:
管理模块301,用于获取已缓存的源视频资源的源视频属性信息,根据源视频资源的源视频属性信息,确定至少一个目的视频属性信息,目的视频属性信息为将源视频资源转码后得到的目的视频所具有的视频属性信息;
发送模块302,用于将源视频资源以及源视频属性信息、至少一个目的视频属性信息发送至转码***;
缓存模块303,用于接收转码***返回的根据源视频属性信息以及至少一个目的视频属性信息,将源视频资源进行转码处理得到的至少一个转码视频资源,并将接收到的所述至少一个转码视频资源进行缓存,其中,不同的转码视频资源支持在不同的网络拥塞状态下传输。
进一步,为了保证客户端请求频率较高的视频资源能够及时的缓存到视频缓存***中,因此视频缓存***中需要缓存的是客户端请求频率较高的视频资源,具体来讲,在视频缓存***将统计每个视频资源的总访问请求数,若是某一视频资源的总访问请求数超过预设阈值时,视频缓存***将向网络服务器发送该视频资源获取请求,在接收到网络服务器返回的视频资源之后就相应的缓存该视频资源,此时缓存的视频资源就是源视频资源。
在视频缓存***缓存网络服务器返回的视频资源之后,管理模块301将计算已缓存的所有视频资源中每个源视频资源的总访问次数,若是存在总访问请求数超过阈值的源视频资源时,则将该源视频资源作为可以进行转码的源视频资源,比如说某一源视频资源的总访问请求数为550,而在管理模块301中所设置的阈值为500,此时说明该源视频资源被频繁请求,此时管理模块301将生成针对该源视频资源进行视频转码的转码任务。
基于该转码任务,管理模块301将并获取源视频资源的源视频属性信息。此处的源视频属性信息至少要包含码率,即:1367kpbs,当然在源视频属性信息中还可以包括视频的分辨率、格式、帧率、编译码格式等信息中的一种 或者几种,比如:源视频资源的视频属性信息可以为:分辨率720P、帧率25、视频格式FLV、码率1367kbps。
管理模块301获取到源视频资源的源视频属性信息之后,管理模块301将获取表征用户对视频资源的质量进行评级的评级参数,确定出大于等阈值的评级参数对应的表征视频资源属性的视频属性信息,并将确定出的视频属性信息作为目的视频属性信息。比如说,管理模块301调取保存有用户体验参数的用户体验质量(英文:Quality of Experience,简称:QoE)模型,在QoE模型中保存了用户体验质量与视频属性信息之间的对应关系,如表1所示:
Figure PCTCN2015071210-appb-000001
表1
其中,体验分数越高说明用户的体验度越好,而每种用户体验度都对应视频属性信息,表1中每一个体验分数下都对应有三条视频属性信息,比如说4.0对应的视频属性信息就包括了:
分辨率240P、帧率25、编译码格式H264、码率322kpbs;
分辨率360P、帧率25、编译码格式H264、码率732kpbs;
分辨率480P、帧率25、编译码格式H264、码率1205kpbs。
当管理模块301获取到源视频资源的源属性信息之后,就可基于该QoE模型将体验分数大于等于4.0的至少一个视频属性信息确定出来作为目的视 频属性信息。
比如说管理模块301获取到的源视频属性信息为:分辨率720P、帧率25、编译码格式H264、码率1367kpbs,基于QoE模型中所记录的数据,在QoE模型选择出用户体验分数为4.0的视频属性信息如下:
分辨率240P、帧率25、编译码格式H264、码率322kpbs;或者
分辨率360P、帧率25、编译码格式H264、码率732kpbs;或者
分辨率480P、帧率25、编译码格式H264、码率1205kpbs的目的视频属性信息,当然,在实际的应用中可以选择其中一个目的视频属性信息,也可以选择两个或者是多个,在本发明实施例中对此不作限定。
另外,在本发明实施例中为了保证用户对视频资源的体验度,因此选择的目的视频属性信息都是选择用户体验分数最高的,比如表1中的4.0对应的视频属性信息,但是在实际的应用中可以根据不同的应用场景来选择出不同体验分数对应的视频属性信息,比如说可以选择体验分数为3.5所对应的目的视频属性信息。
基于上述描述的内容,管理模块301在获取到源视频资源的源视频属性信息之后,就能够基于源视频属性信息确定出至少一个目的视频属性信息。
管理模块301在得到源视频资源以及至少一个目的属性信息之后,为了保证***的安全性,当然也是为保证整个***的稳定性,转码***需要对视频缓存***进行鉴权,因此管理模块301会将携带视频缓存***的标识信息的鉴权请求发送至视频转码***,此处的标识信息可以但不限于是视频缓存***的IP地址,视频转码***在接收到携带标识信息的鉴权请求之后,视频转码***将鉴权请求中的标识信息与预存标识信息进行匹配,若匹配,则视频转码***会将鉴权成功的响应信息发送至管理模块301。
在鉴权成功之后,管理模块301将通知视频缓存***的发送模块302。
发送模块302将向视频转码***申请转码资源,简单来讲,就是确定视频转码***当前是否能够提供足够的转码资源来对源视频资源进行转码,因此发送模块302会向转码***发送申请转码资源的转码请求,在转码请求中携带了源视频属性信息以及至少一个目的视频属性信息。
转码***通过转码请求中的源视频属性信息以及至少一个目的视频属 性信息,可以确定当前是否有足够的转码资源来对源视频资源进行转码。
若是发送模块302接收到转码***返回转码资源申请失败的响应信息时,则发送模块302处于等待的状态,也就是不会将缓存模块303中的源视频资源发送至视频转码***,这面避免了视频缓存***盲目的向转码***发送源视频资源所造成转码***处理压力增大,或者是导致视频转码***异常等问题。
若是发送模块302接收到视频转码***返回的转码资源申请成功的响应信息后,该发送模块302将缓存模块303中缓存的源视频资源发送至视频转码***,这样视频转码***就能够基于源视频资源进行转码。
当视频转码***转码完成之后,会将转码完成后的至少一个转码视频资源发送至视频缓存***,当视频缓存***的中的缓存模块303接收到转码视频资源之后,就将接收到的至少一个转码视频资源进行缓存。
在缓存模块303将转码视频资源缓存成功之后,该缓存模块303会向视频转码***发送一缓存成功的信息,以使视频转码***基于该信息确定完成视频转码。同时该缓存模块303通知管理模块301删除之前建立的转码任务,当然,在缓存***中还保存了未经转码的源视频资源。
在上述实施例中本发明实施例中当视频缓存***中已缓存的源视频资源被频繁访问时,视频缓存***获取源视频资源的源视频属性信息,以及源视频资源对应的至少一个目的视频属性信息,并将源视频资源、源视频属性信息、至少一个目的视频属性信息发送至视频转码***,然后接收视频转码***返回的至少一个转码视频资源,该转码视频资源的码率小于源视频资源的码率,最后视频缓存***将缓存转码视频资源,从而实现了视频缓存***对不同码率的转码视频资源的缓存,提升了视频缓存***的利用率。
进一步,由于视频缓存***中缓存了不同码率的转码视频资源,因此视频缓存***可以为视频优化***提供不同码率的转码视频资源,这样视频优化***可以根据当前网络的拥塞状态在缓存***中选择出适宜当前网络状态下传输的转码视频资源发送给客户端,在保证视频质量的前提下,又提升了视频优化***与客户端之间的视频传输的流畅性,提升了用户的使用体验。
实施例三:
本发明实施例中还提供了一种视频转码***,如图4为本发明实施例中一种视频转码***的结构示意图,该视频转码***包括:
转码管理模块401,用于接收缓存***发送的待转码的源视频资源以及源视频资源对应的源视频属性信息以及至少一个目的视频属性信息;
转码模块402,用于基于源视频属性信息以及至少一个目的视频属性信息,将源视频资源转码为至少一个转码视频资源;
发送模块403,用于将至少一个转码视频资源发送至缓存***。
首先来讲,在本发明实施例中的视频转码***为了保证自身的***稳定性以及安全性,在进行转码之前需要对缓存***进行鉴权,因此在转码管理模块401在接收源视频属性信息以及目的属性信息之前,该转码管理模块401还将接收到缓存***发送的鉴权请求,在该鉴权请求中携带了缓存***的标识信息,该标识信息可以但是不限于IP地址。
若是该标识信息与视频转码***中预存标识信息不匹配时,则视频转码***将不会为缓存***提供转码服务。
若是该标识信息与视频转码***中预存标识信息匹配时,则视频转码***的转码管理模块401将向缓存***返回鉴权成功的响应信息。
由于视频转码***的处理能力有限度,进行视频转码之前,视频缓存***需要向视频转码***申请转码资源,因此视频缓存***会基于该鉴权成功的响应信息向视频转码***发送申请转码资源的转码申请,在该转码申请中携带了待转码的源视频资源的源视频属性信息以及至少一个目的视频属性信息。
视频转码***中的转码管理模块401接收到转码申请之后,将从源视频属性信息中确定源视频资源的码率,并且从至少一个目的视频属性信息中确定出每个视频属性信息对应的码率,比如说源视频属性信息中的码率为1367kpbs,而目的属性信息一共有三个,对应的码率分别为:1205kpbs、732kpbs、322kpbs。
基于得到的码率,该视频转码***确定需要将码率为1367kpbs的源视频资源分别转码为码率为1205kpbs、732kpbs、322kpbs的转码视频资源,基 于这样的前提条件下,该转码管理模块401将统计计算当前转码***中能够使用的转码资源是否能够完成转码任务,若是不能完成该转码任务时,则转码管理模块401将生成一等待指令,并将该等待指令发送至缓存***,以指示视频缓存***等待视频转码。
若是转码管理模块401确定当前的转码资源能够完成转码任务,此时转码管理模块401将生成一表征转码资源申请成功的响应信息,并将该响应信息发送至视频缓存***。
视频缓存***将基于该响应信息向视频转码***发送待转码的源视频资源。
在转码管理模块401接收到待转码的源视频资源之后,转码管理模块401将源视频资源转至转码模块402,转码模块402将基于源视频资源、源视频资源的源视频属性信息、至少一个目的属性信息进行转码,经过视频转码***转码后的视频资源中具有目的视频属性信息,具体如下:
源视频资源的源视频属性信息为:分辨率720P、帧率25、视频格式FLV、码率1367kbps。
目的视频属性信息分别为:
分辨率240P、帧率25、编译码格式H264、码率322kpbs;
分辨率360P、帧率25、编译码格式H264、码率732kpbs;
分辨率480P、帧率25、编译码格式H264、码率1205kpbs。
最后转码***将源视频资源转码为:
具有分辨率240P、帧率25、编译码格式H264、码率322kpbs的转码视频资源;以及
具有分辨率360P、帧率25、编译码格式H264、码率732kpbs的转码视频资源;以及
具有分辨率480P、帧率25、编译码格式H264、码率1205kpbs的转码视频资源。
在得到转码后的转码视频资源之后,将通过发送模块403将得到的至少一个转码视频资源发送至视频缓存***进行缓存。
当视频转码***接收到视频缓存***返回的表征缓存成功的响应信息 之后,该视频转码***将确定转码完成,并删除该转码任务。
本发明实施例中视频转码***基于缓存***发送的源视频资源、源视频属性信息以及至少一个目的视频属性信息,将源视频资源转码为至少一个转码视频资源,每个转码视频资源都具有一个目的视频属性信息,比如说将源视频资源转码为多个具有不同码率的转码视频资源,最后视频转码***将所有转码视频资源发送至视频缓存***进行缓存,因此通过视频转码***实现了源视频资源多视频属性的转码,并且视频转码***也实现多种码率的视频转码。
实施例四:
本发明实施例还还提供了一种视频服务***,如图5所示为本发明实施例中一种视频服务***的结构示意图,该服务***包括:视频优化***,与视频优化***连接的Cache***,以及Cache***连接的视频转码***,其各个***之间的业务流程如下:
1、客户端向网络服务器发起视频访问请求;
2、视频优化***向Cache***查询是否缓存被访问的视频资源,若缓存有该视频资源则进入步骤3,若是Cache***中没有缓存该视频资源时,则进入步骤4;
3、视频优化***获取Cache***中缓存的视频资源;
4、视频优化***将Cache***中获取的视频资源转发至客户端;
5、视频优化***向网络服务器请求视频资源;
6、视频优化***接收网络服务器返回的视频资源;
7、视频优化***将网络服务器返回的视频资源转发至客户端;
8、Cache***统计单位时间内被请求的视频资源的总访问次数,当存在总访问次数大于阈值的视频资源时,向网络服务器请求该视频资源;
9、Cache***缓存网络服务器返回的视频资源;
10、Cache***实时统计已缓存的视频资源中是否存在访问次数超过阈值的视频资源;
11、若存在访问次数超过阈值的视频资源,Cache***创建转码任务,获取访问次数超过阈值的视频资源的源视频属性信息,以及获取至少一个目 的视频属性信息;
12、Cache***向视频转码***发送携带Cache***IP地址的鉴权请求,若收到鉴权失败的信息时,则终止转码任务,若是收到鉴权成功的信息时,则执行步骤13;
13、Cache***向转码***发送申请转码资源请求,在该请求中携带了源视频属性信息以及至少一个目的视频属性信息,若是转码资源申请失败时,则Cache***调整为等待转码状态,若是转码资源申请成功时,则执行步骤14;
14、Cache***将视频资源发送至视频转码***;
15、视频转码***根据Cache***发送的视频资源、源视频属性信息、至少一个目的视频属性信息启动转码任务,源视频属性信息中包含了源视频资源的源码率,至少一个目的视频属性信息中的每个目的视频属性信息都包含一个目的码率,并且各个目的视频属性信息中的目的码率各不相同;
16、视频转码***将转码后的至少一个转码视频资源发送至Cache***进行缓存,其中,至少一个转码视频资源中的每个转码视频资源都具有一个目的码率;
17、Cache***将至少一个转码视频资源缓存成功后,向视频转码***发送成功缓存的信息;
18、Cache***删除转码任务。
上述过程中Cache***为视频转码***提供视频资源,而视频转码***将转码完成的转码视频资源返回至Cache***进行缓存,这样使得Cache***实现了转码视频数据的缓存,充分利用了Cache***中的缓存空间。
另外,Cache***在转码之前还获取到不同的视频属性信息,因此转码***可以基于需要转码的视频资源以及不同的视频属性信息得到不同转码视频资源,也就是实现了Cache***中的不同视频属性信息的缓存。
基于Cache***缓存了转码视频资源的基础上,视频优化***确定向客户端返回视频资源的方式相应改变,具体过程如图6所示,图6中包括如下步骤:
1、客户端向网络服务器发送视频资源访问请求;
2、视频优化***向Cache***查询是否缓存该视频资源;
3、Cache***向视频优化***返回缓存的该视频资源对应的所有转码视频资源的码率;
4、视频优化***确定当前与客户端之间的网络拥塞状态;
5、视频优化***根据当前与客户端之间的网络拥塞状态,确定当前适应当前网络状态的码率;
6、基于确定的码率,在Cache***中获取该具有该码率的转码视频资源;
7、视频优化***向客户端返回在Cache***中获取的转码视频资源。
在上述步骤中视频优化***基于与客户端之间的网络拥塞状态,向Cache***缓存的不同码率的视频资源中确定出适合当前网络拥塞状态的转码视频资源,从而保证了视频优化***与客户端之间视频资源传输的流程性,提升了用户的使用体验。
实施例五:
对应实施例一,本发明实施例还提供了一种视频优化方法,如图7所示为本发明实施例中一种视频优化方法的流程图,该方法包括:
S701,在获取到客户端发送的源视频资源的访问请求时,确定缓存***中缓存有被请求的源视频资源对应的至少一个转码视频资源;
在客户端向视频服务运营商发送视频资源访问请求时,视频优化***首先查询缓存***是否缓存有被请求的视频资源,若是缓存***中缓存有被请求的视频资源时,视频优化***将调取缓存***中缓存的视频资源。
当然在本发明实施例中视频缓存***中缓存的视频资源包含了至少一个转码视频资源,其中,不同的转码视频资源支持在不同的网络拥塞状态下传输,视频优化***确定出视频缓存***中缓存有至少一个转码视频资源时,则进入S702;
S702,在源视频资源以及至少一个转码视频资源中确定出支持在当前网络拥塞状态下传输的转码视频资源;
若视频缓存***中缓存有如下的转码视频资源时:
具有分辨率240P、帧率25、编译码格式H264、码率322kpbs的转码视 频资源;以及
具有分辨率360P、帧率25、编译码格式H264、码率732kpbs的转码视频资源;以及
具有分辨率480P、帧率25、编译码格式H264、码率1205kpbs的转码视频资源。
视频优化***将检测当前与客户端之间的网络的拥塞状态,然后基于网络拥塞状态选择出适合在当前网络拥塞状态下传输的转码视频资源,比如说网络拥塞较为严重时选择具有分辨率240P、帧率25、编译码格式H264、码率322kpbs的转码视频资源;网络拥塞状态较轻时选择具有分辨率480P、帧率25、编译码格式H264、码率1205kpbs的转码视频资源或者是直接发送源视频资源。
S703,将确定出的转码视频资源发送至客户端。
实施例六:
对应实施例二的视频缓存***,本发明实施例还提供了一种视频缓存方法,如图8所示为本发明实施例中一种视频缓存方法的流程图,该方法包括:
S801,获取已缓存的源视频资源的源视频属性信息;
S802,根据源视频资源的源视频属性信息,确定至少一个目的视频属性信息;
S803,将源视频资源以及源视频属性信息、至少一个目的视频属性信息发送至转码***;
S804,接收视频转码***返回的根据源视频属性信息以及至少一个目的视频属性信息,将源视频资源进行转码处理得到的至少一个转码视频资源;
S805,将接收到的至少一个转码视频资源进行缓存。
在本发明实施例中,在S801之前,视频缓存***还将获取已缓存的所有视频资源中每个视频资源的总访问次数,然后将总反问请求数超过阈值的视频资源作为源视频资源,简单的来讲就是被频繁请求的视频资源才会作为待转码的视频资源。
然后通过获取源视频资源的源视频属性信息,在源视频属性信息中至少要包括源视频资源的源码率,当然还可以包括源视频资源的分辨率、格式、 帧率、编译码格式等信息中的一种或者几种,比如说:源视频资源的视频属性信息可以为:分辨率720P、帧率25、视频格式FLV、码率1367kbps。
该视频缓存***将基于获取到的源视频属性信息,获取到表征用户对视频资源的质量进行评级的评级参数,并确定出大于等于阈值的评级参数对应的表征视频资源属性的视频属性信息,将确定出的视频属性信息作为目的视频属性信息,具体来讲,在本发明实施例中用户对视频资源的质量评级保存于QoE模型中,该QoE模型所保存的参数具体如表2所示,在表2中每种视频属性信息都对应有一个体验分数,分数越高表征用户对该视频属性信息对应的视频资源的体验度越好。
Figure PCTCN2015071210-appb-000002
表2
基于QoE模型,视频缓存***将表2中体验分数等于4的所有视频属性信息调取出来,具体包括如下的视频属性信息:
分辨率240P、帧率25、编译码格式H264、码率322kpbs;
分辨率360P、帧率25、编译码格式H264、码率732kpbs;
分辨率480P、帧率25、编译码格式H264、码率1205kpbs。
最后视频缓存***会将确定出的视频属性信息作为目的视频属性信息。在源视频资源的源视频属性信息以及转码所需的目的视频属性信息之后,视频缓存***就可以将源视频资源发送至缓存***进行视频转码。
在本发明实施例中为了避免视频缓存***盲目的将源视频资源发送至视频转码***,而增加视频转码***处理压力,甚至是出现故障的问题,因此视频缓存***会向视频转码***发送申请转码资源的转码请求,在该转码请求中就携带了源视频属性信息以及目的视频属性信息,这样视频转码***就能够基于源视频属性信息中的码率以及目的视频属性信息中的码率确定出是否有足够的转码资源。
若是视频缓存***接收到视频转码***返回的转码资源申请失败的响应信息时,视频缓存***将转码任务调整为等待状态,直至转码***有足够的转码资源时再执行转码任务。
若是视频缓存***接收到视频转码***返回的转码资源申请成功的响应信息时,则视频缓存***将源视频资源发送至视频转码***。
若是视频缓存***向视频转码***发送的源视频属性信息为:分辨率720P、帧率25、视频格式FLV、码率1367kbps;
目的视频属性信息为:
分辨率240P、帧率25、编译码格式H264、码率322kpbs;
分辨率360P、帧率25、编译码格式H264、码率732kpbs;
分辨率480P、帧率25、编译码格式H264、码率1205kpbs。
则该视频缓存***接收到的转码视频资源就应该为:
具有分辨率240P、帧率25、编译码格式H264、码率322kpbs的转码视频资源;
具有分辨率360P、帧率25、编译码格式H264、码率732kpbs的转码视频资源;
具有分辨率480P、帧率25、编译码格式H264、码率1205kpbs的转码视频资源。
在视频缓存***接收到转码视频资源时,视频缓存***就将缓存这些转码视频资源。
另外,在本发明实施例中在S803之前还有一种可选方式,即:该视频缓存***还需要向视频转码***申请鉴权,即视频优化***将生成携带标识信息的鉴权请求,并将该鉴权请求发送至视频转码***,若是接收到视频转 码***鉴权失败的响应信息时,则终止转码任务,若是视频缓存***鉴权成功,则继续执行转码任务。
本发明实施例中当视频缓存***中已缓存的源视频资源被频繁访问时,视频缓存***获取源视频资源的源视频属性信息,以及源视频资源对应的至少一个目的视频属性信息,并将源视频资源、源视频属性信息、至少一个目的视频属性信息发送至视频转码***,然后接收视频转码***返回的至少一个转码视频资源,该转码视频资源的码率小于源视频资源的码率,最后视频缓存***将缓存转码视频资源,这样也提升了视频缓存***的利用率。
实施例七:
对应本发明实施例三中的一种视频转码***,本发明实施例中还提供了一种视频转码方法,如图9所示为本发明实施例中一种视频转码方法的流程图,该方法包括:
S901,接收视频缓存***发送的待转码的源视频资源以及所述源视频资源对应的源视频属性信息以及至少一个目的视频属性信息;
当视频缓存***需要进行视频转码时,视频转码***就将接收到视频缓存***发送的转码所需的信息,其中,目的视频属性信息为所述源视频资源转码后所具有的视频属性信息,并且在源视频属性信息中至少包含了源视频资源的码率,在目的视频属性信息中包含了转码后的转码视频资源所具有的码率。
S902,基于所述源视频属性信息以及所述至少一个目的视频属性信息,将所述源视频资源转码为至少一个转码视频资源;
在该步骤中,视频转码***首先会接收到视频缓存***发送的用于申请转码资源的转码请求,该转码请求中携带了源视频属性信息以及至少一个目的视频属性信息,在源视频属性信息以及目的视频属性信息中都包含了码率,因此视频转码***将基于源视频属性信息的源码率以及目的视频属性信息中的目的码率确定当前视频转码***中是否有足够的转码资源来转码。
若是视频转码***有足够的转码资源来转码时,则视频转码***将向视频缓存***发送转码资源申请成功的响应信息,然后该视频转码***将接收视频缓存***发送的源视频资源。
在视频转码***获取到源视频资源之后,视频转码***将获取源视频属性信息中的源码率和每个目的视频属性信息中的目的码率,根据每个目的码率,将源视频资源转码为具有目的码率的至少一个转码视频资源,其中一个转码视频资源具有一个码率,且每个转码视频资源具有的目的码率各不相同,因此不同的转码视频资源能够支持在不同的网络拥塞状态下传输。
S903,将至少一个转码视频资源发送至视频缓存***。
本发明实施例中视频转码***基于视频缓存***发送的源视频资源、源视频属性信息以及至少一个目的视频属性信息,将源视频资源转码为至少一个转码视频资源,每个转码视频资源都具有一个目的视频属性信息,比如说将源视频资源转码为多个具有不同码率的转码视频资源,最后视频转码***将所有转码视频资源发送至视频缓存***进行缓存,因此通过视频转码***实现了源视频资源多视频属性的转码,并且视频转码***也实现多种码率的视频转码。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的 步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (19)

  1. 一种视频优化***,其特征在于,包括:
    确定模块,用于在接收到客户端发送的源视频资源的访问请求时,确定视频缓存***中缓存有被请求的所述源视频资源对应的至少一个转码视频资源,其中,转码视频资源支持在网络拥塞状态下传输;
    处理模块,用于在源视频资源以及所述至少一个转码视频资源中确定出支持在当前网络拥塞状态下传输的视频资源;
    发送模块,用于将确定出的所述视频资源发送至所述客户端。
  2. 如权利要求1所述的***,其特征在于,所述处理模块,具体用于获取源视频资源以及所述至少一个转码视频资源中每个视频资源分别对应的码率,在获取的各个码率中,确定出符合在当前网络拥塞状态下传输的码率,基于确定出的码率,在所述源视频资源以及所述至少一个转码资源中确定出所述码率对应的视频资源,作为支持在前网络拥塞状态下传输的视频资源。
  3. 一种视频缓存***,其特征在于,包括:
    管理模块,用于获取已缓存的源视频资源的源视频属性信息,根据所述源视频资源的源视频属性信息,确定至少一个目的视频属性信息,所述目的视频属性信息为将所述源视频资源转码后得到的目的视频所具有的视频属性信息;
    发送模块,用于将所述源视频资源以及所述源视频属性信息、所述至少一个目的视频属性信息发送至视频转码***;
    缓存模块,用于接收所述视频转码***返回的根据所述源视频属性信息以及所述至少一个目的视频属性信息,将所述源视频资源进行转码处理得到的至少一个转码视频资源,并将接收到的所述至少一个转码视频资源进行缓存,其中,不同的转码视频资源支持在不同的网络拥塞状态下传输。
  4. 如权利要求3所述的***,其特征在于,所述管理模块,具体用于获取表征用户对视频资源的质量进行评级的评级参数,确定出大于等于阈值的评级参数对应的表征视频资源属性的视频属性信息,并将确定出的视频属性信息作为目的视频属性信息。
  5. 如权利要求3所述的***,其特征在于,所述管理模块获取的所述源视频属性信息中包含所述源视频资源的源码率,每个目的视频属性信息中均包含小于所述源码率的目的码率,且每个目的视频属性信息中包含的目的码率各不相同。
  6. 如权利要求3所述的***,其特征在于,所述管理模块,还用于获取已缓存的所有视频资源中每个视频资源的总访问请求数,将总访问请求数超过阈值的视频资源作为所述源视频资源。
  7. 如权利要求3所述的***,其特征在于,所述管理模块,还用于向所述转码***发送携带缓存***的标识信息的鉴权请求,接收所述视频转码***返回的表征所述视频缓存***鉴权通过的响应信息。
  8. 如权利要求3所述的***,其特征在于,所述管理模块,还用于向所述视频转码***发送申请转码资源的转码请求,所述转码请求中携带了所述源视频属性信息以及所述至少一个目的视频属性信息,在接收到所述视频转码***返回的表征转码资源申请成功的响应信息时,将所述源视频资源发送至所述视频转码***。
  9. 一种视频转码***,其特征在于,包括:
    转码管理模块,用于接收视频缓存***发送的待转码的源视频资源以及所述源视频资源对应的源视频属性信息以及至少一个目的视频属性信息,所述目的视频属性信息为所述源视频资源转码后所具有的视频属性信息;
    转码模块,用于基于所述源视频属性信息以及所述至少一个目的视频属性信息,将所述源视频资源转码为至少一个转码视频资源,其中,不同的转码视频资源支持在不同的网络拥塞状态下传输;
    发送模块,用于将所述至少一个转码视频资源发送至所述视频缓存***。
  10. 如权利要求9所述的***,其特征在于,所述转码模块,具体用于获取所述源视频属性信息中包含的源码率以及每个目的属性信息中包含的目的码率,根据每个目的码率,将所述源视频资源转码为具有目的码率的至少一个转码视频资源,其中,一个转码视频资源具有一个目的码率,且每个转码视频资源具有的目的码率各不相同。
  11. 如权利要求9所述的***,其特征在于,所述转码管理模块,还用于接收所述视频缓存***发送的携带所述缓存***的标识信息的鉴权信息,当所述标识信息与预设标识信息匹配时,向所述视频缓存***发送表征所述视频缓存***鉴权通过的响应信息。
  12. 如权利要求9所述的***,其特征在于,所述转码管理模块,还用于接收所述视频缓存***发送的用于申请转码资源的转码请求,所述转码请求中携带所述源视频属性信息以及至少一个目的视频属性信息,向所述视频缓存***返回转码资源申请成功的响应信息,并接收所述视频缓存***发送的所述源视频资源。
  13. 一种视频优化方法,其特征在于,包括:
    在接收到客户端发送的源视频资源的访问请求时,确定视频缓存***中缓存有被请求的所述源视频资源对应的至少一个转码视频资源,其中,转码视频资源支持在网络拥塞状态下传输;
    在源视频资源和所述至少一个转码视频资源中确定出支持在前网络拥塞状态下传输的视频资源;
    将确定出的所述视频资源发送至所述客户端。
  14. 如权利要求13所述的方法,其特征在于,在源视频资源和所述至少一个转码视频资源中确定出支持在前网络拥塞状态下传输的视频资源,包括:
    获取源视频资源以及所述至少一个转码资源中每个视频资源分别对应的码率;
    在获取的各个码率中,确定出符合在当前网络拥塞状态下传输的码率;
    基于确定出的码率,在所述源视频资源以及所述至少一个转码资源中确定出所述码率对应的视频资源,作为支持在前网络拥塞状态下传输的视频资源。
  15. 一种视频缓存方法,其特征在于,包括:
    获取已缓存的源视频资源的源视频属性信息;
    根据所述源视频资源的源视频属性信息,确定至少一个目的视频属性信息,所述目的视频属性信息为将所述源视频资源转码后得到的目的视频所具 有的视频属性信息;
    将所述源视频资源以及所述源视频属性信息、所述至少一个目的视频属性信息发送至视频转码***;
    接收所述视频转码***返回的根据所述源视频属性信息以及所述至少一个目的视频属性信息,将所述源视频资源进行转码处理得到的至少一个转码视频资源,其中,不同的转码视频资源支持在不同的网络拥塞状态下传输;并将接收到的所述至少一个转码视频资源进行缓存。
  16. 如权利要求15所述的方法,其特征在于,所述源视频属性信息中包含所述源视频资源的源码率,每个目的视频属性信息中均包含小于所述源码率的目的码率,且每个目的视频属性信息中包含的目的码率各不相同。
  17. 如权利要求15所述的方法,其特征在于,在获取已缓存的源视频资源的源视频属性信息之前,还包括:
    获取已缓存的所有视频资源中每个视频资源的总访问请求数;
    将总访问请求数超过阈值的视频资源作为所述源视频资源。
  18. 如权利要求15所述的方法,其特征在于,在将所述源视频资源以及所述源视频属性信息、所述至少一个目的视频属性信息发送至视频转码***之前,还包括:
    向所述视频转码***发送携带视频缓存***的标识信息的鉴权请求;
    接收所述视频转码***返回的表征所述视频缓存***鉴权通过的响应信息。
  19. 如权利要求15所述的方法,其特征在于,将所述源视频资源以及所述源视频资源的源视频属性信息、至少一个目的视频属性信息发送至视频转码***,包括:
    向所述视频转码***发送申请转码资源的转码请求,所述转码请求中携带了所述源视频属性信息以及所述至少一个目的视频属性信息;
    在接收到所述视频转码***返回的表征转码资源申请成功的响应信息时,将所述源视频资源发送至所述视频转码***。
PCT/CN2015/071210 2014-02-14 2015-01-21 一种视频优化***及方法 WO2015120766A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410052362.5 2014-02-14
CN201410052362.5A CN103813181A (zh) 2014-02-14 2014-02-14 一种视频优化***及方法

Publications (1)

Publication Number Publication Date
WO2015120766A1 true WO2015120766A1 (zh) 2015-08-20

Family

ID=50709309

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/071210 WO2015120766A1 (zh) 2014-02-14 2015-01-21 一种视频优化***及方法

Country Status (2)

Country Link
CN (1) CN103813181A (zh)
WO (1) WO2015120766A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111414515A (zh) * 2020-03-17 2020-07-14 中国建设银行股份有限公司 一种资源审核方法、装置、设备及存储介质
CN113453043A (zh) * 2020-03-27 2021-09-28 ***通信集团山东有限公司 一种视频调度优化方法、装置、计算机设备和存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105306858B (zh) * 2014-05-29 2018-10-16 杭州海康威视***技术有限公司 一种视频数据存储方法和装置
CN106993014B (zh) * 2016-01-20 2020-12-18 中兴通讯股份有限公司 缓存内容的调整方法、装置及***
CN108063953A (zh) * 2017-12-28 2018-05-22 武汉烽火众智数字技术有限责任公司 视频转码网关、监控***以及视频转码网关的转码方法
CN108495147A (zh) * 2018-03-09 2018-09-04 网宿科技股份有限公司 一种提供视频资源的方法和***
CN110278460A (zh) * 2018-03-16 2019-09-24 上海小麦互动企业发展有限公司 内容控制***及其控制方法
CN109347967B (zh) * 2018-11-02 2021-08-03 网宿科技股份有限公司 一种获取音视频数据的方法及装置
CN109525861A (zh) * 2018-12-05 2019-03-26 北京邮电大学 一种确定用户所需视频的方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102123303A (zh) * 2011-03-25 2011-07-13 天脉聚源(北京)传媒科技有限公司 一种音视频文件播放方法、***及传输控制装置
CN102427563A (zh) * 2000-12-22 2012-04-25 索尼株式会社 分布式随选媒体代码转换***和方法
CN103475902A (zh) * 2013-09-06 2013-12-25 同观科技(深圳)有限公司 一种视频编码及网络传输方法和一种视频转发服务器

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011139305A1 (en) * 2010-05-04 2011-11-10 Azuki Systems, Inc. Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction
CN102547393B (zh) * 2010-12-20 2016-09-14 上海全土豆网络科技有限公司 移动互联网视频内容交互***及其方法
CN102685472B (zh) * 2011-03-08 2014-11-05 华为技术有限公司 数据传输的方法、装置和***
CN102427532B (zh) * 2011-10-24 2013-10-09 成都虢电智能电力科技有限公司 一种受限带宽下的多路视频自适应编码传输方法及其传输***
CN102511043B (zh) * 2011-11-26 2014-07-09 华为技术有限公司 缓存文件替换方法、装置及***
EP2696552A1 (en) * 2012-08-07 2014-02-12 NTT DoCoMo, Inc. Method, system and network for transmitting multimedia data to a plurality of clients
CN102802089B (zh) * 2012-09-13 2014-12-31 浙江大学 一种基于体验质量预测的移动视频码率调整方法
CN103051975A (zh) * 2012-12-31 2013-04-17 乐视网信息技术(北京)股份有限公司 一种p2p缓存数据淘汰方法
CN103414915B (zh) * 2013-08-22 2014-07-16 合一网络技术(北京)有限公司 一种网站上传视频质量评价方法及装置
CN103491393B (zh) * 2013-09-23 2016-11-23 华为技术有限公司 一种视频业务处理方法及设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102427563A (zh) * 2000-12-22 2012-04-25 索尼株式会社 分布式随选媒体代码转换***和方法
CN102123303A (zh) * 2011-03-25 2011-07-13 天脉聚源(北京)传媒科技有限公司 一种音视频文件播放方法、***及传输控制装置
CN103475902A (zh) * 2013-09-06 2013-12-25 同观科技(深圳)有限公司 一种视频编码及网络传输方法和一种视频转发服务器

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111414515A (zh) * 2020-03-17 2020-07-14 中国建设银行股份有限公司 一种资源审核方法、装置、设备及存储介质
CN113453043A (zh) * 2020-03-27 2021-09-28 ***通信集团山东有限公司 一种视频调度优化方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN103813181A (zh) 2014-05-21

Similar Documents

Publication Publication Date Title
WO2015120766A1 (zh) 一种视频优化***及方法
CN105915953B (zh) 直播视频鉴别的方法、装置、***、服务器和存储介质
US10764623B2 (en) Method and system for media adaption
KR101398319B1 (ko) 실시간 비디오 검출기
US20180205976A1 (en) Method and apparatus of obtaining video fragment
US10757453B2 (en) Distributed multi-datacenter video packaging system
US9923771B2 (en) Adaptive bitrate modification of a manifest file
CN110022482B (zh) 视频起播方法、视频服务***及存储介质
US9936040B2 (en) Systems and methods for partial video caching
KR101330052B1 (ko) 적응형 컨텐츠 전송 방식을 지원하는 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치
CN110933517B (zh) 码率切换方法、客户端和计算机可读存储介质
WO2017096830A1 (zh) 用于cdn平台的内容分发方法及调度代理服务器
EP2493191B1 (en) Method, device and system for realizing hierarchically requesting content in http streaming system
CN108063769B (zh) 一种内容服务的实现方法、装置及内容分发网络节点
EP2779658A2 (en) Segmented content delivery
US10834161B2 (en) Dash representations adaptations in network
US10476943B2 (en) Customizing manifest file for enhancing media streaming
US9479607B2 (en) Content caching and delivering system with traffic of repetitively requested content reduced
US20180191586A1 (en) Generating manifest file for enhancing media streaming
US20180191801A1 (en) Adaptively updating content delivery network link in a manifest file
CN111083536B (zh) 调节视频码率的方法和装置
US10440085B2 (en) Effectively fetch media content for enhancing media streaming
US20140282788A1 (en) System for controlling video distribution in response to a request on reduced video data traffic and a method therefor
WO2015085873A1 (zh) 视频码流的获取方法及装置
TW201817244A (zh) 串流媒體傳輸優化方法及快取裝置

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: 15749000

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15749000

Country of ref document: EP

Kind code of ref document: A1