WO2001024530A2 - Streaming media encoding agent for temporal modifications - Google Patents
Streaming media encoding agent for temporal modifications Download PDFInfo
- Publication number
- WO2001024530A2 WO2001024530A2 PCT/US2000/026832 US0026832W WO0124530A2 WO 2001024530 A2 WO2001024530 A2 WO 2001024530A2 US 0026832 W US0026832 W US 0026832W WO 0124530 A2 WO0124530 A2 WO 0124530A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- media
- temporal
- client
- streaming media
- media content
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/53—Centralised arrangements for recording incoming messages, i.e. mailbox systems
- H04M3/5307—Centralised arrangements for recording incoming messages, i.e. mailbox systems for recording messages comprising any combination of audio and non-audio components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/75—Indicating network or usage conditions on the user display
-
- 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/27—Server based end-user applications
- H04N21/274—Storing end-user multimedia data in response to end-user request, e.g. network recorder
- H04N21/2743—Video hosting of uploaded data from client
-
- 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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/637—Control signals issued by the client directed to the server or network components
- H04N21/6377—Control signals issued by the client directed to the server or network components directed to server
-
- 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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/10015—Access to distributed or replicated servers, e.g. using brokers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/28—Timers or timing mechanisms used in protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2201/00—Electronic components, circuits, software, systems or apparatus used in telephone systems
- H04M2201/60—Medium conversion
Definitions
- the present invention relates to the encoding of streaming media files and more specifically to a mechanism that provides for the speeding up and slowing down of streaming media files.
- the viewers of digital video desire the same functionality from the providers of digital video as they now enjoy while watching analog video tapes on video cassette recorders. For example, viewers want to be able to make the video jump ahead, jump back, fast forward, fast rewind, slow forward, slow rewind and freeze frame.
- digital video delivered to a particular destination (the "client") is encoded to allow for playback at a specific rate.
- the user is typically required to play the entire video at one static rate as they generally have no mechanism for altering the playback speed of the video.
- the amplitude of the video signal is altered such that the video sound will be undesirably distorted.
- a method for playing digital content at a client is disclosed.
- a plurality of versions of the digital content is generated.
- Each version of the plurality of versions is generated with the same amplitude but a different wavelength relative to the other plurality of versions.
- a selected version of the plurality of versions is used for playing back the content.
- a change is made as to which of the plurality of versions to be used as the selected version.
- a method for incorporating temporal modifications in streaming media content is performed by generating one or more temporal media files by applying a temporal encoding process to media content. Streaming media data based on the one or more temporal media files is then generated. The streaming media data is delivered to a client and can be played at the client at multiple play rates.
- the invention also encompasses a computer-readable medium, a computer data signal embodied in a carrier wave, and an apparatus configured to carry out the foregoing steps.
- FIG. 1A is a block diagram of a temporal media encoding system in which certain embodiments of the invention may be used;
- FIG. IB is another block diagram of a temporal media encoding system in which certain embodiments of the invention may be used;
- FIG. 2 illustrates example of how applying the temporal encoding process allows streaming media data to be sent from the server side at one rate and played on the client side at a dynamically changing second rate;
- FIG. 3 is a flow diagram that illustrates a method for incorporating temporal modifications in streaming media content in accordance with certain embodiments of the invention
- FIG. 4 is a block diagram of a computer system on which embodiments may be implemented.
- FIG. 5 is a block diagram that illustrates an example of another temporal media encoding system configuration in which certain embodiments of the invention may be used.
- live feed information refers to information that may be received from analog or digital cameras, satellite or cable feeds or any other mechanism that is capable of providing live feed information.
- media content includes one or more of a variety of different types of pre-recorded information, and/or live feed information.
- the "wavelength" of a media content signal refers to the horizontal length of one cycle of the wave and can be calculated by measuring the distance between any two successive equivalent points on the wave.
- the "amplitude" of a media content signal refers to the distance between a crest or a trough on the wave and its undisturbed position.
- the "period" of a media content signal refers to the time required to complete one full cycle of motion.
- the "frequency" of a wave is merely the reciprocal of the period, or the number of cycles completed in one second. Both the period and the frequency are dependent on the wavelength of the wave. If the media content signal has a long wavelength then its frequency would be lower than if had a short wavelength.
- the "speed" of a media content signal refers to the rate of presentation of audio or video in the media file, based on changes in frequency of the wave for audio, or number of frames presented for video.
- a “temporal” modification refers to a change in the frequency of a wave without a corresponding change in the amplitude of a wave.
- a “temporal media file” refers to a media file which, using temporal modification, the speed of the audio and video is changed through modification of the frequency of the waveform and frame rate of the video.
- variable speed media file refers to a media file that contains data from multiple temporal media files, where the data from the multiple temporal media files within the variable speed media file can be played selectively based on the user's preferences for presentation of the file.
- a streaming media encoding mechanism is configured as a modular collection of methods or processes to manipulate the temporal nature of time-based media, and to encode streaming media data for Internet and broadband playback.
- the process of manipulating the temporal nature of time-based media involves modifying the frequency of the wave by reducing the wavelength of the wave without modifying the amplitude of the wave. If necessary, the process also involves dropping corresponding frames in the media signal to synchronize audio and video.
- the streaming media encoding mechanism employs a temporal encoding process that alters the frequency of the media content signal independent of the amplitude, and removes frames, to generate one or more temporal media files.
- the one or more temporal media files are then bound together and encoded into streaming media packets to emulate variable speed streaming media data.
- Each packet includes a portion of each of the one or more temporal media files.
- Header information is attached to each of the packets describing the packets contents.
- a user may dynamically adjust the playback speed of the streaming media data to emulate different playback rates, such as the "fast- forward" or "slow" functions of a media player.
- FIG. 1A is a block diagram of a temporal media encoding system 100 in which certain embodiments of the invention may be used.
- temporal media encoding system 100 includes a server 102, a client 110, and one or more network systems 118.
- server 102 and client 110 are connected through one or more network systems 118.
- These one or more network systems may include, but are not limited to, Local Area Networks (LAN), and Wide Area Networks (WAN), including the Internet and/or other wireless communication mechanisms and/or communication mediums.
- LAN Local Area Networks
- WAN Wide Area Networks
- embodiments of the invention are not limited to any particular type of communication mechanism, medium or protocol.
- Server 102 is a combination of hardware and/or software components that are configured for encoding media content with temporal modifications to create one or more temporal media files.
- the one or more temporal media files are combined and encoded in streaming media format to produce variable speed streaming media data.
- server 102 includes a phase encoding unit 104, a streaming encoding unit 106 and a delivery unit 108.
- the phase encoding unit 104 is configured for generating temporal media files by applying a temporal encoding process to media content.
- phase encoding unit 104 is used to manipulate the temporal nature of time-based content media to generate a set of temporal media files.
- the streaming encoding unit 106 is configured to encode the one or more temporal media files into streaming media format ("streaming media data").
- Streaming encoding unit 106 may represent a variety of different types of encoders that are capable of encoding data in a particular encoding format.
- streaming encoding unit 106 may be configured as a Real, Windows Media, Liquid Audio, MPEG, A2B, Audiobase, MP3, Blade, Xing, QuickTime or any other similar type of encoder.
- streaming encoding unit 106 may be either an "off-the-self ' encoding unit or a proprietary encoding unit, as embodiments of the invention are not limited to any particular type of encoder.
- streaming encoding unit 106 stores the streaming media data as one or more media files in a storage unit 120.
- Storage unit 120 may represent a nonvolatile storage device that is part of server 102 or instead may be a separate storage unit that is accessible to server 102, for example over a network with delivery unit 108 to provide the streaming media data, thus potentially reducing the overhead of storing and retrieving the media data from storage unit 120.
- Delivery unit 108 is configured for delivering streaming media data to client 110 over network 1 18.
- delivery unit 108 retrieves streaming media data from storage unit 120 and delivers the streaming media data to client 1 10 via network system 118.
- delivery unit 108 may communicate directly with streaming encoding unit 106 to obtain streaming media data for delivery to client 1 10.
- Client 110 represents a device, such as a personal computer, workstation, or other like device that is capable of communicating with server 104.
- Client 110 may include a browser application, such as Microsoft Internet Explorer® or Netscape Navigator®, that can request, receive and display electronic documents over a network connect.
- a browser application such as Microsoft Internet Explorer® or Netscape Navigator®
- client 110 includes a display unit 112 and a media player 122, such as a Real, or Windows Media player.
- media player 122 includes a phase decoder unit 114 and a streaming decoding unit 116.
- phase decoder unit 114 is configured as a plug- in component that can be dynamically linked into media player 122.
- Streaming decoding unit 116 is configured to receive streaming media from server 102 and to communicate the streaming media data to the phase decoder unit 114. The streaming media data is then decoded by the phase decoder unit 114 and played on client 110.
- the streaming media data (which includes the variable speed media file information) contains a number of temporal media file portions that each contain the same section of the media content for playback at a different speed (i.e., playback at the original speed, 2x the original, playback at 3x the original etc.)
- FIG. 2 illustrates an example of a section of a streaming media file 200 that includes multiple packets 202, 204, 206 which each contain a particular portion of the media content (214, 216, 218).
- packets 202, 204, 206 each respectively include a header 208, 210, 212 that describes the information contained in media content portions 214, 216, 218.
- the playback speed of the media content can be dynamically changed by switching between the different media content portions 214, 216, 218 that are present within each packet. For example, by switching from content portion 214 of packet 202 to content portion 216 of packet 202, the playback speed of the media content can be increased from IX (original speed) to 2X (twice the speed of normal).
- phase decoder unit 1 14 maintains indexes into the content portions 214, 216, 218 of each packet as it is played to allow for dynamically switching between the content portions 214, 216, 218 of a particular packet.
- phase decoder unit 114 is configured to switch between the content portions 214, 216, 218 between the playing of two packets. For example, if phase decoder unit 114 receives a request to increase the playback speed (for example to 2X) while in the middle of processing the content portion 214 in packet 202, phase decoder unit 1 14 may wait for the processing of content portion 214 complete and initiate the playback speed change by selecting content portion 216 in packet 204.
- the media player 122 includes a player control component, for example a plug-in component, that provides a set of selectable VCR-like controls on display unit 112.
- a player control component may cause two speed control buttons to be displayed on display unit 112; a speed up button and a slow down button.
- phase decoder 114 In response to selecting the speed up button, phase decoder 114 automatically switches to a different ("faster playing") temporal media file in the variable speed media file. In switching to the different ("faster playing”) temporal media file, the media content begins to play at a faster speed on display unit 112.
- phase decoder 122 is configured to automatically switch between the different temporal media files based on a set of playback conditions. For example, if it is determined that a commercial is currently being played on display unit 112, phase decoder 122 may automatically switch to a different ("faster playing") temporal media file to "fast- forward" through the commercial.
- server 112 may include additional information in the streaming media content that signals phase decoder unit 1 14 to switch to a different temporal media file to either "fast-forward" or “slow-down" the playing of the media content.
- the temporal encoding process allows the playback speed of the encoded streaming media data to dynamically alter the audio and/or image frame rate independent of the streaming media data amplitude.
- FIG. 3 is a flow diagram 300 that illustrates a method for incorporating temporal modifications in streaming media content in accordance with certain embodiments of the invention.
- the blocks of FIG. 3 are described in reference to the components of FIG. 1 A and FIG. 2.
- embodiments of the methods disclosed herein are not limited to the example embodiments that are shown in FIG. 1A and FIG. 2.
- the temporal encoding process is applied to media content to generate one or more temporal media files.
- the media content may take a variety of forms, including but not limited to movies, music, and television shows.
- the temporal encoding may be applied to a movie to generate one or more temporal media files based on the particular movie.
- the one or more temporal media files are encoded to generate streaming media data.
- the one or more temporal media files may be encoded in multiple media formats using a variety of different encoders.
- the one or more temporal media files may be encoded to generate streaming media data in both Real and Windows Media format.
- the streaming media data is delivered to a client.
- the streaming media data may be transmitted from server 102 to client 110 over network 118.
- the streaming media data is received by client 110 and played at a rate that may be dynamically altered, either by the client automatically or in response to the user interacting with the client interface controls.
- the temporal encoding process can be applied to a raw media content waveform, before the streaming encoding process, thus allowing multiple output streaming media formats to be supported.
- a "Phase Vocoding” algorithm may be used to alter the frequency of an audio waveform independent of the amplitude.
- This "stretching” and “squashing" of the audio signal can also be applied in conjunction with image frame rate modifications, for example the dropping or duplicating frames, to keep the audio and video information synchronized to change the playback speed of encoded streaming media video files.
- temporal encoding process uses a Fast Fourier Transform (FFT) to represent a signal as a set of sinusoids. These sinusoids can be manipulated independently to produce different results.
- FFT Fast Fourier Transform
- DTFT Discrete Time Fourier Transform
- the Discrete Fourier Transform (DFT) is then the DTFT evaluated at a number of equally spaced digital frequency values from 0 to pi.
- the FFT is a tool used to evaluate numerous DFTs with fewer steps than are required by the defining equation.
- each "variable speed" media file packet is wrapped with a header that describes the contents of the file.
- the header of each file contains metadata that includes information about the temporal media data that is contained in each packet.
- phase decoder 114 uses the metadata to switch between the different media content portions to dynamically change the playback speed of media content.
- server 102 is configured to switch between the temporal media files that are contained within a variable speed media file.
- FIG. IB is a block diagram of a temporal media encoding system 150 in which certain embodiments of the invention may be used.
- FIG. IB includes many of the same components as shown in FIG.
- delivery unit 152 includes a selection unit 154 that receives user playback requests from client 1 10.
- delivery unit 152 maintains index information into each of the temporal media files that allows the delivery unit to dynamically switch between the temporal media files in a consistent manner. For example, in response to receiving a user playback request to increase the playback speed from 2X to 5X, selection unit 154 identifies a location in the 5X temporal media file that corresponds to the portion currently being played in the 2X temporal media file. Delivery unit 152 then begins streaming the media data from the identified location in the 5X temporal media file to client 116. In response to receiving the streaming media data, streaming decoding unit 116 continues to play the media data, generally unaware that the playback speed of the media data has changed.
- media player 122 depicted in FIG 1 A is itself configured to modify the frequency of the waveform of the streaming media content and to drop image frames as necessary to keep the images synchronized with the audio portion.
- media player 122 includes a phase encoding unit 104, possibly as a plug-in component, which dynamically generates multiple temporal media files and corresponding metadata based on conventional streaming media content. These files are then used by phase decoder unit 114 to dynamically provide variable speed media content for display on display unit 112.
- Computer system 400 includes a bus 402 or other communication mechanism for communicating information, and a processor 404 coupled with bus 402 for processing information.
- Computer system 400 also includes a main memory 406, such as a random access memory (RAM) or other dynamic storage device, coupled to bus 402 for storing information and instructions to be executed by processor 404.
- Main memory 406 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 404.
- Computer system 400 further includes a read only memory (ROM) 408 or other static storage device coupled to bus 402 for storing static information and instructions for processor 404.
- ROM read only memory
- a storage device 410 such as a magnetic disk or optical disk, is provided and coupled to bus 402 for storing information and instructions.
- Computer system 400 may be coupled via bus 402 to a display 412, such as a cathode ray tube (CRT), for displaying information to a computer user.
- a display 412 such as a cathode ray tube (CRT)
- An input device 414 is coupled to bus 402 for communicating information and command selections to processor 404.
- cursor control 416 is Another type of user input device
- cursor control 416 such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 404 and for controlling cursor movement on display 412.
- This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane.
- the invention is related to the use of computer system 400 for incorporating temporal modifications in streaming media.
- the insertion of temporal modifications in streaming media is provided by computer system 400 in response to processor 404 executing one or more sequences of one or more instructions contained in main memory 406.
- Such instructions may be read into main memory 406 from another computer-readable medium, such as storage device 410.
- Execution of the sequences of instructions contained in main memory 406 causes processor 404 to perform the process steps described herein.
- processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in main memory 406.
- hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention.
- embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
- Non-volatile media includes, for example, optical or magnetic disks, such as storage device 410.
- Volatile media includes dynamic memory, such as main memory 406.
- Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 402. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.
- Computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.
- Various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to processor 404 for execution.
- the instructions may initially be carried on a magnetic disk of a remote computer.
- the remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem.
- a modem local to computer system 400 can receive the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal.
- An infrared detector coupled to bus 402 can receive the data carried in the infrared signal and place the data on bus 402.
- Bus 402 carries the data to main memory 406, from which processor 404 retrieves and executes the instructions.
- Computer system 400 also includes a communication interface 418 coupled to bus 402.
- Communication interface 418 provides a two-way data communication coupling to a network link 420 that is connected to a local network 422.
- communication interface 418 may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line.
- ISDN integrated services digital network
- communication interface 418 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN.
- LAN local area network
- Wireless links may also be implemented.
- communication interface 418 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
- Network link 420 typically provides data communication through one or more networks to other data devices.
- network link 420 may provide a connection through local network 422 to a host computer 424 or to data equipment operated by an Internet Service Provider (ISP) 426.
- ISP 426 in turn provides data communication services through the worldwide packet data communication network now commonly referred to as the "Internet" 428.
- Internet 428 uses electrical, electromagnetic or optical signals that carry digital data streams.
- the signals through the various networks and the signals on network link 420 and through communication interface 418, which carry the digital data to and from computer system 400, are exemplary forms of carrier waves transporting the information.
- Computer system 400 can send messages and receive data, including program code, through the network(s), network link 420 and communication interface 418.
- a server 430 might transmit a requested code for an application program through Internet 428, ISP 426, local network 422 and communication interface 418.
- one such downloaded application provides for the insertion of temporal modifications in streaming media as described herein.
- the received code may be executed by processor 404 as it is received, and/or stored in storage device 410, or other non- volatile storage for later execution. In this manner, computer system 400 may obtain application code in the form of a carrier wave.
- the mechanism described herein provides several advantages over prior approaches for providing streaming media content.
- the described techniques provide an improved method for delivering streaming media data that allows the playback speed of the media data to be dynamically changed as it is played at a client without affecting the amplitude of the data.
- adjustments to the playback rate may be made based on the current bandwidth that is available between a server and a client.
- a user is having trouble understanding the voice-over at a particular video speed, they can slow down the playing of the media in an attempt to better understand the content.
- a user wishes to speed through a speech yet still understand the contents of the speech, they can increase the playing speed of the media content.
- a server 502 may be configured with a plurality of phase encoding units 510,512, streaming encoding unit 516, 518 and delivery units 520, 522, 524 and which may be configured to communicate streaming media data to a plurality of clients 504, 506, 508. Additional configurations for encoding media data are described in co-pending U.S. Patent Application No.
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU77353/00A AU7735300A (en) | 1999-09-29 | 2000-09-29 | Streaming media encoding agent for temporal modifications |
EP00967103A EP1221238A2 (en) | 1999-09-29 | 2000-09-29 | Streaming media encoding agent for temporal modifications |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15681799P | 1999-09-29 | 1999-09-29 | |
US60/156,817 | 1999-09-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2001024530A2 true WO2001024530A2 (en) | 2001-04-05 |
WO2001024530A3 WO2001024530A3 (en) | 2001-12-20 |
Family
ID=22561215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2000/026832 WO2001024530A2 (en) | 1999-09-29 | 2000-09-29 | Streaming media encoding agent for temporal modifications |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP1221238A2 (en) |
AU (1) | AU7735300A (en) |
WO (1) | WO2001024530A2 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1346307A2 (en) * | 2001-05-31 | 2003-09-24 | ContentGuard Holdings, Inc. | Method and apparatus for dynamically assigning usage rights to digital works |
EP1676213A1 (en) * | 2003-08-01 | 2006-07-05 | Microsoft Corporation | Sparse caching for streaming media |
US7774279B2 (en) | 2001-05-31 | 2010-08-10 | Contentguard Holdings, Inc. | Rights offering and granting |
US8001053B2 (en) | 2001-05-31 | 2011-08-16 | Contentguard Holdings, Inc. | System and method for rights offering and granting using shared state variables |
US8923512B2 (en) | 2003-09-30 | 2014-12-30 | Microsoft Corporation | Circumvention of dynamic, robust, embedded-signal detection |
-
2000
- 2000-09-29 AU AU77353/00A patent/AU7735300A/en not_active Abandoned
- 2000-09-29 EP EP00967103A patent/EP1221238A2/en not_active Withdrawn
- 2000-09-29 WO PCT/US2000/026832 patent/WO2001024530A2/en not_active Application Discontinuation
Non-Patent Citations (2)
Title |
---|
DEY, J.K; SEN, S.; KUROSE, J.F.; TOWSLEY, D.; SALEHI, J.D.: "Playback restart in interactive streaming video applications" MULTIMEDIA COMPUTING AND SYSTEMS '97, [Online] 3 - 6 June 1997, pages 458-465, XP002179183 Massachusetts Univ., Amherst, MA, USA ISBN: 0-8186-7819-4 Retrieved from the Internet: <URL:http.//ieeexplore.ieee.org> [retrieved on 2001-10-03] * |
SUMARI, P.; MERABTI, M.; PEREIRA, R.: "Video-on-demand server: strategies for imrpoving performance" SOFTWARE, IEE PROCEEDINGS, [Online] 9 - 10 July 1998, pages 33-37, XP002179184 Liverpoll John Moores Univ., UK ISSN: 1462-5970 Retrieved from the Internet: <URL:http://ieeexplore.ieee.org> [retrieved on 2001-10-03] * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1346307A2 (en) * | 2001-05-31 | 2003-09-24 | ContentGuard Holdings, Inc. | Method and apparatus for dynamically assigning usage rights to digital works |
EP1346307A4 (en) * | 2001-05-31 | 2004-07-28 | Contentguard Holdings Inc | Method and apparatus for dynamically assigning usage rights to digital works |
US7774279B2 (en) | 2001-05-31 | 2010-08-10 | Contentguard Holdings, Inc. | Rights offering and granting |
US8001053B2 (en) | 2001-05-31 | 2011-08-16 | Contentguard Holdings, Inc. | System and method for rights offering and granting using shared state variables |
EP1676213A1 (en) * | 2003-08-01 | 2006-07-05 | Microsoft Corporation | Sparse caching for streaming media |
EP1676213A4 (en) * | 2003-08-01 | 2009-12-30 | Microsoft Corp | Sparse caching for streaming media |
US7941554B2 (en) | 2003-08-01 | 2011-05-10 | Microsoft Corporation | Sparse caching for streaming media |
US8923512B2 (en) | 2003-09-30 | 2014-12-30 | Microsoft Corporation | Circumvention of dynamic, robust, embedded-signal detection |
Also Published As
Publication number | Publication date |
---|---|
WO2001024530A3 (en) | 2001-12-20 |
EP1221238A2 (en) | 2002-07-10 |
AU7735300A (en) | 2001-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200019290A1 (en) | Digital Media Player Behavioral Parameter Modification | |
EP1233591B1 (en) | Progressive streaming media rendering | |
KR100866908B1 (en) | Method of processing media services from a plurality of content aggregators, and apparatus for unifying media services available from a plurality of content aggregatiors | |
US6449653B2 (en) | Interleaved multiple multimedia stream for synchronized transmission over a computer network | |
US5737552A (en) | Machine, method and medium for linear programming with interactive conversational interface | |
US7237254B1 (en) | Seamless switching between different playback speeds of time-scale modified data streams | |
US6816909B1 (en) | Streaming media player with synchronous events from multiple sources | |
CA2623835C (en) | Content delivery system and method, and server apparatus and receiving apparatus used in this content delivery system | |
US20060195884A1 (en) | Interactive multichannel data distribution system | |
US20060215562A1 (en) | Interactive data transmission system having staged servers | |
US20130124748A1 (en) | Media streaming with enhanced seek operation | |
JP2003510734A (en) | File splitting for emulating streaming | |
JP2004531184A (en) | Efficient transmission and reproduction of digital information | |
JPH1196098A (en) | Method and device for recording data transmitted on internet | |
JP2001527709A (en) | VCR-like function for rendering video on demand | |
EP1797716A2 (en) | Method for minimizing buffer delay effects in streaming digital content | |
CN109348251A (en) | For the method, apparatus of video playing, computer-readable medium and electronic equipment | |
US20100034515A1 (en) | Information processing apparatus and method, and program | |
US20080276289A1 (en) | System for video presentations with adjustable display elements | |
WO2001024530A2 (en) | Streaming media encoding agent for temporal modifications | |
WO2001018658A1 (en) | Method and apparatus for sending slow motion video-clips from video presentations to end viewers upon request | |
JP7256173B2 (en) | Information processing device, information processing device and program | |
WO2000010329A1 (en) | Client-side digital television authoring system | |
WO2002005117A1 (en) | Interactive data transmission system | |
US20230362461A1 (en) | Interactive Media Events |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CZ DE DK DM DZ EE ES FI GB GE GH GM HR HU ID IL IN IS JP KE KG KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CZ DE DK DM DZ EE ES FI GB GE GH GM HR HU ID IL IN IS JP KE KG KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2000967103 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2000967103 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 2000967103 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: JP |