throbber
I 1111111111111111 11111 1111111111 lllll 111111111111111 11111 1111111111 11111111
`US007529806Bl
`
`c12) United States Patent
`Shteyn
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,529,806 Bl
`*May 5, 2009
`
`(54) PARTITIONING OF MP3 CONTENT FILE
`FOR EMULATING STREAMING
`
`(75)
`
`Inventor: Yevgeniy Eugene Shteyn, Cupertino,
`CA (US)
`
`(73) Assignee: Koninklijke Philips Electronics N.V.,
`Eindhoven (NL)
`
`( *) Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by O days.
`
`This patent is subject to a terminal dis(cid:173)
`claimer.
`
`(21) Appl. No.: 09/433,257
`
`(22) Filed:
`
`Nov. 4, 1999
`
`(51)
`
`Int. Cl.
`G06F 15116
`(2006.01)
`(2006.01)
`H04N 7/173
`(2006.01)
`H04K 1/00
`(52) U.S. Cl. ....................... 709/217; 709/231; 709/203;
`725/114; 705/50
`(58) Field of Classification Search ......... 709/217-219,
`709/231-234, 227; 725/90---100, 112; 345/718;
`455/418
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,371,532 A *
`5,442,390 A *
`5,751,968 A *
`5,890,172 A *
`6,005,563 A *
`6,012,098 A *
`
`12/1994 Gelman et al. .............. 725/100
`8/1995 Hooper et al.
`................ 360/32
`5/ 1998 Cohen ........................ 709/201
`3/1999 Borman et al. ........... 715/501.1
`12/1999 White et al.
`................ 345/718
`1/2000 Bayeh et al ................. 709/246
`
`6,199,076 Bl*
`6,263,371 Bl*
`6,311,058 Bl*
`6,356,933 B2 *
`6,405,256 Bl *
`6,449,638 Bl *
`6,493,758 Bl*
`
`............. 715/501.1
`3/2001 Logan et al.
`7/2001 Geagan et al.
`.............. 709/231
`10/2001 Wecker et al.
`.............. 455/418
`3/2002 Mitchell et al.
`............. 709/203
`6/2002 Lin et al.
`.................... 709/231
`9/2002 Wecker et al.
`.............. 709/217
`12/2002 McLain ...................... 709/227
`
`FOREIGN PATENT DOCUMENTS
`
`EP
`
`0923033 Al
`
`6/1999
`
`OTHER PUBLICATIONS
`
`Marc Girardot, et al. "Efficient Representation and Streaming of
`XML content over the Internet Medium", IEEE Conference on Mul(cid:173)
`timedia and Expo., pp. 67-70, 2000.*
`"RealNetworks Streaming Media Leadership" article on the web at:
`http://www.real.com/company/pressroom/rnleadership/index.htrnl.
`"Download tunes to a walkman" article on the web at: http://cnn.com/
`TECH/computing/9909/28/walkman.tunes.idg/index.html.
`Class
`'java.io
`Java
`2
`platform API
`specification,
`at http://java.sun.com/products/j dk/ 1.2/
`SequencelnputStream"
`docs/api/java/io/SequencelnputStreams.htrnl.
`
`(Continued)
`
`Primary Examiner-Wen-Tai Lin
`
`(57)
`
`ABSTRACT
`
`An electronic file, e.g., an MP3 file, is partitioned into a
`sequence of segments at the server side. The first segment is
`played out upon downloading. While the first segment is
`being played out, the second is being downloaded and buff(cid:173)
`ered so that it is available when the play out of the first
`segment is completed. While playing out a current one of the
`segments, next one(s) of the segments are being downloaded
`and buffered. This partitioning and sequential play out
`enables to emulate streaming of a file and to minimize latency
`while downloading an electronic file.
`
`16 Claims, 2 Drawing Sheets
`
`SELECT CONTENT AND CONTACT SERVER FOR DOWNLOADING CONTROL
`INFORMATION IN XML
`
`101
`
`PARSE XML AND DITTRMINE PARAMETERS, DESCRIBING FILE SEGMENTS,
`INCLUDING THEIR LOCATIONS
`
`DOWIILOADFIRSTFILE SEGME1T FOR PLAY·OUT
`
`START PLAY-OUT OF FIRST FILE SEGMENT
`
`DOWNLOAD NEXT FILE SEGMENT & BUFFER WHILE PRECEDING SEGMENT
`IS BEING PLAYED OUT
`
`104
`
`106
`
`108
`
`110
`
`111
`
`Petitioners' Exhibit 1014
`Page 0001
`
`

`

`US 7,529,806 Bl
`Page 2
`
`OTHER PUBLICATIONS
`
`Java 2 platform API specification, 'java.io Class InputStream" at
`http:// j ava. sun .corn/products/ j dk/ 1.2/ docs/ api/j ava/i o/InputStreams.
`html.
`Java 2 platform API specification, "Interface Enumeration" at http://
`java.sun.corn/products/jdk/1.2/docs/api/java/io/FileinputStreams.
`html.
`Java 2 platform API specification, 'java.io Class FileinputStreams"
`at http://j ava. sun.corn/products/jdk/ 1.2/docs/api/java/util/Enumera(cid:173)
`tion.html.
`
`Java 2 platform API specification, Java (TM) 2 Platform, Standard
`Edition, v 1.2.2 API Specification on the Web at http://java.sun.com/
`products/jdk/ 1.2/docs/ api/overview _summary.html.
`"Efficient Representation and Streaming of XML Content Over the
`Internet Medium" XP002160596, 2000 IEEE Conf. On Multimedia
`and Expo.
`
`* cited by examiner
`
`Petitioners' Exhibit 1014
`Page 0002
`
`

`

`U.S. Patent
`
`May 5, 2009
`
`Sheet 1 of 2
`
`US 7,529,806 Bl
`
`.----..
`
`SELECT CONTENT AND CONTACT SERVER FOR DOWNLOADING CONTROL
`INFORMATION IN XML
`
`102
`
`PARSE XML AND DETERMINE PARAMETERS, DESCRIBING FILE SEGMENTS,
`INCLUDING THEIR LOCATIONS
`
`DOWNLOAD FIRST FILE SEGMENT FOR PLAY-OUT
`
`START PLAY~OUT OF FIRST FILE SEGMENT
`
`DOWNLOAD NEXT FILE SEGMENT & BUFFER WHILE PRECEDING SEGMENT
`1S BEING PLAYED OUT
`
`- -
`
`104
`
`1Q6
`
`108
`
`110
`
`N
`
`112
`
`y
`
`FIG. 1
`
`Petitioners' Exhibit 1014
`Page 0003
`
`

`

`U.S. Patent
`
`May 5, 2009
`
`Sheet 2 of 2
`
`US 7,529,806 Bl
`
`<XML>
`<title>
`The best ever music
`</title>
`<artist>
`V.R. Famous
`</artist>
`<parts>
`<part1>
`<length> 1024 </length>
`<format> MP3 </format>
`<location> flp://137.27.52.87 </location>
`<min_bandwidth> 10,000 </min_bandwidth>
`</part1>
`
`(Preferred format)
`
`{Alternative format)
`
`</part1 _alt>
`<length> 512 </length>
`<format> OTHER </format>
`<location> http:// yevgeniyneV .... _</location>
`<min_bandwidth> 8,000 </min_bandwidth>
`</part_alt1>
`
`</parts>
`</XML>
`
`FIG. 2
`
`Petitioners' Exhibit 1014
`Page 0004
`
`

`

`US 7,529,806 Bl
`
`1
`PARTITIONING OF MP3 CONTENT FILE
`FOR EMULATING STREAMING
`
`FIELD OF THE INVENTION
`
`The invention relates to content and/or control connnuni(cid:173)
`cations between multiple computer systems, or to such com(cid:173)
`munications between computer systems and consumer
`devices. Specifically, the invention relates to connnunication
`constrained by bandwidth or limited by data processing
`resources available to the receiving system or device, espe(cid:173)
`cially if the communications are received by the user in real
`time. The type of connnunications can be, e.g., broadcast,
`multi-cast or point-to-point.
`
`BACKGROUND ART
`
`2
`load time of the first part. The size of the individual part can
`be determined by the connnunications bandwidth, e.g.,
`through pinging for a latency-check. The client device/appli(cid:173)
`cation receives control information about the content. This
`5 control information comprises, for example, information
`relating to the size and memory location of the whole file as
`well as of it parts at the server. If the client is not capable of
`processing split data, it proceeds with the traditional
`approach, i.e., downloads the whole file and then plays it out.
`10 In case the client is capable of processing parts of the content,
`it uses the relevant control information about the parts in order
`to continue downloading data, while playing. Data play-out,
`also called "rendering", is computation-intensive, since it
`requires a plurality of decoding operations. Data download is
`15 bandwidth-intensive. Accordingly, simultaneous play-out
`and downloading do not significantly compete for the same
`system resources. This separation between downloading and
`processing can be efficiently used in a multi-process and/or
`multi-thread environment.
`Preferably, the information contains references to the file
`location as well as references to the locations of the parts. The
`intended bandwidth information is associated with the parts.
`The client may make its own decisions regarding how many
`parts to download before the start of the play out ( execution).
`The parts can have different data formats. The format of
`some of the parts can be proprietary. Information about alter(cid:173)
`native content parts, regarding bandwidth, format, location
`access options, etc., can be provided. Content parts can physi(cid:173)
`cally reside on different servers. Content can be split into
`parts consistent within the semantics of the content, e.g., end
`of musical phrase, paragraph, target control device, etc. A
`third party may insert its own content parts in between the
`original content parts. The third party parts contain, for
`example,
`advertisements,
`connnentary,
`customization
`options. The format of parts for play-out may be chosen
`according to user-related information, e.g., personal prefer-
`ences, level of access to premium services, quality of the
`equipment, bandwidth sharing/fluctuation conditions, etc.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The invention is explained in further detail and by way of
`example with reference to the accompanying drawing
`wherein:
`FIG. 1 is a flow diagram illustrating the various steps in a
`method according to the invention; and
`FIG. 2 gives an example of control code.
`Throughout the Figures, same reference labels indicate
`similar or corresponding features.
`
`PREFERRED EMBODIMENTS
`
`50
`
`Consider current major technologies for delivering digital
`content, such as audio, video, etc. The streaming method for
`audio, e.g., RealAudio by RealNetworks, consists of playing- 20
`out audio at a client device, while constantly sending data
`from the server to the client. The technology provided by
`RealNetworks comprises an encoder, a server, a splitter/cache
`and a player system with two-way intelligence to resolve
`network congestion, lost packet conditions and negotiate 25
`complex internet protocols. More specifically, the known
`technology comprises an automatic, variable bit-rate encod(cid:173)
`ing and delivery system for audio and video. The system
`scales to megabit connection rates and dynamically adjust the
`transmission rate as delivery rate varies due to network con- 30
`gestion. The format and the encoding/decoding methods of
`the data are proprietary. The server and the client synchronize
`receiving and playing in a way pre-defined by the particular
`architecture. The connnunication stack software is tightly
`coupled to the interpretation layer ( application and user inter- 35
`face (UI)). Manufacturers of such technology promote high
`level of integration between client and server software, as a
`complete vertical solution. This approach mostly excludes
`third parties from developing custom server software ( e.g.,
`advertizing, services) and/or client applications (UI, special 40
`effects, etc.).
`Another known method is downloading of a content file
`from a remote computer with subsequent play-out on the
`client. MP3 is a widely known audio data format used within
`the downloading context. There are other data formats, e.g., 45
`MP4 for video data etc. The major advantage of the above
`mentioned method is its open data standard approach. As long
`as the right format of the content file is observed during
`encoding, client and server software/hardware manufacturers
`are free to develop their own solutions/products.
`A major problem with the complete download approach is
`the inherent latency: there is a delay between the beginning of
`the download and the start of the play-out. The larger the file
`and or smaller the connnunication bandwidth, the longer it
`takes to transfer the content from the server to the client. This 55
`is particularly undesirable in consumer electronics systems,
`where perceived delay is detrimental to market acceptance of
`an open architecture.
`
`SUMMARY OF THE INVENTION
`
`It is an object of the invention to provide an open architec(cid:173)
`ture solution for content delivery in a download approach that
`allows for a low or negligible play-out latency.
`To this end the content file is split into multiple parts. Each
`part or segment requires a relatively short download time.
`Therefore, the play-out latency is determined by the down-
`
`The invention enables emulating the streaming of files
`while using a download approach. FIG. 1 illustrates a flow
`diagram 100 with various steps involved in the playing-out of
`a segmented file at the client.
`In step 102, the client contacts the server selects the par(cid:173)
`ticular content file and downloads the control information that
`enables the retrieving and playing out of the segmented file.
`60 The control information describes the locations, e.g., URL's,
`and size of the various file segments, and provides, e.g., UI
`functionalities at the client. In this example, the control infor(cid:173)
`mation is coded in XML.
`In step 104 the XML code is parsed. Parsing of XML is
`65 well known in the art. A person skilled in the art can download
`an XML interpreter, including source code, from the Internet,
`see e.g. www.ibm.com/xml. Thus, the client is enabled to get
`
`Petitioners' Exhibit 1014
`Page 0005
`
`

`

`US 7,529,806 Bl
`
`5
`
`3
`information about the content information and the URLs of
`the first and subsequent file segments.
`In step 106, the first file segment is downloaded for play(cid:173)
`out. Communicating with a remote server is a well known
`technology. For example, Java 2.0 provides a set of standard
`classes that enable retrieving a remote file into a buffer or as
`a stream.
`In step 108, the rendering of the first segment is started. The
`buffered content of the first segment is forwarded to a decod(cid:173)
`ing/playing module. The decoding/playing module decodes
`the file format, e.g., MP3. The playing of the supplied stream
`ofbits involves a number of standard operating system calls to
`its drivers a technique well known in the art.
`In step 110, the next file segment is downloaded at the
`client and stored in a buffer while the previous file segment, 15
`here the first file segment, is being played out. One option is
`to have the downloaded files buffered in a sequence or linked
`list of buffers. This functionality is typically provided by the
`operating system of the client. For example, MS Windows
`family of products creates a memory buffer associated with 20
`the file every time anAPI call opens the file. Alternatively, in
`a thread- and/or process-rich environment, several threads
`and/or processes can be organized to independently retrieve
`file segments, while playing out the content of other seg(cid:173)
`ments. Working with threads is a skill common for software
`engineers. For example, Java 2.0 from Sun Microsystems
`provides classes supporting multiple threads. Similarly,
`Microsoft SDK for the Windows family of products makes
`thread- or process-related functionalities available to pro(cid:173)
`grammers.
`Upon completion of playing out the first segment, the sec(cid:173)
`ond segment is passed on from the buffer to the decoding/
`playing module. This can be implemented by means of, e.g.,
`a linked list. As known, a linked list is a data structure wherein
`each element (here: segment) has content data and a pointer to 35
`a next element (here: next segment).
`The decoding/playing module has to decode the file for(cid:173)
`mat. The decoding program represents a standard task to a
`person skilled in the art to program a decoding procedure
`according to a widely published standard (MP3, etc.). The 40
`playing of the supplied stream of bits involves a number of
`standard operating system calls to its drivers-a technique
`well known in the art.
`FIG. 2 gives an example ofinformation-describing content
`coded in XML. The code fragment labels the segments as 45
`having a title "The best ever music" performed by "V. R.
`Famous" and having several parts. The segment labeled
`"partl" is in a preferred format and described the length of the
`part, e.g., in bytes, the format, the minimum bandwidth
`required for a connection, and the location on the Internet. An 50
`alternative first part is labeled "partl alt" having a different
`length, different format, different minimum bandwidth
`requirement, and a different location. The XML code can be
`combined with XSL for generating a user level UI at the
`user's client. The client thus can automatically choose the 55
`format compatible with the client's play-out capabilities.
`When the client has selected the proper file, either the one
`of which the first part is represented here as in the preferred
`format or the one in the alternative format, the content of the
`first part is downloaded from the location specified and play- 60
`ing out is started automatically under application control.
`Combining multiple sequenced inputs is well understood in
`the industry. For example, Java JDK v.1.2 from Sun Micro(cid:173)
`systems, Inc. provides a class java.io.SequenceinputStream
`as a standard component of the io class library. Sequencein- 65
`putStream represents the logical concatenation of other input
`streams. It starts out with an ordered collection of input
`
`4
`streams and reads from the first one until end of file is reached,
`whereupon it reads from the second one, and so on, until end
`of file is reached on the last of the contained input streams. An
`object of the java.io.SequenceinputStream class can be ini-
`tialized by, e.g., enumeration of objects of the InputStream
`class. This abstract class is the superclass of all classes rep(cid:173)
`resenting an input stream of bytes, including the class Filein(cid:173)
`putStream. In case of the downloading of multiple file parts,
`an application can create instances of the FileinputStream
`10 class from local temporary files into which the parts are being
`downloaded. The contents of those multiple local files will be
`supplied to the Sequencer. The rendering component of the
`application will read the information out it as if it were just a
`single local file.
`The segmentation of the content file into separately down(cid:173)
`loadable segments enables a third party, such as a service
`provider, to insert between two segments specific content
`information, e.g., advertisements to be rendered on the cli(cid:173)
`ent's display.
`During operation, the client application could select a next
`segment in a different format for the same content to adapt to
`changing circumstances, e.g., lower bandwidth due to net(cid:173)
`work congestion. Also, the user could be prompted to sub(cid:173)
`scribe to a service that as a demo lets the user download only
`25 the first segment in a high quality and the next segments in a
`lower quality. The combination of XML and a corresponding
`parser and interpreter at the client controls the downloading
`and playing out as explained above. Accordingly, the client
`pulls the content segments from the locations indicated in the
`30 XML control information for buffering and subsequent play-
`out.
`The implementation of a client in this client-server archi(cid:173)
`tecture can be done in a variety of ways. A first example is a
`hardware-based single-purpose device, similar to the Rio
`MP3 player by the Diamond Corp. In order to accommodate
`the method of the invention, the player needs, in addition, an
`XML parser, the ability to interpret XML and the ability to
`download and play-out content segments sequentially. A sec(cid:173)
`ond example is to implement the method of the invention as a
`software application on a multi-purpose computing device,
`e.g., a PC or a set top box. The device has the software
`implementing the functionalities mentioned above. In a
`graphics-rich environment, multiple GUI' s are represented to
`the user for further customization.
`The following co-pending applications are incorporated
`herein by reference:
`U.S. Ser. No. 09/406,642 filed Sep. 27, 1999 for Raoul
`Mallart for SCALABLE SYSTEM FOR VIDEO-ON-DE(cid:173)
`MAND. This patent document relates to a Video-on-Demand
`service (VOD) that is emulated in a Near-Video-on-Demand
`(NVOD) architecture. Content information is made available
`to an end-user in the NVOD architecture. An introductory
`portion of the content information is stored at the end-user's
`equipment, e.g., by downloading overnight. During playing
`out of the introductory portion at the end-user enabling the
`content information supplied in the NVOD architecture is
`buffered at the end-user's equipment. The equipment is con(cid:173)
`trolled to switch from playing out the introductory portion
`stored to playing out the buffered content information.
`U.S. Ser. No. 09/189,534 filed Nov. 10, 1998 for Eugene
`Shteyn for CONTENT SUPPLIED AS SOFTWARE
`OBJECTS FOR COPYRIGHT PROTECTION. This docu(cid:173)
`ment relates to supplying content information such as a
`movie, an audio file or a textual message to an end-user in a
`software object. The object has an encapsulated procedure for
`end-user access of the content information in a runtime envi(cid:173)
`ronment. The object can specify time frame for and manner
`
`Petitioners' Exhibit 1014
`Page 0006
`
`

`

`US 7,529,806 Bl
`
`5
`wherein the content information is to be accessed. Since the
`procedure is encapsulated in the object together with the
`content data, and since transport of the object over the Internet
`is done after serializing, an adequate degree of security is
`provided against unauthorized play-out or copying.
`U.S. Ser. No. 09/149,950 filed Sep. 9, 1998 for Raoul
`Mallart for REAL TIME VIDEO GAME USES EMULA(cid:173)
`TION OF STREAMING OVER THE INTERNET IN A
`BROADCAST EVENT. This patent document relates to
`emulating streaming of animation data over the Internet to a
`large number of clients in a broadcast application on a client(cid:173)
`server network. The animation is considered a sequence of
`states. State information is sent to the clients instead of the
`graphics data itself. The clients generate the animation data
`itself under control of the state information. The server and 15
`clients communicate using a shared object protocol. Thus,
`streaming is accomplished as well as a broadcast without
`rumiing into severe network bandwidth problems. This is
`approach is used to map a real life event, e.g., a motor race,
`onto a virtual environment in order to let the user participate 20
`in a virtual race against the real life professionals, the dynam-
`ics of the virtual environment being determined by the state
`changes sent to the user.
`U.S. Ser. No. 09/138,782 filed Aug. 24, 1998 for Raoul
`Mallart andAtul Sinha for EMULATION OF STREAMING 25
`OVER THE INTERNET IN A BROADCAST APPLICA(cid:173)
`TION. In a broadcast application on a client-server network
`the streaming is emulated of animation data over the Internet
`to a large number of clients. The animation is considered a
`sequence of states. State information is sent to the clients 30
`instead of the graphics data itself. The clients generate the
`animation data itself under control of the state information.
`The server and clients communicate using a shared object
`protocol. Thus, streaming is accomplished as well as a broad(cid:173)
`cast without running into severe network bandwidth prob- 35
`!ems.
`U.S. Ser. No. 09/283,545 filed Apr. 1, 1999 for Eugene
`Shteyn for TIME- AND LOCATION-DRIVEN PERSON(cid:173)
`ALIZED TV. This document relates to a service for person(cid:173)
`alized video recorders such as the one from TiVo-Philips. The 40
`recorder has a hard-disk that serves as a random-access
`buffer.
`
`6
`2. The method of claim 1, wherein partitioning of media
`presentation information between the multiple related files is
`determined by information about the client.
`3. The method of claim 1, wherein partitioning of media
`5 presentation information between the multiple related files is
`determined by information about the computer network.
`4. The method of claim 1, wherein the media presentation
`comprises an audio presentation.
`5. The method of claim 1, wherein the media presentation
`10 comprises a video presentation.
`6. The method of claim 1, wherein partitioning of media
`presentation information between the multiple related files is
`described within the control information file using tags cor(cid:173)
`responding to respective files.
`7. The method of claim 1 wherein the control information
`file is an XML file.
`8. The method of claim 7, wherein the XML file identifies
`the multiple alternative files corresponding to the given seg(cid:173)
`ment of the media presentation, further comprising an act of
`partitioning the media presentation into multiple MP3 files
`corresponding to a portion of the multiple alternative files.
`9. A method of storing media presentation information
`within a computer network including multiple server com(cid:173)
`puters, the method comprising acts of:
`storing on a server computer a control information file of a
`format to be parsed by a client device; and
`storing on one or more server computers multiple alterna(cid:173)
`tive files corresponding to a given segment of a media
`presentation accessible by the client device to, based on
`parsing of the control information file, determine which
`file of the multiple alternative files to retrieve based on
`system constraints to form a media presentation from the
`multiple alternative files.
`10. The method of claim 9, wherein the control information
`file is an XML file.
`11. The method of claim 10, wherein the XML file identi(cid:173)
`fies the multiple alternative files corresponding to the given
`segment of the media presentation.
`12. A client device for forming a media presentation from
`multiple related files stored on server computers within a
`computer network, comprising:
`means for downloading files to the client device;
`means for parsing a control information file; and
`means for parsing, based on parsing of the control infor(cid:173)
`mation file:
`identifying multiple alternative files corresponding to a
`give segment of the media presentation;
`determining which file of the multiple alternative files to
`retrieve based on system constraints;
`retrieving the determined file of the multiple alternative
`files to begin a media presentation, wherein if the deter(cid:173)
`mined file is one of a plurality of files required for the
`media presentation, the means for parsing comprises
`means for:
`concurrent with the media presentation, retrieving a next
`file; and
`using content of the next file to continue the media presen(cid:173)
`tation.
`13. The device of claim 12, wherein the control informa(cid:173)
`tion file is an XML file.
`14. The device of claim 13, wherein the XML file identifies
`~
`multiple alternative MP3 files corresponding to a portion of
`the given segment of the media presentation, the means for
`
`50
`
`I claim:
`1. A method of, at a client device, forming a media presen- 45
`tation from multiple related files, including a control infor(cid:173)
`mation file, stored on one or more server computers within a
`computer network, the method comprising acts of:
`downloading the control information file to the client
`device;
`the client device parsing the control information file; and
`based on parsing of the control information file, the client
`device:
`identifying multiple alternative flies corresponding to a
`given segment of the media presentation,
`determining which files of the multiple alternative files to
`retrieve based on system restraints;
`retrieving the determined file of the multiple alternative
`files to begin a media presentation, wherein if the deter- 60
`mined file is one of a plurality of files required for the
`media presentation, the method further comprises acts
`of:
`concurrent with the media presentation, retrieving a next
`~;and
`using content of the next file to continue the media presen(cid:173)
`tation.
`
`55
`
`Petitioners' Exhibit 1014
`Page 0007
`
`

`

`US 7,529,806 Bl
`
`7
`retrieving comprising means for selecting and retrieving one
`of the multiple alternative MP3 files.
`15. The device of claim 12, wherein:
`the device interprets the control information to retrieve 5
`multiple files from the computer network for sequential
`play-out.
`
`8
`16. The device of claim 15, wherein:
`the means for parsing comprises an XML parser; and
`the retrieving and using comprises an XML interpreter.
`
`* * * * *
`
`Petitioners' Exhibit 1014
`Page 0008
`
`

`

`c12) INTER PARTES REVIEW CERTIFICATE (1890th)
`United States Patent
`US 7,529,806 Kl
`(10) Number:
`Shteyn
`(45) Certificate Issued:
`Feb. 9, 2021
`
`(54) PARTITIONING OF MP3 CONTENT FILE
`FOR EMULATING STREAMING
`
`(75)
`
`Inventor: Yevgeniy Eugene Shteyn
`
`(73) Assignee: KONINKLIJKE PHILIPS N.V.
`
`Trial Numbers:
`IPR2017-00447 filed Dec. 9, 2016
`IPR2017-01754 filed Jul. 7, 2017
`
`Inter Partes Review Certificate for:
`7,529,806
`Patent No.:
`May 5, 2009
`Issued:
`09/433,257
`Appl. No.:
`Nov. 4, 1999
`Filed:
`
`The results of IPR2017-00447 joined with IPR2017-
`01754 are reflected in this inter partes review certificate
`under 35 U.S.C. 318(b).
`
`Petitioners' Exhibit 1014
`Page 0009
`
`

`

`INTER PARTES REVIEW CERTIFICATE
`U.S. Patent 7,529,806 Kl
`Trial No. IPR2017-00447
`Certificate Issued Feb. 9, 2021
`
`1
`
`2
`
`AS A RESULT OF THE INTER PARTES
`REVIEW PROCEEDING, IT HAS BEEN
`DETERMINED THAT:
`
`Claims 12-16 are found patentable.
`
`Claims 1-11 are cancelled.
`* * * * *
`
`5
`
`Petitioners' Exhibit 1014
`Page 0010
`
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket