throbber
(12) United States Patent
`O’Connor et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 6,591,058 B1
`Jul. 8, 2003
`
`US006591058B1
`
`(54) TIME SHIFTING BY CONCURRENTLY
`RECORDING AND PLAYINGA DATA
`STREAM
`
`(58) Field of Search .......................... .. 386/4, 1, 52, 53,
`386/55, 57, 65, 68, 46, 69, 95, 107, 117,
`6, 109; 345/723; H04N 5/91, 5/93
`
`(75)
`
`Inventors: Dennis M. O’Connor, Chandler, AZ
`(US); Mark P. Chuang, Sunnyvale, CA
`(US); Boon-Lock Yeo, Sunnyvale, CA
`(US); Robert L. Davies, Fremont, CA
`(US)
`
`(56)
`
`References Cited
`Us. PATENT DOCUMENTS
`
`5/1992 Tanaka
`5422:5386 A *
`FOREIGN PATENT DOCUMENTS
`
`(73) Assignee:
`
`Intel Corporation, Santa Clara, CA
`(US)
`
`JP
`
`4/1997
`*
`09095325
`OTHER PUBLICATIONS
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`USC. 154(b) by Q days.
`
`(21) Appl' No’: 09/343370
`(22)
`Filed;
`Jun, 30, 1999
`Related U.S. Application Data
`
`(63)
`
`Int. Cl.
`(51)
`(52) U.S. Cl.
`
`g°nti1n(1)1a1ti9°9I§in'E{1T§19faPP1i:fiti0I:.N0~.09/15£0,?77, 1f{1eCE.011
`N?‘ 087996953: ‘E16215 ‘(’)I°1°g(1)/I:1.1a21§’,n’11I91’9p7‘:r n(:w:jpga1t°eIi;’0e
`6,480,667.
`7
`
`........................... .. H04N 5/91; H04N 5/93
`.......................................... .. 386/65; 386/52
`
`Ye0 et 31» “Rapid Scene Analysis 0“ C0mPressed Vide0”,
`IEEE Transactions on Circuits and Systems for Video Tech-
`nology, vol. 5, No. 6, Dec. 1995, pp. 533-544.
`* cited by examiner
`Primary Examiner—Robert Chevalier
`(74) Attorney, Agent, or Firm—Trop, Pruner & Hu, P.C.
`57
`ABSTRACT
`(
`)
`A video stream may include portions that are stored While
`other portions are being displayed. In one embodiment, a
`portion of the video stream. may be stored in digital storage
`medIa at one Instance WhIle In the next Instance another
`portion of the stream is being read out of the storage media.
`
`16 Claims, 23 Drawing Sheets
`
`2200
`
`
`SCENE CHANGE
`DETECTION
`
`2202
`
`REOUEST SCENE
`CHANGE TIMES
`
`2204
`
`RECEIVE SCENE
`CHANGE TIMES
`
`
`
`
`
`SCAN TIME INFORMATION
`TO COLLECT SCENE FILES
`
`
`
`2206
`
`2208
`
`
`
`DISPLAY SCENES
`
`
`
`LG Ex. 1007, pg 1
`
`LG Ex. 1007, pg 1
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 1 of 23
`
`US 6,591,058 B1
`
`o_%>oEmm
`
`2,505
`
`:5
`
`NE
`
`N3mmmim
`
`
`
`o_oN_.o_._.>1_o_w_m_>_
`
`So82>:o_m$aEoo8\e§2E_n_
`
`Emmgoi
`
`O2
`
`_GE
`
`coammaeoo
`
`E:
`
`NEE82>
`
`7,OO1X.EGL
`
`29D.
`
`LG Ex. 1007, pg 2
`
`
`
`
`
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 2 of 23
`
`US 6,591,058 B1
`
`
`
`20
`
`0
`
`202
`
`Receive Video Stream
`At An Input
`
`204
`
`
`
`Record Video Stream
`To Random Access Storage Unit
`
`206
`
`Retrieve A Portion Of The
`Video Stream From The Random
`Access Storage Unit
`While Continuing To Record
`The Incoming Video Stream
`
`
`
`
`
`
`
`
`
`
`
`
`
`Provide At An Output The
`Portion Of The Video Stream
`Retrieved From The Random
`Access Storage Unit
`
`
`
`FIG. 2
`
`LG Ex. 1oo7, pg 3
`
`LG Ex. 1007, pg 3
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 3 of 23
`
`US 6,591,058 B1
`
`300
`
`302
`
`Compress/Buffer Video
`Stream
`
`
`
`
`
`Store Video Stream Into The
`Random Access Storage Unit
`
`Retrieve Video Stream From
`The Random Access Storage Unit
`
`Buffer/Decompress Video Stream
`
`Compress/Buffer Video Stream
`
`Store Video Stream Into The
`Random Access Storage Unit
`
`Retrieve Video Stream From
`The Random Access Storage Unit
`
`Buffer/Decompress Video Stream
`
`FIG. 3
`
`5””
`
`310
`
`LG Ex. 1oo7, pg 4
`
`LG Ex. 1007, pg 4
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 4 of 23
`
`US 6,591,058 B1
`
`Playback
`File:
`003
`Offset: Off_1
`
`Record
`File:
`009
`Offset: 0ff_2
`
`Processor
`130
`
`FIG. 4
`
`LG Ex. 1007, pg 5
`
`LG Ex. 1007, pg 5
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 5 of 23
`
`US 6,591,058 B1
`
`005
`
`502
`
`504
`
`
`
`
`
`
`
`Receive Video Stream
`At An Input
`
`
`
`Record Video Stream
`To Storage Unit
`
`Delete Older Portions Of The Video Stream
`From The Storage Unit As Newer
`Portions Of The Video Stream Are
`Stored To The Storage Unit
`
`Begin Record And
`Playback Cycle
`
`Save All Or Part Of
`Temporary Butter
`
` 510
`
`
`
`FIG. 5
`
`LG Ex. 1oo7, pg 6
`
`LG Ex. 1007, pg 6
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 6 of 23
`
`US 6,591,058 B1
`
`6
`
`00
`
`602
`
`Record And Playback Cycle
`
`Is Time Delay Less
`Than Threshold
`?
`
`YES
`
`606
`
`
`
`
`
`
`
`
`Provide Incoming Video
`Stream To Video Out
`
`End
`
`FIG. 6
`
`LG Ex. 1007, pg 7
`
`LG Ex. 1007, pg 7
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 7 of 23
`
`US 6,591,058 B1
`
`700
`
` 702
`
`704
`
`Suspend Video Out Responsive
`To First User input
`
`
`
`Begin Record And Playback
`Cycle With Playback Paused
`
`706
`
`
`
`Un-suspend Video Out
`Responsive To Second User Input
`
`710
`
`End
`
`FIG. 7
`
`LG Ex. 1oo7, pg 8
`
`LG Ex. 1007, pg 8
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 8 of 23
`
`US 6,591,058 B1
`
`
`
`800
`
`Time X + 1*T
`
`Time X + 2*T
`
`Time X + 3*T
`
`Time X + 4*T
`
`Time X + 5*T
`
`Time X + 6*T
`
`
`
`FIG. 8
`
`LG Ex. 1007, pg 9
`
`LG Ex. 1007, pg 9
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 9 of 23
`
`US 6,591,058 B1
`
`902
`
`904
`
`906
`
`908
`
`970
`
`912
`
`974
`
`LG Ex. 1007, pg 10
`
`
`
`090
`
`
`
`
`
`Capture
`Video
`
`Encode/
`Compress
`
`
`
`Decode/
`Decompress
`
`FIG. 9
`
`LG Ex. 1007, pg 10
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 10 of 23
`
`US 6,591,058 B1
`
`1002
`
`Processor
`
`1000
`
`/
`
`1006
`
`,005
`
`1004
`
`1008
`
`Gmpmcs
`Accelerator
`
`AGP
`
`7010
`
`AGP
`Chipset
`
`Syfiem
`|V|3m0Fy
`
`~L Q ~L '\J
`
`4 xx 3 ~L
`
`TVTuner/
`Capture Card
`
`1014
`
`1032
`
`.
`
`1036
`
`1034
`
`HDD
`
`7076
`
`1038
`
`1028
`
`F 7022
`FF 70247026
`PF 1030
`223000
`PP 2500
`
`LG Ex. 1007, pg 11
`
`LG Ex. 1007, pg 11
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 11 of 23
`
`US 6,591,058 B1
`
`’//1100
`
`IIIIIEIIII
`
`1101
`
`FIG. 11
`
`
`
`FIG. 17
`
`LG Ex. 1007, pg 12
`
`LG Ex. 1007, pg 12
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 12 of 23
`
`US 6,591,058 B1
`
`1020
`
`Display
`
`1200
`
`YE
`
`EPG
`Activated
`
`
`1202
`
`1204
`
`Store
`Program
`
`Auto
`ReC0rd
`
`
`7 ‘ |[) I Program I
`
`1206
`
`YE
`
`7212
`
`YE
`
`1208
`
`1210
`
`I Locate
`Pointer Focus
`
`Scale
`Focused
`Seqment
`
`7274
`
`7276
`
`Stop
`Playback
`
`Continue
`Recording
`
`1213
`
`7220
`
`7222
`
`Play
`
`
`-« Content Recording
`YE
`Recorded
`
`
` Record
`
`| Current;Display
`
`1226
`
`Ace
`
`Playback
`
`YES
`
`3
`
`FIG. 12
`
`LG Ex. 1007, pg 13
`
`LG Ex. 1007, pg 13
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 13 of 23
`
`US 6,591,058 B1
`
`Confinue
`
`Diay
`
`
`
`
`
` 7240
`Does
`Playback
`
`Cur_rent
`Display
`?
`
`FIG. 12A
`
`LG Ex. 1007, pg 14
`
`LG Ex. 1007, pg 14
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 14 of 23
`
`US 6,591,058 B1
`
`FIG. 14
`
`LG Ex. 1007, pg 15
`
`LG Ex. 1007, pg 15
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 15 of 23
`
`US 6,591,058 B1
`
`Input
`Buffers
`
`75
`
`00
`
`
`
`1502
`
`
`
`Store Input in
`First Buffer
`(top of stack)
`
`
`
`
`
`Second Buffer
`designated
`top of stack
`
`Store Input in
`Second Buffer
`
`
`
`
`Write From
`First Buffer
`and Second Buffer
`
`
`Third Buffer
`designated
`
`to of stack
`
`Store Input in
`Third Buffer
`
`First Buffer
`designated
`top of stack
`
`Write from
`Third Buffer
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`time step 1
`
`1504
`
`time step 2
`
`1506
`
`1508
`
`time step 3
`
`1570
`
`1512
`
`1514
`
`time step 4
`
`1515
`
`FIG. 15
`
`LG Ex. 1oo7, pg 16
`
`LG Ex. 1007, pg 16
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 16 of 23
`
`US 6,591,058 B1
`
`1600
`
`time Step 4
`
`time step 5
`
`Output
`7
`
`Read from Storage
`to Fourth and Fifth
`Buffers
`
`
`
`Output from
`Fourth Buffer
`
`
`
`
`
`_
`time step 6
`
`Read from Storage
`to Sixth and Fourth
`Buffers
`
`Output from
`Fifth Butter
`
`time step 7
`
`.
`“me Step 8
`
`Read from Storage
`to Fifth and Sixth
`Buffer
`
`Output from
`Fourth Buffer
`
`7602
`
`1604
`
`1606
`
`1608
`
`1610
`
`1672
`
`1614
`
`1616
`
`fimesmp9
`
`Output from
`Fifth Buffer
`
`HQ 15
`
`LG Ex. 1oo7, pg 17
`
`LG Ex. 1007, pg 17
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 17 of 23
`
`US 6,591,058 B1
`
`1800
`
`/0218
`
`1804
`
`VIDEO
`TRANSMITTER
`
`SCENE CHANGE
`DETECTOR
`
`RECEIVER
`
`
`1806
`
`FIG. 18 / 1900
`
`1902
`
`1904
`
`1906
`
`CHANNEL /.D.
`
`VIDEO INFORMATION
`
`TIME TAG
`
`FIG. 19
`
`/ 2000
`
`2002
`
`2004
`
`2006
`
`CHANNEL /.0.
`
`T/ME
`
`FIG. 20
`
`/ 2100
`
`2102
`
`2104
`
`2106
`
`CHANNEL CODE
`
`SCENE CHANGE TIMES
`
`FIG. 21
`
`LG Ex. 1007, pg 18
`
`LG Ex. 1007, pg 18
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 18 of 23
`
`US 6,591,058 B1
`
`
`
`2200
`
`SCENE CHANGE
`DETECTION
`
`
`
`2202
`
`REQUESTSCENE
`CHANGE T/MES
`
`2204
`
`RECEIVE SCENE
`CHANGE TIMES
`
`2206
`
`SCAN TIME INFORMATION
`TO COLLECT SCENE FILES
`
`
`
`2208
`
`DISPLAY SCENES
`
`
`
`FIG. 22
`
`LG Ex. 1007, pg 19
`
`LG Ex. 1007, pg 19
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 19 of 23
`
`US 6,591,058 B1
`
`START T/ME
`
`2302
`
`2300
`
`SCENE CHANGE ANALYZER
`
` CAPT/ON
`
`ANALYSIS
`
`?
`
`
`
`
`
`
`COMPRESSION
`
`HQ 23
`
`LG Ex. 1007, pg 20
`
`ANALYZE
`
`LG Ex. 1007, pg 20
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 20 of 23
`
`US 6,591,058 B1
`
`SPECIFY
`SCENE CHANGE
`SENSITIVITY __
`
`2404
`
`FIG. 24
`
`LG Ex. 1007, pg 21
`
`LG Ex. 1007, pg 21
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 21 of 23
`
`US 6,591,058 B1
`
`2500
`
`FORMAT DETECT
`
`
`
`2502
`
`RECEIVE VIDEO
`
`2504
`
`A7TEMPT T0 DEMODULA TE
`
`
`
`
`
`@ N
`
`0
`
`2508
`
`E
`
` 10
`
`25
`
`SCENE
`CHANGE DETECT
`
`2512
`
`@llgffififififififigiifi
`
`FIG. 25
`
`LG Ex. 1007, pg 22
`
`LG Ex. 1007, pg 22
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 22 of 23
`
`US 6,591,058 B1
`
`
`
`PROGRAMA
`
`PID
`
`PROGRAM /3
`PROGRAM (3
`PROGRAM D
`HG 35
`
`
`
`
`2
`
`714
`
`LG Ex. 1007, pg 23
`
`CHANNEL
`3509
`2700
`/NTRA CHANNEL JUMP
`
`
`
`
`DIGITAL
`
`TRANSMISSION
`
`?
`
`
`
`PROGRAM
`S WITCH
`
`RESTORE
`
`LG Ex. 1007, pg 23
`
`

`
`U.S. Patent
`
`Jul. 8, 2003
`
`Sheet 23 of 23
`
`US 6,591,058 B1
`
`2800
`
`2802
`
`2900
`
`
`
`
`RECEIVE COMPRESSED
`VIDEO
`
`
`
`
`
` 2804
`
`
`2806
`
`DETECT SCENE CHANGES
`
`EXTRACT
`DC IMAGE
`
`2906
`
`
`
`2908
`
`STORE COMPRESSED
`VIDEO
`
`
`
`FIG. 28
`
`FIG. 29
`
`LG Ex. 1007, pg 24
`
`LG Ex. 1007, pg 24
`
`

`
`US 6,591,058 B1
`
`1
`TIME SHIFTING BY CONCURRENTLY
`RECORDING AND PLAYING A DATA
`STREAM
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This is a continuation-in-part of U.S. patent application,
`Ser. No. 09/150,577,
`filed Sep. 10, 1998, which is a
`continuation-in-part of U.S. patent application Ser. No.
`08/996,535, filed Dec. 23, 1997 now U.S. Pat. No. 6,480,
`667.
`
`BACKGROUND
`
`This present invention relates to the recording and playing
`back of a video stream. A video stream includes any com-
`bination of audio and/or video data streams.
`
`Video streams have typically been recorded on analog
`media such as a video cassette. A video cassette recorder
`
`(VCR) is used to record the video stream on the video
`cassette. The video stream may come via a broadcast signal,
`via cable, via satellite signal, or from another video playback
`device. Once the video stream has been recorded, the VCR
`is used to rewind the recording medium and play what was
`recorded. However, due to the nature of the analog medium,
`once the VCR has started recording, it is not possible to play
`back the portion of the video stream that has already been
`recorded until the recording session is terminated.
`Thus, there is a need for an improved way of recording
`portions of a video transmission.
`
`SUMMARY
`
`In accordance with one embodiment, a method of dis-
`playing and recording a video transmission includes request-
`ing scene change time information. The scene change time
`information is used to identify scenes in stored video infor-
`mation.
`
`In accordance with another embodiment, a method of
`detecting scene changes in video and audio information
`includes using a first technique to identify a scene change.
`Audio information is used to assist in identifying a scene
`change.
`In accordance with another embodiment, a method of
`detecting scene changes in compressed video information
`includes identifying scene change information developed by
`the algorithm used to compress said video information. That
`scene change information is used to identify scene changes.
`The location of the scene change is marked to facilitate
`identifying the video frame where the scene change occurs.
`In accordance with another embodiment, a method for
`identifying whether digital or analog video information has
`been received includes attempting to demodulate the infor-
`mation using a digital technique. Based on the results of the
`demodulation attempt,
`the format of the information is
`determined.
`
`In accordance with another embodiment, a method of
`storing and playing digital video information includes
`receiving a plurality of programs on a single channel. Each
`of said programs is stored in association with an identifier.
`A first program is played and then stopped. The identifier
`and the point when the play is stopped is stored. A second
`program is played.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram of a video record and playback
`system in accordance with one embodiment of the invention;
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`FIG. 2 is a flow chart of one embodiment of the method
`
`of providing a time-shifted video stream in accordance with
`the invention;
`FIG. 3 shows one embodiment of performing block 206
`of FIG. 2;
`FIG. 4 shows one embodiment of an apparatus for storing
`the video stream on a hard disk in accordance with the
`invention;
`FIG. 5 shows an embodiment of a method of using the
`storage unit as a temporary buffer in accordance with the
`invention;
`FIG. 6 is a flowchart of the playback of a video stream
`catching up to the incoming video stream for one embodi-
`ment of the invention;
`FIG. 7 shows another embodiment, in which the user is
`able to suspend the display of the incoming video stream in
`accordance with the invention;
`FIG. 8 shows an example of an embodiment of a display
`screen with several image frames taken at different times in
`accordance with the invention;
`FIG. 9 is a flow chart showing one embodiment of a
`system for recording and playing back a video stream in
`accordance with the invention;
`FIG. 10 is a block diagram of a computer system useful
`in implementing one embodiment of the present invention;
`FIG. 11 is an exemplary TV display for implementing an
`embodiment of the present invention;
`FIG. 12 is a flow chart showing the operation of another
`embodiment of the present invention;
`FIG. 12A is a continuation of the flow chart of FIG. 12;
`FIG. 13 is a top plan view of a remote control useful in
`one embodiment of the present invention;
`FIG. 14 is a block diagram showing how data is trans-
`ferred to and from a memory device in accordance with one
`embodiment of the present invention;
`FIG. 15 is a flow chart showing the flow of input video
`information into a storage device in accordance with one
`embodiment of the present invention;
`FIG. 16 is a flow chart showing the flow of data from the
`storage device in accordance with one embodiment of the
`present invention;
`FIG. 17 shows a display with an electronic program guide
`in accordance with one embodiment of the present inven-
`tion;
`FIG. 18 is a block diagram of a video transmission system
`in accordance with one embodiment of the present inven-
`tion;
`FIG. 19 is a depiction of a video file associated with a
`given broadcast channel;
`FIG. 20 is a depiction of a request to a scene change
`detector for scene change information;
`FIG. 21 is a depiction of a response to a request for scene
`change information;
`FIG. 22 is a depiction of software that may be used by the
`receiver shown in the system of FIG. 18;
`FIG. 23 is a flow chart for a scene change detector in
`accordance with one embodiment of the present invention;
`FIG. 24 is a graphical user interface that may be used in
`connection with a scene change detector;
`FIG. 25 is a flow chart for detecting whether information
`received from a video transmitter is in a digital or analog
`format and for processing that information for storage;
`FIG. 26 is a depiction of a channel in a digital video
`distribution system;
`
`LG Ex. 1007, pg 25
`
`LG Ex. 1007, pg 25
`
`

`
`US 6,591,058 B1
`
`3
`FIG. 27 is a flow chart for allowing an intrachannel jump
`between programs on a single channel in a digital video
`distribution system;
`FIG. 28 is a schematic depiction of the relationship
`between a frame and a DC image; and
`FIG. 29 is a flow chart for software for handling detecting
`scene changes without full frame decompression.
`DETAILED DESCRIPTION
`
`FIG. 1 shows a block diagram of a video record and
`playback system 100 in accordance with one embodiment of
`the invention. Avideo stream is received at the video input
`port 102. The video stream may be provided by a camera, a
`television signal, broadcast, cable, or satellite signals, or
`another video playback device.
`In one embodiment, an
`analog-to-digital conversion may be performed on an analog
`video stream to form a digital video bit stream. In a different
`embodiment, the video is already in digital form. The video
`record and playback system 100 may be part of a system,
`such as a computer system or set top box, such that the video
`input port 102 may be part of a video capture card in the
`computer system or set top box.
`The digital video stream from the video input port 102 is
`optionally compressed at compression unit 104.
`In one
`embodiment, the video is already compressed and no further
`compression is needed. The video stream is then stored in
`the storage unit 108. A buffer unit 106 may be used as
`temporary storage for providing larger sequential blocks of
`video data to the storage unit 108. In one embodiment, the
`buffer unit 106 comprises a random access memory that
`allows relatively quick access to any portion of the stored
`video stream.
`
`The video stream is played back by reading the video
`stream from the storage unit 108. If the video stream was
`compressed in compression unit 104, then a decompression
`unit 110 decompresses the retrieved video stream. The video
`stream is provided from a video output port 120, to a monitor
`or other display device such as a TV to provide sound and/or
`video to a user.
`
`A removable storage unit 122 may also be included in
`video record and playback system 100, Examples of remov-
`able storage units include a writeable compact disk read only
`memory (CD-ROM), writeable digital video disk (DVD), a
`flash memory, or another hard disk. The availability of a
`removable storage unit 122 allows a user to transfer a
`recording of a video stream stored in storage unit 108 to the
`removable storage unit 122 and then to transfer the unit 122
`to another system at a different location.
`In one embodiment, a processor 130 controls the opera-
`tions of the video record and playback system 100. The
`compression unit 104 and decompression unit 110 may be
`implemented in hardware, or the compression and decom-
`pression functions of units 104 and 110 may be performed
`by the processor 130. Processor 130 receives instructions
`from firmware/memory 140, using technology that is well
`known.
`FIG. 2 shows a flow chart of an embodiment of a method
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`of providing a time-shifted video stream in accordance with
`the present invention. The flow chart begins at block 200,
`and continues at block 202 where the video stream is
`
`60
`
`received. The recording of the video stream begins at block
`204. At block 206, playback of the recorded video stream is
`performed by retrieving a portion of the video stream from
`the random access storage unit while the recording of the
`incoming video stream continues. The retrieved portion of
`the video stream may be time-shifted from the incoming
`
`4
`video stream by a time delay. At block 208, the portion of the
`video stream retrieved from the random access storage unit
`is retrieved for display by a television or other display
`device.
`
`the record and playback functions are
`In this way,
`decoupled from one another. The user may now begin
`watching a recorded TV show from the beginning, e.g., prior
`to the show being completely recorded.
`FIG. 3 shows an embodiment of a method for retrieving
`a portion of the video stream from the random access storage
`unit while continuing to record the incoming video stream in
`accordance with the invention, although the invention is not
`restricted to this embodiment. In the disclosed embodiment,
`the substantially simultaneous recording and playback of the
`video stream is performed by multiplexing or alternately
`storing the video stream to the random access storage unit
`and reading of the video stream from the random access
`storage unit. The multiplexed or alternated stores and reads
`may occur quickly enough that the user does not notice an
`appreciable delay in the playback of the video stream, and
`the incoming video stream is not lost, e.g., all of the video
`stream is recorded. Thus,
`the record and playback are
`substantially simultaneous from the user’s point of view.
`In one embodiment, the random access storage unit com-
`prises a hard disk. The retrieval of the time-shifted video
`signal from the hard disk is performed at a first physical
`location (or sector) of the hard disk, and the storing to the
`hard disk of the incoming video stream is performed at a
`different physical
`location (or sector) on the hard disk.
`Because it takes more time to jump back and forth between
`different sectors of the hard disk than to read and write to
`
`sequential locations in the same sector, data may be buffered
`to reduce the number of accesses to and from the hard disk
`
`using buffer 106. This increases the amount of data trans-
`ferred per access.
`Additionally, because of time constraints for reading and
`writing to the hard disk, data may be compressed and
`decompressed to speed transfers to and from the hard disk.
`In block 302,
`the video stream is stored in a random
`access storage unit. The video stream is optionally com-
`pressed and/or buffered prior to storage. In block 304, the
`video stream is retrieved from the random access storage
`unit. Buffering and/or decompression may be performed
`before providing the retrieved video stream to the video
`output port 120.
`The next portion of the video stream is stored (block 306)
`as described in block 302. At block 308, the next portion of
`the video stream is retrieved as described in block 304. This
`
`process is repeated until either the recording or playback
`cycle is terminated.
`FIG. 4 shows one embodiment of an apparatus for storing
`the video stream in the storage unit 108 in accordance with
`the invention. Again, the invention is not restricted in scope
`to the illustrated embodiments. In this embodiment,
`the
`video stream is stored as separate files 001 and 009 on a hard
`disk, for example. The processor 130 keeps track of the file
`and offset into the file of the data being played back, as well
`as the file and offset into the file of the data being recorded.
`If the random access storage unit is fast enough, more than
`one video stream may be recorded and played back at the
`same time.
`
`65
`
`Due to the nature of the random access storage unit being
`capable of easily recording over itself, the random access
`storage unit may act as a temporary buffer for recording the
`latest portion, or X number of minutes, of an incoming video
`stream, where X is set up based upon the size of the storage
`
`LG Ex. 1007, pg 26
`
`LG Ex. 1007, pg 26
`
`

`
`US 6,591,058 B1
`
`5
`unit in this particular embodiment. In one embodiment, X
`could be set up to be the entire storage unit. As newer
`portions of the video stream are received, they overwrite the
`older portions of the video stream saved in the random
`access storage unit. In this manner, the temporary buffering
`of the video stream acts as a circular buffer.
`In one
`
`embodiment, the processor 130 maintains pointers to the
`beginning and ending points of the temporary buffer. The
`processor 130 reassigns the pointers as newer portions of the
`video stream are received and/or older portions of the video
`stream are overwritten.
`FIG. 5 shows a flow chart 500 of an embodiment of one
`
`method for using a temporary buffer in accordance with the
`invention. At block 502, the video stream is received at an
`input. Recording of the video stream to the storage unit
`begins at block 504. At block 506, older portions of the
`video stream are deleted as newer portions of the video
`stream are stored to the storage unit.
`Auser may initiate a playback cycle following block 506.
`For example,
`this may occur when the user wishes to
`re-view a video clip that he just saw. In one embodiment, the
`user stops recording to the temporary buffer and plays back
`the last portion of the temporary buffer.
`However, it may be more desirable to the user to be able
`to continue recording as shown at block 508. A record and
`playback cycle (as described with respect to FIG. 2) is
`started,
`in which the incoming video stream is recorded
`while the user re-views the last portion of the temporary
`buffer. In this manner, after re-viewing the desired video
`clip, the user can resume sequentially watching the video
`stream from the current point of the incoming video for
`substantially simultaneous playback and record.
`At block 510, after the record and playback cycle is
`completed, all or part of the temporary buffer may be saved.
`Since the temporary buffer stores the latest X minutes of the
`video stream prior to the record and playback cycle, all or
`part of the temporary buffer may be allocated to the portion
`of the video stream saved during the record and playback
`cycle. Other portions of the video stream may then be
`deleted from the storage unit, or they may be marked as
`overwriteable and used as a new temporary buffer.
`FIG. 6 illustrates an embodiment of a method for playing
`back a video stream to allow the playback to catch up to the
`incoming video stream in accordance with the invention. If
`the playback is performed at an overall rate faster than the
`rate at which the incoming video stream is received, then the
`playback may catch up to the incoming video stream.
`For example, playback of the video stream may have an
`overall rate faster than the rate of the incoming video stream
`if the playback is fast forwarded, or if segments of the
`playback are skipped altogether. When the time delay of the
`time-shifted video stream being played back falls below a
`certain threshold, the video and playback system 100 will
`cease providing the time-shifted video stream from the
`storage unit. Instead,
`the incoming video stream will be
`provided to the video output port 120 directly.
`In one
`embodiment, a bypass 142, as shown in FIG. 1, allows the
`incoming video stream to be provided to the video output
`port 120 directly.
`When this happens, the user has caught up to the “live”
`broadcast, e.g., the incoming video stream in this embodi-
`ment. The user may terminate the recording cycle, if he
`wishes. Alternatively, the user may put the video record and
`playback system 100 back into the temporary buffering
`mode in which only the latest portion of the video stream is
`stored.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`FIG. 7 shows an embodiment in which the user is able to
`suspend the display of the incoming video stream. This can
`be used for example, when the user is interrupted, and
`wishes to continue viewing the video stream after the
`interruption. When interrupted, the user signals to the video
`stream and playback system 100 to suspend the display of
`incoming video stream. This can be done via a remote
`control, for example. At block 702, the video output signal
`is suspended. In one embodiment,
`the video output port
`continues to provide a still image of the image present at the
`instance when the suspend was encountered.
`At block 704 the incoming video stream is recorded but
`is not displayed to the monitor. Instead the playback is
`paused at
`the point at which the user indicated that the
`incoming video stream be suspended. When the user is ready
`to view the video stream again, he can signal the video
`record and playback system 100 to un-suspend the video
`stream so that it plays back from the point at which the video
`stream was suspended, as shown in block 706.
`The user may then view the video stream time shifted by
`the amount of time that he suspended the incoming video
`stream, or he may fast forward (or rewind) through the
`time-shifted video stream. When playback of the time-
`shifted video stream catches up to the point at which the
`incoming video stream is being recorded, the record and
`playback system 100 may display the incoming video stream
`directly from incoming video stream without retrieving the
`video stream from the storage unit, as described with respect
`to FIG. 6. The recording of the video stream may then be
`terminated by the user, if desired.
`Employing a random access storage unit for storage of the
`video stream facilitates jumping to various points within the
`video stream. One way of jumping is by retrieving different
`time slices of the video stream. For example, an image frame
`from the video stream can be retrieved from the storage unit
`at 1 minute intervals from a current position of the video
`stream. In one embodiment, an image frame at the current
`playback position+1 minute, current playback position+2
`minutes, and so forth are retrieved and displayed on the TV
`screen in a mosaic pattern.
`FIG. 8 shows an example of a display screen 800 which
`displays several image frames taken from the video stream
`at different times. In FIG. 8, the current playback position is
`designated as X. In one embodiment, the time interval, T, is
`user programmable. The intervals may be multiples of the
`time interval, as shown. A small interval may be used if the
`user wishes to skip a commercial, which usually lasts only
`a few minutes. Longer intervals such as a half hour may be
`useful for determining which movies are recorded on a
`storage unit.
`After the image frames are displayed, the user is able to
`select one of the frames as a new starting point at which to
`begin an operation, such as a playback or record operation.
`By using such a story boarding method, it is easy for a user
`to quickly jump to a desired location within the video
`stream.
`
`In one embodiment, the record and playback system 100
`is able to detect a black screen or fade out, such as those
`which accompany the beginning or end of a commercial.
`This is useful in editing a video stream. The system may also
`record a series of cue points (e.g., fade outs and fade to
`black) for later reference.
`Having the video stream stored on a random access
`storage unit such as a hard disk allows for easy editing of the
`video stream. Individual frames of the video stream may be
`deleted or replaced. For example, a commercial may be
`replaced by a fade-to-black sequence.
`
`LG Ex. 1007, pg 27
`
`LG Ex. 1007, pg 27
`
`

`
`US 6,591,058 B1
`
`7
`Once the video stream on the storage unit has been edited,
`it can be stored to a more permanent medium, such as a
`writeable CD-ROM, flash memory, or another hard disk via
`the removable storage unit 122.
`Referring now to the embodiment shown in FIG. 9, a flow
`chart 900 for digitally recording a video stream in accor-
`dance with an embodiment of the invention begins by
`capturing the video stream as indicated in block 902. If the
`stream is an analog stream,
`it may be digitized in an
`analog-to-digital conversion process as indicated at block
`904. Next
`the digital stream may be encoded and
`compressed, for example using the MPEG2 compression
`scheme, as indicated in block 906. The stream is alternately
`read, as indicated at block 910, and stored, as indicated in
`block 908, in a conventional storage device such as a hard
`disk drive, a digital video disk or a flash memory. Data that
`is read from the storage device may be decoded and decom-
`pressed using conventional
`technology,
`for example, as
`indicated in block 912, for display as indicated in block 914.
`Asystem 1000 in accordance with one embodiment of the
`present invention, shown in FIG. 10, includes a processor
`1002. In one embodiment, the processor may be coupled to
`an accelerated graphics port (AGP) chipset 1004 for imple-
`menting an accelerated graphics port embodiment. The
`chipset 1004 communicates with the AGP port 1005 and the
`graphics accelerator 1006. The television 1010 may be
`coupled to the video output of the graphics accelerator 1006.
`The chipset 1004 accommodates the system memory 1008.
`The chipset 1004 is also coupled to a bus 1012 which may
`be, for example, a peripheral component interconnect (PCI)
`bus (PCI Local Bus Specification, Version 2.1 Jun. 1, 1995).
`The bus 1012 couples to TV tuner/capture card 1014 which
`is coupled to an antenna 1015 or other video input port, such
`as a cable input port, a satellite receiver/antenna or the like.
`The TV tuner and capture card 1014 selects a desired
`television channel and also performs the video capture
`function (block 902, FIG. 9). One example of video capture
`card is the ISVR-III video capture card available from Intel
`Corporation.
`The bus 1012 is also coupled to a bridge 1016 which
`couples a hard disk drive 1018. The software 1020, 1022,
`1024, 1026, 1028, 1030, 2200, 2300, 2500 and 2700 may be
`stored on the hard disk 1018. The bridge 1016 is also
`coupled to another bus 1032. The bus 1032 may be coupled
`to a serial input/output (SIO) device 1034. The device 1034
`is in turn coupled to conventional components such as a
`mouse 1036, a keyboard 1038, and an infrared interface
`1040. Also coupled to the bus 1032 is a basic input/output
`system (BIOS) 1042.
`An example of a display 1100, shown in FIG. 11, for the
`television 1010 may display a conventional television pic-
`ture or program 1101 and, in addition, may have superim-
`posed over the screen,
`in a discrete fashion, a mouse
`selectable series of icons, such as the icons 1102 through

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