throbber
I 1111111111111111 11111 111111111111111 IIIII IIIII IIIII IIIII IIIIII IIII IIII IIII
`
`
`US007269338B2
`
`c12) United States Patent
`Janevski
`
`(IO) Patent No.:
`(45) Date of Patent:
`
`US 7,269,338 B2
`Sep.11,2007
`
`(54) APPARATUS AND METHOD FOR
`SYNCHRONIZING PRESENTATION FROM
`BIT STREAMS BASED ON THEIR CONTENT
`
`(75)
`
`Inventor: Angel Janevski, New York, NY (US)
`
`(73) Assignee: Koninklijke Philips Electronics N.V.,
`Eindhoven (NL)
`
`( *) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 1435 days.
`
`(21) Appl. No.: 10/014,225
`
`(22) Filed:
`
`Dec. 11, 2001
`
`(65)
`
`Prior Publication Data
`
`US 2003/0156827 Al
`
`Aug. 21, 2003
`
`(51)
`
`Int. Cl.
`H04N 7100
`(2006.01)
`H04N 5191
`(2006.01)
`(52) U.S. Cl. ............................ 386/96; 386/80; 386/46;
`386/68
`(58) Field of Classification Search .................. 386/96,
`386/92, 113,124, 13,21,40,46,
`52,80,85,
`386/68
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`7,072,575 B2 * 7/2006 Kang
`
`.........................
`
`386/125
`
`2003/0120685 Al*
`
`6/2003 Duncombe et al. ......... 707/200
`
`OTHER PUBLICATIONS
`
`William P. Lord, "Synchronized Personal Video Recorders", U.S.
`Appl. No. 09/894,060, filed Jun. 28, 2001.
`
`* cited by examiner
`
`Primary Examiner-Robert Chevalier
`(74) Attorney, Agent, or Firm-Paul
`Im
`
`(57)
`
`ABSTRACT
`
`Content of multiple digital bit streams with essentially the
`same renderable content, and situated at mutually remote
`locations, are played back in unison. First, time is synchro(cid:173)
`nized among the processors that participate in a synchro(cid:173)
`nized viewing session by playing back respective streams.
`Second, the playbacks are content-wise aligned, by rewind(cid:173)
`ing or fast forwarding, to effect overall a precisely synchro(cid:173)
`nized presentation. The content-wise alignment is achieved
`by means of a status message between processors
`that
`contains
`information characteristic of the sender's bit
`stream. If any participant, performs a control function ( e.g.
`rewind, fast forward, stop), all other participants follow
`synchronously. The processor that initiates the session is
`deemed the initiator, a role that is thereafter assumed by the
`participant that has last performed a control function. The
`initiator directs all participants, at session startup, upon
`execution of each control function, and periodically, to
`synchronize their playbacks to that of the initiator, whereby
`all playbacks are synchronized and maintain in synchroni(cid:173)
`zation.
`
`35 Claims, 9 Drawing Sheets
`
`113
`
`RECEIVER
`
`202
`
`212 ~ VIDEO TIMER I
`
`204
`
`REMOTE
`CONTROL
`SENSOR
`
`/206
`
`
`
`SYNCHRONIZATION REGISTER
`
`SIGNATURE PROCESSING
`WORKSPACE
`
`VIDEO BLOCK
`
`STATUS BUFFER
`
`
`
`MISCELLANEOUS STORAGE
`
`214
`
`216
`
`218
`
`220
`222
`
`\
`
`114a
`
`201
`
`
`PAGE 1 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Sep.11,2007
`
`Sheet 1 of 9
`
`US 7,269,338 B2
`
`112a
`
`112b
`
`114a
`
`113b 114b 116b
`
`..___, RC
`
`122a TELEVISION
`
`118
`
`122b
`TELEVISION
`
`HOUSE 1
`
`HOUSE 2
`
`FIG. 1
`
`PAGE 2 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Sep.11,2007
`
`Sheet 2 of 9
`
`US 7,269,338 B2
`
`RECEIVER
`., '
`
`' I"
`
`~
`
`'
`
`113
`
`0
`
`204
`(
`REMOTE
`CONTROL
`SENSOR
`
`;200
`
`202
`(
`208 ~ VIDEO PLAYER I f 210
`UNIT j / 3
`J STREAM CHARACTERISTICS
`I PERIOD
`
`212~
`
`VIDEO TIMER
`
`TIMER
`;r-,
`' ,.
`
`SYNCHRONIZATION REGISTER r---214
`SIGNATURE PROCESSING v216
`WORKSPACE
`
`VIDEO BLOCK
`
`STATUS BUFFER
`
`
`
`MISCELLANEOUS STORAGE
`
`--218
`
`--- 220
`---222
`
`~
`
`201
`
`FIG. 2
`
`\
`
`114a
`
`
`PAGE 3 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Sep.11,2007
`
`Sheet 3 of 9
`
`US 7,269,338 B2
`
`,---___,A
`I
`
`302
`________
`
`\I
`
`304
`A._ __
`
`\
`
`POINTER TIME STAMP POINTER TIME STAMP •••
`K+L K+l
`K
`K
`
`306
`
`__
`
`,...._______,A...._
`I
`
`\
`POINTER TIME STAMP
`214
`I"-
`N
`N
`
`SIGNATURE PROCESSING
`WORKSPACE
`
`1-r
`
`216
`
`••• FRAME ••• FRAME ••• FRAME
`• •• FRAME
`K
`N
`K+L
`N+M
`
`308
`
`VIDEO BLOCK
`
`f-..r-
`
`218
`
`STATUS BUFFER
`
`
`
`MISCELLANEOUS STORAGE
`
`FIG. 3
`
`v-,.-
`
`220
`
`222
`
`--
`~
`206
`
`
`PAGE 4 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Sep.11,2007
`
`Sheet 4 of 9
`
`US 7,269,338 B2
`
`INITIATOR r-- 114
`PVR
`
`114 ..--.__, PARTICIPANT
`PVR
`
`HR MIN SEC
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`3
`
`4
`
`3
`
`4
`
`B }CASE
`C
`1
`
`B }CASE
`C
`2
`
`0
`
`0
`
`0
`
`0
`
`3
`
`4
`
`B }CASE
`C
`3
`
`HR
`
`MIN SEC
`
`A
`
`D
`
`0
`
`0
`
`A
`
`D
`
`0
`
`0
`
`0
`
`0
`
`0
`
`0
`
`2
`
`5
`
`2
`
`3
`
`A
`
`D
`
`0
`
`0
`
`0
`
`0
`
`2
`
`6
`
`f402
`I
`
`i( 40)
`
`}402
`I
`
`,( 40)
`
`£402
`I
`
`i( 40)
`
`(cid:141)
`
`(cid:141)
`
`(cid:141)
`
`FIG. 4
`
`
`PAGE 5 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Sep. 11, 2007
`
`Sheet 5 of 9
`
`US 7,269,338 B2
`
`402
`
`TIME STAMP
`A
`
`402
`
`f
`
`510
`
`TIME STAMP
`A
`510--,.~-------
`
`TIME STAMP V 520
`f
`B
`
`404
`
`TIME STAMP
`A
`
`TIME STAMP
`B
`
`(
`510
`
`560
`)
`PROGRAM
`INDENTIFIER
`
`520
`
`570
`~
`
`TIME STAMP
`C
`")
`530
`
`WATCHING
`MODE
`
`550
`/
`
`QUERY
`TIME
`MISREGISTRATION SIGNATURE
`)
`580
`
`540 5
`
`QUERY
`TIME STAMP
`)
`590
`
`FIG. 5
`
`
`PAGE 6 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Sep. 11, 2007
`
`Sheet 6 of 9
`
`US 7,269,338 B2
`
`,, ,
`INITIATOR AWAITS NOTIFICATION v- S602
`OF NEW PARTICIPANT
`',.
`INITIATOR SENDS ON ORIGINATING
`Lr'
`
`SYNCHRONIZATION MESSAGE TO
`THE NEW PARTICIPANT
`
`S604
`
`., ,..
`
`NEW PARTICIPANT ADVANCES ITS
`
`TIME COUNT TO MATCH TIME
`STAMP IN ORIGINATING v- S606
`
`SYNCHRONIZATION MESSAGE
`
`AND CORRESPONDINGLY FAST
`
`FORWARDS ITS COPY
`OF THE VIDEO
`
`',.
`NEW PARTICIPANT TRANSMITS if"'
`
`A JOIN REQUEST MESSAGE
`TO THE INITIATOR
`
`S608
`
`FIG. 6
`
`
`PAGE 7 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Sep.11,2007
`
`Sheet 7 of 9
`
`US 7,269,338 B2
`
`INITIATOR WAIS UNTIL:
`
`CD IT STARTS A SESSION, OR
`0 ITS PERIOD TIMER HAS EXPIRED, OR
`G) IT INITIATES A CONTROL FUNCTION, OR
`0 IT RECEIVES A RETRY REQUEST MESSAGE, OR
`0 IT RECEIVES A JOIN REQUEST MESSAGE
`
`S701
`
`S703
`
`NO THE INITIATOR RESETS
`ITS PERIOD TIMER
`
`THE INITIATOR SENDS AN ORIGINATING
`
`SYNCHRONIZATION MESSAGE TO THE PARTICIPANT
`
`S704
`
`THE PARTICIPANT SENDS A REPLY MESSAGE TO THE INITIATOR
`
`S705
`
`THE INITIATOR SELECTS A QUERY FRAME, CALCULATES ITS
`
`SIGNATURE AND CALCULATES TIME MISREGISTRATION
`
`S706
`
`THE INITIATOR BACKS TIME MISREGISTRATION,
`S708
`IF ANY, OUT OF THE QUERY TIME STAMP
`
`THE INITIATOR BUILDS AND TRANSMITS A STATUS MESSAGE
`
`CONTAINING THE PROGRAM INDENTIFIER, WATCHING MOOE, TIME
`
`MISREGISTRATION, QUERY SIGNATURE AND QUERY TIME STAMP
`
`S710
`
`FIG. 7A
`
`
`PAGE 8 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Sep.11,2007
`
`Sheet 8 of 9
`
`US 7,269,338 B2
`
`UPON RECEIPT OF STATUS MESSAGE, THE PARTICIPANT
`
`VALIDATES THE PROGRAM INDENTIFIER
`
`S712
`
`S716
`
`S714
`
`NO
`
`TRANSMIT ERROR
`MESSAGE TO INITIATOR
`
`S720
`
`THE PARTICIPANT
`ISSUES A CONTROL
`FUNCTION
`
`S724
`
`ADVANCE THE TIME
`COUNT BY THE TIME
`MISREGISTRTATION
`
`S728
`
`ROLL BACK THE TIME
`COUNT BY THE TIME
`MISREGISTRATION
`
`FIG. 78
`
`S726
`
`NO
`
`NO
`
`
`PAGE 9 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Sep.11,2007
`
`Sheet 9 of 9
`
`US 7,269,338 B2
`
`MIN OFF, ITERATION COUNT= 0; MINDIST = K,
`
`SEARCH RANGE= N; OFFSET= -N/2
`
`S802
`
`FIND PARTICIPANT FRAME WITH TIME STAMP S803
`
`CLOSEST TO QUERY TIME STAMP
`
`CURRENT FRAME IS SET TO POINT FRAME THAT IS N/2 I
`
`FRAMES PRIOR TO THE FOUND, CLOSEST FRAME
`
`S804
`
`HAMMING DISTANCE= HAMMING DISTANCE BETWEEN
`THE SIGNATURES OF THE CURRENT AND QUERY FRAMES
`
`S806
`
`S810
`
`OFFSET= OFFSET+ 1; CURRENT FRAME SET TO POINT TO NEXT S812
`
`
`I FRAME; ITERATION COUNT= ITERATION COUNT+ 1
`
`S814
`
`YES
`
`S820
`
`FAST FORWARD
`IMINOFFI
`I FRAMES
`
`S828
`
`STATUS PERIOD TIMER,
`
`
`WHEN IT EXPIRES, SEND
`RETRY REQUEST MESSAGE
`
`S824
`
`REVERSE IMINOFFl
`
`I FRAMES
`
`FIG. 8
`
`
`PAGE 10 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`US 7,269,338 B2
`
`1
`APPARATUS AND METHOD FOR
`SYNCHRONIZING PRESENTATION FROM
`BIT STREAMS BASED ON THEIR CONTENT
`
`BACKGROUND OF THE INVENTION
`
`25
`
`2
`forward, pause, etc.), and the time or frame into the program.
`The time or frame allows the recipient PVR to synchronize
`its replay with that of the sending PVR, by comparing the
`time or frame in the message with its own the current time
`5 or frame.
`In expanding on this concept of synchronizing a sending
`PVR with a recipient PVR by transmitting a time or frame
`from the sending PVR to the recipient PVR, it will be
`initially assumed, for purposes of illustrating the present
`10 invention, that both PVRs are playing back respective,
`identical copies of a video. The frame of the sending PVR
`is part of the sender's copy of the video, which resides in a
`bit stream that is stored in a storage medium. Similarly,
`frames of recipient PVR' s copy of the video reside in a bit
`15 stream that is stored in the recipient's storage medium.
`It will also be initially assumed that when the video timer
`of one PVR shows as its output the same time as does the
`other PVR's video timer, that the respective videos playing
`are at the same point content-wise in their respective play-
`20 backs. When any PVR fast forwards or rewinds, this corre(cid:173)
`spondingly and synchronously advances or rolls back the
`time count of its respective video timer.
`If, for example, the destination PVR's video timer reads
`1 hour, 1 minute and 1 second at a time when the destination
`PVR receives from the sending PVR a message having as its
`output time stamp 1 hour, 1 minute and 2 seconds (set
`according to the sending PVR's video timer), this might
`indicate the destination PVR's playback
`is one second
`30 behind that of the sending PVR. It might be the case, for
`example, that, according to the timing of a single reference
`clock, the destination PVR started its playback one second
`after the sending PVR started its playback. Based on that
`premise, the destination PVR can take corrective action to
`35 compensate for the one second time difference. Specifically,
`if the transmission time of the message was negligible, e.g.
`one millisecond while the time difference is one second, the
`full one second time difference can be relied on to take
`corrective action to synchronize the respective playbacks on
`the PVRs. The destination PVR would, for example, "fast
`forward" its local copy of the program by a full second and
`increment its video timer by a second. By this action, the
`destination's playback would catch up content-wise with
`that of the sender, and the respective video timers of the
`sender and destination PVRs would become synchronized.
`If, however, the transmission time was not negligible, it
`needs to be taken into account in comparing the output time
`stamp of the incoming message with the time the message is
`received at the recipient PVR so that the corrective com(cid:173)
`pensation applied appropriately reflects the extent to which
`the respective video timers out-of-synch and, correspond-
`ingly, the extent to which the respective playbacks are
`content-wise out-of-synch.
`However, the above technique alone will not always
`synchronize the video presentation, i.e. make concurrent the
`playback of corresponding frames in the respective play(cid:173)
`backs. The assumption made above, that the content being
`shown on either PVR at any arbitrarily-selected, common
`video timer time, is identical, does not strictly hold. The
`programs recorded on the two PVRs may, for example,
`begin at the same nominal video start time, but differ
`slightly, perhaps a second or so, as to the actual point in the
`video at which they respectively start. As a result, if both
`playbacks were to be viewed side-by-side, one would lag the
`other. Thus, even if the video timers of both respective PVRs
`were perfectly synchronous, the respective showings of the
`video might be out-of-synch.
`
`1. Field of the Invention
`The present invention relates generally to digital image
`playback, and more particularly to techniques for synchro(cid:173)
`nizing playback of two or more digital streams based on
`renderable content of those streams.
`2. Description of the Related Art
`Personal video recorders (PVRs) are video recording
`devices that may be used in conjunction with virtually every
`television broadcast system (e.g. cable, digital cable, satel(cid:173)
`lite, antenna, or combinations thereof), as well as to record
`from VHS, DVD, Internet sources, etc. PVRs may be
`programmed to automatically find and record a user's favor-
`ite television program or programs so that the user may
`watch what he or she wants, when he or she wants. Typi(cid:173)
`cally, PVRs contain a substantial amount of memory and are
`capable of recording more than thirty hours of program(cid:173)
`ming. The recorded prograniming may then be retrieved and
`viewed by the user as desired.
`Current PVR technology allows users to time shift the
`content of the program being recorded (typically television
`broadcasts). In other words, a user may record a television
`broadcast and watch it several hours, or even days, later.
`Alternatively, a user may decide to record a program and
`begin watching it a predetermined amount of time after the
`start of the program so that the user has the ability to skip
`any commercials
`that may be dispersed throughout
`the
`program. Thus, the user would be watching the program
`during virtually the same time period as people who are
`watching the live broadcast. However, given the capability
`to skip through the commercials, the user of the PVR will
`watch the same program as someone else in less time.
`Notwithstanding
`the above benefits of PVRs, there are
`disadvantages associated with their use. For example, many
`people enjoy watching various programs simultaneously 40
`(e.g., sporting events, talk shows or dramas) even though the
`people may be physically
`located in different locations.
`These people will often communicate with each other during
`the program by other communication means such as the
`telephone or Internet. Therefore, they are able to discuss the 45
`program as the events materialize. However, as people time
`shift content, they lose the ability to simultaneously watch
`shows "together" while at their respective locations. Inevi(cid:173)
`tably, the two users will be watching the same program out
`of synch and therefore one user will know the results of a 50
`dramatic scene or sporting event, for example, prior to the
`other user.
`Copending U.S. patent application Ser. No. 09/894,060,
`entitled "Synchronized Personal Video Recorders", filed
`Jun. 28, 2001, assigned to the assignee of the instant 55
`application, incorporated herein by reference, and not admit(cid:173)
`ted to be prior art by its mention in the background section,
`discloses a system in which one PVR synchronizes with
`another PVR by sending out a status message to the other
`PVR. The message issues when the user of the initiator PVR 60
`operates a PVR function such as start up, fast forward or
`rewind, to allow the recipient of the message to perform the
`counterpart function to keep the presentation on both PVRs
`synchronized. The message is also transmitted periodically,
`to update the synchronization. Within the message is an 65
`identifier of the program being watched or to be watched, an
`indicator of the mode of watching (e.g. normal play, fast
`
`
`PAGE 11 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`US 7,269,338 B2
`
`3
`Also, even if the two playbacks were to be in synch
`initially, the presentation may drift out-of-synch as it
`progresses. For example, the speed at which the respective
`PVRs play back their respective copies of the video may
`differ. These differences become more significant if the two 5
`PVRs have different actual speeds in the fast forward or
`rewind mode, and may cause the viewings to fall out-of-sync
`after one of the PVRs fast forwards or rewinds, commanding
`the other to follow concurrently and synchronously.
`Lack of synchronization may also occur from time to 10
`time, due, for example, to different commercials, and thus
`different commercial time periods, in the two playbacks.
`Both viewers, for instance, may be watching the same
`network, e.g. National Broadcasting Company (NBC), but
`through different cable or satellite providers, e.g. RCN or 15
`Time Warner.
`If, on the other hand, it is the current frame, rather than the
`current time, that is conveyed in the message, non-negligible
`transmission time still needs to be taken into account to
`synchronize presentation. If, for example, the source PVR 20
`sends the destination PVR a message that indicates that
`frame number "n" is currently playing on the source PVR,
`the destination PVR needs to know the transmission time, if
`non-negligible,
`in comparing the frame number that it is
`playing at the time of receipt of the message to the frame 25
`number indicated in the message.
`In the frame-based technique, even if the playbacks are in
`synch or transmission time is accounted for to bring the
`playbacks in synch, the PVRs may use different service
`providers that employ different compression schemes. One 30
`scheme might afford higher image quality than the other by
`including more frames; thus, the assumption above that the
`sender's copy of the video is the same as the recipient's copy
`carmot be strictly relied upon. In addition, adaptive tech(cid:173)
`niques are often used to vary the number of frames capturing 35
`a moving image based on the amount of movement in the
`image, time instant to time instant. The difference in the
`frames numbers for corresponding video content makes
`synchronization based on frame numbers problematic.
`For many situations, these synchronization errors are of 40
`such small magnitude that the viewers of respective play(cid:173)
`backs do not notice them.
`Yet, there exist viewing configurations in which "out-of(cid:173)
`synch" effects are significant and interfere with viewing
`enjoyment. Moreover,
`in some scenarios where,
`for
`instance, people at mutually remote locations are jointly
`executing a task simultaneously, e.g., using a manual pre(cid:173)
`recorded in video form to repair a large online system,
`precise synchronization of a telephone message, the presen(cid:173)
`tation and action based on the message and/or the presen(cid:173)
`tation may be necessary.
`To achieve precise synchronization, the present invention
`compares corresponding content or "landmarks" of pairs of
`video playbacks
`to be synchronized, determines video
`replay "distance" between the landmark pairs, and slows
`down or speeds up selected playbacks in accordance with
`these distances.
`U.S. Pat. No. 5,870,754 to Dimitrova et al. ("Dimitrova"),
`entitled "Video Retrieval of MPEG Compressed Sequences
`Using DC and Motion Signatures", and incorporated herein
`by reference, compares "DC+ M signatures" of a query video
`clip to DC+M signatures in a database to retrieve a video
`sequence whose content is similar to that of the query video
`clip, where a video clip is defined as a sequence of video
`frames.
`In one Dimitrova embodiment, DC coefficient informa(cid:173)
`tion from an I frame and motion vector information from the
`
`4
`following frame are combined to form a digital signature,
`hence the term "DC+M signature".
`An "I frame", under the MPEG (Moving Picture Experts
`Group) compression standard, is an intraframe coded frame,
`which is a coding of a single snapshot of an moving image.
`Interspersed between I frames are interframe coded frames
`comprised of information that represents merely a difference
`between
`the current state of the moving
`image and a
`reference state of the moving image as it existed at a
`previous moment.
`The signature embodies characteristics of the frames it
`represents, but uses less data. Signatures of respective I
`frames in a query video clip are compared to respective I
`frame signatures in a database video clip. The total Ham(cid:173)
`ming distance between the signatures of the query clip and
`the signatures of a database clip is calculated. (The total
`Hamming distance is the sum of the Hamming distances
`between respective signatures of query/database frame pairs
`of a current query clip and database clip, where the Ham(cid:173)
`ming distance between two signatures is based on a bit-by(cid:173)
`bit comparison between the signatures, as explained in
`Dimitrova).
`Specifically, the methodology shifts iteratively along the
`database to define a current database video clip, simulta(cid:173)
`neously adding, to the clip, database frames (I frames) and
`dropping database frames (I frames), with each iteration.
`The total Hamming distance is recalculated at each iteration,
`and the minimum Hamming distance over all iterations
`identifies the database video clip that most resembles the
`query video clip.
`An advantage to using Dimitrova signatures is that they
`can be derived without the overhead of fully decompressing
`the image bit stream. Thus, the Huffman or arithmetic
`coding can be decoded to leave the bit stream in partially
`decoded form so that, without further decompression, fre(cid:173)
`quency components such as DC coefficients of an image
`transform such as the discrete cosine transform (DCT) can
`be utilized in forming the signature, as explained more fully
`in Dimitrova.
`In the Dimitrova embodiment described above, I frames
`are used as the "representative frames", i.e. frames for which
`signatures are derived, if key frames have not been identified
`in the video sequence previous to Dimitrova's processing.
`Key frames are frames at shot boundaries, where a shot is a
`45 video sequence of a scene. Typically, there are a thousand or
`more shots in a movie. In another embodiment, Dimitrova
`uses all frames as representative frames.
`The present invention has a goal similar to that of Dim(cid:173)
`itrova, to compare characteristics of two video streams,
`50 except that the present invention uses the comparison to
`synchronize presentation of renderable content of the
`streams, whereas Dimitrova merely seeks a video clip simi(cid:173)
`lar to the query video clip. To adapt Dimitrova matching for
`the present invention, query frames are compared not against
`55 database frames, as in Dimitrova, but against frames in the
`participant's copy of the video, so that presentation of the
`video by the initiator and by the participant can, as a result,
`be made synchronous. Also, for the sake of processing
`speed, preferably a single query signature, corresponding
`60 primarily to a single frame, is transmitted to the participant
`for comparison, rather than transmitting all the signatures of
`a Dimitrova query video clip, which correspond primarily
`each to a separate frame. Accordingly, since a single query
`signature is compared, in each iteration, to a single candidate
`65 participant frame, the Hamming distance between the sig(cid:173)
`natures of that pair of frames is calculated. The overhead of
`a "total Haniming distance" calculation is thereby avoided.
`
`
`PAGE 12 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`US 7,269,338 B2
`
`5
`SUMMARY OF THE INVENTION
`
`6
`DETAILED DESCRIPTION OF THE
`PRESENTLY PREFERRED EMBODIMENTS
`
`5
`
`The present invention provides a system that allows two
`or more people with personal video recorders (PVRs) to
`precisely synchronize their time-shifted viewing.
`In one aspect, the present invention is directed to an
`apparatus for synchronizing presentation of renderable con(cid:173)
`tent of two digital bit streams that reside in respective
`storage media. Renderable content, as used herein, refers to 10
`content that is presentable in a form that a user can sense,
`e.g. visually or aurally. The apparatus includes a stream
`characteristic unit for deriving information characteristic of
`content of one of said streams and comparing the informa(cid:173)
`tion to information characteristic of content of the other 15
`stream. Content of the one stream is played back by pro(cid:173)
`gressing forward in the one stream. The presentation
`is
`synchronized by modifying
`that progress based on the
`comparison.
`In another aspect, the present invention is directed to
`synchronizing presentation of renderable content of two or
`more digital bit streams that reside in respective storage
`media. One of the streams is received, and information
`characteristic of content of the received stream is derived
`and incorporated into a signal which is outputted. When the
`signal is received, its characteristic information is compared
`to respective information characteristic of content of one or
`more of the other digital bit streams. Presentation of the two
`or more digital bit streams is synchronized by modifying the 30
`forward progress in the respective playbacks of the two or
`more streams based on the comparisons.
`Other objects and features of the present invention will
`become apparent from the following detailed description
`considered in conjunction with the accompanying drawings. 35
`It is to be understood, however, that the drawings are
`designed solely for purposes of illustration and not as a
`definition of the limits of the invention, for which reference
`should be made to the appended claims. It should be further
`understood that the drawings are not necessarily drawn to 40
`scale and that, unless otherwise indicated, they are merely
`intended to conceptually illustrate the structures and proce(cid:173)
`dures described herein.
`
`Referring to FIG. 1, an example of a synchronized PVR
`viewing system 110 in accordance with the present invention
`is illustrated. As illustrated in FIG. 1, broadcasts 112a, b of
`a television program from network A is made pursuant to
`any communication means known to one having ordinary
`skill in the art, such as cable, digital cable, satellite, antenna,
`over the Internet or combinations thereof. The same network
`production, e.g., specific baseball game, is transmitted to
`each of House 1 and House 2. As the broadcasts 112a, b
`enter House 1 and House 2, respectively, they are received
`by receivers 113a, b housed within each of the respective
`PVRs 114a, b. Hereinafter, the suffix "a" refers to the
`"initiator", and the suffix "b" refers to a "participant", in a
`synchronized viewing session. Initially, the "initiator" is the
`PVR that starts the session, although that role is handed off
`20 to any PVR that, as directed by its user, performs a control
`function (e.g., stop, pause, fast forward, reverse). All other
`PVRs participating
`in
`the session are "participants".
`Depending on context, the user of the initiator PVR is
`referred to as the "initiator", and the user of a participant
`25 PVR is referred to as a "participant". Since the broadcasts
`ll2a, b are received by the user, the user has the ability to
`record the broadcast 112a, b in the PVR 114a, b. The
`broadcast may be received in a receiver housed within a
`set-top box, DVD player, VHS player, personal computer,
`television, etc., and then routed to the PVR 114a, b. The user
`has the ability to record a variety of different programs in the
`PVR 114a, b along the bandwidth of the incoming broadcast
`signal. Additionally, since the broadcast signal is routed to
`each house separately, each house has the ability to sepa(cid:173)
`rately turn the broadcast signal on or off. The PVR 114a, b
`has an output that is connected to an input on a television
`122a, b so that the user may view the recorded programs on
`the television 122a, b.
`A remote control 116a, bis commonly associated with the
`personal video recorder 114a, b to allow the user to operate
`the personal video recorder 114a, b remotely. Typically, the
`remote control 116a, bis configured to transmit an infrared
`signal to the television 122a, b.
`The system 110 preferably has two communication net(cid:173)
`works associated therewith. The first is an Internet network
`118 that interconnects the PVRs 114a, b located at the two
`different locations (e.g. House 1 and House 2). The Internet
`network 118 supplies the means 119 for communicating
`information between the PVRs 114a, b such that synchro(cid:173)
`nization may be achieved. The second communication net-
`work is a telephone network 120, e.g., public switched
`telephone network (PSTN) or a private network, which
`provides a communication means for the two users to
`55 communicate while they are simultaneously viewing the
`recorded program 112a, b. Alternatively, either or both of the
`two communications networks may comprise Internet and/
`or telephone components.
`In order to implement the system 110, one of the users,
`e.g. user 1 from House 1, will call the other user, i.e. user 2
`from House 2, and the respective users will agree to simul(cid:173)
`taneously and synchronously watch a pre-recorded broad(cid:173)
`cast on their respective
`televisions. Here, pre-recorded
`broadcasts are intended to include live broadcasts that have
`65 been buffered for a delay period, which some receivers have
`the ability to do, so that the broadcast can be replayed
`continuously in a staggered time frame without commer-
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`In the drawings, in which like reference numerals identify
`similar or identical elements throughout the several views:
`FIG. 1 is an illustration of a synchronized viewing system
`with which the present invention is usable;
`FIG. 2 is a diagram of the structure of a personal video
`recorder (PVR) in accordance with the present invention;
`FIG. 3 is a diagram of a component of a PVR in
`accordance with the present invention;
`FIG. 4 is a message flow diagram demonstrating a syn(cid:173)
`chronization technique in accordance with the present inven(cid:173)
`tion;
`FIG. 5 is a message format diagram for messages shown
`in FIG. 4;
`FIG. 6 is a flow chart of the process of joining an ongoing
`session in accordance with the present invention;
`FIGS. 7 A and 7B are flow charts of time synchronization
`in accordance with the present invention; and
`FIG. 8 is a flow chart depicting frame synchronization in
`accordance with the present invention.
`
`45
`
`50
`
`60
`
`
`PAGE 13 OF 20
`
`SONOS EXHIBIT 1007
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`US 7,269,338 B2
`
`5
`
`7
`cials. After the users agree to view a program in synchro(cid:173)
`nization, one of them would take the lead to initiate the
`system.
`Assuming that user 1 takes the lead as the "initiator", user
`1, via a remote control 116, via controls on the PVR 114a
`itself, or via control commands displayed on the television
`and activated by an input device such as a keyboard or
`remote controller, would activate a menu for synchronized
`viewing on the PVR 114a. User 1 would respond to and send
`the menu. Resulting other menus would be sent to user 2.
`The users would each indicate by their respective response
`to the menus they received whether or not they will be
`participating
`in the session. Based on the responses, a
`synchronized viewing session is established to begin at an
`agreed upon time. The agreed upon time may be a universal
`time, such as 9:00 P.M., or a relative time, such as in 5
`minutes. A series of menus for establishing a viewing
`session are discussed in U.S. patent application Ser. No.
`09/894,060, described above. A memory device and a pro(cid:173)
`cessor preferably reside in either the PVRs 114a, b or one of
`the other devices associated with system 110. Programming
`code associated with the system 110 preferably resides in the
`memory device and is processed by the processor.
`More than two users may participate in a synchronized
`viewing session; for example, users in three or more remote
`locations may arrange mutually by phone, by menus, by
`e-mail, by Internet chat, etc., to view a particular program
`simultaneously. During the session, viewers may drop out or
`be added to the session. When any session participant
`performs a control function ( e.g., start, pause, rewind, fast
`forward), that participant's PVR 114b broadcasts a com(cid:173)
`mand for that function that is immediately communicated
`and effected in the PVR 114b of each participant, to keep the
`presentation synchronized. To ensure that the PVRs 114a, b
`participating
`in a session remain synchronous, a status
`message is sent out periodically by the "initiator", i.e., the
`PVR 114a that initiated the session. The status message is
`also transmitted with each command that is broadcasted in 40
`response to a participant performing a control function.

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