WO2017016292A1 - 一种分配视频转换资源的方法及系统 - Google Patents

一种分配视频转换资源的方法及系统 Download PDF

Info

Publication number
WO2017016292A1
WO2017016292A1 PCT/CN2016/082909 CN2016082909W WO2017016292A1 WO 2017016292 A1 WO2017016292 A1 WO 2017016292A1 CN 2016082909 W CN2016082909 W CN 2016082909W WO 2017016292 A1 WO2017016292 A1 WO 2017016292A1
Authority
WO
WIPO (PCT)
Prior art keywords
transcoding
resource
task
server
video format
Prior art date
Application number
PCT/CN2016/082909
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 乐视控股(北京)有限公司
Priority to US15/219,768 priority Critical patent/US20170026311A1/en
Publication of WO2017016292A1 publication Critical patent/WO2017016292A1/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/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
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel

Definitions

  • the embodiments of the present disclosure relate to the field of video technologies, and in particular, to a method and system for allocating video conversion resources.
  • Cloud services are models of the addition, use, and delivery of Internet-based related services, often involving the provision of dynamically scalable and often virtualized resources over the Internet.
  • Cloud services refer to obtaining the required services on the network in an on-demand, scalable manner. This service can be IT and software, Internet related, or other services.
  • Video transcoding is the most important part of the video production process.
  • Video Transcoding refers to converting a video stream that has been compression-coded into another video stream to accommodate different network bandwidths, different terminal processing capabilities, and different user requirements. Transcoding is essentially a process of decoding and re-encoding.
  • the cloud transcoding service sets a fixed number of processing for each transcoding server.
  • Each transcoding server processes each transcoding task according to a fixed processing amount, and stops the transcoding task when a fixed number of processing is reached. Process it.
  • the cloud transcoding service will face a huge number of video transcoding requests.
  • the method of setting a fixed number of processing for each transcoding server for transcoding is relatively low in resource utilization, and when there are a large number of videos that need to be transcoded, the transcoding efficiency is seriously reduced.
  • the resource utilization rate of the current transcoding method is relatively low, and when there are a large number of videos that need to be transcoded, the transcoding efficiency is seriously reduced.
  • the embodiments of the present disclosure provide a method and a system for allocating video conversion resources, which are used to solve the problem that the existing resource transcoding method has a relatively low resource utilization rate, and when there are a large number of videos that need to be transcoded, the transcoding efficiency is seriously reduced. problem.
  • the transcoding resource value corresponding to the transcoding task is a resource amount of the transcoding server that needs to be consumed when processing the video corresponding to the transcoding task;
  • the transcoding resource is allocated to the transcoding task from the currently available transcoding resources.
  • a system for allocating video conversion resources provided by an embodiment of the present disclosure, the system includes:
  • a generating unit configured to generate a transcoding task according to the received video conversion request
  • a determining unit configured to determine a transcoding resource value corresponding to the transcoding task, where the transcoding resource value corresponding to the transcoding task is a resource amount of the transcoding server that needs to be consumed when processing the video corresponding to the transcoding task;
  • a determining unit configured to determine, according to the transcoding resource value corresponding to the transcoding task and the content of the transcoding resource, whether the transcoding resource can be allocated to the transcoding task;
  • an allocating unit configured to allocate a transcoding resource to the transcoding task from the currently assignable transcoding resource after the determining unit determines that the transcoding resource can be allocated to the transcoding task.
  • the embodiment of the present disclosure determines the resource value that needs to be consumed when converting the video corresponding to the transcoding task; and according to the transcoding resource value and the transcoding resource occupancy situation of the transcoding task, determining that the transcoding task can be assigned a transcoding After the resource is allocated, the transcoding resource is allocated to the transcoding task from the currently available transcoding resources, and the method of transcoding is set in the prior art to change the number of processing, thereby improving resource utilization. Improved transcoding efficiency when transcoding video is required.
  • FIG. 1 is a schematic flowchart of a method for allocating video conversion resources according to an embodiment of the present disclosure
  • FIG. 2 is a schematic diagram of a transcoding resource pool according to an embodiment of the present disclosure
  • FIG. 3 is a schematic diagram of a resource request queue according to an embodiment of the present disclosure.
  • FIG. 4 is a schematic diagram of an idle resource according to an embodiment of the present disclosure.
  • FIG. 5 is a schematic structural diagram of allocating video conversion resources according to an embodiment of the present disclosure.
  • FIG. 6 is a schematic structural diagram of a system for allocating video conversion resources according to an embodiment of the present disclosure
  • FIG. 7 is a schematic diagram of an application flow of an embodiment of a method for allocating video conversion resources according to the present disclosure.
  • the embodiment of the present disclosure determines the resource value that needs to be consumed when converting the video corresponding to the transcoding task; and according to the transcoding resource value and the transcoding resource occupancy situation of the transcoding task, determining that the transcoding task can be assigned a transcoding After the resource is allocated, the transcoding resource is allocated to the transcoding task from the currently available transcoding resources, and the method of transcoding is set in the prior art to change the number of processing, thereby improving resource utilization. Improved transcoding efficiency when transcoding video is required.
  • a method for allocating a video conversion resource includes:
  • Step 101 Generate a transcoding task according to the received video conversion request.
  • Step 102 Determine a transcoding resource value corresponding to the transcoding task, where the transcoding resource value corresponding to the transcoding task is a resource amount of the transcoding server that needs to be consumed when processing the video corresponding to the transcoding task;
  • Step 103 Determine, according to the transcoding resource value and the content of the transcoding resource corresponding to the transcoding task, whether the transcoding resource can be allocated to the transcoding task;
  • Step 104 After determining that the transcoding resource can be allocated for the transcoding task, allocate the transcoding resource to the transcoding task from the currently available transcoding resources.
  • Embodiments of the present disclosure may send a video conversion request if there is a need to convert video.
  • the video conversion request can be sent through the service end.
  • the service end of the embodiment of the present disclosure may be a service end applied to the mobile terminal; or may be an application end applied to the computer; or may be a service end applied to other devices; or a remote server.
  • an optional way is to place the video conversion request in the task queue after receiving the video conversion request, and then sequentially follow the tasks in the order of the task queue.
  • the tasks in the queue are processed.
  • the video conversion request can be placed in the task queue according to the time of the received video conversion request.
  • the video conversion request can also be made according to the priority of the video conversion request. Placed in the task queue.
  • the newly received video conversion request can be placed in the task queue after the new video conversion request is received.
  • the high priority video conversion request can be placed in front of the lower priority video conversion request.
  • the priority of the video conversion request may be set according to requirements, for example, may be determined according to a video format that the video conversion request needs to be converted; or may be determined by a user that sends a video conversion request.
  • an optional way is that the video format to be converted has a low priority and a high priority.
  • an optional way is that the video conversion request sent by the advanced user has a high priority.
  • the video conversion request is generated to generate a transcoding task.
  • a transcoding task is generated according to the requirement conversion definition in the video request. For example, three different transcoding tasks need to be transferred out in the video conversion request, and three different transcoding tasks are generated. These transcoding tasks include information such as transcoding parameters, logo requirements, and source addresses, and three transcoding tasks are stored in the task queue.
  • the transcoding resource value corresponding to the transcoding task is the resource value that needs to be consumed when converting the video corresponding to the transcoding task.
  • Embodiments of the present disclosure introduce a transcoding resource consumption estimation system.
  • Transcoding resources of embodiments of the present disclosure The consumption estimation system includes the value of the transcoding resource corresponding to the transcoding task and the occupancy of the transcoding resource (the subsequent introduction of the transcoding resource is introduced).
  • transcoding resource value corresponding to the transcoding task different transcoding tasks have different output resolutions due to the size and format of the source, and the consumption of transcoding resources is very different.
  • the embodiment of the present disclosure uses a transcoding server with a resource unit of 100 as a carrier to perform data measurement on resource consumption of different transcoding tasks, and obtains a theoretical value of resource units consumed by transcoding and outputting various resolution videos.
  • the resource unit is only an example, and other data may be used as a resource unit as needed.
  • An optional method for determining a transcoding resource value corresponding to the transcoding task is: determining a transcoding resource value corresponding to the transcoding task according to a correspondence between a video format and a transcoding resource value.
  • the correspondence between the video format and the transcoding resource value can be set according to experience, requirements, and the like.
  • An example of the correspondence between video format and transcoding resource values is given below, as shown in the following table:
  • the estimates in this table are theoretical estimates without affecting the efficiency and throughput of transcoding.
  • the theoretical valuation can be continuously learned based on the actual data generated continuously. The correction can make this resource consumption estimate closer to the correct valuation interval.
  • the embodiment of the present disclosure collects and processes the full amount of production data according to the method of big data collection, and after obtaining the above data, performs data calculation according to the situation of each resolution distribution in the actual production data. Finally, the actual resource consumption value of each file clarity transcoding task is obtained.
  • the transcoding server that performs the transcoding task is sampled, and the video format speed ratio of the resource information of the transcoding server and the resource being transcoded is obtained, where the video format speed ratio indicates the time of converting the video format.
  • the transcoded resource value of the video format satisfies the following formula:
  • R n is a transcoding resource value of video format n
  • a n is a video format speed ratio of video format n
  • C n is a parallel task number of transcoding server Z at the time of sampling
  • Y z M z *P z
  • Y z is the resource information of the transcoding server Z
  • M z is the resource score of the transcoding server Z
  • P z is the resource occupancy rate of the transcoding server Z at the time of sampling.
  • the video format speed ratio can be calculated according to the video format speed of a large number of tasks than the weighted average algorithm, taking a stable value for a long time.
  • the conversion task needs to convert the resource A into the mp4_640 format, determine the time T1 taken to convert the resource A into the mp4_640 format, and determine the duration T2 of the conversion part (ratio) If it is necessary to convert the content of the resource A from the 60th minute to the 120th minute, T1 is the time consumed for converting the content from the 60th minute to the 120th minute; T2 is the duration of the playback required portion, that is, the 60th minute to the 120th minute. Duration, here is 60 minutes), T2/T1 will get the video format speed ratio of mp4_640 format, and the speed ratio of multiple mp4_640 format video formats will be weighted and averaged, and the final video format speed ratio of mp4_640 format will be obtained.
  • the weighted average ratio of the final video format speed ratio before the continuous addition is obtained, and a stable value is obtained for a long time.
  • the resource score of the transcoding server Z is a reference score, which is obtained by performing regular performance evaluation on the machine.
  • the cross-task type test operation can be used to form a multi-group to solve different R values:
  • N sets of sampled data are calculated to obtain N sets of R1, N sets of R2, and N sets of R3.
  • the average value in a certain time is obtained by weighted averaging, and the average value per unit time is calculated according to the plurality of average data, thereby correcting the transcoding resource value corresponding to mp4_640.
  • R2 and R3 are similar to R1 and will not be described again.
  • the theoretical value of the above table can be corrected according to the actual resource consumption value in units of monthly (or quarterly or annual) data, and the data is continuously corrected by the large amount of data sampling and weighted average calculation continuously generated in the actual production process.
  • the theoretical estimate is such that the theoretical value is infinitely close to the actual consumption value.
  • the embodiment of the present disclosure is not limited to the manner of determining the transcoding resource value corresponding to the transcoding task, and the other manners for determining the transcoding resource value corresponding to the transcoding task are applicable. Embodiments of the disclosure.
  • the embodiment of the present disclosure performs transcoding through a transcoding server. Since the number of transcoding servers is relatively large and the distribution is relatively wide, the embodiment of the present disclosure divides the transcoding server into multiple transcoding resource pools, which facilitates management and searching of transcoding resources. .
  • the embodiments of the present disclosure may divide physical nodes into different transcoding resource pools according to different physical area nodes, operators, and user independent resource requirements.
  • Each transcoding resource pool includes at least one physical node, and each physical node includes at least one transcoding server.
  • the transcoding task Since in the implementation, it is possible to generate a large number of transcoding tasks in a period of time, the transcoding task needs to be placed in the resource application queue. And process the transcoding task in the resource request queue in turn.
  • the embodiment of the present disclosure corresponds to one resource request queue for each transcoding resource pool. Specifically, after the transcoding task is generated according to the received video conversion request, the transcoding resource pool corresponding to the transcoding task is determined, where the transcoding resource pool is composed of multiple transcoding servers;
  • the embodiment of the present disclosure may further set a priority for each transcoding task, determine a priority corresponding to the transcoding task, and place the transcoding task according to the priority corresponding to the transcoding task.
  • the resource request queue of the transcoding resource pool corresponding to the transcoding task may be set.
  • a high priority transcoding task can be placed in front of a transcoding task with a lower priority.
  • the priority corresponding to each transcoding task may be determined according to the clarity of the video that needs to be transcoded, and the priority corresponding to the transcoding task is high, for example, the priority of the transcoding task with high definition is high;
  • the plan is calculated.
  • Determining the priority by the priority adaptation scheme specifically includes: calculating a priority of the source according to the transcoding parameter and the source information, and performing priority ordering on different videos. Based on the priority of the source, priority is given to tasks with different definitions (for example, in order of low to high definition), and the final priority is calculated according to the different transcoding requirements.
  • the transcoding resource in the transcoding resource pool can be allocated for the transcoding task in the resource request queue.
  • the transcoding resource pool has a transcoding server whose idle transcoding resource value is greater than a set threshold
  • the transcoding server has a transcoding resource value in which the value of the transcoding resource is greater than the transcoding resource value corresponding to the target conversion task;
  • the transcoding server has a transcoding resource value in which the sum of the transcoded resource value and the overloaded resource value that can be used is greater than the transcoding resource value corresponding to the target conversion task.
  • the next one may be judged, and the transcoding task and the transcoding may be performed simultaneously.
  • the next transcoding task in the resource application queue is used as the target transcoding task.
  • the idle transcoding resource values are 80, 70, 50, 20, and 2, respectively.
  • condition 1 if the threshold is set to 50, the idle resources of the two transcoding servers in FIG. 4 are greater than 50, so resources can be allocated for the first transcoding task of the resource request queue in FIG. 3, and the resource is idle.
  • the transcoding server of the idle transcoding resource value 80 becomes 75.
  • the next transcoding task is continuously determined.
  • the idle resources of the transcoding servers 1, 2, 3, and 4 in all the transcoding servers in FIG. 4 are greater than 5, and the transcoding resource value of the first transcoding task is 5, which may be in FIG.
  • the first transcoding task of the resource request queue allocates resources, which are any one of the transcoding servers 1, 2, 3, and 4 in FIG.
  • the transcoding resource value of the second transcoding task is 10, resources can be allocated for the second transcoding task.
  • each transcoding server can use an overload resource value of 3, which can only allocate resources for the third transcoding task (ie, consume A transcoding task with a resource value of 3).
  • the resource corresponding to the target transcoding task is transcoded; if the allocation result is that the transcoding resource cannot be allocated to the target transcoding task, The target transcoding task is placed in the resource application failure queue, and the resources are re-applied for each transcoding task according to the order of the transcoding tasks in the resource application failure queue.
  • the transcoding task is deleted.
  • the transcoding resource pool of the transcoding task corresponding to the transcoding execution instruction and the required transcoding resource are determined; and the corresponding transcoding server is controlled to perform transcoding according to the transcoding information corresponding to the transcoding task.
  • Transcoding information includes but is not limited to some or all of the following information:
  • the video that needs to be transcoded the format that needs to be transcoded, and the resources needed for transcoding.
  • a container is created in the corresponding transcoding server according to the resource required for transcoding; the corresponding app is executed by the transcoding server to transcode the video that needs to be transcoded.
  • the transcoding server After the transcoding is completed or cancelled, the transcoding server will destroy the app and container used by the transcoding and release the corresponding transcoding resources.
  • the transcoding server can report the heartbeat data during the transcoding process
  • determining a situation in which the target transcoding task is performed is performed according to the heartbeat data.
  • heartbeat data can also be displayed to the user through the service end.
  • the heartbeat data of the embodiment of the present disclosure includes information such as a transcoding progress, a transcoding estimated duration, and the like.
  • the embodiment of the present disclosure further provides a transcoding progress query interface.
  • the user can query the progress of the transcoding through the transcoding progress query interface.
  • a lifecycle can also be configured for each video conversion request.
  • the life cycle of the transcoding task can be updated.
  • the life cycle of the video conversion request in the embodiment of the present disclosure may be a status identifier of a fixed status, such as:
  • the method of the embodiment of the present disclosure includes a total of four parts:
  • the first part the business side, similar to the client, the user can initiate a video conversion request through the business side.
  • the second part transcoding scheduling.
  • Transcoding scheduling consists of two major parts:
  • Task lifecycle management including task status management, sending transcoding instructions, and receiving transcoding start and stop information.
  • Adaptation including transcoding resource pool adaptation, priority adaptation, and resource usage adaptation
  • Resource management including the submission of resource applications and resource allocation results.
  • the third part resource management.
  • Resource management consists of two major parts:
  • Unit interaction logic specifically including receiving instruction, receiving heartbeat data, task status change report, and transcoding progress query interface
  • Transcoding instructions are executed, including the creation and use of containers.
  • Resource allocation and management including processing of resource application requests, processing of application results, and resource allocation;
  • monitoring specifically including transcoding server status monitoring and container status monitoring.
  • the fourth part the transcoding resource pool.
  • a system for allocating video conversion resources includes: a generating unit 300, a determining unit 301, a determining unit 302, and an allocating unit 303.
  • the generating unit 300, the determining unit 301, the determining unit 302, and the allocating unit 303 in the embodiment of the present disclosure may implement related functional units through a hardware processor.
  • the units in the system for allocating video conversion resources in the embodiments of the present disclosure may be distributed in one entity or may be distributed in multiple entities.
  • the generating unit 300 is configured to generate a transcoding task according to the received video conversion request.
  • the determining unit 301 is configured to determine a transcoding resource value corresponding to the transcoding task, where the transcoding resource value corresponding to the transcoding task is a resource amount of the transcoding server that needs to be consumed when processing the video corresponding to the transcoding task;
  • the determining unit 302 is configured to determine, according to the transcoding resource value corresponding to the transcoding task and the content of the transcoding resource, whether the transcoding resource can be allocated to the transcoding task;
  • the allocating unit 303 is configured to allocate a transcoding resource to the transcoding task from the currently assignable transcoding resources after the determining unit determines that the transcoding resource can be allocated for the transcoding task.
  • a video conversion request may be sent through the service end.
  • the video conversion request can be sent through the service end.
  • an optional manner is that the generating unit 300 places the video conversion request in the task queue after receiving the video conversion request, and then according to the task queue. The order in which the tasks in the task queue are processed in turn.
  • the generating unit 300 may place a video conversion request in the task queue, such as The video conversion request is placed in the task queue according to the time of the received video conversion request; the video conversion request may also be placed in the task queue according to the priority of the video conversion request.
  • the newly received video conversion request can be placed in the task queue after the new video conversion request is received.
  • the high priority video conversion request can be placed in front of the lower priority video conversion request.
  • the priority of the video conversion request may be set according to requirements, for example, may be determined according to a video format that the video conversion request needs to be converted; or may be determined by a user that sends a video conversion request.
  • Embodiments of the present disclosure introduce a transcoding resource consumption estimation system.
  • the transcoding resource consumption estimation system of the embodiment of the present disclosure includes the transcoding resource value corresponding to the transcoding task and the occupation of the transcoding resource (the subsequent introduction of the transcoding resource occupancy).
  • transcoding resource value corresponding to the transcoding task different transcoding tasks have different output resolutions due to the size and format of the source, and the consumption of transcoding resources is very different.
  • the embodiment of the present disclosure uses a transcoding server with a resource unit of 100 as a carrier to perform data measurement on resource consumption of different transcoding tasks, and obtains a theoretical value of resource units consumed by transcoding and outputting various resolution videos.
  • the resource unit is only an example, and other data may be used as a resource unit as needed.
  • An optional method for determining the value of the transcoding resource corresponding to the transcoding task is: the determining unit 301 determines the transcoding resource value corresponding to the transcoding task according to the correspondence between the video format and the transcoding resource value.
  • the correspondence between the video format and the transcoding resource value can be set according to experience, requirements, and the like.
  • the embodiment of the present disclosure collects and processes the full amount of production data according to the method of big data collection, and after obtaining the above data, performs data calculation according to the situation of each resolution distribution in the actual production data. Finally, the actual resource consumption value of each file clarity transcoding task is obtained.
  • the determining unit 301 is specifically configured to:
  • the transcoded resource value of the video format satisfies the following formula:
  • R n is a transcoding resource value of video format n
  • a n is a video format speed ratio of video format n
  • C n is a parallel task number of transcoding server Z at the time of sampling
  • Y z M z *P z
  • Y z is the resource information of the transcoding server Z
  • M z is the resource score of the transcoding server Z
  • P z is the resource occupancy rate of the transcoding server Z at the time of sampling.
  • the video format speed ratio can be calculated according to the video format speed of a large number of tasks than the weighted average algorithm, taking a stable value for a long time.
  • the conversion task needs to convert the resource A into the mp4_640 format, determine the time T1 taken to convert the resource A into the mp4_640 format, and determine the duration T2 of the conversion part to play (for example, the content of the 60th minute to the 120th minute of the resource A needs to be converted)
  • T1 is the time consumed to convert the content from the 60th minute to the 120th minute;
  • T2 is the length of time during which the playback needs to be converted, that is, the length of the 60th minute to the 120th minute, here is 60 minutes), and T2/T1 is obtained in the mp4_640 format.
  • the speed ratio of the video format is a weighted average of the video formats of multiple mp4_640 formats, and the final video format speed ratio of the mp4_640 format is obtained.
  • the weighted average ratio of the final video format speed ratio before the continuous addition is obtained, and a stable value is obtained for a long time.
  • the resource score of the transcoding server Z is a reference score, which is obtained by performing regular performance evaluation on the machine.
  • the theoretical value of the above table can be corrected according to the actual resource consumption value in units of monthly (or quarterly or annual) data, and the data is continuously corrected by the large amount of data sampling and weighted average calculation continuously generated in the actual production process.
  • the theoretical estimate is such that the theoretical value is infinitely close to the actual consumption value.
  • the embodiment of the present disclosure is not limited to the manner of determining the value of the transcoding resource corresponding to the transcoding task, and other manners for determining the value of the transcoding resource corresponding to the transcoding task are applicable to the embodiments of the present disclosure.
  • the embodiment of the present disclosure performs transcoding by the transcoding server. Since the number of transcoding servers is relatively large and the distribution is relatively wide, the embodiment of the present disclosure divides the transcoding server into multiple transcoding resource pools.
  • the embodiments of the present disclosure may divide physical nodes into different transcoding resource pools according to different physical area nodes, operators, and user independent resource requirements.
  • Each transcoding resource pool includes at least one physical node, and each physical node includes at least one transcoding server.
  • the determining unit 301 needs to place the transcoding task in the resource request queue.
  • the embodiment of the present disclosure corresponds to one resource request queue for each transcoding resource pool.
  • the determining unit 301 is further configured to:
  • the generating unit After the generating unit generates the transcoding task, determining a transcoding resource pool corresponding to the transcoding task, where the transcoding resource pool is composed of multiple transcoding servers; and according to the transcoding resource corresponding to the transcoding task The pool allocates resources for the transcoding task.
  • the determining unit 301 is further configured to:
  • the generating unit After the generating unit generates the transcoding task, the priority corresponding to the transcoding task is determined, and the transcoding task is added to the resource application queue according to the priority corresponding to the transcoding task.
  • the determining unit 302 is specifically configured to:
  • the transcoding resource pool has a transcoding server whose idle transcoding resource value is greater than a set threshold
  • the transcoding resource pool has a transcoding server whose idle transcoding resource value is greater than the transcoding resource value corresponding to the target conversion task;
  • the transcoding resource pool has a transcoding server whose idle transcoding resource value and the available overloaded resource value are greater than the transcoding resource value corresponding to the target conversion task.
  • the next one may be judged, and the transcoding task and the transcoding may be performed simultaneously.
  • the determining unit 302 uses the next transcoding task in the resource application queue as the target transcoding task.
  • the determining unit 302 is further configured to:
  • the next transcoding task in the resource application queue is used as the target Code task.
  • the allocating unit 303 may perform transcoding processing on the resource corresponding to the target transcoding task; if the allocation result is that the transcoding resource cannot be allocated to the target transcoding task, The allocating unit 303 may place the target transcoding task in the resource application failure queue, and re-apply resources for each transcoding task according to the order of the transcoding tasks in the resource application failure queue.
  • the allocating unit 303 deletes the transcoding task.
  • the allocating unit 303 is specifically configured to:
  • the allocating unit 303 selects one transcoding server from the transcoding servers capable of performing the target transcoding task; and notifies the selected transcoding server of the transcoding information corresponding to the target transcoding task.
  • the allocating unit 303 determines the transcoding resource pool of the transcoding task and the required transcoding resources; and controls the corresponding transcoding service to perform transcoding according to the transcoding information corresponding to the transcoding task.
  • Transcoding information includes but is not limited to some or all of the following information:
  • the video that needs to be transcoded the format that needs to be transcoded, and the resources needed for transcoding.
  • the allocating unit 303 creates a container in the corresponding transcoding server according to the resources required for the transcoding; the corresponding app performs transcoding on the video that needs to be transcoded by the transcoding server.
  • the transcoding server After the transcoding is completed or cancelled, the transcoding server will destroy the app and container used by the transcoding and release the corresponding transcoding resources.
  • a method for video conversion in an embodiment of the present disclosure includes:
  • Step 401 After receiving a video conversion request that the user sends a video conversion request through the service end, generate a transcoding task according to the video conversion request.
  • Step 402 Place the generated transcoding task in a task queue.
  • Step 403 Extract a top-ranking transcoding task from the task queue, and determine a transcoding resource pool, a priority, and a transcoding resource value corresponding to the transcoding task.
  • Step 404 Determine, according to the determined transcoding resource pool, a transcoding resource pool corresponding to the transcoding task, and place the transcoding task in the resource application queue corresponding to the transcoding resource pool according to the determined priority.
  • Step 405 Request a queue for the resource corresponding to a transcoding resource pool, extract the first transcoding task from the resource application queue, and determine whether the retransmission resource value and the transcoding resource occupancy status of the transcoding task are Transcoding resources are allocated for the transcoding task, and the judgment result is returned to the transcoding scheduling center.
  • Step 406 If it is determined that the transcoding resource can be allocated to the transcoding task according to the received judgment result, step 407 is performed; if it is determined that the transcoding resource cannot be allocated to the transcoding task, step 408 is performed.
  • Step 407 Determine a transcoding server according to the transcoding information of the corresponding transcoding task, and establish a container in the transcoding server, so that the transcoding server executes the corresponding app to perform transcoding work.
  • Step 408 Put the transcoding task with the resource allocation failure into the failure queue, and perform asynchronous application processing.
  • a scheduled task of asynchronous scanning can be enabled, and task crawling of the failed queue is performed periodically (for example, 10 failed tasks are captured every five seconds), and the failed task is re-executed. Resource request retry operation.
  • the embodiment of the present disclosure determines the resource value that needs to be consumed when converting the video corresponding to the transcoding task; and according to the transcoding resource value and the retrieving resource occupation situation of the transcoding task, After the transcoding task allocates the transcoding resource, the transcoding resource is allocated to the transcoding task from the currently available transcoding resource, and the method of transcoding the fixed processing amount in the prior art is changed, thereby improving the method. Resource utilization improves transcoding efficiency when there are a large number of videos that need to be transcoded.
  • the foregoing program may be stored in a computer readable storage medium, and the program is executed when executed.
  • the foregoing steps include the steps of the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.

Landscapes

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

Abstract

本公开实施例提供一种分配视频转换资源的方法及系统,用以解决现有的进行转码的方式资源利用率比较低,在有大量需要转码的视频时,会严重降低转码效率的问题。本公开实施例确定转换转码任务对应的视频时需要消耗的资源值;根据所述转码任务对应的转码资源值和转码资源占用情况,在确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源,改变了现有技术中设置固定的处理数量进行转码的方式,从而提高了资源利用率,在有大量需要转码的视频时,提高了转码效率。

Description

一种分配视频转换资源的方法及系统
本公开要求在2015年7月24日提交中国专利局、申请号为201510440991.X、申请名称为“一种分配视频转换资源的方法及系统”的中国专利申请的优先权,其全部内容通过引用结合在本公开中。
技术领域
本公开实施例涉及视频技术领域,尤其涉及一种分配视频转换资源的方法及系统。
背景技术
云服务是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云服务指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。
在视频生产过程中,视频转码是最重要的环节。视频转码(Video Transcoding)是指将已经压缩编码的视频码流转换成另一个视频码流,以适应不同的网络带宽、不同的终端处理能力和不同的用户需求。转码本质上是一个先解码,再编码的过程。
在云计算高速发展的背景下,云转码服务已经越来越完善。目前云转码服务是给每一台转码服务器设置固定的处理数量,每一台转码服务器根据固定的处理数量处理每一个转码任务,当达到固定的处理数量后,停止对转码任务进行处理。
随着使用云计算的用户不断增加,云转码服务将要面对的是海量的视频转码请求。目前采用给每一个转码服务器设置固定的处理数量进行转码的方式资源利用率比较低,在有大量需要转码的视频时,会严重降低转码效率。
综上所述,目前进行转码的方式资源利用率比较低,在有大量需要转码的视频时,会严重降低转码效率。
发明内容
本公开实施例提供一种分配视频转换资源的方法及系统,用以解决现有的进行转码的方式资源利用率比较低,在有大量需要转码的视频时,会严重降低转码效率的问题。
本公开实施例提供的一种分配视频转换资源的方法,包括:
根据收到的视频转换请求,生成转码任务;
确定转码任务对应的转码资源值,其中转码任务对应的转码资源值为处理所述转码任务对应的视频时需要消耗的转码服务器的资源量;
根据所述转码任务对应的转码资源值和转码资源占用情况,判断是否能够为所述转码任务分配转码资源;
在确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源。
本公开实施例提供的一种分配视频转换资源的系统,该系统包括:
生成单元,用于根据收到的视频转换请求,生成转码任务;
确定单元,用于确定转码任务对应的转码资源值,其中转码任务对应的转码资源值为处理所述转码任务对应的视频时需要消耗的转码服务器的资源量;
判断单元,用于根据所述转码任务对应的转码资源值和转码资源占用情况,判断是否能够为所述转码任务分配转码资源;
分配单元,用于在所述判断单元确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源。
本公开实施例确定转换转码任务对应的视频时需要消耗的资源值;根据所述转码任务对应的转码资源值和转码资源占用情况,在确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源,改变了现有技术中设置固定的处理数量进行转码的方式,从而提高了资源利用率,在有大量需要转码的视频时,提高了转码效率。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下 面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例分配视频转换资源的方法流程示意图;
图2为本公开实施例转码资源池的示意图;
图3为本公开实施例资源申请队列的示意图;
图4为本公开实施例空闲资源的示意图;
图5为本公开实施例分配视频转换资源的结构示意图;
图6为本公开实施例分配视频转换资源的系统结构示意图;
图7为本公开分配视频转换资源的方法一个实施例应用流程示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
本公开实施例确定转换转码任务对应的视频时需要消耗的资源值;根据所述转码任务对应的转码资源值和转码资源占用情况,在确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源,改变了现有技术中设置固定的处理数量进行转码的方式,从而提高了资源利用率,在有大量需要转码的视频时,提高了转码效率。
下面结合说明书附图对本公开实施例作进一步详细描述。
如图1所示,本公开实施例分配视频转换资源的方法包括:
步骤101、根据收到的视频转换请求,生成转码任务;
步骤102、确定转码任务对应的转码资源值,其中转码任务对应的转码资源值为处理所述转码任务对应的视频时需要消耗的转码服务器的资源量;
步骤103、根据所述转码任务对应的转码资源值和转码资源占用情况,判断是否能够为所述转码任务分配转码资源;
步骤104、在确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源。
本公开实施例如果有转换视频的需求,可以发送视频转换请求。
比如用户需要进行视频转换,可以通过业务端发送视频转换请求。
本公开实施例的业务端可以是应用在移动终端中的业务端;也可以是应用在电脑中的应用端;也可以是应用在其他设备中的业务端;或者是远程服务器。
由于有可能在一段时间内收到大量的视频转换请求,一种可选的方式是在收到视频转换请求后,将视频转换请求置于任务队列中,然后按照任务队列中顺序,依次对任务队列中的任务进行处理。
将视频转换请求置于任务队列中的方式有很多,比如可以按照收到的视频转换请求的时间,将视频转换请求置于任务队列中;还可以按照视频转换请求的优先级,将视频转换请求置于任务队列中。
如果按照收到的视频转换请求的时间,将视频转换请求置于任务队列中,可以在新收到一个视频转换请求后,将新收到的视频转换请求置于任务队列中最后。
如果按照视频转换请求的优先级,将视频转换请求置于任务队列中,可以将优先级高的视频转换请求置于优先级低的视频转换请求前面。
可选的,视频转换请求的优先级可以根据需求进行设定,比如可以根据视频转换请求需要转换的视频格式确定;还可以根据发送视频转换请求的用户确定。
如果根据视频转换请求需要转换的视频格式确定,一种可选的方式是需要转换的视频格式清晰度低的优先级高。
如果根据发送视频转换请求的用户确定,一种可选的方式是高级用户发送的视频转换请求的优先级高。
在对视频转换请求进行处理时,将视频转换请求,生成转码任务。
可选的,根据视频请求中的需求转换清晰度生成转码任务(task),例如视频转换请求中需要转出三种不同清晰度,会生成三条不同的转码任务。这些转码任务中包含了转码参数、logo需求、片源地址等信息,并且三条转码任务会存入任务队列中。
生成转码任务后,需要确定转码任务对应的转码资源值,其中转码任务对应的转码资源值为转换转码任务对应的视频时需要消耗的资源值。
本公开实施例引入转码资源消耗估值体系。本公开实施例的转码资源 消耗估值体系包括转码任务对应的转码资源值以及转码资源占用情况(转码资源占用情况后续进行介绍)。
对于转码任务对应的转码资源值,不同的转码任务由于片源的大小和格式,需求的输出清晰度不同,对转码资源的消耗有着很大的差异。
本公开实施例以资源单位为100的转码服务器为载体,对不同转码任务的资源消耗进行数据测算,得出转码输出各档清晰度视频所需要消耗资源单位的理论值。
其中,资源单位为100只是举例说明,根据需要也可以采用其他数据作为资源单位。
一种可选的确定转码任务对应的转码资源值的方式是:根据视频格式和转码资源值的对应关系,确定所述转码任务对应的转码资源值。
视频格式和转码资源值的对应关系可以根据经验、需求等进行设定。下面给出一种视频格式和转码资源值的对应关系实例,如下表所示:
Figure PCTCN2016082909-appb-000001
Figure PCTCN2016082909-appb-000002
此表中的估值是在不影响转码效率和吞吐量条件下的理论估值,在实际的转码生产过程中,还可以根据不断产生的实际数据对此理论估值进行不断的学习和修正,能够使得这个资源消耗估值越来越接近正确的估值区间。
本公开实施例在日常的转码生产的过程中,根据大数据采集的方式对全量的生产数据进行收集和处理,取到上述数据后,根据实际生产数据中各清晰度分布的情况进行数据计算,最终得出各档清晰度转码任务的实际资源消耗值。
具体的,对执行转码任务的转码服务器进行采样,得到所述转码服务器的资源信息和正在转码的资源的视频格式速度比,其中所述视频格式速度比表示转换该视频格式的时间和对应资源的时长的比值;
根据多次采样得到的所述转码服务器的资源信息和正在转码的资源的视频格式速度比,确定不同视频格式的转码资源值;
将同一个视频格式的转码资源值取平均,得到同一个视频格式的平均转码资源值;
根据所述同一个视频格式的平均转码资源值,对所述对应关系中视频格式对应的转码资源值进行更新。
可选的,视频格式的转码资源值满足下列公式:
A1×C1×R1+A2×C2×R2+………An×Cn×Rn=Yz
其中,Rn为视频格式n的转码资源值;An为视频格式n的视频格式速度比;Cn为采样时转码服务器Z的并行任务数;Yz=Mz*Pz,Yz为转码服务器Z的资源信息,Mz为转码服务器Z的资源得分,Pz为采样时转码服务器Z的资源占用率。
在实施中,视频格式速度比可以根据大量任务的视频格式速度比加权平均算法计算而得,取较长时间的稳定值。
比如转换任务需要将资源A转换成mp4_640格式,确定将资源A转换成mp4_640格式花费的时间T1,以及确定转换部分播放的时长T2(比 如需要转换资源A第60分钟到第120分钟的内容,则T1为转换第60分钟到第120分钟的内容消耗的时间;T2为播放需要转换部分的时长,即第60分钟到第120分钟的时长,这里是60分钟),将T2/T1就得到mp4_640格式的视频格式速度比,将多个mp4_640格式的视频格式速度比加权平均,就得到mp4_640格式最终的视频格式速度比。
在后续得到的新的mp4_640格式的视频格式速度比不断加入之前最终的视频格式速度比中加权平均,就会得到取较长时间的稳定值。
转码服务器Z的资源得分为一参考得分,是对机器进行定期性能评测而得的。
下面列举一个例子:
Figure PCTCN2016082909-appb-000003
由于上述公式中有多个需要确定的R值,所以采用交叉任务类型测试运算的方式可以组成多元组,从而求解不同的R值:
1*R1*8+0.5*R2*10=100*0.99
0.5*R2*10+0.3*R3*5=90*0.87
0.5*R1*4+0.3*R3*8=85*1
......
此处对N组采样数据进行运算得到N组R1、N组R2和N组R3。
然后按照一定时间内采样确定的R1进行加权平均获取一定时间内的均值,并根据多个均值数据运算出单位时间内的均值,从而修正mp4_640对应的转码资源值。
同样的,R2和R3做法与R1类似,不再赘述。
这里可以以月(或季度或年等)数据量为单位,根据实际资源消耗值对上表中的理论估值进行修正,以实际生产过程中不断产生的大量数据采样和加权均值计算来不断修正理论估值,以使理论值无限接近于实际消耗值。
需要说明的是,本公开实施例并不局限于上述确定转码任务对应的转码资源值的方式,其他能够确定转码任务对应的转码资源值的方式都适用 本公开实施例。
本公开实施例通过转码服务器进行转码,由于转码服务器的数量比较多,分布比较广,本公开实施例将转码服务器分成多个转码资源池,便于对转码资源进行管理和查找。
如图2所示,本公开实施例可以根据不同的物理地区节点、运营商和用户独立资源需求等条件将物理节点划分为不同的转码资源池。其中,每个转码资源池包含至少一个物理节点,每个物理节点包含至少一台转码服务器。
由于在实施中,有可能在一段时间内生成大量的转码任务,这时需要将转码任务置于资源申请队列中。并依次处理资源申请队列中的转码任务。
可选的,本公开实施例针对每个转码资源池,会对应一个资源申请队列。具体的,根据收到的视频转换请求,生成转码任务之后,确定所述转码任务对应的转码资源池,其中所述转码资源池由多个转码服务器组成;
将所述转码任务置于所述转码任务对应的转码资源池的资源申请队列中。
可选的,本公开实施例还可以对每个转码任务设置优先级,确定所述转码任务对应的优先级,根据所述转码任务对应的优先级,将所述转码任务置于所述转码任务对应的转码资源池的资源申请队列中。
比如可以将优先级高的转码任务置于优先级低的转码任务前面。
每个转码任务对应的优先级可以根据需要转码的视频的清晰度确定个转码任务对应的优先级,比如清晰度高的转码任务对应的优先级高;也可以通过优先级适配方案进行计算。
通过优先级适配方案确定优先级具体包括:根据转码参数及片源信息计算出片源的优先级,用于对不同视频进行优先次序区分。在片源优先级的基础上,针对不同清晰度的任务进行优先级适配(例如可以根据清晰度由低到高的顺序),并根据转码需求的不同,计算出最终的优先级。
需要说明的是,上述两种确定转码任务对应的优先级的方案只是举例说明,任何能够确定转码任务对应的优先级的方案都适用本公开实施例。
在实施中,根据转码资源池和优先级,将转码任务置于资源申请队列后,判断是否能够为所述资源申请队列中的转码任务分配所述转码资源池中的转码资源。
可选的,根据所述资源申请队列中转码任务的排列顺序,确定当前需要进行判断的目标转码任务;
在下列条件中的一种成立后,确定能够为所述目标转码任务分配转码资源:
条件一、转码资源池中有空闲的转码资源值大于设定阈值的转码服务器;
条件二、转码资源池中有空闲的转码资源值大于目标转换任务对应的转码资源值的转码服务器;
条件三、转码资源池中有空闲的转码资源值和能够使用的超载资源值之和大于目标转换任务对应的转码资源值的转码服务器。
在实施中,可以完成资源申请队列中的一个转码任务后,再判断下一个,也可以判断转码任务和进行转码同时进行。
可选的,若确定无法为目标转码任务分配转码资源,则将所述资源申请队列中的下一个转码任务作为目标转码任务。
下面列举一个详细实例,对上述三种条件进行详细说明。
如图3所示,假设当前转码资源池A对应的资源申请队列中有5个转码任务,分别需要消耗5个资源、10个资源、3个资源、25个资源和13个资源。
如图4所示,假设当前转码资源池A中有5个转码服务器,空闲的转码资源值分别是80、70、50、20和2。
针对条件一,假设设定阈值为50,则图4中有两个转码服务器的空闲资源大于50,所以可以为图3中资源申请队列的第一个转码任务分配资源,该资源为空闲的转码资源值80和70的转码服务器中的一个。
假设该资源为空闲的转码资源值80的转码服务器,由于第一个转码任务的转码资源值为5,则空闲的转码资源值80的转码服务器变为75。
然后按照空闲的转码资源值分别是75、70、50、20和2,继续判断下一个转码任务。
针对条件二,图4中所有的转码服务器中转码服务器1、2、3、4的空闲资源都大于5,由于第一个转码任务的转码资源值为5,则可以为图3中资源申请队列的第一个转码任务分配资源,该资源为图4中所转码服务器1、2、3、4中的任意一个。
由于第二个转码任务的转码资源值为10,所以可以为第二个转码任务分配资源。
针对条件三,假设所有的转码服务器空闲的转码资源值都为99,每个转码服务器能够使用的超载资源值为3,则只能为第三个转码任务的分配资源(即消耗资源值为3的转码任务)。
可选的,如果分配结果为能够为目标转码任务分配转码资源,则对目标转码任务对应的资源进行转码处理;如果分配结果为不能够为目标转码任务分配转码资源,则将目标转码任务置于资源申请失败队列中,并按照资源申请失败队列中转码任务的排列顺序,依次为每个转码任务重新申请资源。
如果一个转码任务失败次数达到设定门限值或者发起转码任务的用户停止转码或者其他需要终止转码任务的情况发生,则删除该转码任务。
对一个转码执行指令进行处理的具体过程为:
从能够执行所述目标转码任务的转码服务器中选择一个转码服务器;将所述目标转码任务对应的转码信息通知选择的所述转码服务器。
在实施中,确定转码执行指令对应的转码任务的转码资源池和需要的转码资源;根据转码任务对应的转码信息,控制对应的转码服务器进行转码。
转码信息包括但不限于下列信息中的部分或全部:
需要转码的视频、需要转码的格式、转码需要的资源。
根据转码需要的资源在对应的转码服务器中创建一个容器(container);由转码服务器执行对应的app对需要转码的视频进行转码。
在转码完成或取消后,转码服务器会销毁转码使用的app和容器,并释放对应的转码资源。
可选的,为了随时监控转码情况,转码服务器在转码过程中可以上报心跳数据;
在接收到心跳数据后,根据所述心跳数据确定执行所述目标转码任务的情况。
进一步的,还可以将心跳数据通过业务端显示给用户。
本公开实施例的心跳数据包括转码进度、转码预计时长等信息。
除了由转码服务器上报,本公开实施例还提供转码进度查询接口,用 户可以通过转码进度查询接口对正在转码的进度查询。
为了对每个视频转换请求进行管理,还可以为每个视频转换请求配置一个生命周期。
根据每个视频转换请求当前所处的状态,更新视频转换请求对应的生命周期,并为需要进行查询的程序、单元等提供接口查询视频转换请求的生命周期。
比如在转码完成或取消后,可以更新转码任务的生命周期。
可选的,本公开实施例视频转换请求的生命周期可以是一个固定status的状态标识,比如:
status=0,表示转码请求接收入库;
status=1,生成任务完成;
status=2,表示请求资源成功;
status=3,表示转码中;
status=10,表示转码完成上报结果;
status=-10,表示转码失败。
需要说明的是,上述生命周期的表述形式以及表述内容只是举例说明,只要能够表示视频转换请求所处的状态的信息都适用本公开实施例。
如图5所示,本公开实施例的方法一共包括四大部分:
第一部分:业务端,类似客户端,用户可以通过业务端发起视频转换请求。
第二部分:转码调度。
转码调度包括两大部分:
一、任务管理:
1、负责队列管理,具体包括队列整体状况管理和转码进度查询接口;
2、任务生命周期管理,具体包括任务状态管理、下发转码指令和接收转码开始和终止信息。
二、资源调度:
1、适配,具体包括转码资源池适配、优先级适配和资源用量适配
2、资源管理,具体包括提交资源申请和资源分配结果处理。
第三部分:资源管理。
资源管理包括两大部分:
一、APP管理:
1、单元交互逻辑,具体包括接收指令、接收心跳数据、任务状态变更汇报和转码进度查询接口;
2、转码指令执行,具体包括创建和使用容器。
二、资源管理:
1、资源分配和管理,具体包括对资源申请请求处理、申请结果处理和资源分配;
2、监控,具体包括转码服务器状态监控和容器状态监控。
第四部分:转码资源池。
如图6所示,本公开实施例分配视频转换资源的系统,包括:生成单元300、确定单元301、判断单元302和分配单元303。
其中,本公开实施例中的生成单元300、确定单元301、判断单元302和分配单元303可以通过硬件处理器(hardware processor)来实现相关功能单元。本公开实施例分配视频转换资源的系统中的各单元可以分布在一个实体中,也可以分布在多个实体中。
生成单元300,用于根据收到的视频转换请求,生成转码任务;
确定单元301,用于确定转码任务对应的转码资源值,其中转码任务对应的转码资源值为处理所述转码任务对应的视频时需要消耗的转码服务器的资源量;
判断单元302,用于根据所述转码任务对应的转码资源值和转码资源占用情况,判断是否能够为所述转码任务分配转码资源;
分配单元303,用于在所述判断单元确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源。
本公开实施例如果有转换视频的需求,可以通过业务端发送视频转换请求。
比如用户需要进行视频转换,可以通过业务端发送视频转换请求。
由于有可能在一段时间内生成单元300收到大量的视频转换请求,一种可选的方式是生成单元300在收到视频转换请求后,将视频转换请求置于任务队列中,然后按照任务队列中顺序,依次对任务队列中的任务进行处理。
生成单元300将视频转换请求置于任务队列中的方式有很多,比如可 以按照收到的视频转换请求的时间,将视频转换请求置于任务队列中;还可以按照视频转换请求的优先级,将视频转换请求置于任务队列中。
如果按照收到的视频转换请求的时间,将视频转换请求置于任务队列中,可以在新收到一个视频转换请求后,将新收到的视频转换请求置于任务队列中最后。
如果按照视频转换请求的优先级,将视频转换请求置于任务队列中,可以将优先级高的视频转换请求置于优先级低的视频转换请求前面。
可选的,视频转换请求的优先级可以根据需求进行设定,比如可以根据视频转换请求需要转换的视频格式确定;还可以根据发送视频转换请求的用户确定。
本公开实施例引入转码资源消耗估值体系。本公开实施例的转码资源消耗估值体系包括转码任务对应的转码资源值以及转码资源占用情况(转码资源占用情况后续进行介绍)。
对于转码任务对应的转码资源值,不同的转码任务由于片源的大小和格式,需求的输出清晰度不同,对转码资源的消耗有着很大的差异。
本公开实施例以资源单位为100的转码服务器为载体,对不同转码任务的资源消耗进行数据测算,得出转码输出各档清晰度视频所需要消耗资源单位的理论值。
其中,资源单位为100只是举例说明,根据需要也可以采用其他数据作为资源单位。
一种可选的确定转码任务对应的转码资源值的方式是:确定单元301根据视频格式和转码资源值的对应关系,确定所述转码任务对应的转码资源值。
视频格式和转码资源值的对应关系可以根据经验、需求等进行设定。
本公开实施例在日常的转码生产的过程中,根据大数据采集的方式对全量的生产数据进行收集和处理,取到上述数据后,根据实际生产数据中各清晰度分布的情况进行数据计算,最终得出各档清晰度转码任务的实际资源消耗值。
确定单元301具体用于:
对执行转码任务的转码服务器进行采样,得到所述转码服务器的资源信息和正在转码的资源的视频格式速度比,其中所述视频格式速度比表示 转换该视频格式的时间和对应资源的时长的比值;根据多次采样得到的所述转码服务器的资源信息和正在转码的资源的视频格式速度比,确定不同视频格式的转码资源值;将同一个视频格式的转码资源值取平均,得到同一个视频格式的平均转码资源值;根据所述同一个视频格式的平均转码资源值,对所述对应关系中视频格式对应的转码资源值进行更新。
可选的,视频格式的转码资源值满足下列公式:
A1×C1×R1+A2×C2×R2+………An×Cn×Rn=Yz
其中,Rn为视频格式n的转码资源值;An为视频格式n的视频格式速度比;Cn为采样时转码服务器Z的并行任务数;Yz=Mz*Pz,Yz为转码服务器Z的资源信息,Mz为转码服务器Z的资源得分,Pz为采样时转码服务器Z的资源占用率。
在实施中,视频格式速度比可以根据大量任务的视频格式速度比加权平均算法计算而得,取较长时间的稳定值。
比如转换任务需要将资源A转换成mp4_640格式,确定将资源A转换成mp4_640格式花费的时间T1,以及确定转换部分播放的时长T2(比如需要转换资源A第60分钟到第120分钟的内容,则T1为转换第60分钟到第120分钟的内容消耗的时间;T2为播放需要转换部分的时长,即第60分钟到第120分钟的时长,这里是60分钟),将T2/T1就得到mp4_640格式的视频格式速度比,将多个mp4_640格式的视频格式速度比加权平均,就得到mp4_640格式最终的视频格式速度比。
在后续得到的新的mp4_640格式的视频格式速度比不断加入之前最终的视频格式速度比中加权平均,就会得到取较长时间的稳定值。
转码服务器Z的资源得分为一参考得分,是对机器进行定期性能评测而得的。
这里可以以月(或季度或年等)数据量为单位,根据实际资源消耗值对上表中的理论估值进行修正,以实际生产过程中不断产生的大量数据采样和加权均值计算来不断修正理论估值,以使理论值无限接近于实际消耗值。
需要说明的是,本公开实施例并不局限于上述确定转码任务对应的转码资源值的方式,其他能够确定转码任务对应的转码资源值的方式都适用本公开实施例。
本公开实施例通过转码服务器进行转码,由于转码服务器的数量比较多,分布比较广,本公开实施例将转码服务器分成多个转码资源池。
如图2所示,本公开实施例可以根据不同的物理地区节点、运营商和用户独立资源需求等条件将物理节点划分为不同的转码资源池。其中,每个转码资源池包含至少一个物理节点,每个物理节点包含至少一台转码服务器。
由于在实施中,有可能在一段时间内生成大量的转码任务,这时确定单元301需要将转码任务置于资源申请队列中。
可选的,本公开实施例针对每个转码资源池,会对应一个资源申请队列。具体的,所述确定单元301还用于:
在所述生成单元生成转码任务之后,确定所述转码任务对应的转码资源池,其中所述转码资源池由多个转码服务器组成;根据所述转码任务对应的转码资源池为所述转码任务分配资源。
可选的,所述确定单元301还用于:
在所述生成单元生成转码任务之后,确定所述转码任务对应的优先级,根据所述转码任务对应的优先级,将所述转码任务加入到资源申请队列中。
可选的,所述判断单元302具体用于:
根据所述资源申请队列中转码任务的排列顺序,确定当前需要进行判断的目标转码任务;
在下列条件中的一种成立后,确定能够为所述目标转码任务分配转码资源:
转码资源池中有空闲的转码资源值大于设定阈值的转码服务器;
转码资源池中有空闲的转码资源值大于目标转换任务对应的转码资源值的转码服务器;
转码资源池中有空闲的转码资源值和能够使用的超载资源值之和大于目标转换任务对应的转码资源值的转码服务器。
在实施中,可以完成资源申请队列中的一个转码任务后,再判断下一个,也可以判断转码任务和进行转码同时进行。
可选的,若确定无法为目标转码任务分配转码资源,则所述判断单元302将所述资源申请队列中的下一个转码任务作为目标转码任务。
可选的,所述判断单元302还用于:
判断是否能够为所述资源申请队列中的转码任务分配转码资源之后,若确定无法为目标转码任务分配转码资源,则将所述资源申请队列中的下一个转码任务作为目标转码任务。
如果分配结果为能够为目标转码任务分配转码资源,则分配单元303可以对目标转码任务对应的资源进行转码处理;如果分配结果为不能够为目标转码任务分配转码资源,则分配单元303可以将目标转码任务置于资源申请失败队列中,并按照资源申请失败队列中转码任务的排列顺序,依次为每个转码任务重新申请资源。
如果一个转码任务失败次数达到设定门限值或者发起转码任务的用户停止转码或者其他需要终止转码任务的情况发生,则分配单元303删除该转码任务。
可选的,分配单元303具体用于:
从能够执行所述目标转码任务的转码服务器中选择一个转码服务器;将所述目标转码任务对应的转码信息通知选择的所述转码服务器,以使所述转码服务器执行所述目标转码任务。
在实施中,分配单元303从能够执行所述目标转码任务的转码服务器中选择一个转码服务器;将所述目标转码任务对应的转码信息通知选择的所述转码服务器。
分配单元303确定转码任务的转码资源池和需要的转码资源;根据转码任务对应的转码信息,控制对应的转码服进行转码。
转码信息包括但不限于下列信息中的部分或全部:
需要转码的视频、需要转码的格式、转码需要的资源。
分配单元303根据转码需要的资源在对应的转码服务器中创建一个容器;由转码服务器执行对应的app对需要转码的视频进行转码。
在转码完成或取消后,转码服务器会销毁转码使用的app和容器,并释放对应的转码资源。
下面列举一个完整的本公开实施例视频转换的例子。
如图7所示,本公开一个实施例视频转换的方法包括:
步骤401、在收到用户通过业务端发送视频转换请求的视频转换请求后,根据视频转换请求生成转码任务。
步骤402、将生成的转码任务置于任务队列中。
步骤403、从任务队列中提取出排在最前面的一个转码任务,并确定转码任务对应的转码资源池、优先级以及转码资源值。
步骤404、根据确定的转码资源池,确定转码任务对应的转码资源池,并根据确定的优先级,将转码任务置于转码资源池对应的资源申请列队中。
步骤405、针对一个转码资源池对应的资源申请列队,从资源申请列队提取出最前面的一个转码任务,并根据转码任务对应的转码资源值和转码资源占用情况,判断是否能够为所述转码任务分配转码资源,并将判断结果返回给转码调度中心。
步骤406、根据收到的判断结果,若确定能够为所述转码任务分配转码资源,则执行步骤407;若确定不能够为所述转码任务分配转码资源,则执行步骤408。
步骤407、根据对应的转码任务的转码信息,确定转码服务器,并在转码服务器中建立容器,以使转码服务器执行对应的app进行转码工作。
步骤408、将资源分配失败的转码任务置于失败队列中,并进行异步申请处理。
在实施中,进行异步申请处理时,可以启用一个异步扫描的定时任务,定时对失败队列进行任务抓取(比如每五秒钟扫描抓取10个失败任务),取到失败的任务就重新进行资源申请重试操作。
从上述内容可以看出:本公开实施例确定转换转码任务对应的视频时需要消耗的资源值;根据所述转码任务对应的转码资源值和转码资源占用情况,在确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源,改变了现有技术中设置固定的处理数量进行转码的方式,从而提高了资源利用率,在有大量需要转码的视频时,提高了转码效率。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通 技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。

Claims (10)

  1. 一种分配视频转换资源的方法,其特征在于,包括:
    根据收到的视频转换请求,生成转码任务;
    确定转码任务对应的转码资源值,其中转码任务对应的转码资源值为处理所述转码任务对应的视频时需要消耗的转码服务器的资源量;
    根据所述转码任务对应的转码资源值和转码资源占用情况,判断是否能够为所述转码任务分配转码资源;
    在确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源。
  2. 根据权利要求1所述的方法,其特征在于,所述确定转码任务对应的转码资源值,包括:
    根据视频格式和转码资源值的对应关系,确定所述转码任务对应的转码资源值。
  3. 根据权利要求2所述的方法,其特征在于,该方法还包括:
    对执行转码任务的转码服务器进行采样,得到所述转码服务器的资源信息和正在转码的资源的视频格式速度比,其中所述视频格式速度比表示转换该视频格式的时间和对应资源的时长的比值;
    根据多次采样得到的所述转码服务器的资源信息和正在转码的资源的视频格式速度比,确定不同视频格式的转码资源值;
    将同一个视频格式的转码资源值取平均,得到同一个视频格式的平均转码资源值;
    根据所述同一个视频格式的平均转码资源值,对所述对应关系中视频格式对应的转码资源值进行更新。
  4. 根据权利要求3所述的方法,其特征在于,视频格式的转码资源值满足下列公式:
    A1×C1×R1+A2×C2×R2+………An×Cn×Rn=Yz
    其中,Rn为视频格式n的转码资源值;An为视频格式n的视频格式速度比;Cn为采样时转码服务器Z的并行任务数;Yz=Mz*Pz,Yz为转码服务器Z的资源信息,Mz为转码服务器Z的资源得分,Pz为采样时转码服务器Z的资源占用率。
  5. 根据权利要求1~4任一所述的方法,其特征在于,所述判断是否 能够为所述转码任务分配转码资源,包括:
    在下列条件中的一种成立后,确定能够为所述转码任务分配转码资源:
    有空闲的转码资源值大于设定阈值的转码服务器;
    有空闲的转码资源值大于所述转码任务对应的转码资源值的转码服务器;
    有空闲的转码资源值和特定资源值之和,大于所述转码任务对应的转码资源值的转码服务器,其中所述特定资源值为在所述转码服务器上正在进行转码,且在设定时长内能够完成转码的转码任务占用的资源值。
  6. 一种分配视频转换资源的系统,其特征在于,该系统包括:
    生成单元,用于根据收到的视频转换请求,生成转码任务;
    确定单元,用于确定转码任务对应的转码资源值,其中转码任务对应的转码资源值为处理所述转码任务对应的视频时需要消耗的转码服务器的资源量;
    判断单元,用于根据所述转码任务对应的转码资源值和转码资源占用情况,判断是否能够为所述转码任务分配转码资源;
    分配单元,用于在所述判断单元确定能够为所述转码任务分配转码资源后,从当前能够分配的转码资源中为所述转码任务分配转码资源。
  7. 根据权利要求6所述的系统,其特征在于,所述确定单元具体用于:
    根据视频格式和转码资源值的对应关系,确定所述转码任务对应的转码资源值。
  8. 根据权利要求6所述的系统,其特征在于,所述确定单元还用于:
    对执行转码任务的转码服务器进行采样,得到所述转码服务器的资源信息和正在转码的资源的视频格式速度比,其中所述视频格式速度比表示转换该视频格式的时间和对应资源的时长的比值;根据多次采样得到的所述转码服务器的资源信息和正在转码的资源的视频格式速度比,确定不同视频格式的转码资源值;将同一个视频格式的转码资源值取平均,得到同一个视频格式的平均转码资源值;根据所述同一个视频格式的平均转码资源值,对所述对应关系中视频格式对应的转码资源值进行更新。
  9. 根据权利要求8所述的系统,其特征在于,视频格式的转码资源值满足下列公式:
    A1×C1×R1+A2×C2×R2+………An×Cn×Rn=Yz
    其中,Rn为视频格式n的转码资源值;An为视频格式n的视频格式速度比;Cn为采样时转码服务器Z的并行任务数;Yz=Mz*Pz,Yz为转码服务器Z的资源信息,Mz为转码服务器Z的资源得分,Pz为采样时转码服务器Z的资源占用率。
  10. 根据权利要求6~9任一所述的系统,其特征在于,所述判断单元还用于:
    在下列条件中的一种成立后,确定能够为所述转码任务分配转码资源:
    有空闲的转码资源值大于设定阈值的转码服务器;
    有空闲的转码资源值大于所述转码任务对应的转码资源值的转码服务器;
    有空闲的转码资源值和特定资源值之和,大于所述转码任务对应的转码资源值的转码服务器,其中所述特定资源值为在所述转码服务器上正在进行转码,且在设定时长内能够完成转码的转码任务占用的资源值。
PCT/CN2016/082909 2015-07-24 2016-05-20 一种分配视频转换资源的方法及系统 WO2017016292A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/219,768 US20170026311A1 (en) 2015-07-24 2016-07-26 Method and system for allocating video transcoding resources

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510440991.X 2015-07-24
CN201510440991.XA CN105992020A (zh) 2015-07-24 2015-07-24 一种分配视频转换资源的方法及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/219,768 Continuation US20170026311A1 (en) 2015-07-24 2016-07-26 Method and system for allocating video transcoding resources

Publications (1)

Publication Number Publication Date
WO2017016292A1 true WO2017016292A1 (zh) 2017-02-02

Family

ID=57039929

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/082909 WO2017016292A1 (zh) 2015-07-24 2016-05-20 一种分配视频转换资源的方法及系统

Country Status (2)

Country Link
CN (1) CN105992020A (zh)
WO (1) WO2017016292A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109936750A (zh) * 2017-12-15 2019-06-25 华平信息技术股份有限公司 通信系统、微控制器及其应用的视频转码方法及系统
CN112911386A (zh) * 2021-01-29 2021-06-04 北京奇艺世纪科技有限公司 素材处理方法、装置、电子设备及可读存储介质
CN114003238A (zh) * 2021-09-30 2022-02-01 苏州浪潮智能科技有限公司 一种基于转码卡的容器部署方法、装置、设备及存储介质
CN114598927A (zh) * 2022-03-03 2022-06-07 京东科技信息技术有限公司 转码资源的调度方法、系统以及调度装置

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106851336B (zh) * 2017-02-07 2020-04-14 上海网达软件股份有限公司 一种动态资源分配的音视频文件转码方法及系统
CN109213593B (zh) * 2017-07-04 2022-05-10 阿里巴巴集团控股有限公司 用于全景视频转码的资源分配方法、装置和设备
CN107231565A (zh) * 2017-07-25 2017-10-03 网宿科技股份有限公司 一种直播任务管理调度方法及其系统
US10097594B1 (en) * 2017-08-31 2018-10-09 T-Mobile Usa, Inc. Resource-managed codec selection
CN107529092A (zh) * 2017-09-30 2017-12-29 北京元心科技有限公司 用户设备、多媒体信息处理的方法及装置
CN108366273A (zh) * 2018-03-16 2018-08-03 中国传媒大学 分布式视频转码系统及分布式视频转码方法
CN108965884B (zh) * 2018-07-13 2020-12-25 网宿科技股份有限公司 一种转码任务的分配方法及调度设备、转码设备
CN108942346A (zh) * 2018-08-31 2018-12-07 湖北龙腾电子科技有限公司 一种具有换刀功能的切割机
CN110879749B (zh) * 2018-09-06 2023-04-07 阿里巴巴集团控股有限公司 一种实时转码任务的调度方法及调度装置
CN109471715B (zh) * 2018-09-17 2021-10-29 咪咕视讯科技有限公司 一种转码任务的调度方法、装置及存储介质
CN111294647B (zh) * 2018-12-10 2022-04-08 中国移动通信集团有限公司 一种视频处理方法、装置及设备、存储介质
CN109788315A (zh) * 2019-01-31 2019-05-21 湖南快乐阳光互动娱乐传媒有限公司 视频转码方法、装置及系统
CN112399252B (zh) * 2019-08-14 2023-03-14 浙江宇视科技有限公司 软硬解码控制方法、装置及电子设备
CN111061560B (zh) * 2019-11-18 2022-12-06 江苏视博云信息技术有限公司 云渲染资源调度方法、装置、电子设备及存储介质
CN111031350B (zh) * 2019-12-24 2022-04-12 北京奇艺世纪科技有限公司 转码资源调度方法、电子设备及计算机可读存储介质
CN111510743B (zh) * 2020-04-21 2022-04-05 广州市百果园信息技术有限公司 转码资源的调度方法、装置、系统、设备和存储介质
CN112422977A (zh) * 2020-09-01 2021-02-26 上海哔哩哔哩科技有限公司 音视频转码任务的分配方法和分配装置
CN114697299B (zh) * 2022-04-21 2024-05-10 湖南快乐阳光互动娱乐传媒有限公司 一种音视频转码优先级确定方法、系统、装置及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116251A1 (en) * 2001-02-20 2002-08-22 Yen-Kuang Chen Method and apparatus for improving media service over multimedia network
CN103458270A (zh) * 2013-09-09 2013-12-18 深圳市融创天下科技股份有限公司 视频转码系统和方法
CN103838779A (zh) * 2012-11-27 2014-06-04 深圳市腾讯计算机系统有限公司 复用空闲计算资源的云转码方法及系统、分布式文件装置
CN104702969A (zh) * 2013-12-09 2015-06-10 杭州海康威视数字技术股份有限公司 进行视音频数据被动转码的方法、系统及转码服务器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104717517B (zh) * 2015-03-31 2018-04-13 北京爱奇艺科技有限公司 一种视频转码任务调度方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116251A1 (en) * 2001-02-20 2002-08-22 Yen-Kuang Chen Method and apparatus for improving media service over multimedia network
CN103838779A (zh) * 2012-11-27 2014-06-04 深圳市腾讯计算机系统有限公司 复用空闲计算资源的云转码方法及系统、分布式文件装置
CN103458270A (zh) * 2013-09-09 2013-12-18 深圳市融创天下科技股份有限公司 视频转码系统和方法
CN104702969A (zh) * 2013-12-09 2015-06-10 杭州海康威视数字技术股份有限公司 进行视音频数据被动转码的方法、系统及转码服务器

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109936750A (zh) * 2017-12-15 2019-06-25 华平信息技术股份有限公司 通信系统、微控制器及其应用的视频转码方法及系统
CN112911386A (zh) * 2021-01-29 2021-06-04 北京奇艺世纪科技有限公司 素材处理方法、装置、电子设备及可读存储介质
CN114003238A (zh) * 2021-09-30 2022-02-01 苏州浪潮智能科技有限公司 一种基于转码卡的容器部署方法、装置、设备及存储介质
CN114003238B (zh) * 2021-09-30 2023-11-03 苏州浪潮智能科技有限公司 一种基于转码卡的容器部署方法、装置、设备及存储介质
CN114598927A (zh) * 2022-03-03 2022-06-07 京东科技信息技术有限公司 转码资源的调度方法、系统以及调度装置

Also Published As

Publication number Publication date
CN105992020A (zh) 2016-10-05

Similar Documents

Publication Publication Date Title
WO2017016292A1 (zh) 一种分配视频转换资源的方法及系统
Wei et al. QoS-aware resource allocation for video transcoding in clouds
CN110769278B (zh) 一种分布式视频转码方法及系统
WO2017166803A1 (zh) 一种资源调度方法及装置
WO2018059222A1 (zh) 一种文件切片上传方法、装置及云存储系统
US20170026311A1 (en) Method and system for allocating video transcoding resources
US11080090B2 (en) Method and system for scalable job processing
WO2018133306A1 (zh) 内容分发网络中的调度方法和设备
CA2841377C (en) Video transcoding services provided by searching for currently transcoded versions of a requested file before performing transcoding
US20170126583A1 (en) Method and electronic device for bandwidth allocation based on online media services
CN110858161A (zh) 资源分配方法、装置、系统、设备和介质
WO2023050901A1 (zh) 一种负载均衡方法、装置、设备、计算机存储介质和程序
CN109788315A (zh) 视频转码方法、装置及系统
WO2014194869A1 (zh) 一种请求处理方法、装置及系统
CN103957237A (zh) 一种弹性云的体系结构
CN108965884B (zh) 一种转码任务的分配方法及调度设备、转码设备
Liu et al. A survey on virtual machine scheduling in cloud computing
WO2020119060A1 (zh) 容器资源调度方法和系统、服务器及计算机可读存储介质
WO2017096842A1 (zh) 内容分发任务的提交方法及系统
CN110839069A (zh) 一种节点数据部署方法、部署节点、系统及介质
CN102662764A (zh) 一种基于smdp的动态云计算资源优化分配方法
CN105049509A (zh) 一种集群调度方法、负载均衡器以及集群系统
Choi et al. pHPA: A proactive autoscaling framework for microservice chain
WO2016202201A1 (zh) 一种资源分配方法、装置和智能电视系统
CN112543354B (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: 16829659

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

Country of ref document: EP

Kind code of ref document: A1