Subject application advocates entitled " refunding on network crossfire playback platform filed on 2 12nd, 2010
With F.F. viewing experience (REWIND AND FAST-FORWARD VIEWING EXPERIENCE ON A WEB-BASED
STREAMING PLAYBACK PLATFORM) " the 61/303rd, No. 579 U.S. Provisional Application case priority, the U.S.
Provisional Application is incorporated herein by reference.
Specific embodiment
Following detailed description of the present invention is only exemplary in itself, and be not intended to limit the present invention or this
Bright application and use.In addition, it is undesirable to by any theory presented in background technology above or subsequent detailed description
Constraint.
According to various embodiments described herein, equipment, method and system are presented in streamed content embodiment
Special play-back media viewing experience.According at least one embodiment, refunding on network crossfire playback platform is described in
With F.F. viewing experience.Other embodiments may be used to implement radio and television, order video, Web TV when needed and/or appoint
What other application.
Turn now to accompanying drawing and referring initially to Fig. 1, the common sparing of one exemplary embodiment suitably presentation medium stream, its use
Two or more media content objects 132,134,136 that are single and encoding by different way.Object 132,134,136
(for example) can be encoded with different frame rates, and/or its various frame of video is encoded to promote stunt to broadcast with reverse order
Put operation.In the example of fig. 1, the object 132 with higher frame rate may be used to the presentation content during rule is reset, and have
136) object for having relatively low frame rate (for example, in this example, object 134 and may be used to phase is presented in trickplay modes
Same content, wherein presenting to beholder's presentation from the less frame of a same part for Media Stream but with the replay rate of acceleration.
In addition, one or more objects (for example, the object in Fig. 1 136) in various content frames can be with other objects 132,134
Compare and encoded to promote relatively effectively " refunding " operation is carried out when resetting and carrying out backward in time with the order for overturning.
Similar concept be equally applicable to using the object encoded with higher frame rate come before presenting to and/or reverse " slow motion " stream,
And then realize the frame resolution for obtaining high frame resolution than originally.Any number of media content object 132,134,
136 can be encoded with any number of different frame rates when needed with support in forward and reverse direction it is any number of compared with
Hurry up, slower or equal playback speed.
In the example illustrated by Fig. 1, object 132 contains general 60 frame of video 102, and which provides about 2 seconds video contents
(for example, the frame rate of about 30 frames/second;Exemplary presentative time shown in Fig. 1 is the replay rate based on 29.97 frames/second,
But can equally use other speed).Object 134 and 136 is shown as representing and object 132 identical, 2 seconds media contents which has
There are about 15 frame of video 102, so about four points for the frame rate of object 132 of the frame rate of object 134 and 136 in this example
One of (for example, about 7.5 frames/second).Object 136 is also showed that to be compared with 134 with object 132 with the various frames of reverse sequence sequence
102 so that during rule is reset, the frame of later appearance in time is decoded first and presents, and then promote more effectively to fall
Return function.Other embodiments can be by (and any number of volume of a same part for presentation medium stream of object 132,134 and 136
Outer object) it is encoded to various durations, frame rate and/or other parameters.Forward and backward stream need not have same number of frames
Speed, also needs not be provided equal number of forward and backward stream.Can provide in any number of Equivalent embodiments in forward direction or
Any number of extra or replacement stream with any number of different frame rates advanced in inverse direction.
By being selected including object 132, between 134 and 136 stream, then the frame rate of Media Stream may be adapted to mend
The user for repaying playback speed changes.If the user desired that with speed reach (or refund) Media Stream faster than normal speed, then
Routine techniquess will be only decoding and all flow, but the subgroup of the frame is then only presented so that program seems with faster rate
Move.Using Fig. 1 as example, all 60 frames in object 132 can in 2 second time frame in be in during normal playback
It is existing.If beholder wants " F.F. " by the content represented by object 132, then realize that a kind of this mode for operating is letter
Object 132 in contained frame 102 (or the subgroup of the frame, such as key frame) is presented within cycle short period singlely.Lift
For example, if all frames of object 132 are presented in half second, then program looks like with the advance of " 4 × " replay rate, its
Middle frame rate is similarly multiplied by factor 4 (i.e., in this example, 120 frames/second).However, receive in this time frame in, decoding and
Reproducing all this data generally will need at the relatively great amount of network bandwidth, and the relatively powerful data on client terminal device
Reason resource.
Only the subgroup of the frame in object 132 will need to present to protect during playback (for example, fast forward or reverse) is accelerated
Hold the identical effective frame rate experienced during rule is reset.That is, that what is experienced during rule is reset identical has
Effect frame rate can 4 × reset during using the frame contained by object 132 only 25% keeping.However, most of normal
In rule embodiment, player remains a need for recognizing the key frame that will be presented during accelerating to reset, so which remains a need for obtaining successively
The full content of object is obtained to find out and process actually by a small amount of frame for being reproduced.The final quilt of extra frame in object 132
Abandon, but be only after media player is conveyed and processed to which.Further, since key frame may not be with rule
Interval is separating, so only key frame is reset possibly for seeming unstable and inconsistent for beholder.
More effective method will be using provide the stream with 132 identical part of object but be more suited to current weight
The different objects 134 or 136 for putting the different frame rates of speed to provide.For example, if user command in the forward direction
" 4 × " playback speed, then replacing, object 134 is containing the feelings not degraded in frame rate for 132 available objects 134 of object
The all frames required for very fast playback are supported under condition.Although object 134 has comparing as 132 few frames, object 134 will energy
It is enough to provide the frame rate equal with object 132 during very fast playback.Additionally, comparing as 132 few frames because object 134 contains
102, so object 134 will generally need the less network bandwidth for conveying and needing less processor resource for decoding.Can
The special parameter and value used in this example is changed in any number of other embodiments;Any number of difference can be directed to
Playback speed suitably increaseds or decreases frame rate to provide desired valid frame resolution, and/or can with it is any number of not
Any number of additional objects are encoded with the same part with presentation medium stream with frame rate.
Inverse direction playback can be provided using similar concept, such as in " refunding " function.In the example shown in Fig. 1
In, the difference of object 136 and object 132 and 134 is encoding various physical frame 102A-N with reversed time order.
That is, represent that the frame (for example, frame 102N) of the content of later appearance is carried in object 136 in time during normal playback
For will be during normal playback in time before the relatively early frame (for example, frame 102A) for occurring.By more early in object 136
Ground provides " later " frame, and the frame for being shown during reverse reproduction first is the frames several at first received by decoder.For example,
The first frame (for example, the frame 102N in Fig. 1) received in object 136 is the first frame presented during reverse reproduction.Due to
Decoder receives the frame 102A-N with by the substantially the same order of the rendering frame 102A-N during reverse reproduction, so greatly
Reduce in cause (if not eliminating) to decoding cache extra frame 102A- before reverse flow is reproduced to beholder
The needs of N.In addition, compared with the technology of key frame is only reproduced, reset will it is smooth much because frame is providing with aturegularaintervals
's.
The different coding of frame rate and/or frame direction is combined when needed can.In the example of fig. 1, object 136 is shown
It is to be encoded to promote playback speed faster, but contrary with object 134 with the frame rate of the reduction similar to object 134
Direction on carry out.However, other embodiments can be carried out to one or more reverse flows with higher or lower frame rate
Encode to provide effective reverse reproduction at various speeds.Can (for example) with 132 identical frame rate of object but with reverse frames
Order encoding additional streams, to promote to carry out effective reverse reproduction under with normal forward playback same speed.Can be in office
The additional streams of higher or lower frame resolution reverse reproduction is provided in the other embodiments of what number.
In various embodiments, spies of each media content object 132,134,136 for the available all stream of expression user
Determine thread, file or the similar data object of part.In a little embodiments of here, each data object can Jing create representing original
The specific part with scheduled time length (such as 2 second persistent period shown in Fig. 1) of Media Stream.In other embodiments,
For example, scheduled time length can be between about general 0.1 and 8.0 second, but can be equally pre- using other
Measured length.In addition, the media content in object can starting with unique temporal rope relative to media content contained in stream
Draw.Various objects equally can come with space manner (for example, arrange and index according to file size) or in any other way
Tissue.
Other embodiments can provide such media object:Which " in bulk " or may not otherwise be distributed as independent text
Part, and it is to provide position of the relatively continuous media content stream together with " key frame " used in identification special play-back or the like
The table put or other metadata.In a little embodiments of here, the commonly provided permission is changed between continuous stream by metadata to be protected simultaneously
Hold successional shared time or other indexes of beholder's experience.Therefore Media Stream can be recognized by the process of metadata
Various " objects " or " part ", though individually file or thread are unavailable, and so.
In various embodiments, using shared space or time index rightly producing multigroup media object so that
User command difference replay rate or the playback time in direction, can sequentially mix the object from different groups.That is, from
The object of one group objects can be followed by from different coding parameter but still with beholder desired by trick play operation
Mode provide Media Stream appropriate part different groups objects.Permission response type is switched between multigroup discrete objects
It is adapted to network condition, user instruction and/or analog, while keeping the visual continuity of the program stream desired by beholder.
In the example is presented by Fig. 1, object 132 is replaced with object 134 or object 136 and keep visual continuity to beholder, because
Time index is carried out to the object 132 and 134 in this example according to shared presentative time index, and then guarantees object 132,134
With 136 in represented content representation total medium content a same part, although carrying out table with different frame rates and/or direction
Show.
Referring now to Fig. 2, use so that Media Stream can be obtained by one or more client terminal devices 204 via network 245
The exemplary calculated environment 200 for obtaining suitably includes:Communication interface 237;Data base 238, and which stores two or more matchmakers
Body object group 232-236;And media server 210, which when needed sequentially will be from various groups of 232- via network 245
236 various special objects are supplied to client terminal device 204.Computing environment 200 can also include media content sources 205 when needed
With encoder 220, but other embodiments can completely with content transmission functional separation perform encoding function.
Content server 210 and client terminal device 204 can use one or more 245 (examples of data communication network
Such as the Internet) and/or one or more common LAN (LAN), PAN (Personal Area Network) (PAN), campus area networks
(CAN), Metropolitan Area Network (MAN) (MAN), wide area network (WAN), WLAN, cellular network, VLAN, aforementioned every any
Combination and/or analog are communicated.Other embodiments can allow between content server 210 and client terminal device 204 with
The communication that any other mode is carried out.
Client terminal device 204 is to be configurable to connect from media server 210 via one or more crossfire connections 241
Any suitable device of radio reception frequency, video and/or other media contents.The example of client terminal device 204 can include when needed
(being not limited to) client station, server, personal computer, portable electron device, mobile phone, personal digital assistant,
Video game system, entertainment systems, Set Top Box, digit receiver, DTV, time or place shift unit and/or other
Electronic installation.In some embodiments, client terminal device 204 can be implemented using general-purpose computing system when appropriate, described
General-purpose computing system performs software or firmware to provide media player application program 201.Media player 201 can be broadcast for one
Put the software of media content (for example, show video and play audio frequency), such as any kind of stand-alone software application, network
Browser plug-in, browser plug-in and combination of supportive webpage logic or the like.
Fig. 2 shows the content source 205 that Media Stream 206 is provided encoder 220 in due course.In the reality described by Fig. 2
Apply in example, source of media 205 can be when needed publisher's server, publisher's content store, the founder of media content or
Publisher and/or any other source of audio frequency, video or content of multimedia.For example, if treating the media content 206 of crossfire
For the broadcast of TV programme, then source 205 can be to be attached with TV or cable system channel (for exampleChannel or
Channel) server.Media content 206 can be sent to encoder 220, the volume via the Internet or another network by publisher
Code 220 Jing of device is rightly configured and is created any number of encoded stream 232,234 to receive and process media content 206.
Each encoded stream 232,234,236 suitably represent one group of media object (for example, object 132,134,136),
Which each has different frame coding parameter (for example, frame rate, frame direction and/or analog).It is each in these streams 232-236
Person can be stored in data base as one group of thread of the duplicate for jointly representing original media content 206 or similar object.One
As for, each of different object groups 232-236 will shared shared time or other indexes so that from different group 232-
234 object can be mixed with each other when causing the object be obtained by client terminal device 204, allow for content stream rightly
It is adapted to network condition, user input and any other factor.
Various objects can be stored in content clothes as one or more files or a group or more of individual files
On business device, the webserver, database server, cache memory server, proxy cache or network
Other devices on, for example find in conventional content transmission network (CDN) 240.In various embodiments, object is being needed
Will when be stored in data base 238, so that media server 210 is subsequently retrieved so that can make the object can be by client terminal device 204
Obtain.
Interface 237 is any kind of interface card, server and/or other computing hardwares, and which can promote media services
Communication between device 210 and one or more client terminal devices 204.In various embodiments, media server 210 can use
Conventional computer server (includes any conventionally calculation hardware, any kind of virtual " based on cloud " server and/or is similar to
Thing) implementing, wherein interface 237 promotes the network between media server 210 and one or more client terminal devices 204
Communication.Other embodiments can allow more than one media server 210 of client terminal device 104 from CDN 240 when needed
Retrieval media object.Then, interface 237 can be the simple interface card that can be used by particular server, or equally, can be to need
Will when provide balancing the load, route, authorize and/or verify, the interface server of firewall services and/or further feature.
Although illustrating media server 210 and/or CDN 240 for each client terminal device 204 in fig. 2
One connection 241, but each connection 241 can logically represent multiple network connections of CDN 240.In one embodiment
In, each client terminal device 204 can set up via network 245 to CDN 240 multiple conveying control protocols (TCP) or other
Connection 241.In another embodiment, media content is stored in multiple CDN.For example, content is storable in and multiple CDN
Each of in associated origin server.CDN 240 can be used for by reducing bandwidth cost and increasing the overall situation of content
Availability to improve performance, scalability and cost-benefit purpose to end user (for example, beholder).In other embodiments
In, other technologies can be used come so that media content can be obtained from origin server by media player, for example peer-to-peer network or
Analog.And, although it has been that, in CDN 240, but server 210 equally can be stayed by the explanation of media server 210 in fig. 2
Stay in and be associated outside CDN 240 and still with CDN 240.
As described above, each trick play stream 234,236 is represented and is resetting stream 232 not with rule as described above
The duplicate of the original media stream under same frame rate and/or direction.Each of these expressions are properly stored at media clothes
At another part of business device 210, data base 238 and/or CDN 240.Various stream 232-246 can be stored as individual files or other
Object, which can independently be asked by client terminal device 204, transmits and/or be played.Each of warp knit code object is storable in
Positioned at the webserver of CDN 240, proxy cache, edge in one or more content servers 210
On cache memory, and can it is dividually requested and cause can be obtained by client terminal device 204.
Each conception of species described herein can use client drive, server drive and/or client and/or
Any combinations of the crossfire embodiment that server drives are implementing.In various embodiments, server 210 is typically based on user
Input and/or the other information that provided by client terminal device 204 are selecting for which content object being sent to client terminal device
204.In other embodiments, client terminal device 204 is determined from which particular content object content server 210 asks.Citing
For, client terminal device 204 can be using such as normal protocols such as hypertext transfer protocol (HTTP) or the like from media services
Device 210 asks independent object.Can be HTTP " GET " or similar requests in a type of request used in " drawing is sent " situation,
But other embodiments can ask thread or other objects from server 210 using any number of other mechanism.
Therefore, various embodiments enable to obtain Media Stream using the object 132,134,136 of a sequence.By visitor
210 selecting object of family end 204 or server, and sequentially client is provided from server 210 by selected object via network 245
204.In many embodiments of 204 origin object of client terminal device request wherein, conventional network-type file server can use
To retrieve and service asked object, and then reduce to using specialized server to support the needs of special Media Stream, while
It is maintained at the ability that trick play functionality is performed when stream is just provided.
Other embodiments can use different techniques to provide media content via network 245.For example, some embodiments
Content can be stored in single file, the single file is divided into and cacheable in CDN 240 and/or uses
If HTTP range of requests or the like is come the stem portion asked.Other embodiments can be carried using RTSP or other agreements when needed
For adaptable content stream.In some embodiments, RTSP or other agreements can be encapsulated in TCP, UDP, RTP, HTTP and/or
Transmit in other delivery protocols or via TCP, UDP, RTP, HTTP and/or other delivery protocols with faciliated diffusion by anti-
Wall with flues is used for any other purpose.Equally, net is generally reduce or eliminated using such as standard agreements such as HTTP or the like
Network manager configures needs of the fire wall to recognize for special protocol and by Network.Can formulate any number of equivalent
Modification.
Any number of extra trick play stream 234,236 can by encoder 220 with mentioned above based on drawing what is sent
Configure similar mode to create.The extra encoded content file can be properly stored in such as data base 238.Can
When needed at the player 201 or another part of client terminal device 204, by the logic performed in server 210 or
Selecting object in any other position.Then client terminal device can be provided from server 210 by any way by selected object
204 for playback.Therefore various special play-back concepts described herein can be applied to push or draw send concept or is based on
Other network delivery technologies of client-side, server side or any combination of client and server side logic.
Many embodiments further can be strengthened with self adaptation crossfire ability with when needed in response to network condition, broadcasting
Device ability or other factorses and the quality of regulation rule or trick play stream.In order to implement self adaptation crossfire, encoder 220 is extra
Ground with one of some different quality profiles coding normal playback stream 232 and/or trick play stream 234,236 or one with
On.The quality profile each represents different parameters, for example should how encoding stream, the width of image and height (that is, image is big
It is little), video bit rate (that is, the speed for video being encoded), audio frequency bit rate, audio sample rate (that is, capture when pair
The speed that audio frequency is sampled), audio track number (for example, monophonic, stereo or the like), frame rate (for example, frame/
Second), classification size or the like.
Various client terminal devices 204 can process the different quality grade of same media content 206, and this depends on application, sees
The preference of the person of seeing, device capability, network throughput or any other factor.Some embodiments can make different quality when needed
Profile can be obtained by client terminal device 204.In a little embodiments of here, different media players 201 can receive the phase of media content
With part (for example, same time index), but with different quality grade receiving.For example, a media player 201 can
Thread of the request with HD quality videos, because the computing device of request media player has enough computing capabilitys and enough
The network bandwidth, and another media player 201 can ask the object with lower quality, because its computing device may not have
There are enough network bandwidths (for example).In one embodiment, media player 201 is multiple by the difference from media content
This (for example, different quality stream) switches if asking stem portion to be between credit rating in segment boundary, such as in April, 2005
Described in No. 2005/0262257 Patent Application Publication filed in 28 days.Or, media player 201 is using benefited
The part is asked in other technologies being understood by those skilled in the art that of the present invention.It is various used in coding
Mass parameter can be combined when needed, and to supplement various types of frame codings described herein.For example,
Codified at least one stream 242, its there is relatively low frame rate with support special play-back but with relatively high bit rate with
Picture quality is maintained, even if during trick play operation, and so.Can encode in various embodiments and otherwise
Process any number of not cocurrent flow with any many kinds of parameters.
In order to implement trick play features, then, will be to be reset to support with appropriate frame rate and/or frame direction
Media object provides the media player 201 or another component of client terminal device 204 from server 210.In some embodiment party
In case, can be selected by media player 201 (for example, being instructed using HTTP " GET ") and ask specific thread or other objects, and
Other embodiments user input or other appropriate information can be responded with when needed will at server 210, counting
Client terminal device 204 is provided according to the object selected at storehouse 238 and/or in other places of environment 200.
In various embodiments, the playback of various streams can be varied and control to support under any playback speed (for example
3 ×, 0.5 ×, 10 ×, under 7.5 or any other multiples) carry out special play-back.Media player 201 is suitably reproduced in just
When the frame of interval, to realize desired replay rate.Because replay rate is variable, player can be calculated and be changed
The speed is with acceleration or deceleration in a continuous manner in many embodiments.In other embodiments, encoder with difference compared with
Low frame rate rate (for example, 4 frames/second and 8 frames/second) encodes two or more special flows.Media player 201 (or server
210, when appropriate) the most smooth reproduction that can calculate using which stream to produce wanted rate multiple is without increasing CPU or solution
The burden of code hardware.Furthermore it is possible to forward and reverse time ordered pair frame is encoded, as described in this article, to prop up when needed
Hold reverse reproduction.
Fig. 3 be can in certain embodiments implementing such as F.F. of Media Stream, refund and/or slow motion is reset (front
To or inverse direction on) etc. trick play features example procedure 300 flow chart.Various functions shown in Fig. 3 can be with soft
Implementing, the software or firmware are storable in any non-transitory media (for example, depositing in client terminal device 204 for part or firmware
Reservoir or mass storage device) in and can by any kind of microprocessor, microcontroller, digital signal processor or other
FPGA is performing.Various embodiments can implement most of (if not all) in client terminal device 104
Process 300, and other embodiments can implement some function (examples in the media server 210 of CDN 240 or another part
Such as, the function related to special object or object data stream is selected).Can be because to the particular elements of the various functions shown in implementing Fig. 3
This is different between embodiment.
Process 300 suitably includes the replay rate and direction (function 302) of initialization playback, obtains corresponding to speed of resetting
The media object (function 304) in rate and direction, decoding and the obtained media object (function 306) and defeated in response to user of resetting
Enter 310 and guide when needed trick play features adjustment replay rate (function 308,312) or playback direction (function 309,
314) wide variety of functions.Basic function shown in Fig. 3 can be modified with any logic, time or alternate manner when needed,
Supplement or organize by different way.
It is as mentioned above, can implement and/or strengthen special play-back by using thread or other media objects 132,134
Feature, the thread or other media objects 132,134 have the special playback ginseng needed for being suitable for beholder or other users
Several different qualities.Note that to attract based on time or Spatial Cable and sequentially obtain from various streams or organize 232,234,236
Thread or similar object 132,134,136 are simultaneously mixed with each other.Object can sequentially be obtained to prop up on forward and reverse direction
Hold and reset under any speed and in either direction, allow for very high level user's control.
Playback (function 302) can be performed under any speed and in forward and reverse direction initially.In some embodiments
In, playback can be initialized with " freeze frame " or rest image when needed.Function 302 is suitably related to arrange when needed just
Beginning parameter is with to obtain appropriate media object 132,134.
Media object 132,134 (function 304) is obtained by any way can.In various embodiments, client terminal device
104 suitably rightly obtain appropriate thread or other media objects from server 210.(such as) HTTP or similar can be used
Agreement is making this little request with from can obtain via the conventional CDN or other network-type servers of the Internet or another network insertion
Obtain file type object.Equally, RTSP or other streaming protocols can be used to provide client terminal device 204 by object.In various realities
Apply in example, thread or similar object 132,134,136 can use any kind by client terminal device 204 and/or media server 210
The name of class or file identification form are recognizing.For example, title or URL (URL) can be passed through by object
132nd, 134,136 it is positioned in data base 238.In certain embodiments, based in part on corresponding to object it is relative when
Between or spatial index value and/or determine each object according to the stream or including group 232-236 of special object 132,134,136
132nd, 134,136 title.Other embodiments can be by tables of data or other structures, by recognizing that one or more are continuous
The metadata of the relative position in data flow or in any other way identification object.
Yet another embodiment can be selected and be obtained using logic based on server as described above or the like
Appropriate object.Associate specific media objects are selected by any way by client 204 and/or by server 210.It is then used by any kind
Class based on (for example, in response to HTTP GET requests to transmit thread or other files) of file, based on stream (for example,
) and/or selected object is provided client 204 from server 210 by other Transfer Technologies RTSP.
Received media object is decoded and is reproduced when needed for resetting (function 306).Reset generally by visitor
Media player 201 performed on family end device 204 or the like and according to supervision playback speed and/or direction parameter at that time
Performed using routine techniquess.In various embodiments, reproduce media content for reset can relate to client terminal device
It is presented decoded on 204 itself associated display (for example, the display on computer system, mobile phone or the like)
Content.Or, reproduce content and can relate to would indicate that the signal offer of the content to outside TV or other for playback
(for example, television receiver or Set Top Box can be by appropriate output signal be provided to TV or other display come again display
Existing content).For the alternate manner reset, " reproduction " content can consider that place displacement or other long-range displays are general when needed
Read.
If user provides the input 310 to change the playback of Media Stream, then can ask or push in subsequent object
Period obtains the thread with different parameters or other media objects 132,134,136, and/or can adjust playback ginseng when needed
Count to adapt to available object group.
For example, if beholder wishes to change replay rate (function 308), then can be during subsequent object is asked
Obtain for new playback speed with the media object 132,134 of more appropriate frame rate coding (function 312).Due to playback speed
Increase, it is possible that need for equal time cycle obtain the thread with relatively low frame rate or other media objects 134,
136.If conversely, playback speed declines (for example, to support slow motion feature), then may need with same number or extra
The object of frame is with by the effective frame rate of slower playback speed maintenance.If the media with optimum or especially request frame rate
Object 132,134,136 is unavailable, then subsequent request can simply choose with speed wanted compared with close proximity but still provide
Fully data are maintaining the object of the frame rate of image consistency.For example, if beholder asks 8 × playback speed but only
1 × and 4 × flow for available, then 4 × stream is may be selected, wherein subsequent playback abandons the frame not used.Although this may not have
Receive previously so effective with the media object of institute request rate coding, but with 1 × Media Stream is based only upon processing 8 × playback phase
Than which will save the network bandwidth and process resource.Replay rate can smoothly from a rate transition to another speed, or
Person is when needed by user's control.
If user input additionally or alternatively changes direction to be reset (function 309), then still can be according to time, sky
Between or other index sequentially from server 210 retrieve phase-reversal coding thread or other media objects 136;Only inverted sequence
Direction (function 314).For example, can be moved rearwards by by retrieving object from reverse flow 236 with numerical order but in time
(for example, towards time 0 or program start advance) refund function to process.Object 136 is to ask from server 210 wherein
Thread or similar discrete file embodiment in, the process for receiving previous objects is relatively more convenient, because can be simply
Carry out demand file with numeral or other index order.This advantageously allows for generally letting loose in early decoding cache
That what is held refunds function, such as generally in many conventional streaming media embodiments.In some cases, only single thread can be used
Or other objects are realizing the reverse reproduction in relative short time cycle, and then reduce or eliminate to obtaining multiple from server 210
The needs of object.
In addition, in the object 136 with reverse order warp knit code frame is available embodiment, substantially with to frame 102
The same order for being decoded and being reproduced carrys out receiving frame 102.Then, the frame 102 in each object 136 is simply substantially with which
The same order for being received is playing, rather than decodes and cache frame is so that last received frame can be played at first.This
Can generally reduce memory consumption and processor load, and then performance is substantially improved (or in the dress with this ability originally
Put realization and refund feature).
Obtain media object (function 304), reproduce obtained media object for reset (function 306) and in response to
User input 310 can continue through any number of repetition when needed come the general procedure for adjusting playback.Have wherein
Share on the independent stream of different coding parameter in the embodiment of shared index, sequentially can mix from any number of not cocurrent flow
Object with to beholder maintain image seriality, as described above.For example, this can allow forward and reverse playback speed
Smooth acceleration or deceleration, and then very pleasant Consumer's Experience is provided, while preserving bandwidth and computing resource.
In addition, being connect because being provided in the mode for carrying out selection based on wanted replay mode (for example, faster slower, forward/reverse)
The stream of receipts, so enormously simplify to decode and reproduce the process of received streams.Decoder is simply substantially being received
Order decode various frames, consider playback speed or direction without actual, because the media object for being received 132,134,136
Jing especially encodes to provide the replay mode ordered by user.
Various technologies described herein can realize any number of convenient interface and further feature for beholder.It is various
Embodiment can be made to the input provided in actual or virtual " light-push rotary ", Spin Control, slider type and/or other inputs
Respond playback speed is infinitely variable in the way of the speed for changing video-tape machine or similar analog with simulation.Here is a little
In embodiment, the speed that can carry out continuous variable changes (or changing or with the selected multiple of speed), but regardless of in special play-back
The initial replay rate for using before how.For example, user may be suspended starting with video playback, and then advance with
Search for forward or backward to position wanted content.User then can return to zero-speed when user finds the content that he or she wants
Degree state.
F.F. and slow motion effect similarly can be controlled by the rotating disk in hardware or software user interface.For example, use
The forward and reverse rotation rotating disk in family is more remote, and the replay rate produced by display is faster or slower.Replay rate can
Rightly in continuously smooth mode changing.In some embodiments, speed can return to initial ready state replay rate
(for example, time-out, rule playback or the like).In one embodiment, slide block or rotation can be implemented in PC player interfaces
To simulate spring-loaded Mechanical course part, the spring-loaded Mechanical course part discharges the control piece in user to control piece
Shi Chaoxiang null effect location bias.Therefore, various embodiments provide very pleasant beholder's experience, its allow user according to
The footwork of their own come control reset.These one exemplary embodiments provide the preferable availability of playback experience in stream context
And captivation, and the playback experience similar to traditional TV playback experiences is provided.Other embodiments can provide different characteristic, appropriate
When include other types of user interface.
In the foregoing written description, numerous details are stated.However, the those skilled in the art for benefiting from the present invention will be easy
Understand, many different embodiments can be put into practice in the case where not having these specific details.In some instances, in form of a block diagram and
Show well-known construction and device in no detail, in order to avoid obscure more related details.
Some parts described above in detail are the algorithms according to the operation carried out to the data bit in computer storage
Represent to present with symbol.These arthmetic statements and represent be data processing field technical staff for most effectively by which
The essence of work conveys to the means of others skilled in the art.Herein and generally algorithm is interpreted as causing to tie
The self-congruent sequence of steps of fruit.The step is to need the step of carrying out physical manipulation to physical quantity.Generally, but may not,
This tittle is in the form of the signal of telecommunication or magnetic signal that can be stored, transmit, combine, compare and otherwise manipulate.Not
When ground prove that it is easily, to be mainly and that these signals are referred to as position, value, element, symbol, character, project, numeral or the like
In the reason for commonly used.
It should be kept in mind, however, that all these and similar terms should be associated with appropriate physical quantity and be only to be applied to these
The convenient label of amount.Separately there is especially statement unless such as understood from discussing herein, otherwise it will be appreciated that in whole description, utilizing
For example " receive ", " coding ", " generation ", " division ", " process ", " calculating ", " accounting ", " it is determined that ", " display " or the like etc.
The discussion of term may refer to action and the process of computer system or similar electronic data processing system, the electronic data processing
Data that physics (for example, electronics) measures are expressed as in the RS of system manipulation computer system and are transformed into
Physics is similarly represented as in computer system memory or depositor or other this type of information storage, transmission or display devices
Other data of amount.
Various embodiments may also refer to a kind of apparatuses for performing the operations herein.This equipment can Jing special configurations with
For the desired purposes, or which can be comprising the general purpose computer system by the computer program being stored in computer system especially programming
System.This computer program can be stored in any nonvolatile computer-readable with source or object identification code form as software or firmware and deposit
In storage media, such as but not limited to any kind of disk (including floppy discs, optical disc, CD-ROM and magnetooptic disk),
Read only memory (ROM), random access memory (RAM), flash memory, EPROM, EEPROM, magnetic or optical card, or be adapted to
In any kind of media of storage e-command.
Term " exemplary " used herein come represent can have an example of any number of alternative, example or
Explanation.Here depicted as " exemplary " any embodiment need not should be interpreted that it is preferably or more favourable than other embodiments.
Although presenting some one exemplary embodiments in foregoing detailed description, it is to be understood that there is the equivalent change of a large amount of replacements
Type, and example presented herein is not intended to limit the scope of the present invention, the suitability or configuration by any way.Conversely, can
In the case of the scope without departing from claims and its legal equivalents various features described herein function and
Various changes are made in arrangement.