US20080310496A1 - Real-Time Key Frame Generation - Google Patents
Real-Time Key Frame Generation Download PDFInfo
- Publication number
- US20080310496A1 US20080310496A1 US11/761,519 US76151907A US2008310496A1 US 20080310496 A1 US20080310496 A1 US 20080310496A1 US 76151907 A US76151907 A US 76151907A US 2008310496 A1 US2008310496 A1 US 2008310496A1
- Authority
- US
- United States
- Prior art keywords
- media data
- encoded
- key frames
- request
- frames
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17336—Handling of requests in head-ends
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/164—Feedback from the receiver or from the transmission channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/266—Channel 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
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
Definitions
- the media receivers 122 , 126 may also be implemented as any of a variety of conventional media rendering or computing devices, including, for example, a set-top box, a television, a video gaming console, a desktop PC, a notebook or portable computer, a workstation, a mainframe computer, an Internet appliance, a handheld PC, a cellular telephone or other wireless communications device, a personal digital assistant (PDA), or combinations thereof.
- the media receivers 122 , 126 may include a tuner as described above.
Abstract
Description
- Media data may be encoded in a number of different formats. Some formats, including but not limited to
MPEG 1, MPEG-2, and MPEG-4 (all standardized by the Motion Picture Experts Group (“MPEG”)), as well as Windows Media Video (WMV) (developed by Microsoft Corporation of Redmond, Wash.) and H.264, encode media data using both independent and predictive data frames. Independent data frames, or “key frames”, are self-contained in that a key frame is encoded without reference to any other data frames. In contrast, a predictive data frame encodes differences between that frame and previous and/or later data frames. - Because key frames may be decoded without reference to other data frames, they may be used as reference frames in digital media playback “trick modes”, such as fast-forward, rewind, and seek operations, to seed the decoding of related progressive frames. For example, some media players may implement high speed fast-forward and rewind playback of a media data stream by playing only key frames.
- Because predictive frames generally offer a greater compression ratio than key frames, some media files utilize a lower density of key frames to decrease the bit rate, and consequently the overall size, of the file. However, as the frequency of key frames decreases, the similarities between adjacent key frames also may decrease and/or the overall frame-rate decreases. This may cause trick-mode playback to become choppier. As a result, some media data streams may have too few key frames for trick playback modes to work well. As a specific example, the playback of a video data stream with one key frame for every eight seconds of media data in an 8× (i.e. 8 times normal playback speed) fast-forward or rewind mode would result in the display of one frame per second. Likewise, playback of such a file in a 4× playback mode would result in the display of one frame every two seconds. Such playback may resemble a slide show of relatively unrelated images, rather than high-speed playback of a complete video scene.
- Further, some media compression standards, such as MPEG-2, may provide for the creation of syntactically valid media data streams that have no key frames at all. Some streaming media sources, such as various international television stations, may encode video streams in such a manner to reduce the overall bit rate of the stream. As a result, these streams may not be playable with full trick-mode functionality on some players. Furthermore, because of the relative obscurity of this portion of the MPEG-2 specification, some decoders may not be configured to play such streams even at normal playback speed (“1× playback”).
- Accordingly, the real-time generation of key frames in a media data stream is described below in the Detailed Description. For example, one disclosed embodiment provides a method for processing encoded media data comprising receiving a request to play back the encoded media data from a media receiver, generating one or more key frames from the encoded media data on the media server, and sending the generated key frame or key frames to the media receiver. The key frames are generated by decoding the media data, and then encoding the key frames from the decoded media data. In this manner, the frequency of key frames in a media data stream may be increased to improve trick mode and/or 1× playback.
- This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Furthermore, the claimed subject matter is not limited to implementations that solve any or all disadvantages noted in any part of this disclosure.
-
FIG. 1 shows an example of an embodiment of a home media environment. -
FIG. 2 shows a block diagram depicting embodiments of a media server and a media receiver of the embodiment ofFIG. 1 . -
FIG. 3 shows a block diagram of an embodiment of a key frame generator of the media server ofFIG. 1 . -
FIG. 4 shows a process flow of an embodiment of a method for generating key frames in streaming media in real time. - Prior to discussing the real-time generation of key frames in streaming media data, one embodiment of a streaming media environment is described.
FIG. 1 depicts an examplehome entertainment environment 100 including aliving room 102 and abedroom 104. Central to thehome entertainment environment 100 is amedia server 106, which in this implementation situated in theliving room 102, but which could be located anywhere within the house. In this implementation, themedia server 106 is a conventional personal computer (PC) configured to run a multimedia software package, for example, the Windows Vista Ultimate operating system with Windows Media Center (available from Microsoft Corporation of Redmond, Wash.). In such a configuration, themedia server 106 is able to integrate full computing functionality with a complete home entertainment system into a single PC. For example, a user can watch television (TV) in one graphical window of a video monitor, while sending e-mail or working on a spreadsheet in another graphical window on the same monitor. In addition, themedia server 106 may also include other features or components, for example: a digital video recorder (DVR) to capture live TV shows for future viewing or to record the future broadcast of a single program or series; a compact disc (CD) or digital video disc (DVD)drive 108 for disc media playback; amemory drive 110 for integrated storage of and access to a user's recorded content, such as TV shows, songs, pictures, and home videos; and an electronic program guide (EPG) (not shown inFIG. 1 ). - Instead of a conventional PC, the
media server 106 may comprise a variety of other devices capable of storing and distributing media content including, for example, a notebook or portable computer, a tablet PC, a workstation, a mainframe computer, a server, an Internet appliance, or combinations thereof. Themedia server 106 may also be a set-top box capable of delivering media content to a computer where it may be streamed, or the set-top box itself could stream the media content. As themedia server 106 may be a full function computer running an operating system, the user may also have the option to run standard computer programs (e.g., word processing and spreadsheets), send and receive e-mails, browse the Internet, or perform other common functions. - In addition to storing media content, the
media server 106 may be connected with a variety of media sources, for example, acable connection 114, asatellite receiver 116, an antenna (not shown for the sake of graphic clarity), and/or a network such as the Internet 118. A user may thus control a live stream of media content (e.g., TV content) received, for example, via thecable connection 114, thesatellite receiver 116, or antenna. This capability is enabled by one or more tuners residing in themedia server 106. The one or more tuners may alternatively be located remote from themedia server 106. In either case, the user may choose a tuner to fit any particular preferences. For example, a user wishing to watch both standard definition (SD) and high definition (HD) content may employ a tuner configured for both types of content. Alternately, the user may employ an SD tuner for SD content and an HD tuner for HD content separately. - The
home environment 100 may also include one or more network devices functioning asmedia receivers media server 106 through anetwork 128, for example, a local area network (LAN). In an example embodiment, eachmedia receiver media receivers media receivers - The
network 128 may comprise a wired and/or wireless network, for example, cable, Ethernet, WiFi, a wireless access point (WAP), or any other electronic coupling means, including the Internet. Thenetwork 128 may enable communication between themedia server 106, themedia receivers - One or more video display devices, for example a
main TV 120 in theliving room 102, asecondary TV 124 in thebedroom 104, and avideo monitor 112 may be situated throughout thehome environment 100. These video display devices may be connected with themedia server 106 via thenetwork 128 either directly or via themedia receivers FIG. 1 , themain TV 120 and thesecondary TV 124 may be coupled to themedia receivers video monitor 112 may be coupled with themedia server 106 directly via a video cable. Themedia server 106 andmedia receivers video display devices home network 128 from themedia server 106 situated in theliving room 104. - The
media receivers media server 106. Media content, and particularly video and TV content, may be transmitted from themedia server 106 to themedia receivers media receivers TVs TVs monitor 112. Such additional media content may be delivered in a variety of ways using different protocols, including, for example, standard Remote Desktop Protocol (RDP), Graphics Device Interface (GDI), or Hypertext Markup Language (HTML). -
Media receivers - Further, some media streams may include only predictive frames and no key frames, even though the compression standard utilized provides a way to encode both key frames and predictive frames. An example of this is MPEG-2, which provides a way to encode both predictive frames and key frames, but that also allows for the encoding of data purely with predictive frames. With such media streams, a media receiver that implements trick-mode playback via key frames may not properly function in trick modes. Furthermore, because this portion of the MPEG-2 specification is not widely used or implemented, some media receivers may not be able to play such media streams properly, even at 1× playback.
- To enable or improve trick mode operation (and, in some players, 1× operation) with media streams having either a low density of key frames or no key frames,
media server 106 may be configured to generate key frames for the media data, and to send the generated key frames tomedia receivers media receivers - Prior to discussing these embodiments in detail, it will be appreciated that the embodiments described herein may be implemented, for example, via computer-executable instructions or code, such as programs, stored on a computer-readable storage medium and executed by a computing device. Generally, programs include routines, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types. The term “program” as used herein may connote a single program or multiple programs acting in concert, and may be used to denote applications, services, or any other type or class of program. Likewise, the terms “computer” and “computing device” as used herein include any device that electronically executes one or more programs, including but not limited to
media server 106,media receivers -
FIG. 2 is a block diagram showing an embodiment ofmedia server 106 and an embodiment of one ofmedia receivers Media server 106 comprises an A/V control module 200, an A/V source 202, and a real-time keyframe generation module 204. The A/V control module 200 may be configured to determine when a key frame is to be constructed, and what data to use to generate the key frame. The A/V source 202 sources A/V media samples from a media source such as a hard drive, optical disc, network, or any other suitable media source. The real-time keyframe generation module 204 generates key frames under the direction of A/V control module 200 by decoding selected data received from the A/V source, thereby providing sufficient context to generate a key frame. Various embodiments of methods for generating key frames are described in more detail below. - Continuing with
FIG. 2 ,media receivers user input module 210, amedia decoder 212, and arenderer 214. Theuser input module 210 allows users to input commands related to the selection and playback of media, including but not limited to trick-mode commands. Themedia decoder 212 decodes media samples for the current playback position before passing decoded A/V information to therenderer 214 for presentation. -
FIG. 3 shows a block diagram of one embodiment of a keyframe generation module 204. In the embodiment ofFIG. 3 , keyframe generation module 204 comprises adecoder 220 that receives data from amedia data reader 221 in A/V source 202. This data is illustrated inFIG. 3 as a stream of predictive data frames (labeled “P”). Keyframe generation module 204 further includes akey frame generator 222 that receives decoded media data from thedecoder 220, and anencoder 224 that receives decoded data from thekey frame generator 222 and generates an encoded key frame. Thekey frame generator 222 also sends generated key frames (labeled “K”) to anetwork preparation module 226 for insertion into a media stream for transmission to a media receiver over a network. - Data may be provided to the
decoder 220 continuously, or on an as-needed basis. Where it is desired to generate key frames on a fairly frequent basis (for example, to enable a media stream containing no key frames or a low frequency of key frames to operate smoothly at slow trick mode speeds), data may be provided to thedecoder 220 on a continuous basis so that thekey frame generator 222 has sufficient context to generate key frames at the desired frequency. On the other hand, where it is desired only to enable a seek operation, rather than fast-forward or rewind modes, data may be provided to the decoder only upon receipt of a seek command. In this case, data immediately preceding the requested seek point may be provided to thedecoder 220 so that thekey frame generator 222 has sufficient context to construct a seed key frame at the requested seek point for the rendering of an image at the seek point. - It will be noted that, in the embodiment of
FIG. 3 , data from themedia data reader 221 is sent directly to thenetwork preparation module 226 at the same time it is sent to decoder. This is illustrated inFIG. 3 as a group of predictive data frames “P” traveling from thereader 221 to thenetwork preparation module 226. In this manner, data from the A/V source 202 is continuously streamed across the network in parallel with the key frame generation process. This allows theencoder 224 of the keyframe generation module 226 to be run only when a key frame is being generated, rather than full-time. This may save computing resources compared to running theencoder 224 on a full-time basis. Further, this also may help to preserve video quality compared to running theencoder 224 on a full-time basis, as the decode/encode step used when running theencoder 224 on a full-time basis may potentially lead to a loss of video quality, depending upon the encoding method used. - The key
frame generation module 204 may be used to generate key frames in any suitable manner. As one illustrative example, upon receipt of a request for a fast-forward or rewind operation, thekey frame generator 222 may examine every nth frame, with n defined by the fast-forward or rewind speed the user has selected (wherein n is larger for higher speeds), and generate a key frame that is representative of that frame. The resulting key frames may then be rendered by the presentation device at greater than 1× playback speed to deliver a fast-forward or rewind experience. As another illustrative example, upon request of a seek operation or after another such discontinuity in play, thekey frame generator 222 may examine the frames preceding the seek point or discontinuity, and then create a key frame that can be used to seed the media decoder (shown at 212 inFIG. 2 ) in the media receiver. - Additionally, the key
frame generation module 204 may also be used to transrate a media data stream. For example, the A/V control module 200 (or other module) may determine that the requested media stream has a bit rate that exceeds the bandwidth of the network link between the media server and the requesting media receiver (shown at 106 and 122, 126, respectively, inFIG. 1 ). In this case, the A/V control module may direct the keyframe generation module 204 to generate new key frames, media sequences, or other media samples that require less bandwidth to deliver than the original video stream. In one specific example, selected segments of a media stream may be collapsed into a single key frame to reduce the bit-rate of the media stream. It will be understood that the specific implementations of real-time key frame generation described above are set forth for the purpose of example, and are not intended to be limiting in any manner. -
FIG. 4 shows a process flow depicting an embodiment of amethod 400 of generating key frames in a media stream in real time.Method 400 may be used on any suitable streaming media device, including but not limited tomedia server 106 ofFIG. 1 , other media servers in other use environments, and/or peer devices in peer-to-peer use environments.Method 400 first comprises receiving a request from a media receiver to play back encoded media data (at 402). The request to play back of the encoded media data may request the data to be played in any of a number of ways. For example, the request may be a request to stream media data to the media receiver for 1× playback (as indicated at 404). Likewise, the request may be a request for playback in a trick mode, such as a request for playback in a fast-forward mode (as indicated at 406), for playback in a rewind mode (as indicated at 408), or for a seek operation (as indicated at 410). It will be appreciated that these specific requests are set forth for the purpose of example, and are not intended to be limiting in any sense. - Upon receipt of the request to play back encoded media,
method 400 next comprises decoding the encoded media data (at 412), generating key frames from the encoded media data (at 414), and transmitting the generated key frames to the media receiver (at 416). Each of these steps may be performed in any suitable manner. For example, the media data may be decoded either continuously for the duration of the streaming of media to the media receiver, or only upon receipt of a request for trick-mode operation and during the duration of the trick mode operation. Continuous decoding may be utilized where multiple key frames are to be generated at regular intervals, for example, where it is desired to generate key frames for the proper playback of a media file having only predictive frames. - Continuous decoding may also be used for the duration of a fast-forward/rewind operation to generate a selected frequency of key frames for the purpose of enabling smooth rewind/fast-forward playback. Likewise, selective decoding may be used where it is desired to generate a key frame at a specific seek location or other discontinuity. It will be appreciated that these specific implementations are described for illustrative purposes, and that either continuous or selective decoding may be used in any suitable implementation. Further, it will be understood that even where selective decoding is used, the decoder may decode predictive frames for some length of time to develop sufficient context for the generation of a key frame.
- Continuing with
FIG. 4 , key frames may be generated from the decoded media data and transmitted to the media receiver in any suitable manner. For example, as described above, key frames may be generated by encoding a selected frame of decoded data as an independent frame. In some embodiments, the encoder may run continuously, and may output both key frames and predictive frames. In these embodiments, the output of the encoder may be an encoded data stream having a higher density or frequency of key frames than the original data. In other embodiments, the encoder may be run only when a key frame is needed. In these embodiments the encoder may output only key frames, and the key frames may then be inserted in real-time into a stream of the original encoded data, as shown inFIG. 3 . - Where key frames are generated in regular intervals (e.g. during rewind, fast-forward, or 1× playback modes), the key frames may be generated and transmitted at any suitable frequency. Suitable frequencies may include, but are not limited to, frequencies sufficiently high to produce a desired trick-mode playback experience while being sufficiently low not to exceed the bandwidth of the network link with the media receiver. Further, in some embodiments, the available bandwidth of the network link and/or the computing resources available optionally may be determined by A/V control module (shown at 200 in
FIG. 2 ) and used to determine a key frame generation frequency, as shown inFIG. 4 at 415. - While described herein in the context of a home streaming media environment, it will be appreciated that the concepts disclosed herein may be used in any suitable streaming media environment, including but not limited to other client-sever-based use environments and peer-to-peer-based use environments. Furthermore, while the media server and media receiver are shown herein as being located on different devices, it will be understood that these components may comprise separate components, modules, programs or other entities running on a single device.
- It will further be understood that the configurations and/or approaches described herein are exemplary in nature, and that these specific embodiments or examples are not to be considered in a limiting sense, because numerous variations are possible. The specific routines or methods described herein may represent one or more of any number of processing strategies. As such, various acts illustrated may be performed in the sequence illustrated, in other sequences, in parallel, or in some cases omitted. Likewise, the order of any of the above-described processes is not necessarily required to achieve the features and/or results of the embodiments described herein, but is provided for ease of illustration and description. The subject matter of the present disclosure includes all novel and nonobvious combinations and subcombinations of the various processes, systems and configurations, and other features, functions, acts, and/or properties disclosed herein, as well as any and all equivalents thereof.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/761,519 US7558760B2 (en) | 2007-06-12 | 2007-06-12 | Real-time key frame generation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/761,519 US7558760B2 (en) | 2007-06-12 | 2007-06-12 | Real-time key frame generation |
Publications (2)
Publication Number | Publication Date |
---|---|
US20080310496A1 true US20080310496A1 (en) | 2008-12-18 |
US7558760B2 US7558760B2 (en) | 2009-07-07 |
Family
ID=40132289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/761,519 Active 2027-08-05 US7558760B2 (en) | 2007-06-12 | 2007-06-12 | Real-time key frame generation |
Country Status (1)
Country | Link |
---|---|
US (1) | US7558760B2 (en) |
Cited By (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090165067A1 (en) * | 2007-10-16 | 2009-06-25 | Leon Bruckman | Device Method and System for Providing a Media Stream |
US20100050225A1 (en) * | 2008-08-25 | 2010-02-25 | Broadcom Corporation | Source frame adaptation and matching optimally to suit a recipient video device |
US20130044821A1 (en) * | 2011-01-05 | 2013-02-21 | Rovi Technologies Corporation | Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol |
US20140267899A1 (en) * | 2013-03-13 | 2014-09-18 | Comcast Cable Communications, Llc | Methods And Systems For Intelligent Playback |
US8909922B2 (en) | 2011-09-01 | 2014-12-09 | Sonic Ip, Inc. | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
US8914836B2 (en) | 2012-09-28 | 2014-12-16 | Sonic Ip, Inc. | Systems, methods, and computer program products for load adaptive streaming |
US8918908B2 (en) | 2012-01-06 | 2014-12-23 | Sonic Ip, Inc. | Systems and methods for accessing digital content using electronic tickets and ticket tokens |
US8997161B2 (en) | 2008-01-02 | 2015-03-31 | Sonic Ip, Inc. | Application enhancement tracks |
US8997254B2 (en) | 2012-09-28 | 2015-03-31 | Sonic Ip, Inc. | Systems and methods for fast startup streaming of encrypted multimedia content |
US9094737B2 (en) | 2013-05-30 | 2015-07-28 | Sonic Ip, Inc. | Network video streaming with trick play based on separate trick play files |
US9124773B2 (en) | 2009-12-04 | 2015-09-01 | Sonic Ip, Inc. | Elementary bitstream cryptographic material transport systems and methods |
US9143812B2 (en) | 2012-06-29 | 2015-09-22 | Sonic Ip, Inc. | Adaptive streaming of multimedia |
US9184920B2 (en) | 2006-03-14 | 2015-11-10 | Sonic Ip, Inc. | Federated digital rights management scheme including trusted systems |
US9191457B2 (en) | 2012-12-31 | 2015-11-17 | Sonic Ip, Inc. | Systems, methods, and media for controlling delivery of content |
US9197685B2 (en) | 2012-06-28 | 2015-11-24 | Sonic Ip, Inc. | Systems and methods for fast video startup using trick play streams |
US9201922B2 (en) | 2009-01-07 | 2015-12-01 | Sonic Ip, Inc. | Singular, collective and automated creation of a media guide for online content |
US9247317B2 (en) | 2013-05-30 | 2016-01-26 | Sonic Ip, Inc. | Content streaming with client device trick play index |
US9264475B2 (en) | 2012-12-31 | 2016-02-16 | Sonic Ip, Inc. | Use of objective quality measures of streamed content to reduce streaming bandwidth |
US9313510B2 (en) | 2012-12-31 | 2016-04-12 | Sonic Ip, Inc. | Use of objective quality measures of streamed content to reduce streaming bandwidth |
US9344517B2 (en) | 2013-03-28 | 2016-05-17 | Sonic Ip, Inc. | Downloading and adaptive streaming of multimedia content to a device with cache assist |
US9343112B2 (en) | 2013-10-31 | 2016-05-17 | Sonic Ip, Inc. | Systems and methods for supplementing content from a server |
US9369687B2 (en) | 2003-12-08 | 2016-06-14 | Sonic Ip, Inc. | Multimedia distribution system for multimedia files with interleaved media chunks of varying types |
EP2649556A4 (en) * | 2010-12-09 | 2017-05-17 | Nokia Technologies Oy | Limited-context-based identifying key frame from video sequence |
US9681198B2 (en) * | 2015-08-31 | 2017-06-13 | Roku, Inc. | Dynamic generation of trick mode data |
US9866878B2 (en) | 2014-04-05 | 2018-01-09 | Sonic Ip, Inc. | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
US9906785B2 (en) | 2013-03-15 | 2018-02-27 | Sonic Ip, Inc. | Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata |
US9967305B2 (en) | 2013-06-28 | 2018-05-08 | Divx, Llc | Systems, methods, and media for streaming media content |
US10032485B2 (en) | 2003-12-08 | 2018-07-24 | Divx, Llc | Multimedia distribution system |
US10148989B2 (en) | 2016-06-15 | 2018-12-04 | Divx, Llc | Systems and methods for encoding video content |
US10397292B2 (en) | 2013-03-15 | 2019-08-27 | Divx, Llc | Systems, methods, and media for delivery of content |
US10452715B2 (en) | 2012-06-30 | 2019-10-22 | Divx, Llc | Systems and methods for compressing geotagged video |
US10498795B2 (en) | 2017-02-17 | 2019-12-03 | Divx, Llc | Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming |
US10591984B2 (en) | 2012-07-18 | 2020-03-17 | Verimatrix, Inc. | Systems and methods for rapid content switching to provide a linear TV experience using streaming content distribution |
US10687095B2 (en) | 2011-09-01 | 2020-06-16 | Divx, Llc | Systems and methods for saving encoded media streamed using adaptive bitrate streaming |
US10708587B2 (en) | 2011-08-30 | 2020-07-07 | Divx, Llc | Systems and methods for encoding alternative streams of video for playback on playback devices having predetermined display aspect ratios and network connection maximum data rates |
US10721285B2 (en) | 2016-03-30 | 2020-07-21 | Divx, Llc | Systems and methods for quick start-up of playback |
US10902883B2 (en) | 2007-11-16 | 2021-01-26 | Divx, Llc | Systems and methods for playing back multimedia files incorporating reduced index structures |
US10931982B2 (en) | 2011-08-30 | 2021-02-23 | Divx, Llc | Systems and methods for encoding and streaming video encoded using a plurality of maximum bitrate levels |
US11457054B2 (en) | 2011-08-30 | 2022-09-27 | Divx, Llc | Selection of resolutions for seamless resolution switching of multimedia content |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100918295B1 (en) * | 2007-10-24 | 2009-09-18 | 한국전자통신연구원 | Method for video traffic prediction and apparatus thereof |
US8238420B1 (en) * | 2008-01-24 | 2012-08-07 | Adobe Systems Incorporated | Video content transcoding for mobile devices |
US8265168B1 (en) * | 2008-02-01 | 2012-09-11 | Zenverge, Inc. | Providing trick mode for video stream transmitted over network |
US8275816B1 (en) | 2009-11-06 | 2012-09-25 | Adobe Systems Incorporated | Indexing messaging events for seeking through data streams |
US20110191679A1 (en) * | 2010-02-02 | 2011-08-04 | Futurewei Technologies, Inc. | System and Method for Online Media Preview |
US9445135B2 (en) | 2010-09-17 | 2016-09-13 | Futurewei Technologies, Inc. | Method and apparatus for scrub preview services |
US8990690B2 (en) | 2011-02-18 | 2015-03-24 | Futurewei Technologies, Inc. | Methods and apparatus for media navigation |
US9680901B2 (en) * | 2013-03-14 | 2017-06-13 | Openwave Mobility, Inc. | Method, apparatus and non-transitory computer medium for encoding data of a media file |
US10218981B2 (en) * | 2015-02-11 | 2019-02-26 | Wowza Media Systems, LLC | Clip generation based on multiple encodings of a media stream |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5991403A (en) * | 1996-12-23 | 1999-11-23 | Intel Corporation | Recoverable cryptographic transformation on YUV data suitable for compressions |
US6021250A (en) * | 1994-07-29 | 2000-02-01 | Sharp Kabushiki Kaisha | Coded data control device |
US6097842A (en) * | 1996-09-09 | 2000-08-01 | Sony Corporation | Picture encoding and/or decoding apparatus and method for providing scalability of a video object whose position changes with time and a recording medium having the same recorded thereon |
US6122433A (en) * | 1994-10-20 | 2000-09-19 | Thomson Licensing S.A. | HDTV trick play stream derivation for VCR |
US20010020981A1 (en) * | 2000-03-08 | 2001-09-13 | Lg Electronics Inc. | Method of generating synthetic key frame and video browsing system using the same |
US20020130976A1 (en) * | 2001-03-13 | 2002-09-19 | Koninklijke Philips Electronics N.V. | Dynamic key frame generation and usage |
US20040268397A1 (en) * | 2003-06-27 | 2004-12-30 | Microsoft Corporation | Rate change |
US20050114909A1 (en) * | 1999-04-01 | 2005-05-26 | Guillaume Mercier | High definition media storage structure and playback mechanism |
US20060090009A1 (en) * | 2004-10-22 | 2006-04-27 | Microsoft Corporation | Advanced trick mode |
US20070011343A1 (en) * | 2005-06-28 | 2007-01-11 | Microsoft Corporation | Reducing startup latencies in IP-based A/V stream distribution |
US20070058926A1 (en) * | 2005-09-09 | 2007-03-15 | Microsoft Corporation | Optimizing trick modes for streaming media content |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05236466A (en) * | 1992-02-25 | 1993-09-10 | Nec Corp | Device and method for inter-frame predictive image encoding for motion compensation |
-
2007
- 2007-06-12 US US11/761,519 patent/US7558760B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6021250A (en) * | 1994-07-29 | 2000-02-01 | Sharp Kabushiki Kaisha | Coded data control device |
US6122433A (en) * | 1994-10-20 | 2000-09-19 | Thomson Licensing S.A. | HDTV trick play stream derivation for VCR |
US6097842A (en) * | 1996-09-09 | 2000-08-01 | Sony Corporation | Picture encoding and/or decoding apparatus and method for providing scalability of a video object whose position changes with time and a recording medium having the same recorded thereon |
US5991403A (en) * | 1996-12-23 | 1999-11-23 | Intel Corporation | Recoverable cryptographic transformation on YUV data suitable for compressions |
US20050114909A1 (en) * | 1999-04-01 | 2005-05-26 | Guillaume Mercier | High definition media storage structure and playback mechanism |
US20010020981A1 (en) * | 2000-03-08 | 2001-09-13 | Lg Electronics Inc. | Method of generating synthetic key frame and video browsing system using the same |
US20020130976A1 (en) * | 2001-03-13 | 2002-09-19 | Koninklijke Philips Electronics N.V. | Dynamic key frame generation and usage |
US20040268397A1 (en) * | 2003-06-27 | 2004-12-30 | Microsoft Corporation | Rate change |
US20060090009A1 (en) * | 2004-10-22 | 2006-04-27 | Microsoft Corporation | Advanced trick mode |
US20070011343A1 (en) * | 2005-06-28 | 2007-01-11 | Microsoft Corporation | Reducing startup latencies in IP-based A/V stream distribution |
US20070058926A1 (en) * | 2005-09-09 | 2007-03-15 | Microsoft Corporation | Optimizing trick modes for streaming media content |
Cited By (104)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11509839B2 (en) | 2003-12-08 | 2022-11-22 | Divx, Llc | Multimedia distribution system for multimedia files with packed frames |
US11017816B2 (en) | 2003-12-08 | 2021-05-25 | Divx, Llc | Multimedia distribution system |
US10257443B2 (en) | 2003-12-08 | 2019-04-09 | Divx, Llc | Multimedia distribution system for multimedia files with interleaved media chunks of varying types |
US11355159B2 (en) | 2003-12-08 | 2022-06-07 | Divx, Llc | Multimedia distribution system |
US11012641B2 (en) | 2003-12-08 | 2021-05-18 | Divx, Llc | Multimedia distribution system for multimedia files with interleaved media chunks of varying types |
US9369687B2 (en) | 2003-12-08 | 2016-06-14 | Sonic Ip, Inc. | Multimedia distribution system for multimedia files with interleaved media chunks of varying types |
US11735227B2 (en) | 2003-12-08 | 2023-08-22 | Divx, Llc | Multimedia distribution system |
US11735228B2 (en) | 2003-12-08 | 2023-08-22 | Divx, Llc | Multimedia distribution system |
US11297263B2 (en) | 2003-12-08 | 2022-04-05 | Divx, Llc | Multimedia distribution system for multimedia files with packed frames |
US11159746B2 (en) | 2003-12-08 | 2021-10-26 | Divx, Llc | Multimedia distribution system for multimedia files with packed frames |
US10032485B2 (en) | 2003-12-08 | 2018-07-24 | Divx, Llc | Multimedia distribution system |
US11886545B2 (en) | 2006-03-14 | 2024-01-30 | Divx, Llc | Federated digital rights management scheme including trusted systems |
US10878065B2 (en) | 2006-03-14 | 2020-12-29 | Divx, Llc | Federated digital rights management scheme including trusted systems |
US9184920B2 (en) | 2006-03-14 | 2015-11-10 | Sonic Ip, Inc. | Federated digital rights management scheme including trusted systems |
US9798863B2 (en) | 2006-03-14 | 2017-10-24 | Sonic Ip, Inc. | Federated digital rights management scheme including trusted systems |
US9185151B2 (en) | 2007-10-16 | 2015-11-10 | Orckit-Corrigent Ltd. | Device, method and system for media packet distribution |
US20110083146A1 (en) * | 2007-10-16 | 2011-04-07 | Leon Bruckman | Device, method and system for media packet distribution |
US20090165067A1 (en) * | 2007-10-16 | 2009-06-25 | Leon Bruckman | Device Method and System for Providing a Media Stream |
US11495266B2 (en) | 2007-11-16 | 2022-11-08 | Divx, Llc | Systems and methods for playing back multimedia files incorporating reduced index structures |
US10902883B2 (en) | 2007-11-16 | 2021-01-26 | Divx, Llc | Systems and methods for playing back multimedia files incorporating reduced index structures |
US8997161B2 (en) | 2008-01-02 | 2015-03-31 | Sonic Ip, Inc. | Application enhancement tracks |
US8793749B2 (en) * | 2008-08-25 | 2014-07-29 | Broadcom Corporation | Source frame adaptation and matching optimally to suit a recipient video device |
US20100050225A1 (en) * | 2008-08-25 | 2010-02-25 | Broadcom Corporation | Source frame adaptation and matching optimally to suit a recipient video device |
US9201922B2 (en) | 2009-01-07 | 2015-12-01 | Sonic Ip, Inc. | Singular, collective and automated creation of a media guide for online content |
US9672286B2 (en) | 2009-01-07 | 2017-06-06 | Sonic Ip, Inc. | Singular, collective and automated creation of a media guide for online content |
US10437896B2 (en) | 2009-01-07 | 2019-10-08 | Divx, Llc | Singular, collective, and automated creation of a media guide for online content |
US9706259B2 (en) | 2009-12-04 | 2017-07-11 | Sonic Ip, Inc. | Elementary bitstream cryptographic material transport systems and methods |
US9124773B2 (en) | 2009-12-04 | 2015-09-01 | Sonic Ip, Inc. | Elementary bitstream cryptographic material transport systems and methods |
US10484749B2 (en) | 2009-12-04 | 2019-11-19 | Divx, Llc | Systems and methods for secure playback of encrypted elementary bitstreams |
US11102553B2 (en) | 2009-12-04 | 2021-08-24 | Divx, Llc | Systems and methods for secure playback of encrypted elementary bitstreams |
US10212486B2 (en) | 2009-12-04 | 2019-02-19 | Divx, Llc | Elementary bitstream cryptographic material transport systems and methods |
EP2649556A4 (en) * | 2010-12-09 | 2017-05-17 | Nokia Technologies Oy | Limited-context-based identifying key frame from video sequence |
US10382785B2 (en) | 2011-01-05 | 2019-08-13 | Divx, Llc | Systems and methods of encoding trick play streams for use in adaptive streaming |
US9247312B2 (en) * | 2011-01-05 | 2016-01-26 | Sonic Ip, Inc. | Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol |
US9210481B2 (en) | 2011-01-05 | 2015-12-08 | Sonic Ip, Inc. | Systems and methods for performing smooth visual search of media encoded for adaptive bitrate streaming via hypertext transfer protocol using trick play streams |
US9025659B2 (en) | 2011-01-05 | 2015-05-05 | Sonic Ip, Inc. | Systems and methods for encoding media including subtitles for adaptive bitrate streaming |
US10368096B2 (en) | 2011-01-05 | 2019-07-30 | Divx, Llc | Adaptive streaming systems and methods for performing trick play |
US9883204B2 (en) | 2011-01-05 | 2018-01-30 | Sonic Ip, Inc. | Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol |
US11638033B2 (en) | 2011-01-05 | 2023-04-25 | Divx, Llc | Systems and methods for performing adaptive bitrate streaming |
US8914534B2 (en) | 2011-01-05 | 2014-12-16 | Sonic Ip, Inc. | Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol |
US20130044821A1 (en) * | 2011-01-05 | 2013-02-21 | Rovi Technologies Corporation | Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol |
US10931982B2 (en) | 2011-08-30 | 2021-02-23 | Divx, Llc | Systems and methods for encoding and streaming video encoded using a plurality of maximum bitrate levels |
US11457054B2 (en) | 2011-08-30 | 2022-09-27 | Divx, Llc | Selection of resolutions for seamless resolution switching of multimedia content |
US10708587B2 (en) | 2011-08-30 | 2020-07-07 | Divx, Llc | Systems and methods for encoding alternative streams of video for playback on playback devices having predetermined display aspect ratios and network connection maximum data rates |
US11611785B2 (en) | 2011-08-30 | 2023-03-21 | Divx, Llc | Systems and methods for encoding and streaming video encoded using a plurality of maximum bitrate levels |
US10244272B2 (en) | 2011-09-01 | 2019-03-26 | Divx, Llc | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
US10341698B2 (en) | 2011-09-01 | 2019-07-02 | Divx, Llc | Systems and methods for distributing content using a common set of encryption keys |
US8909922B2 (en) | 2011-09-01 | 2014-12-09 | Sonic Ip, Inc. | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
US10687095B2 (en) | 2011-09-01 | 2020-06-16 | Divx, Llc | Systems and methods for saving encoded media streamed using adaptive bitrate streaming |
US11683542B2 (en) | 2011-09-01 | 2023-06-20 | Divx, Llc | Systems and methods for distributing content using a common set of encryption keys |
US10225588B2 (en) | 2011-09-01 | 2019-03-05 | Divx, Llc | Playback devices and methods for playing back alternative streams of content protected using a common set of cryptographic keys |
US10856020B2 (en) | 2011-09-01 | 2020-12-01 | Divx, Llc | Systems and methods for distributing content using a common set of encryption keys |
US8918636B2 (en) | 2011-09-01 | 2014-12-23 | Sonic Ip, Inc. | Systems and methods for protecting alternative streams in adaptive bitrate streaming systems |
US9621522B2 (en) | 2011-09-01 | 2017-04-11 | Sonic Ip, Inc. | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
US9247311B2 (en) | 2011-09-01 | 2016-01-26 | Sonic Ip, Inc. | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
US11178435B2 (en) | 2011-09-01 | 2021-11-16 | Divx, Llc | Systems and methods for saving encoded media streamed using adaptive bitrate streaming |
US8918908B2 (en) | 2012-01-06 | 2014-12-23 | Sonic Ip, Inc. | Systems and methods for accessing digital content using electronic tickets and ticket tokens |
US10289811B2 (en) | 2012-01-06 | 2019-05-14 | Divx, Llc | Systems and methods for enabling playback of digital content using status associable electronic tickets and ticket tokens representing grant of access rights |
US11526582B2 (en) | 2012-01-06 | 2022-12-13 | Divx, Llc | Systems and methods for enabling playback of digital content using status associable electronic tickets and ticket tokens representing grant of access rights |
US9626490B2 (en) | 2012-01-06 | 2017-04-18 | Sonic Ip, Inc. | Systems and methods for enabling playback of digital content using electronic tickets and ticket tokens representing grant of access rights |
US9197685B2 (en) | 2012-06-28 | 2015-11-24 | Sonic Ip, Inc. | Systems and methods for fast video startup using trick play streams |
US9143812B2 (en) | 2012-06-29 | 2015-09-22 | Sonic Ip, Inc. | Adaptive streaming of multimedia |
US10452715B2 (en) | 2012-06-30 | 2019-10-22 | Divx, Llc | Systems and methods for compressing geotagged video |
US10591984B2 (en) | 2012-07-18 | 2020-03-17 | Verimatrix, Inc. | Systems and methods for rapid content switching to provide a linear TV experience using streaming content distribution |
US8997254B2 (en) | 2012-09-28 | 2015-03-31 | Sonic Ip, Inc. | Systems and methods for fast startup streaming of encrypted multimedia content |
US8914836B2 (en) | 2012-09-28 | 2014-12-16 | Sonic Ip, Inc. | Systems, methods, and computer program products for load adaptive streaming |
US9191457B2 (en) | 2012-12-31 | 2015-11-17 | Sonic Ip, Inc. | Systems, methods, and media for controlling delivery of content |
US10225299B2 (en) | 2012-12-31 | 2019-03-05 | Divx, Llc | Systems, methods, and media for controlling delivery of content |
USRE48761E1 (en) | 2012-12-31 | 2021-09-28 | Divx, Llc | Use of objective quality measures of streamed content to reduce streaming bandwidth |
US9264475B2 (en) | 2012-12-31 | 2016-02-16 | Sonic Ip, Inc. | Use of objective quality measures of streamed content to reduce streaming bandwidth |
US11785066B2 (en) | 2012-12-31 | 2023-10-10 | Divx, Llc | Systems, methods, and media for controlling delivery of content |
US9313510B2 (en) | 2012-12-31 | 2016-04-12 | Sonic Ip, Inc. | Use of objective quality measures of streamed content to reduce streaming bandwidth |
US11438394B2 (en) | 2012-12-31 | 2022-09-06 | Divx, Llc | Systems, methods, and media for controlling delivery of content |
US10805368B2 (en) | 2012-12-31 | 2020-10-13 | Divx, Llc | Systems, methods, and media for controlling delivery of content |
US10171887B2 (en) * | 2013-03-13 | 2019-01-01 | Comcast Cable Communications, Llc | Methods and systems for intelligent playback |
US20140267899A1 (en) * | 2013-03-13 | 2014-09-18 | Comcast Cable Communications, Llc | Methods And Systems For Intelligent Playback |
US10397292B2 (en) | 2013-03-15 | 2019-08-27 | Divx, Llc | Systems, methods, and media for delivery of content |
US10264255B2 (en) | 2013-03-15 | 2019-04-16 | Divx, Llc | Systems, methods, and media for transcoding video data |
US9906785B2 (en) | 2013-03-15 | 2018-02-27 | Sonic Ip, Inc. | Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata |
US10715806B2 (en) | 2013-03-15 | 2020-07-14 | Divx, Llc | Systems, methods, and media for transcoding video data |
US11849112B2 (en) | 2013-03-15 | 2023-12-19 | Divx, Llc | Systems, methods, and media for distributed transcoding video data |
US9344517B2 (en) | 2013-03-28 | 2016-05-17 | Sonic Ip, Inc. | Downloading and adaptive streaming of multimedia content to a device with cache assist |
US9712890B2 (en) | 2013-05-30 | 2017-07-18 | Sonic Ip, Inc. | Network video streaming with trick play based on separate trick play files |
US9247317B2 (en) | 2013-05-30 | 2016-01-26 | Sonic Ip, Inc. | Content streaming with client device trick play index |
US10462537B2 (en) | 2013-05-30 | 2019-10-29 | Divx, Llc | Network video streaming with trick play based on separate trick play files |
US9094737B2 (en) | 2013-05-30 | 2015-07-28 | Sonic Ip, Inc. | Network video streaming with trick play based on separate trick play files |
US9967305B2 (en) | 2013-06-28 | 2018-05-08 | Divx, Llc | Systems, methods, and media for streaming media content |
US9343112B2 (en) | 2013-10-31 | 2016-05-17 | Sonic Ip, Inc. | Systems and methods for supplementing content from a server |
US10893305B2 (en) | 2014-04-05 | 2021-01-12 | Divx, Llc | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
US10321168B2 (en) | 2014-04-05 | 2019-06-11 | Divx, Llc | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
US9866878B2 (en) | 2014-04-05 | 2018-01-09 | Sonic Ip, Inc. | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
US11711552B2 (en) | 2014-04-05 | 2023-07-25 | Divx, Llc | Systems and methods for encoding and playing back video at different frame rates using enhancement layers |
US9681198B2 (en) * | 2015-08-31 | 2017-06-13 | Roku, Inc. | Dynamic generation of trick mode data |
US20180249225A1 (en) * | 2015-08-31 | 2018-08-30 | Roku, Inc. | Dynamic generation of trick mode data |
US20170245021A1 (en) * | 2015-08-31 | 2017-08-24 | Roku, Inc. | Crowd sourced dynamic generation of trick mode data |
US10524017B2 (en) * | 2015-08-31 | 2019-12-31 | Roku, Inc. | Dynamic generation of trick mode data |
US9967634B2 (en) * | 2015-08-31 | 2018-05-08 | Roku, Inc. | Crowd sourced dynamic generation of trick mode data |
US10721285B2 (en) | 2016-03-30 | 2020-07-21 | Divx, Llc | Systems and methods for quick start-up of playback |
US11729451B2 (en) | 2016-06-15 | 2023-08-15 | Divx, Llc | Systems and methods for encoding video content |
US10148989B2 (en) | 2016-06-15 | 2018-12-04 | Divx, Llc | Systems and methods for encoding video content |
US11483609B2 (en) | 2016-06-15 | 2022-10-25 | Divx, Llc | Systems and methods for encoding video content |
US10595070B2 (en) | 2016-06-15 | 2020-03-17 | Divx, Llc | Systems and methods for encoding video content |
US11343300B2 (en) | 2017-02-17 | 2022-05-24 | Divx, Llc | Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming |
US10498795B2 (en) | 2017-02-17 | 2019-12-03 | Divx, Llc | Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming |
Also Published As
Publication number | Publication date |
---|---|
US7558760B2 (en) | 2009-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7558760B2 (en) | Real-time key frame generation | |
US10250664B2 (en) | Placeshifting live encoded video faster than real time | |
US8752102B2 (en) | Intelligent retransmission of data stream segments | |
US7802006B2 (en) | Multi-location buffering of streaming media data | |
US7890985B2 (en) | Server-side media stream manipulation for emulation of media playback functions | |
US10244291B2 (en) | Authoring system for IPTV network | |
US8352544B2 (en) | Composition of local media playback with remotely generated user interface | |
US9565479B2 (en) | Methods and apparatus for seeking within a media stream using scene detection | |
US7844723B2 (en) | Live content streaming using file-centric media protocols | |
US20070217759A1 (en) | Reverse Playback of Video Data | |
US20090125634A1 (en) | Network media streaming with partial syncing | |
US20230308728A1 (en) | Video Assets Having Associated Graphical Descriptor Data | |
US20080310825A1 (en) | Record quality based upon network and playback device capabilities | |
US20080195744A1 (en) | Adaptive media playback | |
US20090282444A1 (en) | System and method for managing the presentation of video | |
US20080235742A1 (en) | Content delivery system and method, and server apparatus and receiving apparatus used in this content delivery system | |
US8532472B2 (en) | Methods and apparatus for fast seeking within a media stream buffer | |
CN111064973A (en) | Live broadcast system based on IPV9 | |
US20040034870A1 (en) | Data streaming system and method | |
JP2009543201A (en) | Combination of local user interface with remotely generated user interface and media | |
JP2008523738A (en) | Media player having high resolution image frame buffer and low resolution image frame buffer | |
CN112752115B (en) | Live broadcast data transmission method, device, equipment and medium | |
US20090178096A1 (en) | Intelligent over-transmission of media data segments | |
US8082507B2 (en) | Scalable user interface | |
US20240056637A1 (en) | Performing Trick Plays of Segmented Video Content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT CORPORATION, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FANG, NICHOLAS J;SPEICHER, ASHLEY C;BOWRA, TODD;AND OTHERS;REEL/FRAME:019414/0467 Effective date: 20070607 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034542/0001 Effective date: 20141014 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |