CN106250214B - Media Analysis and processing framework on resource-constrained devices - Google Patents

Media Analysis and processing framework on resource-constrained devices Download PDF

Info

Publication number
CN106250214B
CN106250214B CN201610389494.6A CN201610389494A CN106250214B CN 106250214 B CN106250214 B CN 106250214B CN 201610389494 A CN201610389494 A CN 201610389494A CN 106250214 B CN106250214 B CN 106250214B
Authority
CN
China
Prior art keywords
processing
assets
resource
media
level
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610389494.6A
Other languages
Chinese (zh)
Other versions
CN106250214A (en
Inventor
A·凯纳斯
张科
郑云飞
刘舒洁
翟杰夫
C·Y·昌
周小松
H-J·吴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of CN106250214A publication Critical patent/CN106250214A/en
Application granted granted Critical
Publication of CN106250214B publication Critical patent/CN106250214B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

This disclosure relates to Media Analysis and processing framework on resource-constrained devices.A kind of system of the processing of the media on resource-constrained devices, the system include: the memory that storage represents the data of media asset and relevant descriptor and represents the program instruction of application and medium processing system;It is executed program instructions with processor response from being invoked in the case that program instruction represents medium processing system for application for limiting the multiple services to execute for assets, to determine that the layering of the processing operation executed for assets is dispatched based on processing budget associated with assets;Non-interrupted with removing, otherwise, iteration executes processing operation on the basis of level one by one.

Description

Media Analysis and processing framework on resource-constrained devices
Priority claim
The application benefits from entitled " the Media Analysis and Processing submitted on June 5th, 2015 The US Pat Appl Ser s.n.62/171957's of Framework on a Resource Restricted Device " is excellent It first weighs, the entire disclosure of the U. S. application is incorporated herein by reference.
Technical field
This disclosure relates to the system and method for Media Analysis and processing framework on resource-constrained devices.
Background technique
Media Analysis and processing are framed in and are provided in equipment for calculating by the media asset (asset) of terminal storage The suite of tools of descriptor.Typically, terminal has limited resource, this will lead to descriptor computation due to resource constraint and by Delay or stops.
Therefore, it is necessary to for the processing budget identifier tune according to indicating gage evaluation time, expected complexity and other factors Spend the system and method for calculation method.
Detailed description of the invention
Fig. 1 shows the block diagram of terminal according to one aspect of the disclosure.
Fig. 2 shows the interactions between Media Analysis and processing framework and client computer according to one aspect of the disclosure.
The system that Fig. 3 shows embodiment according to the present invention, the system include the multiple terminals being in communication with each other by network.
Specific embodiment
Embodiment of the disclosure provides the system and method for the processing of the media on resource-constrained devices.In response to The calling for carrying out the application of self-identifying media asset to be processed, the identifier and related to calling to be executed for media asset The processing budget of connection can produce the layering scheduling of processing operation.On the basis of batch one by one, it can be dispatched based on the layering of generation Execute the processing operation of a batch.In addition, it may be determined that the available resources of the processing operation of next batch.If not enough Resource can be used for the processing operation of next batch, then layering scheduling can be interrupted.But if there is can be used for next batch Enough resources of processing operation, then following iteration can be executed based on layering scheduling.
Fig. 1 is the block diagram of terminal 100 according to an embodiment of the present disclosure.Terminal 100 may include processor 110, memory System 120 and input/output 130.Processor 110 is executable to be represented operating system 112 and one or more applies 114 Program instruction.Program instruction can be stored by storage system 120 and be read into processor 110 for executing.Processor 110 can be such as central processing unit, microprocessor, programmable logic array (PLA), programmable logic array (PAL), logical With array logic (GAL), Complex Programmable Logic Devices (CPLD), specific integrated circuit (ASIC), field programmable gate array (FPGA) or execute program instructions and be conducive to data transmission any other programmable logic device (PLD).
Storage system 120 represents the hierarchical system of storage equipment, which may include residing on processor 110 Random access memory, short term storage device and long term archival memory.In the case that can easily, storage system 120 may include electricity, magnetic and/or optical storage apparatus.Storage system 120 may include Database Systems (not shown).With originally beg for It is that storage system 120 may include media asset 121~125 by related, these media assets may include digital picture, view Frequency and/or graphic file (in the case where situation may be facilitated, there is adjoint audio).In addition to representing media asset 121~125 and phase Other than the data of the blob descriptor of pass, storage system 120, which can store, represents operating system 112, using 114 and media point The program instruction of analysis and processing framework 116.Storage system 120 can be the removable of internal storage or such as memory chip Fill the memory of type.Storage system 120 can store the information about terminal 100.
Input/output 130 may include receive from terminal operator order and to the input of its output data/ Output equipment.Common input equipment includes for capturing the camera arrangement 132 of video and/or static image, being used for and photograph In combination with camera output or the independently microphone system 134 of capturing ambient audio.Other input equipments may include being used for Receive button, keyboard, mouse and/or the touch screen of user command.They also may include for determine the position of terminal 100 and/ Or the accelerometer being orientated and gyroscope etc..Common output equipment (not shown) includes that showing for video output is presented to operator Show equipment and the loudspeaker for exporting audio to operator.
Operating system 112 may include the instruction for limiting Media Analysis and handling framework 116.Media Analysis and processing framework 116 can be the software unit executed by processor 110, which can be provided in terminal 100 for calculating by terminal The suite of tools of the binary large object descriptor (being abbreviated as " blob descriptor ") of the media asset 121~125 of 100 storages. Blob can be for big file that is storing the binary data stored in the database and being transmitted as single entity. For example, the big data class similar to blob can be used in the mass data low as character string and stored digital and transmission efficiency Type.Blob can be used for the big file for storing and transmitting image, video and audio etc..Blob is also possible to multiple types The mixing of file.In one aspect, the data being stored in blob can be semi-structured or unstructured.For example, XML file Semi-structured data can be used, also, unstructured data can be used in multimedia file.Since blob can store biggish file The data of type, therefore they may need a large amount of storage and processing ability.
Available process resource, which is often based on, at terminal 100 changes the type of the terminal of application embodiment discussed here Become.It can also the processing across multiple terminals and/or equipment distribution Blob.Which can be can be used to execute different editions according to resource To setting analysis.For example, hardware auxiliary can be used when available.On the other hand, higher priority assets can be endowed more Resource and/or before lower priority assets it is processed, the lower priority assets may due to low priority and/ Or limited resource and be conditioned.In addition, the type that the type of input-output apparatus may be based on the terminal 100 just used changes Become.For this discussion, unless it is pointed out that otherwise the difference between terminal is inessential.
As described above, Media Analysis and processing framework 116 can be provided in terminal 100 and be stored for calculating by terminal 100 Media asset blob descriptor suite of tools.Specifically, Media Analysis and processing framework 116 can provide following clothes Business calculates various blob classes (blobClass) (descriptor, metadata, processed output etc.) for one group of media asset And blob is stored in the database.Service can be layered (tier), so that according to application (client) identification by requesting Reason budget is sequentially generated blob.Can execute for the subset of assets or assets one can also be represented similar to the class of blobClass Group analysis.
For the playback function of such as suspending/resuming function, the use of blob is also likely to be useful.Even if blob does not have also There is completion or be at least partly put on the blacklist, it is also likely to be available that the part of blob, which is presented,.
Fig. 2 shows the reciprocations 200 between Media Analysis and processing framework 210 and client 220.Client 220 can Identify one group of assets (msg.230) to be processed, each assets processing budget (msg.235) and assets are generated one Group blobClass (msg.240).Assets can be video, audio or image etc., also, each of assets BlobClass may include the associated binary data of assets.The processing budget of each assets can be dependent on the processing in terminal 100 The characteristic or terminal 100 of device 110 and/or other characteristics of wireless network.
Media Analysis and processing framework 210 can respond the calling for carrying out self-application 114 based on processing budget configuration level (tier) scheduling (frame 245).Media Analysis and processing framework 210 can determine whether to can be used for according to scheduling in layer one by one Enough resources (frame 250) of each level are successively executed on the basis of grade.If it is not, so processing may wait for until existing enough Resource to execute the scheduling of level, or may wait for required for detect or the variation (frame 252) of available resource. If the variation of resource is required or is detected, the scheduling of adjustable level is handled.When enough resources are available When, since resource can be used in the terminal, processing successively can execute level (frame 255) according to scheduling.Resource Availability can base Change in equipment purposes.For example, execute video blob can need enough resources because level scheduling needs be adjusted with Execute other levels.As an alternative, media asset is changeable and needs different stock numbers, this can also influence the tune of level Degree and the order for executing assets.
The processing also may determine whether overtime (frame 257) occur.If it is then the scheduling of level can be adjusted.If It is not, then processing can continue.Blob result can return to client (msg.260) in callback.For example, if processing budget It is too low for blob corresponding with video data, then the scheduling of level can make and audio data pair with a smaller size The blob answered is preferential, and audio blob is executed before video blob.
In one aspect, processing budget 235 can be expressed as blobPriority and expectedDelay, BlobPriority is the value for describing the blob of priority to(for) client 220, and expectedDelay representative should be after which Generate the time delay of blob descriptor.Blob descriptor (msg.240) can be by Asset Type from by Media Analysis and processing structure The list for the blobClass that frame 210 is supported identifies the one group of blobClass to be calculated.For example, blobClass can be based on it is similar In the various Asset Types of audio, image and video etc. and it is different.
Scheduling collects the multiple levels to execute for assets.Level can the type based on assets and it is different.Generally, Scheduling can be by can be dependent on the time delay of such as expectedDelay and the blob priority of such as blobPriority It completes priority (such as, CompletionPriority) and represents the complexity, host equipment for calculating blob descriptor The value of any dependence and the general operation used when calculating blob between the identification of resource constraint, blob descriptor is by group It knits.In one aspect, video blob descriptor is more complicated than image blob descriptor, therefore, all types of descriptors when Between delay can be different, also, the completions priority of all types of descriptors can different and depending on descriptor types.
On the other hand, when client 220 requests the blob being not present or existing blob not yet, if ExpectedDelay is short, then Media Analysis and processing framework 210 can configure one group of level to given blobPriority ExpectedDelay is most preferably matched, and dispatches level immediately.Otherwise, if Delay computing is admissible, media Analysis and processing framework 210 can (1) scheduling level to be operated at resources supplIes more preferable (more resources are available, equipment is powered etc.) And level can be run at that time.
On the other hand, task schedule can be adjusted based on appointed condition (for example, device temperature and resource contention) dynamic, and And by its state report to client 220.For example, when the available resources in terminal 100 change, if more resources exist It is made available by terminal 100, then task schedule can be reorganized, so that video blob is prior to image or audio blob. In the present case, if video blob reduce terminal 100 on available volume of resources, scheduling be adjustable to make audio and Image blob is preferential, until more resources are made available by.Other adjustment are imagined based on various resource factors.
On the other hand, each level can represent the blobClass fallen into the range of CompletionPriority value The set of calculating.Generally, such as acquirement, decoding, scaling and other types of pretreated assets are shared in the calculating in level On work expense.
Every blobClass, which is calculated, can have the several methods for calculating blob.These methods can be in result precision and calculating It is mutually different in complexity.Media Analysis and processing framework 210 can be calculated by using different methods across several levels Blob, each level is perfect/improve blob result.When operating for blob, Media Analysis and processing framework 210 may be not required to The method previously called is called, unless blob is between the time when carrying out former method operable time and current method Change.For some blob, a kind of result of method can provide the starting point for next method.
In one implementation, different Asset Types can have a different blobPriority values, also, Media Analysis and Handle the schedulable level of framework 210 with for these different assets based on they blobPriority value in different times They are operated.For example, digital photos can have the blobPriority value higher than video or audio recording, also, matchmaker Body analysis and the processing schedulable level of framework 210, operate them with the first part specially in scheduling. BlobPriority value, which can be dependent on different Asset Types, has much and what resource available.For example, Media Analysis and place Managing framework 210 can be in later time or schedule video and/or audio recording when resource contention is in low state.
In one aspect, Media Analysis and the processing schedulable level of framework 210 are in the relatively low spatial of assets or time point The blob for calculating video is presented in resolution.When resource allows, the level dispatched later can be grasped in the presentation of higher resolution ratio Make.Thus, level can be organized in Asset Type based on the characteristic of each independent blob in Asset Type.In such side Face, scheduling can be not merely based on Asset Type and be organized, and can be organized in Asset Type based on Resource Availability etc..
On the other hand, when there are when multiple client, each client can be with above-mentioned in individual equipment (not shown) Parameter registers (future) service request by Media Analysis and processing framework 210.Client-based priority, these parameters and One group of level of Resource Availability, Media Analysis and the configurable sequence of processing framework 210 is to run.
On the other hand, if assets are modified after dispatching level (for example, editor), Media Analysis and processing Framework 210 can revise scheduling to cope with the new processing to be executed.
In one example, can occur interaction 200 on smart phone.In the present case, smart phone can have ratio Plate or the few available resources of computer.Thus, smart phone can have the scheduling of different levels, and can be based on more It is differently carried out in few available resources and plate or computer and interacts 200.
In another example, can occur interaction 200 on computers.In the present case, computer can have than intelligence The resource of multipoint teleconference, and therefore compared with smart phone, it may be possible to which operation needs the assets of more resources and/or more Assets.Thus, the scheduling of level and the operation of assets can be in smart phones or with different resource capabilities from same asset It is different with the mode executed in another equipment of constraint.
The principle of the disclosure can also be applied to decentralized system 300, and in the decentralized system, framework is separated with client 2020 Ground operation, and multiple terminals may access one group of shared media item.
Fig. 3 shows system 300 according to one aspect of the disclosure, which includes being in communication with each other by network 340 Multiple terminals 310~330.Terminal 310~330 can access network 340 by the communication channel 350 limited here.Terminal 310 ~330 can access one group of shared assets respectively.
In one aspect, Media Analysis and processing framework 332 can be in the terminals with resident request client 312 wherein It is run in a 310 separated terminals 330.Media Analysis and processing framework 332 can have enough available money in its terminal 330 Assets are operated when source.In this case, Media Analysis and processing framework 332 can to blobPriority and ExpectedDelay configures the one group of level to sort to run, so that blob can become in time using the value limited in advance It must can be used.
On the other hand, Media Analysis and processing framework can availability based on other common computing devices in network, Their ability and network condition is across the several equipment (being shown as processing framework 314,332) that may have access to one group of shared assets Distribution.Level dispatches the operation that level and/or method can be distributed among the different terminals 310,330 of support frame.In addition, layer Grade can be transmitted to another terminal 330 from a terminal 310, so that framework can be kept to grasp when terminal 310 is disconnected with network 340 Make.
In request, assets to be processed may be not locally available.Based on network condition and budget, Media Analysis and Processing framework 332 is schedulable and obtains assets by network 340 from server or from another terminal.It as an alternative, can be to It has included another terminal distribution processing of assets of interest and dispatch deal on it.Under system or resource pressure, analysis It can suspend, and intermediate result is serialized.Analysis can continue when system condition allows, or be sent to another end End is to complete.
For certain assets, framework may collapse or cannot generate result.In order to avoid primary in identical assets Again handle and failure, framework it is countable handle each assets when number of attempt.If the count value of given assets reaches Threshold value number of attempt, then in order to avoid handling the assets again, framework flagged asset or can list it in " blacklist ", Or reduce the attempt frequency of processing assets.Blacklist assets can be absolved after the regular hour measures, so that it can be again Become suitable.
When across the processing of several equipment managements, each equipment state can by periodic surveillance, also, in the event of a failure, The task of failure can be rerouted to other equipment by level scheduling.
In the disclosure, also, in the claims, it should be understood that mention terminal or wireless device is to cover such as The electronic equipment of mobile phone, controller, tablet computer, personal computer and PDA etc.." terminal " or " wireless device " will be contained The mobile technology of any compatibility of Gai Keyu cordless communication network connection calculates equipment.Wireless device further includes mobile phone, moves Dynamic equipment, mobile base station, user equipment, cellular phone, smart phone or mobile phone etc. are (for example, the iPhone of Apple, other classes The PDA or smart phone of type), wireless dongle, remote alerting device or the supported other mobile computing of wireless network set It is standby.Term " wireless device " may be used interchangeably, and is referred to herein as " wireless phone ", " mobile phone ", " mobile device ", " sets It is standby ", cellular phone, " mobile device ", " movement station ", " user equipment ", " cellular phone ", " smart phone ", " monitoring is set It is standby " or " phone ".
Wireless device can be connect with " wireless network " or " network ", and to be covered and be obtained or mentioned by using wireless device It is such as short to transmit and handle using teachings of the present application for mobile phone or any type of wireless network of messaging service Global system for mobile communications (GSM) network, CDMA (CDMA) network, long term evolution (LTE) network of message data service With 5G (the 5th generation) etc..
The meaning such as " one aspect ", " aspect ", " other aspects " or " one or more aspects " is mentioned in the disclosure About this aspect description specific feature, structure or characteristic be included in the disclosure at least one in terms of in.In this public affairs There is such as phrase " in one aspect " and is not necessarily all referring to one side, nor mutually arranging with other aspects in each position opened The independent or alternative aspect of reprimand.It can be various without being showed by other aspects by some aspects performance in addition, describing Feature.Similarly, the various requirement of the requirement that can be used as some aspects and the requirement not as other aspects is described.
In addition, method described here will be realized by specialized hardware and be operated according to the various aspects of the disclosure, these Hardware realization include but is not limited to processor, microprocessor, PC, PDA, SIM card, semiconductor, specific integrated circuit (ASIC), can It programmed logic array (PLA), cloud computing equipment and is built as realizing other hardware devices of method described herein.
The many aspects of the disclosure may include can be using known protocol wired or wireless electronic communication network it is logical Believe channel, the wired or wireless electronic communication network is all in this way for example, wire/wireless local area network (LAN), wire/wireless People's Local Area Network (PAN), wire/wireless home area network (HAN), wire/wireless Wide Area Network (WAN), campus network, metropolitan area Net, enterprise private, Virtual Private Network (VPN), internet, backbone network (BBN), global regional network (GAN), interconnection Net, Intranet, extranet, overlay network, near-field communication (NFC), cellular phone network, personal communication service (PCS), this is known Agreement is such as global system for mobile communications (GSM), CDMA (CDMA), GSM/EDGE and UMTS/HSPA network technology, length Phase evolution (LTE), 5G (the 5th generation mobile network or the 5th generation wireless system), (wideband code division is more by WiMAX, HSPA+, W-CDMA Location), CDMA2000 (also referred to as C2K or IMT Multi-Carrier (IMT-MC)), Wireless Fidelity (Wi-Fi) and/or bluetooth etc. And/or its two or more combination.NFC standard covers communication protocol and data interchange format, and based on including ISO/ Existing radio frequency identification (RFID) standard of IEC 14443 and FeliCa.The standard includes ISO/IEC 18092 [3] and by NFC Those of Forum definition.
Many aspects in the disclosure can be in any type by communication channel 350 with wire/wireless communication ability Calculating equipment in be implemented, it is such as desktop computer, personal computer, meter on knee/mobile that these, which calculate equipment, Calculation machine, personal digital assistant (PDA), mobile phone, tablet computer and cloud computing equipment etc..
Many aspects in the disclosure can pass through such as AppleTMiOSTMAny type of elder generation of operating system etc. It is implemented on into any type of intelligent movable phone of mobile data processing and communication operating system operation.
It shall yet further be noted that the software realization of the disclosure described herein is optionally stored on palpable storage medium, these Stereognosis storage medium is such as are as follows: the magnetic medium of such as disk or band;The magneto-optic or optical medium of such as disk;Or such as storage card or appearance Receive one or more read-only (non-volatile) memories, random access memory or other rewritable (volatibility) memories The solid state medium of other encapsulation.The archives or one group of archives of the digital file attachment of Email or other self-contained information are considered as The distribution medium being equal with palpable storage medium.Therefore, the disclosure is considered as including the software realization wherein stored here The palpable storage medium or distribution medium listed herein, including generally acknowledged equivalent medium and successor media.
In addition, the various aspects of the disclosure can be implemented in non-general computer is realized.Moreover, can be with from its disclosure It is apparent from, the various aspects of the disclosure illustrated herein improve the function of system.In addition, the various aspects packet of the disclosure It includes and is specifically programmed to solve the computer hardware of the targeted challenge of the disclosure.Therefore, the various aspects of the disclosure exist System general function is improved in its specific implementation, to execute the processing for illustrating and being defined by the claims by the disclosure.
The many aspects of the disclosure can be network-based.It is answered for example, server can operate network with database combination With.Network application can be in trust in browser controlled environment (for example, java applet etc.), by the language for supporting browser (for example, the JavaScript combined with the markup language (for example, hypertext markup language (HTML) etc.) that browser is presented) quilt Coding etc., so that running common web browser (for example, SafariTMDeng) any computer may make application can hold Row.Due to web browser generality and use web browser to be based on as the convenience of client (that is, thin-client) The service of network can be more beneficial.In addition, by inherently supporting crossover-platform compatibility, it can be in the feelings for not interfering and installing software Network application is kept and updated under condition.
The many aspects of the disclosure may include executing to be configured as receiving request from client and correspondingly provide response Using or software example server.Server can be run on any computer for including special purpose computer.Computer can The processing element and some form of memory of central processing unit (CPU) are generally including at least one.Processing element can be real Operation and logical operation are applied, also, the information that can respond storage with control unit that sorts changes the order of operation.Server can wrap The peripheral apparatus allowed from external source retrieval information is included, also, the result operated is saved and retrieves.Server can be in client Operation in end-server architecture.Server can represent some tasks of client executing.The communication letter that client can limit herein It is connect by network with server on road.Memory, redundancy disk and redundancy with error-detecting and correction can be used in server Power supply etc..
Although describing system and method about the content for being currently considered to be particular aspects, the present disclosure is not limited to disclosed Aspect.It is intended to the covering various modifications and similar configuration that are contained in spirit and scope of the claims, and range should be by Widest explanation is assigned, to cover all such modifications and similar structure.The disclosure include any of following following claims and All aspects.

Claims (23)

1. a kind of system of the processing of the media on resource-constrained devices, the system include:
Memory, the memory storage represent the data of media asset and associated descriptor and represent application and media The program instruction of processing system;With
Processor, the processor response will generate multiple services of assets descriptor from limiting for assets execution and from it Application calling, described program instruction represent the medium processing system in the case where execute described program instruction:
It is right based on the associated processing budget determination of the dependence between the computation complexity of the descriptor and descriptor In the layering scheduling for the processing operation that assets execute, wherein the processing operation in a level is shared for executing in the level The processing expense of processing operation;With
Except non-interrupted, otherwise, the processing operation is iteratively performed on the basis of level one by one.
2. system according to claim 1, wherein medium processing system further results in processor based on the excellent of descriptor First grade determines processing budget.
3. system according to claim 2, wherein it is true based on time delay that medium processing system further results in processor Surely budget is handled, the descriptor should be generated after the time delay.
4. system according to claim 1, wherein medium processing system further result in processor be based on Asset Type from The one group of class to be calculated is identified in the list for the class that medium processing system is supported.
5. system according to claim 1, wherein medium processing system further results in processor based on the excellent of descriptor First grade and based on time delay organizational hierarchy dispatch.
6. system according to claim 5, wherein medium processing system further results in processor and is based on resource-constrained set Standby condition adjustment layering scheduling.
7. system according to claim 1, wherein medium processing system further results in processor across a network to another money The distribution layering scheduling of source constrained devices.
8. system according to claim 1, wherein medium processing system further results in processor and tastes to processing assets The number of examination is counted, also, if the number attempted reaches predetermined quantity, assets are piped off.
9. a kind of method of the processing of the media on resource-constrained devices, this method comprises:
Response comes the calling of the application of self-identifying media asset to be processed, the processing operation to execute for media asset Identifier and the associated processing budget of dependence between the computation complexity of the processing operation and processing operation, produce The layering scheduling of raw processing operation, wherein the processing operation in a level is shared for executing the processing operation in the level Handle expense;
On the basis of successively, following procedure is iteratively completed:
The processing operation for executing a level is dispatched according to layering;
Determine the available resources of the processing operation of next level;
If resource is not useable for the processing operation of next level, interrupt schedule;And
Otherwise, start following iteration.
10. according to the method described in claim 9, wherein, the priority value based on media asset generates processing budget.
11. according to the method described in claim 10, wherein, being based further on time delay and generating processing budget, when described Between postpone after should generate descriptor.
12. according to the method for claim 11, further including the list for the class supported based on the identification of Asset Type descriptor In want one group of class calculated.
13. according to the method described in claim 9, further including collecting the multiple levels to execute for media asset.
14. according to the method described in claim 9, wherein, the scheduling for generating level is based further on priority value.
15. according to the method for claim 14, wherein the scheduling for generating level is based further on time-delay value.
16. according to the method for claim 15, wherein the scheduling for generating level is based further on and calculates media asset The associated complexity of descriptor and be based on resource constraint associated with resource-constrained devices.
17. according to the method described in claim 9, further include the number of trial of processing media asset is counted, and If the number attempted reaches predetermined quantity, media asset is piped off.
18. further including according to the method for claim 17, absolving the media to pipe off after a predetermined amount of time Assets.
19. according to the method described in claim 9, wherein, being carried out with hardware to the execution part.
20. according to the method described in claim 9, further include priority or assets based on assets processing budget adjust should It executes.
21. a kind of equipment of the processing of the media on resource-constrained devices, including be configured for executing and be wanted according to right Seek the device of method described in any one of 9-20.
22. a kind of computing device, the computing device include:
At least one processor;With
One or more tangible medias, store program instruction, and described program instruction is held by least one described processor Make to execute the method according to any one of claim 9-20 when row.
23. a kind of tangible media stores program instruction, described program instruction for executing basis when executed by the processor Method described in any one of claim 9-20.
CN201610389494.6A 2015-06-05 2016-06-03 Media Analysis and processing framework on resource-constrained devices Active CN106250214B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562171957P 2015-06-05 2015-06-05
US62/171,957 2015-06-05

Publications (2)

Publication Number Publication Date
CN106250214A CN106250214A (en) 2016-12-21
CN106250214B true CN106250214B (en) 2019-11-26

Family

ID=57612909

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610389494.6A Active CN106250214B (en) 2015-06-05 2016-06-03 Media Analysis and processing framework on resource-constrained devices

Country Status (1)

Country Link
CN (1) CN106250214B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0880095A2 (en) * 1997-05-22 1998-11-25 International Business Machines Corporation Resource scheduler
CN1589433A (en) * 2001-11-19 2005-03-02 皇家飞利浦电子股份有限公司 Method and system for allocating a budget surplus to a task
US8327365B2 (en) * 2009-05-07 2012-12-04 Bank Of America Corporation Throttling of an interative process in a computer system
CN102841810A (en) * 2011-05-14 2012-12-26 国际商业机器公司 Techniques for executing threads in a computing environment

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6970913B1 (en) * 1999-07-02 2005-11-29 Cisco Technology, Inc. Load balancing using distributed forwarding agents with application based feedback for different virtual machines
CN101471850B (en) * 2007-12-29 2013-04-24 华为技术有限公司 Method for identifying medium resource, medium gateway and medium gateway controller
US9038087B2 (en) * 2008-06-18 2015-05-19 Microsoft Technology Licensing, Llc Fence elision for work stealing
US8707275B2 (en) * 2010-09-14 2014-04-22 Microsoft Corporation Simulation environment for distributed programs
US8949835B2 (en) * 2010-11-30 2015-02-03 Red Hat, Inc. Yielding input/output scheduler to increase overall system throughput
US20120174039A1 (en) * 2011-01-05 2012-07-05 United Video Properties, Inc. Systems and methods for navigating through content in an interactive media guidance application

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0880095A2 (en) * 1997-05-22 1998-11-25 International Business Machines Corporation Resource scheduler
CN1589433A (en) * 2001-11-19 2005-03-02 皇家飞利浦电子股份有限公司 Method and system for allocating a budget surplus to a task
US8327365B2 (en) * 2009-05-07 2012-12-04 Bank Of America Corporation Throttling of an interative process in a computer system
CN102841810A (en) * 2011-05-14 2012-12-26 国际商业机器公司 Techniques for executing threads in a computing environment

Also Published As

Publication number Publication date
CN106250214A (en) 2016-12-21

Similar Documents

Publication Publication Date Title
US9654577B2 (en) Techniques to generate mass push notifications
Cardone et al. Participact: A large-scale crowdsensing platform
CN105391803B (en) Message pushing method, device, equipment and computer readable storage medium
KR101541263B1 (en) Method and apparatus for executing user action commands
WO2018120813A1 (en) Smart recommendation method and terminal
US8849854B2 (en) Method and system for providing detailed information in an interactive manner in a short message service (SMS) environment
CN103201759A (en) Method and apparatus for monitoring user interactions with selectable segments of a content package
CN107291744A (en) It is determined that and with the method and device of the relationship between application program
EP2174434A1 (en) Unwired enterprise platform
CN105701122A (en) Log collection method, apparatus and system
US10007716B2 (en) System for decomposing clustering events from managed infrastructures coupled to a data extraction device
CN103065235A (en) Systems and methods for event attendance notification
CN112149838A (en) Method, device, electronic equipment and storage medium for realizing automatic model building
CN109313587A (en) Method for enabling data analysis service at service layer
CN105653316B (en) Monitor the method and device that software is unloaded
KR102033443B1 (en) Method and apparatus for classifying virtual activities of mobile users
CN110781180A (en) Data screening method and data screening device
CN112115394A (en) Data display method, server, terminal and medium
US20190220828A1 (en) Methods and systems for re-configuring a schedule of a preventive maintenance plan
JP2011118853A (en) Server for providing mobile standard template data
US20180349932A1 (en) Methods and systems for determining persona of participants by the participant use of a software product
CN110457089B (en) Data acquisition method, data acquisition device, computer readable storage medium and computer equipment
CN112953993B (en) Resource scheduling method, equipment, network system and storage medium
CN106250214B (en) Media Analysis and processing framework on resource-constrained devices
CN109995782B (en) Information processing method, device, system and computer storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant