US20050244138A1 - Time shifting by simultaneously recording and playing a data stream - Google Patents

Time shifting by simultaneously recording and playing a data stream Download PDF

Info

Publication number
US20050244138A1
US20050244138A1 US11/174,906 US17490605A US2005244138A1 US 20050244138 A1 US20050244138 A1 US 20050244138A1 US 17490605 A US17490605 A US 17490605A US 2005244138 A1 US2005244138 A1 US 2005244138A1
Authority
US
United States
Prior art keywords
video stream
storage
storage device
video
time delay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/174,906
Inventor
Dennis O'Connor
Mark Chuang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US08/996,535 external-priority patent/US6480667B1/en
Application filed by Individual filed Critical Individual
Priority to US11/174,906 priority Critical patent/US20050244138A1/en
Publication of US20050244138A1 publication Critical patent/US20050244138A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B2020/10935Digital recording or reproducing wherein a time constraint must be met
    • G11B2020/10953Concurrent recording or playback of different streams or files
    • G11B2020/10962Concurrent recording or playback of different streams or files wherein both recording and playback take place simultaneously
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/215Recordable discs
    • G11B2220/218Write-once discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2516Hard disks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2545CDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/40Combinations of multiple record carriers
    • G11B2220/45Hierarchical combination of record carriers, e.g. HDD for fast access, optical discs for long term storage or tapes for backup
    • G11B2220/455Hierarchical combination of record carriers, e.g. HDD for fast access, optical discs for long term storage or tapes for backup said record carriers being in one device and being used as primary and secondary/backup media, e.g. HDD-DVD combo device, or as source and target media, e.g. PC and portable player
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media
    • G11B2220/61Solid state media wherein solid state memory is used for storing A/V content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/781Television signal recording using magnetic recording on disks or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/84Television signal recording using optical recording
    • H04N5/85Television signal recording using optical recording on discs or drums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/907Television signal recording using static stores, e.g. storage tubes or semiconductor memories

Definitions

  • This present invention relates to the recording and playing back of a video stream.
  • a video stream includes any combination 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.
  • VCR video cassette recorder
  • the VCR is used to rewind the recording medium and play what was recorded.
  • 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.
  • a method of enabling a video stream to be stored and displayed at the same time including allowing portions of the video stream to be alternately written to and read from a storage device.
  • the next portion to be written to the storage device is stored in a temporary buffer while another portion is being read from said storage device.
  • FIG. 1 shows a block diagram of a video record and playback system in accordance with one embodiment of the invention
  • FIG. 2 shows a flow chart of the method of providing a time-shifted video stream
  • 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
  • FIG. 5 shows an exemplary method of using the storage unit as a temporary buffer.
  • FIG. 6 shows a flowchart of the playback of a video stream catching up to the incoming video stream
  • FIG. 7 shows another embodiment, in which the user is able to suspend the display of the incoming video stream
  • FIG. 8 shows an example of a display screen with several image frames taken at different times
  • FIG. 9 is a flow chart showing one system for recording and playing back a video stream
  • 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 transferred to and from a memory device
  • FIG. 15 is a flow chart showing the flow of input video information into a storage device
  • FIG. 16 is a flow chart showing the flow of data from the storage device.
  • FIG. 17 shows a display with an electronic program guide.
  • FIG. 1 shows a block diagram of a video record and playback system 100 in accordance with one embodiment of the invention.
  • a video stream is received at the video input 102 .
  • the video stream may be provided by a camera, a television signal, broadcast, cable, or satellite signals, or another video playback device.
  • the video input 102 performs an analog-to-digital conversion on an analog video stream to form a digital video bit stream.
  • the video is already in digital form.
  • the video record and playback system 100 may be part of a computer system such that the video input 102 is a video capture card in the computer system.
  • the digital video stream from the video input 102 is optionally compressed at compression unit 104 .
  • the video is already compressed, such as would be the case with an Moving Picture Experts Group 2 (MPEG 2) specification (available from the International Standards Organization Standard IS01172) compliant video signal, and no further compression is needed.
  • MPEG 2 Moving Picture Experts Group 2
  • 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 .
  • the storage unit 108 is a random access memory that allows relatively quick access to any portion of the stored video stream.
  • a hard disk is an example of a random access memory.
  • 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 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 removable storage units are a writeable compact disk read only memory (CD-ROM), writeable digital video disk (DVD), a flash memory, or another hard disk.
  • CD-ROM compact disk read only memory
  • DVD writeable digital video disk
  • the 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.
  • a processor 130 controls the operations 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 decompression 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 the method of providing a time-shifted video stream.
  • the flow chart begins at block 200 , and continues at block 202 where the video stream is received.
  • the recording of the video stream begins at block 204 .
  • 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 video stream by a time delay.
  • 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 decoupled from one another.
  • the user may now begin watching a recorded TV show from the beginning, i.e., prior to the show being completely recorded.
  • FIG. 3 shows one method for retrieving a portion of the video stream from the random access storage unit while continuing to record the incoming video stream.
  • the 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, i.e., all of the video stream is recorded.
  • the record and playback are simultaneous from the user's point of view.
  • the random access storage unit is 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 minimize the number of accesses to and from the hard disk using buffer 106 . This increases the amount of data transferred per access.
  • data may be compressed and decompressed to speed transfers to and from the hard disk.
  • the video stream is stored in a random access storage unit.
  • the video stream is optionally compressed and/or buffered prior to storage.
  • 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 .
  • next portion of the video stream is stored (block 306 ) as described in block 302 .
  • 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 .
  • 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 can be recorded and played back at the same time.
  • 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 unit. 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.
  • 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 one method for using the storage unit as a temporary buffer.
  • the video stream is received at an input. Recording of the video stream to the storage unit begins at block 504 .
  • older portions of the video stream are deleted as newer portions of the video stream are stored to the storage unit.
  • a user 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.
  • the user stops recording to the temporary buffer and plays back the last portion of the temporary buffer.
  • 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 point of the video clip.
  • 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 a method for playing back a video stream to allow the playback to catch up to the incoming video stream.
  • the playback of the video stream is time-shifted from the incoming video stream by a time delay.
  • the playback is performed at an overall rate faster than the rate at which the incoming video stream is received, then the playback will catch up to the incoming video stream.
  • 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.
  • 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.
  • a bypass 142 as shown in FIG. 1 , allows the incoming video stream to be provided to the video output port 120 directly.
  • the user has caught up to the “live” broadcast, i.e., the incoming video stream.
  • the user may terminate the recording cycle, if he wishes.
  • the user can 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.
  • 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.
  • the video output is suspended. In one embodiment, the video output continues to provide a still image of the image present at the instance when the suspend was encountered.
  • 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.
  • 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.
  • 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.
  • 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.
  • FIG. 8 shows an example of a display screen 800 which displays several image frames taken from the video stream at different times.
  • the current playback position is designated as X.
  • 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.
  • the user After the image frames are displayed, the user is able to select one of the frames as a new starting point to which to begin an operation, such as a playback or record operation.
  • an operation such as a playback or record operation.
  • 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.
  • 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.
  • a commercial may be replaced by a fade-to-black sequence.
  • the video stream on the storage unit 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 .
  • a flow 900 for digitally recording a video stream 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 is decoded and decompressed using conventional technology, as indicated in block 912 , for display as indicated in block 914 .
  • a conventional storage device such as a hard disk drive, a digital video disk or a flash memory.
  • a computer system 1000 in accordance with one embodiment of the present invention, shown in FIG. 10 includes a processor 1002 .
  • the processor may be coupled to an accelerated graphics port (AGP) chipset 1004 for implementing 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 peripheral component interconnect
  • the bus 1012 connects to TV tuner/capture card 1014 which is coupled to an antenna 1015 or other video input, such as a cable input, a satellite receiver/antenna or the like.
  • the TV tuner and capture card 1014 selects of a desired television channel and also performs the video capture function (block 902 , FIG. 9 ).
  • One exemplary 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 , and 1030 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 .
  • a basic input/output system (BIOS) 1042 Also connected to the bus 1032 .
  • An exemplary display 1100 shown in FIG. 11 , for the television 1010 may display a conventional television picture or program 1101 and, in addition, may have superimposed over the screen, in a discrete fashion, a mouse selectable series of icons, such as the icons 1102 through 1114 .
  • a mouse selectable series of icons such as the icons 1102 through 1114 .
  • a pause or stop function 1102 a start record function 1104 , a fast forward function 1106 , a rewind function 1108 , and a 10 second reply function 1110 which winds back 10 seconds and replays, and a catchup function 1112 that begins playing back recorded content at a faster than normal rate until the display catches up with a live broadcast and an electronic program guide 1114 .
  • a program 1020 called display is used to control various features implemented by the computer 1000 .
  • a check is made at diamond 1200 to determine if an electronic programming guide (EPG) is implemented.
  • EPG electronic programming guide
  • An electronic programming guide is an electronic depiction of the various programs that are available at different times.
  • the electronic programming guide can be provided on a disk, over a modem, by an Internet connection and using an interactive broadcasting transmission such as Intercast® 2.0 interactive broadcasting software available from Intel Corporation.
  • an identifier for that particular program is stored, as indicated at block 1202 , and automatic recording of the program begins (block 1204 ).
  • the stored version of the program is available to implement the various features described herein even if the storage function was not particularly requested. Because the information is stored in an overwriting fashion, no harm is done by recording the information even if the information turns out not to be useful.
  • an electronic program guide user interface 1700 may be deployed on the television 1010 .
  • an inquiry (diamond 1206 ) checks whether the user has selected the zoom feature for playback. If the user presses a zoom button during playback, a zoom feature is implemented. In one embodiment, five predefined quadrants in the television display may be defined including four quadrants located peripherally around a central quadrant. When the user selects the zoom feature the user indicates the appropriate quadrant for the zoom (block 1208 ). The selected quadrant is scaled (block 12 . 10 ) to produce a larger (zoom) picture.
  • the pointer focus is identified to determine which quadrant will be zoomed. That quadrant is then scaled as indicated at block 1210 . Because the television program is continually being stored, the scaling can be implemented without any loss of continuity of the television picture. After the user has completed looking at the zoomed depiction, the user can return to the program at the point where he or she departed to view the zoomed depiction. Thereafter the displayed depiction viewed by the user may be time delayed from the actually broadcast program. However the user is able to view the program in its entirety even if slightly time delayed.
  • the next check determines whether the play feature has been selected (block 1218 ). If so the recorded content is played thereby terminating the live display. However, while the recorded content is displayed, recording continues as indicated in block 1222 so that the recorded content may be eventually displayed without disrupting the continuity of the program.
  • the fast forward may progress at 300 to 400% of normal playback speed.
  • a check is done to see if the 10 second replay feature has been activated. If so, the storage device is operated to find the content which was recorded 10 seconds ago (block 1232 ). The recorded content is then played (block 1234 ) from the 10 second period back to present. This would correspond to the replay feature implemented with broadcast television sporting events. After the “rewind” and playback of 10 seconds has been completed, the system is automatically transferred to automatic play and the recorded content that was displayed during the replay is displayed so the user does not lose any continuity in the show. Of course, the user can set the amount of time for the replay to be something other than 10 seconds.
  • a catchup feature is checked (diamond 1230 ) and, if this feature has been selected, an accelerated playback option is implemented (as indicated in block 1238 ).
  • the playback may be slightly increased in speed, for example from 105 to 115% of actual speed, so the user can easily follow the program but can make up for lost time to get back into the program as broadcast.
  • the catchup feature is completed and the user returns to real-time display.
  • Control over the record and playback functions may be implemented through a normal mouse function, for example by clicking on icons as indicated in FIG. 11 .
  • the record and playback features may be controlled remotely even when the user is not proximate to a keyboard or mouse. This may be done using a conventional remote control operator which may, for example, utilize infrared radiation.
  • an infrared adapter 1040 may be provided, for example in compliance with the standards and specifications (such as Infrared Data Association Serial Infrared Link Access Protocol Version 1.0, Jun. 23, 1994) of the Infrared Data Association (which can be found at ⁇ www.irda.org ⁇ ).
  • the remote control 1300 as shown in FIG. 3 , may be utilized as a separate stand alone remote control or its features may be incorporated into a global remote control.
  • the illustrated control 1300 is a stand alone control for controlling the record and broadcast features. It includes an infrared transmission port 1302 and a plurality of buttons to control the various features.
  • a zoom function 1312 may be implemented as a four-way rocker switch.
  • a zoom is implemented for the top quadrant of a display by pressing the upper edge of the button. If the button is pressed in the middle, the center quadrant is chosen for zoom. Likewise any of the remaining three edges of the zoom button can be operated to select a desired quadrant for zoom features.
  • a button 1306 is provided to implement the replay function, a button 1308 may implement the pause feature, and an enter button 1310 may be provided to allow entry of various information including a particular television program station.
  • An on/off button 1314 may also be provided.
  • Fast forward may be implemented by button 1316
  • an electronic program guide may be called by pressing button 1304 .
  • the catch up feature may be called by the button 1318 , and a 10 second reply may be implemented by the button 1320 .
  • a conventional numeric keyboard 1322 may be provided to input additional information including selected television channels.
  • FIG. 14 a schematic depiction of the storage system 1400 includes a digital storage device such as a hard disk drive 1410 .
  • the digitized video 1402 is initially stored in a buffer which is designated as being currently on the top of the memory stack.
  • a first time step shown in FIG. 15 , the digitized video 1402 ( FIG. 14 ) is stored in memory buffer 1404 because that buffer is currently at the top of the memory stack, as indicated in block 1502 in FIG. 15 .
  • the buffer 1408 moves to the top of the stack (as indicated by the dashed arrow) and incoming video is stored in buffer 1408 .
  • the buffer 1408 replaces the buffer 1404 as the designated top of the stack buffer.
  • the next input video is then stored in the new buffer ( 1408 ) as indicated in block 1506 .
  • buffer 1408 has filled up and the contents of buffers 1404 and 1408 are written to the storage device 1410 in a single write operation.
  • buffer 1406 moves to the top of the stack and becomes the storage buffer for incoming video. This is illustrated in blocks 1508 , 1510 and 1512 in FIG. 15 .
  • time step 4 the buffer 1404 moves back to the top of the stack to store incoming video since its previous content has already been saved in the storage device 1410 . This is indicated in block 1514 of FIG. 15 , and in FIG. 16 in block 1602 .
  • the storing of incoming information, as illustrated in FIG. 15 then cycles back to the top of the flow in FIG. 15 and continues in the same fashion thereafter.
  • the content from the storage device 1412 is then read into buffers 1412 and 1414 .
  • the buffer 1408 moves to the top of the stack to store incoming video
  • buffer 1414 moves to the top of the output stack and transfers data to the video output 1418 .
  • the contents of the buffers 1404 and 1406 are then written to the storage device 1410 .
  • time steps 1 to 5 illustrate a complete cycle from input to output.
  • the remaining sequence of steps repeat starting at step 5 for the input of data and time steps 6 through 9 repeat for the output of data.
  • time step 6 information stored in the storage device is read to the sixth and fourth buffers (i.e., buffers 1414 and 1416 ) as indicated in block 1606 .
  • the contents of the fifth buffer ( 1412 ) are sent to the output 1418 .
  • time step 7 the contents of the sixth buffer (which is buffer 1416 ) are sent to the output 1418 . No other output operations occur.
  • time step 8 the contents from the storage device 1410 are read into the fifth and sixth buffers (buffers 1412 and 1416 ) as indicated in block 1612 . Also the contents of the fourth buffer (buffer 1414 ) are passed to the output 1418 as indicated in block 1614 .
  • the storage device is provided with enough time, through the operation of the buffers, to write the incoming video while supplying enough data simultaneously to the output display. Since the memory is used to make sure no content is dropped at the input end and the display is never starved at the output end, continuous, even display can be provided without losing information. In addition reading and writing larger chunks of data at one time minimizes the amount of storage device head movement, thereby allowing the storage device to keep up with the read and write requests.
  • the minimum size of the individual buffers 1404 to 1408 and 1412 to 1416 (“B”) is dependent on a number of factors including the input/output data rate “D”, for example in megabytes per second, the effective bandwidth of the storage device when reading or writing “S”, for example in megabytes per second, and the average seek time for the storage device per transaction “t”, in microseconds.
  • the time that it takes to fill up one memory buffer (B divided by D) is advantageously greater than the time it takes to read or write two memory buffers (2B divided by S) plus the average seek time (t): ( B D ) ⁇ ( 2 ⁇ B S ) + ( t 1000 )
  • a viewer can pause a season premier of a television while the station is still broadcasting in order to get up and answer the telephone.
  • the user can resume watching the show after interruption as if the program were on video tape.
  • the user can rewind back to a controversial pass, replay the play in slow motion, stop at the exact instance when the catch was made and zoom in on the receiver.
  • the user can apply an image sharpening filter to see if both of the receiver's feet touched the ground before the receiver went out of bounds.
  • Timeshifting by simultaneously recording and playing back a data stream enables the following type of benefits/features for an end-user.
  • the viewer While watching the season premiere of a television show, the viewer can literally “pause” the program in order to get up and answer the phone or get a snack from the refrigerator. After the interruption, the viewer can resume watching again without having missed anything. If the viewer came home 15 minutes late for the show but had started recording the program from the beginning, the viewer can begin watching right away instead of waiting for the show to be over and then rewinding the cassette tape. Also the viewer can replay scenes during a “live” broadcast (e.g. season premiere of a show or sporting event) in case the viewer missed a line or an exciting play.
  • a “live” broadcast e.g. season premiere of a show or sporting event
  • the user can rewind back to a controversial play, replay the play in slow motion, and stop at the exact instance when the catch was made.
  • the viewer can zoom in on a portion of the screen and apply image sharpening filters to magnify one part of the screen.

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.

Description

    CROSS-REFERENCE TO RELATED APPLICATION
  • This is a continuation-in-part of U.S. patent application Ser. No. 08/996,535, filed Dec. 23, 1997.
  • BACKGROUND
  • This present invention relates to the recording and playing back of a video stream. A video stream includes any combination 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.
  • For example, imagine that a person sets up a VCR for recording a one hour show because he knows that he will miss the first 15 minutes of the show. When he arrives home 15 minutes into the show, he will have to wait for the entire show to be recorded before he can start watching the program from the beginning. A way of being able to view the show from the beginning without having to wait for the recording session to terminate is desirable.
  • SUMMARY
  • A method of enabling a video stream to be stored and displayed at the same time including allowing portions of the video stream to be alternately written to and read from a storage device. The next portion to be written to the storage device is stored in a temporary buffer while another portion is being read from said storage device.
  • DESCRIPTION OF THE DRAWINGS
  • FIG. 1 shows a block diagram of a video record and playback system in accordance with one embodiment of the invention;
  • FIG. 2 shows a flow chart of the method of providing a time-shifted video stream;
  • 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;
  • FIG. 5 shows an exemplary method of using the storage unit as a temporary buffer.
  • FIG. 6 shows a flowchart of the playback of a video stream catching up to the incoming video stream;
  • FIG. 7 shows another embodiment, in which the user is able to suspend the display of the incoming video stream;
  • FIG. 8 shows an example of a display screen with several image frames taken at different times;
  • FIG. 9 is a flow chart showing one system for recording and playing back a video stream;
  • 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 transferred to and from a memory device;
  • FIG. 15 is a flow chart showing the flow of input video information into a storage device;
  • FIG. 16 is a flow chart showing the flow of data from the storage device; and
  • FIG. 17 shows a display with an electronic program guide.
  • DETAILED DESCRIPTION
  • FIG. 1 shows a block diagram of a video record and playback system 100 in accordance with one embodiment of the invention. A video stream is received at the video input 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, the video input 102 performs an analog-to-digital conversion 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 computer system such that the video input 102 is a video capture card in the computer system.
  • The digital video stream from the video input 102 is optionally compressed at compression unit 104. In one embodiment, the video is already compressed, such as would be the case with an Moving Picture Experts Group 2 (MPEG 2) specification (available from the International Standards Organization Standard IS01172) compliant video signal, 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 storage unit 108 is a random access memory that allows relatively quick access to any portion of the stored video stream. A hard disk is an example of a random access memory.
  • 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 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 removable storage units are a writeable compact disk read only memory (CD-ROM), writeable digital video disk (DVD), a flash memory, or another hard disk. The 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 operations 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 decompression 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 the method of providing a time-shifted video stream. The flow chart begins at block 200, and continues at block 202 where the video stream is 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 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.
  • In this way, the record and playback functions are decoupled from one another. The user may now begin watching a recorded TV show from the beginning, i.e., prior to the show being completely recorded.
  • FIG. 3 shows one method for retrieving a portion of the video stream from the random access storage unit while continuing to record the incoming video stream. In the disclosed embodiment, the 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, i.e., all of the video stream is recorded. Thus, the record and playback are simultaneous from the user's point of view.
  • In one embodiment, the random access storage unit is 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 minimize the number of accesses to and from the hard disk using buffer 106. This increases the amount of data transferred 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 compressed 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 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 can be recorded and played back at the same time.
  • 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 unit. 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 one method for using the storage unit as a temporary buffer. 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.
  • A user 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 point of the video clip.
  • 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 a method for playing back a video stream to allow the playback to catch up to the incoming video stream. Usually, during simultaneous playback and recording of the same video stream, the playback of the video stream is time-shifted from the incoming video stream by a time delay. However, if the playback is performed at an overall rate faster than the rate at which the incoming video stream is received, then the playback will 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, i.e., the incoming video stream. The user may terminate the recording cycle, if he wishes. Alternatively, the user can 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.
  • 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 is suspended. In one embodiment, the video output 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.
  • 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 to 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.
  • 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.
  • 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 900 for digitally recording a video stream 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 is decoded and decompressed using conventional technology, as indicated in block 912, for display as indicated in block 914.
  • A computer system 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 implementing 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. The bus 1012 connects to TV tuner/capture card 1014 which is coupled to an antenna 1015 or other video input, such as a cable input, a satellite receiver/antenna or the like. The TV tuner and capture card 1014 selects of a desired television channel and also performs the video capture function (block 902, FIG. 9). One exemplary 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, and 1030 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 connected to the bus 1032 is a basic input/output system (BIOS) 1042.
  • An exemplary display 1100, shown in FIG. 11, for the television 1010 may display a conventional television picture or program 1101 and, in addition, may have superimposed over the screen, in a discrete fashion, a mouse selectable series of icons, such as the icons 1102 through 1114. When the mouse cursor 1116 selects the appropriate one of the icons, a corresponding feature may be implemented. Among the features that may be implemented in this fashion include a pause or stop function 1102, a start record function 1104, a fast forward function 1106, a rewind function 1108, and a 10 second reply function 1110 which winds back 10 seconds and replays, and a catchup function 1112 that begins playing back recorded content at a faster than normal rate until the display catches up with a live broadcast and an electronic program guide 1114.
  • Referring next to FIG. 12, a program 1020 called display is used to control various features implemented by the computer 1000. Initially a check is made at diamond 1200 to determine if an electronic programming guide (EPG) is implemented. An electronic programming guide is an electronic depiction of the various programs that are available at different times. The electronic programming guide can be provided on a disk, over a modem, by an Internet connection and using an interactive broadcasting transmission such as Intercast® 2.0 interactive broadcasting software available from Intel Corporation.
  • If a particular television program is selected (even if the program is only selected for viewing) on the EPG, an identifier for that particular program is stored, as indicated at block 1202, and automatic recording of the program begins (block 1204). In this way the stored version of the program is available to implement the various features described herein even if the storage function was not particularly requested. Because the information is stored in an overwriting fashion, no harm is done by recording the information even if the information turns out not to be useful.
  • Referring to FIG. 17, an electronic program guide user interface 1700 may be deployed on the television 1010. When the user mouse clicks a box image 1702, representing a given television program, using the cursor 1116, that program is automatically recorded.
  • Continuing in FIG. 12, an inquiry (diamond 1206) checks whether the user has selected the zoom feature for playback. If the user presses a zoom button during playback, a zoom feature is implemented. In one embodiment, five predefined quadrants in the television display may be defined including four quadrants located peripherally around a central quadrant. When the user selects the zoom feature the user indicates the appropriate quadrant for the zoom (block 1208). The selected quadrant is scaled (block 12.10) to produce a larger (zoom) picture.
  • Referring to block 1208, the pointer focus is identified to determine which quadrant will be zoomed. That quadrant is then scaled as indicated at block 1210. Because the television program is continually being stored, the scaling can be implemented without any loss of continuity of the television picture. After the user has completed looking at the zoomed depiction, the user can return to the program at the point where he or she departed to view the zoomed depiction. Thereafter the displayed depiction viewed by the user may be time delayed from the actually broadcast program. However the user is able to view the program in its entirety even if slightly time delayed.
  • Next a query is made at diamond 1212 to determine whether a pause function has been selected. If so, the playback is stopped as indicated at block 1214 but recording continues unabated as shown in block 1216.
  • The next check determines whether the play feature has been selected (block 1218). If so the recorded content is played thereby terminating the live display. However, while the recorded content is displayed, recording continues as indicated in block 1222 so that the recorded content may be eventually displayed without disrupting the continuity of the program.
  • A query finds out if the fast forward feature has been implemented as indicated in diamond 1224. If so, a fast playback is implemented as shown in block 1226. Once the playback equals the current broadcast or program content (diamond 1228), the flow returns to display current broadcast or program content. The fast forward may progress at 300 to 400% of normal playback speed.
  • Moving on to FIG. 12A, at diamond 1230 a check is done to see if the 10 second replay feature has been activated. If so, the storage device is operated to find the content which was recorded 10 seconds ago (block 1232). The recorded content is then played (block 1234) from the 10 second period back to present. This would correspond to the replay feature implemented with broadcast television sporting events. After the “rewind” and playback of 10 seconds has been completed, the system is automatically transferred to automatic play and the recorded content that was displayed during the replay is displayed so the user does not lose any continuity in the show. Of course, the user can set the amount of time for the replay to be something other than 10 seconds.
  • A catchup feature is checked (diamond 1230) and, if this feature has been selected, an accelerated playback option is implemented (as indicated in block 1238). In the accelerated playback, the playback may be slightly increased in speed, for example from 105 to 115% of actual speed, so the user can easily follow the program but can make up for lost time to get back into the program as broadcast. Once the recorded program catches up to the real-time program as indicated in diamond 1240, the catchup feature is completed and the user returns to real-time display.
  • Control over the record and playback functions may be implemented through a normal mouse function, for example by clicking on icons as indicated in FIG. 11. In addition, the record and playback features may be controlled remotely even when the user is not proximate to a keyboard or mouse. This may be done using a conventional remote control operator which may, for example, utilize infrared radiation.
  • As indicated in the depiction of an exemplary computer system 1000 (FIG. 10), an infrared adapter 1040 may be provided, for example in compliance with the standards and specifications (such as Infrared Data Association Serial Infrared Link Access Protocol Version 1.0, Jun. 23, 1994) of the Infrared Data Association (which can be found at {www.irda.org}). The remote control 1300, as shown in FIG. 3, may be utilized as a separate stand alone remote control or its features may be incorporated into a global remote control. The illustrated control 1300 is a stand alone control for controlling the record and broadcast features. It includes an infrared transmission port 1302 and a plurality of buttons to control the various features. For example a zoom function 1312 may be implemented as a four-way rocker switch. A zoom is implemented for the top quadrant of a display by pressing the upper edge of the button. If the button is pressed in the middle, the center quadrant is chosen for zoom. Likewise any of the remaining three edges of the zoom button can be operated to select a desired quadrant for zoom features.
  • A button 1306 is provided to implement the replay function, a button 1308 may implement the pause feature, and an enter button 1310 may be provided to allow entry of various information including a particular television program station. An on/off button 1314 may also be provided. Fast forward may be implemented by button 1316, an electronic program guide may be called by pressing button 1304. The catch up feature may be called by the button 1318, and a 10 second reply may be implemented by the button 1320. A conventional numeric keyboard 1322 may be provided to input additional information including selected television channels.
  • Techniques for storing the video stream onto the storage device 1410 and for reading the information out of the storage device are summarized in Table 1 below and illustrated in FIGS. 14, 15, and 16. In FIG. 14, a schematic depiction of the storage system 1400 includes a digital storage device such as a hard disk drive 1410. The digitized video 1402 is initially stored in a buffer which is designated as being currently on the top of the memory stack. The transfer of information between the buffers and the storage device 1410 may be done in discrete time
    TABLE 1
    Time Steps
    Buffers
    1 2 3 4 5 6 7 8 9
    Input 1404 1408 1406 1404 1408 1406 1404 1408 1406
    Storage
    Read X X X 1412 X 1414 X 1412 X
    1414 1416 1416
    Write X X 1404 X 1404 X 1406 X 1404
    1408 1406 1408 1408
    Output X X X X 1414 1412 1416 1414 1412

    (X = no action)

    periods referred to herein as time steps. In a first time step, shown in FIG. 15, the digitized video 1402 (FIG. 14) is stored in memory buffer 1404 because that buffer is currently at the top of the memory stack, as indicated in block 1502 in FIG. 15.
  • As the buffer 1404 fills up, the buffer 1408 moves to the top of the stack (as indicated by the dashed arrow) and incoming video is stored in buffer 1408. As indicated in block 1504 in FIG. 15 in time step 2, the buffer 1408 replaces the buffer 1404 as the designated top of the stack buffer. The next input video is then stored in the new buffer (1408) as indicated in block 1506.
  • In time step 3 the buffer 1408 has filled up and the contents of buffers 1404 and 1408 are written to the storage device 1410 in a single write operation. During the same time step, buffer 1406 moves to the top of the stack and becomes the storage buffer for incoming video. This is illustrated in blocks 1508, 1510 and 1512 in FIG. 15.
  • In time step 4, the buffer 1404 moves back to the top of the stack to store incoming video since its previous content has already been saved in the storage device 1410. This is indicated in block 1514 of FIG. 15, and in FIG. 16 in block 1602. The storing of incoming information, as illustrated in FIG. 15 then cycles back to the top of the flow in FIG. 15 and continues in the same fashion thereafter.
  • The content from the storage device 1412 is then read into buffers 1412 and 1414.
  • In time step 5, the buffer 1408 moves to the top of the stack to store incoming video, and buffer 1414 moves to the top of the output stack and transfers data to the video output 1418. The contents of the buffers 1404 and 1406 are then written to the storage device 1410.
  • The time steps 1 to 5 illustrate a complete cycle from input to output. The remaining sequence of steps repeat starting at step 5 for the input of data and time steps 6 through 9 repeat for the output of data.
  • Referring now solely to FIGS. 14 and 16, in time step 6, information stored in the storage device is read to the sixth and fourth buffers (i.e., buffers 1414 and 1416) as indicated in block 1606. The contents of the fifth buffer (1412) are sent to the output 1418.
  • In time step 7, the contents of the sixth buffer (which is buffer 1416) are sent to the output 1418. No other output operations occur.
  • In time step 8, the contents from the storage device 1410 are read into the fifth and sixth buffers (buffers 1412 and 1416) as indicated in block 1612. Also the contents of the fourth buffer (buffer 1414) are passed to the output 1418 as indicated in block 1614.
  • Finally, during time step 9 the contents of the fourth buffer (buffer 1412) are passed to the output 1418, completing the cycle.
  • Using these algorithms, the storage device is provided with enough time, through the operation of the buffers, to write the incoming video while supplying enough data simultaneously to the output display. Since the memory is used to make sure no content is dropped at the input end and the display is never starved at the output end, continuous, even display can be provided without losing information. In addition reading and writing larger chunks of data at one time minimizes the amount of storage device head movement, thereby allowing the storage device to keep up with the read and write requests.
  • The minimum size of the individual buffers 1404 to 1408 and 1412 to 1416 (“B”) is dependent on a number of factors including the input/output data rate “D”, for example in megabytes per second, the effective bandwidth of the storage device when reading or writing “S”, for example in megabytes per second, and the average seek time for the storage device per transaction “t”, in microseconds. The time that it takes to fill up one memory buffer (B divided by D) is advantageously greater than the time it takes to read or write two memory buffers (2B divided by S) plus the average seek time (t): ( B D ) ( 2 B S ) + ( t 1000 )
  • Solving for the minimum buffer size in the above equation yields the following equation which gives the minimum buffer size:
    B≧((DS)/(S−2D))/(t/1000)
  • A viewer can pause a season premier of a television while the station is still broadcasting in order to get up and answer the telephone. The user can resume watching the show after interruption as if the program were on video tape. In addition, while watching a sports event the user can rewind back to a controversial pass, replay the play in slow motion, stop at the exact instance when the catch was made and zoom in on the receiver. Also, the user can apply an image sharpening filter to see if both of the receiver's feet touched the ground before the receiver went out of bounds.
  • Timeshifting by simultaneously recording and playing back a data stream enables the following type of benefits/features for an end-user. While watching the season premiere of a television show, the viewer can literally “pause” the program in order to get up and answer the phone or get a snack from the refrigerator. After the interruption, the viewer can resume watching again without having missed anything. If the viewer came home 15 minutes late for the show but had started recording the program from the beginning, the viewer can begin watching right away instead of waiting for the show to be over and then rewinding the cassette tape. Also the viewer can replay scenes during a “live” broadcast (e.g. season premiere of a show or sporting event) in case the viewer missed a line or an exciting play. In addition, while watching a sports event the user can rewind back to a controversial play, replay the play in slow motion, and stop at the exact instance when the catch was made. To get a better view, the viewer can zoom in on a portion of the screen and apply image sharpening filters to magnify one part of the screen.
  • Thus, a method of simultaneously recording and playing back a time-shifted video stream is disclosed. The specific arrangements and methods described herein are merely illustrative of the principles of this invention. For example, the same method may be used to store and retrieve other types of data streams besides video streams. Numerous modifications in form and detail may be made without departing from the scope of the described invention. Although this invention has been shown in relation to a particular embodiment, it should not be considered so limited. Rather, the described invention is limited only by the scope of the appended claims.

Claims (20)

1-25. (canceled)
26. A method comprising:
selectively displaying a video stream from storage or without storing said video stream, depending on a time delay.
27. The method of claim 26 including:
when the time delay is greater than a threshold, displaying a video stream from the storage; and
when the time delay is less than the threshold, displaying the video stream without storing said stream.
28. The method of claim 26 including allowing portions of the video stream to be alternately written to and read from the storage device and storing in a temporary buffer the next portion to be written to the storage device while another portion is being read from the storage device.
29. The method of claim 26 further including allowing one or more portions of the video stream to be read from the storage device to retrieve the video stream with one or more time delays that are user-specified.
30. The method of claim 26 wherein storing the video stream further comprises allowing the video stream to be compressed prior to writing the video stream to the storage device.
31. The method of claim 28 wherein displaying the video stream from the storage device when the time delay is greater than the predetermined threshold comprises decompressing the video stream after retrieving the video stream from the storage device.
32. An article comprising a medium storing instructions that, if executed, enable a computer to:
selectively display a video stream from storage or without storing said video stream, depending on a time delay.
33. The article of claim 32 further storing instructions that, if executed, enable the computer to:
when the time delay is greater than a threshold, display the video stream from the storage; and
when the time delay is less than the threshold, display the video stream without storing said stream.
34. The article of claim 33 further storing instructions that, if executed, enable the computer to allow portions of the video stream to be alternately written to and read from the storage device and storing in a temporary buffer the next portion to be written to the storage device while another portion is being read from the storage device.
35. The article of claim 33 further storing instructions that, if executed, enable the computer to allow one or more portions of the video stream to be read from the storage device to retrieve the video stream with one or more time delays that are user-specified.
36. The article of claim 33 further storing instructions that, if executed, enable the computer to compress the video stream prior to writing the video stream to the storage device.
37. The article of claim 34 further storing instructions that, if executed, enable the computer to allow portions of the video stream to be displayed from the storage device when the time delay is greater than the predetermined threshold comprises decompressing the video stream after retrieving the video stream from the storage device.
38. A system comprising:
a storage to store a video stream;
a controller to selectively display a video stream from said storage or without storing said video stream, depending on a time delay.
39. The system of claim 38 said controller to display the video stream from the storage when the time delay is greater than a threshold, and when the time delay is less than a threshold, said controller to display the video stream without storing said stream
40. The system of claim 38 including a display.
41. The system of claim 38, said controller including a temporary buffer and wherein said storage stores instructions that enable the controller to allow portions of the video stream to be alternately written to and read from the storage and store in its temporary buffer the next portion to be written to the storage while another portion is being read from the storage.
42. The system of claim 40 including said controller to allow one or more portions of the video stream to be read from the storage to retrieve the video stream with one or more time delays that are user specified.
43. The system of claim 41 wherein said controller to allow the video stream to be compressed prior to writing the video stream to the storage.
44. The system of claim 41 wherein said storage decompresses the video stream after retrieving the video stream from the storage when the time delay is greater than the predetermined threshold.
US11/174,906 1997-12-23 2005-07-05 Time shifting by simultaneously recording and playing a data stream Abandoned US20050244138A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/174,906 US20050244138A1 (en) 1997-12-23 2005-07-05 Time shifting by simultaneously recording and playing a data stream

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/996,535 US6480667B1 (en) 1997-12-23 1997-12-23 Method of time shifting to simultaneously record and play a data stream
US15057798A 1998-09-10 1998-09-10
US11/174,906 US20050244138A1 (en) 1997-12-23 2005-07-05 Time shifting by simultaneously recording and playing a data stream

Related Parent Applications (2)

Application Number Title Priority Date Filing Date
US08/996,535 Continuation US6480667B1 (en) 1997-12-23 1997-12-23 Method of time shifting to simultaneously record and play a data stream
US15057798A Continuation 1997-12-23 1998-09-10

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/072,245 Continuation US8452154B2 (en) 1997-12-23 2008-02-25 Transmitting signals to cause replays to be recorded at a plurality of receivers

Publications (1)

Publication Number Publication Date
US20050244138A1 true US20050244138A1 (en) 2005-11-03

Family

ID=26847807

Family Applications (3)

Application Number Title Priority Date Filing Date
US09/223,516 Expired - Fee Related US7359619B1 (en) 1997-12-23 1998-12-30 Transmitting signals to cause replays to be recorded at a plurality of receivers
US11/174,906 Abandoned US20050244138A1 (en) 1997-12-23 2005-07-05 Time shifting by simultaneously recording and playing a data stream
US12/072,245 Expired - Lifetime US8452154B2 (en) 1997-12-23 2008-02-25 Transmitting signals to cause replays to be recorded at a plurality of receivers

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/223,516 Expired - Fee Related US7359619B1 (en) 1997-12-23 1998-12-30 Transmitting signals to cause replays to be recorded at a plurality of receivers

Family Applications After (1)

Application Number Title Priority Date Filing Date
US12/072,245 Expired - Lifetime US8452154B2 (en) 1997-12-23 2008-02-25 Transmitting signals to cause replays to be recorded at a plurality of receivers

Country Status (1)

Country Link
US (3) US7359619B1 (en)

Cited By (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010029610A1 (en) * 2000-02-01 2001-10-11 Corvin Johnny B. Systems and methods for providing promotions with recorded programs
US20070274376A1 (en) * 2006-04-10 2007-11-29 Samsung Electronics Co., Ltd. Time shift apparatus and method for digital multimedia broadcasting terminal
US20100008647A1 (en) * 2006-07-26 2010-01-14 Sony Corporation Recording Apparatus, Recording Method, and Recording Program, and Image Capturing Apparatus, Image Capturing Method, and Image Capturing Program
US7734153B1 (en) * 1999-10-08 2010-06-08 Samsung Electronics Co., Ltd. Video stream processing method for time-delayed viewing
US20110019973A1 (en) * 2009-07-23 2011-01-27 Kazuo Ido Editing apparatus, editing method and program
US7941818B2 (en) 1999-06-28 2011-05-10 Index Systems, Inc. System and method for utilizing EPG database for modifying advertisements
US7996864B2 (en) 1994-08-31 2011-08-09 Gemstar Development Corporation Method and apparatus for displaying television programs and related text
US8181200B2 (en) 1995-10-02 2012-05-15 Starsight Telecast, Inc. Method and system for displaying advertising, video, and program schedule listing
US8272011B2 (en) 1996-12-19 2012-09-18 Index Systems, Inc. Method and system for displaying advertisements between schedule listings
US8336071B2 (en) 1996-12-19 2012-12-18 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
US8352978B2 (en) 1998-05-15 2013-01-08 United Video Properties, Inc. Systems and methods for advertising television networks, channels, and programs
US8359616B2 (en) 2009-09-30 2013-01-22 United Video Properties, Inc. Systems and methods for automatically generating advertisements using a media guidance application
US8612310B2 (en) 2005-12-29 2013-12-17 United Video Properties, Inc. Method and system for commerce in media program related merchandise
US8613020B2 (en) 1998-04-30 2013-12-17 United Video Properties, Inc. Program guide system with flip and browse advertisements
US8615782B2 (en) 1995-10-02 2013-12-24 Starsight Telecast, Inc. System and methods for linking television viewers with advertisers and broadcasters
US8646005B2 (en) 1996-05-03 2014-02-04 Starsight Telecast, Inc. Information system
US8793738B2 (en) 1994-05-04 2014-07-29 Starsight Telecast Incorporated Television system with downloadable features
US8806536B2 (en) 1998-03-04 2014-08-12 United Video Properties, Inc. Program guide system with preference profiles
US8832742B2 (en) 2006-10-06 2014-09-09 United Video Properties, Inc. Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
US8863170B2 (en) 2000-03-31 2014-10-14 United Video Properties, Inc. System and method for metadata-linked advertisements
US8904441B2 (en) 2003-11-06 2014-12-02 United Video Properties, Inc. Systems and methods for providing program suggestions in an interactive television program guide
US8918807B2 (en) 1997-07-21 2014-12-23 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
US8931008B2 (en) 1999-06-29 2015-01-06 United Video Properties, Inc. Promotional philosophy for a video-on-demand-related interactive display within an interactive television application
US8949901B2 (en) 2011-06-29 2015-02-03 Rovi Guides, Inc. Methods and systems for customizing viewing environment preferences in a viewing environment control application
US9015750B2 (en) 1998-05-15 2015-04-21 Rovi Guides, Inc. Interactive television program guide system for determining user values for demographic categories
US9021538B2 (en) 1998-07-14 2015-04-28 Rovi Guides, Inc. Client-server based interactive guide with server recording
US9071872B2 (en) 2003-01-30 2015-06-30 Rovi Guides, Inc. Interactive television systems with digital video recording and adjustable reminders
US20150188966A1 (en) * 2013-12-31 2015-07-02 Sling Media Inc. Placeshifting live encoded video faster than real time
US9075861B2 (en) 2006-03-06 2015-07-07 Veveo, Inc. Methods and systems for segmenting relative user preferences into fine-grain and coarse-grain collections
US9113207B2 (en) 1995-10-02 2015-08-18 Rovi Guides, Inc. Systems and methods for contextually linking television program information
US9113107B2 (en) 2005-11-08 2015-08-18 Rovi Guides, Inc. Interactive advertising and program promotion in an interactive television system
US9125169B2 (en) 2011-12-23 2015-09-01 Rovi Guides, Inc. Methods and systems for performing actions based on location-based rules
US9137491B2 (en) 2000-02-01 2015-09-15 Rovi Guides, Inc. Methods and systems for forced advertising
US9147198B2 (en) 2013-01-10 2015-09-29 Rovi Technologies Corporation Systems and methods for providing an interface for data driven media placement
US20150281298A1 (en) * 2012-03-30 2015-10-01 Adobe Systems Incorporated Buffering in HTTP Streaming Client
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US9172987B2 (en) 1998-07-07 2015-10-27 Rovi Guides, Inc. Methods and systems for updating functionality of a set-top box using markup language
US9177081B2 (en) 2005-08-26 2015-11-03 Veveo, Inc. Method and system for processing ambiguous, multi-term search queries
US9288521B2 (en) 2014-05-28 2016-03-15 Rovi Guides, Inc. Systems and methods for updating media asset data based on pause point in the media asset
US9294799B2 (en) 2000-10-11 2016-03-22 Rovi Guides, Inc. Systems and methods for providing storage of data on servers in an on-demand media delivery system
US9319735B2 (en) 1995-06-07 2016-04-19 Rovi Guides, Inc. Electronic television program guide schedule system and method with data feed access
US9326025B2 (en) 2007-03-09 2016-04-26 Rovi Technologies Corporation Media content search results ranked by popularity
US9426509B2 (en) 1998-08-21 2016-08-23 Rovi Guides, Inc. Client-server electronic program guide
US9462230B1 (en) * 2014-03-31 2016-10-04 Amazon Technologies Catch-up video buffering
US9591251B2 (en) 1997-10-06 2017-03-07 Rovi Guides, Inc. Interactive television program guide system with operator showcase
US9736524B2 (en) 2011-01-06 2017-08-15 Veveo, Inc. Methods of and systems for content search based on environment sampling
US9749693B2 (en) 2006-03-24 2017-08-29 Rovi Guides, Inc. Interactive media guidance application with intelligent navigation and display features
US9848276B2 (en) 2013-03-11 2017-12-19 Rovi Guides, Inc. Systems and methods for auto-configuring a user equipment device with content consumption material
US10063934B2 (en) 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
US10631066B2 (en) 2009-09-23 2020-04-21 Rovi Guides, Inc. Systems and method for automatically detecting users within detection regions of media devices
US20230251816A1 (en) * 2022-02-07 2023-08-10 Pateo Connect+(Nanjing)Co., Ltd. Real-time service playback method and device

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60110770T2 (en) * 2000-03-31 2006-02-23 United Video Properties, Inc., Tulsa INTERACTIVE MEDIA SYSTEM AND METHOD OF PRESENTING REPORTS DURING PAUSES
US20020194608A1 (en) * 2001-04-26 2002-12-19 Goldhor Richard S. Method and apparatus for a playback enhancement system implementing a "Say Again" feature
JP4228854B2 (en) * 2003-09-18 2009-02-25 セイコーエプソン株式会社 projector
US20090228922A1 (en) * 2008-03-10 2009-09-10 United Video Properties, Inc. Methods and devices for presenting an interactive media guidance application
US20100129054A1 (en) * 2008-11-27 2010-05-27 Kabushiki Kaisha Toshiba Information processing apparatus and information processing method
US20110265131A1 (en) * 2010-04-26 2011-10-27 Cox Communications, Inc. Recording and Playback of Video Using A Live TV Buffer
KR20120058763A (en) * 2010-11-30 2012-06-08 삼성전자주식회사 Apparatus and method for transmitting video data in video device
US9426341B1 (en) 2014-12-15 2016-08-23 Michael K. Baldrige Mouth-locatable camera mount
JP6222148B2 (en) * 2015-03-19 2017-11-01 カシオ計算機株式会社 Imaging apparatus, image reproduction method, and program
US11019378B2 (en) * 2015-06-10 2021-05-25 Razer (Asia-Pacific) Pte. Ltd. Methods and apparatuses for editing videos from multiple video streams

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5040061A (en) * 1989-08-15 1991-08-13 Sony Corporation Method and apparatus for transmitting a compressed picture signal by using different encoding techniques for portions of each frame
US5930444A (en) * 1992-04-23 1999-07-27 Camhi; Elie Simultaneous recording and playback apparatus
US20030165324A1 (en) * 1997-12-23 2003-09-04 O'connor Dennis M. Time shifting by concurrently recording and playing a data stream

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4097893A (en) * 1966-04-25 1978-06-27 Iit Research Institute Portable video recording system employing camera and recording stations connected by wireless links
US4183056A (en) * 1977-05-23 1980-01-08 Kewp Electronic Systems, Inc. Apparatus and method for monitoring sports contests
JPS6117242A (en) * 1984-07-03 1986-01-25 Matsushita Electric Ind Co Ltd Magnetic recording and reproducing device provided with receiving device
JPS6117243A (en) * 1984-07-03 1986-01-25 Matsushita Electric Ind Co Ltd Magnetic recording and reproducing device provided with receiving device
JP2545851B2 (en) * 1987-04-16 1996-10-23 ソニー株式会社 TV receiver with integrated VTR
US5134499A (en) 1988-08-04 1992-07-28 Yamaha Corporation Video recording apparatus having control means provided therein for independently controlling the writing head and the reading head
JPH0778960B2 (en) 1988-08-04 1995-08-23 ヤマハ株式会社 Image storage
WO1990003706A1 (en) * 1988-09-30 1990-04-05 Right Hemisphere Pty. Limited Television programme distribution system
US5122886A (en) 1989-06-19 1992-06-16 Pioneer Electronic Corporation Selective information playback from recording medium based on user input content codes
US5241428A (en) 1991-03-12 1993-08-31 Goldwasser Eric P Variable-delay video recorder
JP2707864B2 (en) 1991-04-18 1998-02-04 松下電器産業株式会社 Recording and playback device
US5546191A (en) * 1992-02-25 1996-08-13 Mitsubishi Denki Kabushiki Kaisha Recording and reproducing apparatus
KR0165246B1 (en) * 1992-09-04 1999-03-20 윤종용 Sunscribed recording method and device by character input
US5623588A (en) 1992-12-14 1997-04-22 New York University Computer user interface with non-salience deemphasis
FR2700908B1 (en) 1993-01-26 1995-02-24 Thomson Consumer Electronics Buffer television receiver.
US20020048448A1 (en) 1993-03-29 2002-04-25 Microsoft Corporation Pausing the display of a television program as a signal including the television program is received
US5438423C1 (en) * 1993-06-25 2002-08-27 Grass Valley Us Inc Time warping for video viewing
US5541738A (en) 1994-04-12 1996-07-30 E. Guide, Inc. Electronic program guide
JP3659984B2 (en) 1993-10-29 2005-06-15 株式会社リコー Recording / playback device
JPH07130150A (en) * 1993-10-29 1995-05-19 Ricoh Co Ltd Information equipment
US5479302A (en) 1993-12-03 1995-12-26 Haines; Curtis D. Single deck dual tape path VCR system
JPH07240899A (en) 1994-02-28 1995-09-12 Hitachi Ltd Compressed image reproducing device
JPH07264529A (en) 1994-03-17 1995-10-13 Hitachi Ltd Time shifting device
JP2677775B2 (en) * 1994-04-14 1997-11-17 株式会社東芝 Playback device
US5485219A (en) * 1994-04-18 1996-01-16 Depromax Limited Electric service to record transmissions without recording commercials
US5701383A (en) 1994-05-20 1997-12-23 Gemstar Development Corporation Video time-shifting apparatus
JPH08237592A (en) 1994-11-17 1996-09-13 Matsushita Electric Ind Co Ltd Real time video recording/reproducing device and method therefor and video library system
US5778135A (en) * 1994-12-30 1998-07-07 International Business Machines Corporation Real-time edit control for video program material
US6002832A (en) * 1995-02-09 1999-12-14 Matsushita Electric Industrial Co., Ltd. Apparatus and method for recording and reproducing data
JP3472659B2 (en) * 1995-02-20 2003-12-02 株式会社日立製作所 Video supply method and video supply system
JPH08279976A (en) 1995-04-06 1996-10-22 Toshiba Corp Disk recording and reproducing device
JPH08279923A (en) * 1995-04-07 1996-10-22 Sony Corp Information signal transmission system
US5721878A (en) * 1995-06-07 1998-02-24 International Business Machines Corporation Multimedia control system and method for controlling multimedia program presentation
JP3213534B2 (en) * 1995-06-30 2001-10-02 三洋電機株式会社 Automatic recording control device
JPH0995325A (en) 1995-09-27 1997-04-08 Shoichi Kobayashi Plastic container
US6477312B1 (en) 1995-12-07 2002-11-05 Texas Instruments Incorporated Instant replay system
US6269215B1 (en) 1999-03-02 2001-07-31 Hitachi, Ltd. Information processing system
JPH09182019A (en) * 1995-12-26 1997-07-11 Sony Corp Video signal recording device and reproducing device
US5778137A (en) * 1995-12-28 1998-07-07 Sun Microsystems, Inc. Videostream management system
JPH1056620A (en) 1996-02-08 1998-02-24 Matsushita Electric Ind Co Ltd Television receiver, recording and reproducing device, data recording method and data reproducing method
CN1144455C (en) 1996-02-08 2004-03-31 松下电器产业株式会社 Television receiver, recording and playbacking device, data recording method and method for data playbacking
US6263147B1 (en) 1996-02-28 2001-07-17 Sun Microsystems, Inc. Delayed decision recording device
JP3529540B2 (en) 1996-03-07 2004-05-24 Kddi株式会社 Video search device
JPH09322174A (en) 1996-05-30 1997-12-12 Hitachi Ltd Reproducing method for moving image data
KR100206804B1 (en) * 1996-08-29 1999-07-01 구자홍 The automatic selection recording method of highlight part
US6480667B1 (en) 1997-12-23 2002-11-12 Intel Corporation Method of time shifting to simultaneously record and play a data stream
US6163510A (en) * 1998-06-30 2000-12-19 International Business Machines Corporation Multimedia search and indexing system and method of operation using audio cues with signal thresholds

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5040061A (en) * 1989-08-15 1991-08-13 Sony Corporation Method and apparatus for transmitting a compressed picture signal by using different encoding techniques for portions of each frame
US5930444A (en) * 1992-04-23 1999-07-27 Camhi; Elie Simultaneous recording and playback apparatus
US20030165324A1 (en) * 1997-12-23 2003-09-04 O'connor Dennis M. Time shifting by concurrently recording and playing a data stream

Cited By (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8793738B2 (en) 1994-05-04 2014-07-29 Starsight Telecast Incorporated Television system with downloadable features
US7996864B2 (en) 1994-08-31 2011-08-09 Gemstar Development Corporation Method and apparatus for displaying television programs and related text
US9319735B2 (en) 1995-06-07 2016-04-19 Rovi Guides, Inc. Electronic television program guide schedule system and method with data feed access
US9124932B2 (en) 1995-10-02 2015-09-01 Rovi Guides, Inc. Systems and methods for contextually linking television program information
US8850477B2 (en) 1995-10-02 2014-09-30 Starsight Telecast, Inc. Systems and methods for linking television viewers with advertisers and broadcasters
US8181200B2 (en) 1995-10-02 2012-05-15 Starsight Telecast, Inc. Method and system for displaying advertising, video, and program schedule listing
US9113207B2 (en) 1995-10-02 2015-08-18 Rovi Guides, Inc. Systems and methods for contextually linking television program information
US8615782B2 (en) 1995-10-02 2013-12-24 Starsight Telecast, Inc. System and methods for linking television viewers with advertisers and broadcasters
US8453174B2 (en) 1995-10-02 2013-05-28 Starsight Telecast, Inc. Method and system for displaying advertising, video, and program schedule listing
US9402102B2 (en) 1995-10-02 2016-07-26 Rovi Guides, Inc. System and method for using television schedule information
US8869204B2 (en) 1996-05-03 2014-10-21 Starsight Telecast, Inc. Method and system for displaying advertisements in an electronic program guide
US9027058B2 (en) 1996-05-03 2015-05-05 Rovi Guides, Inc. Information system
US8806538B2 (en) 1996-05-03 2014-08-12 Starsight Telecast, Inc. Information system
US8776125B2 (en) 1996-05-03 2014-07-08 Starsight Telecast Inc. Method and system for displaying advertisements in an electronic program guide
US8646005B2 (en) 1996-05-03 2014-02-04 Starsight Telecast, Inc. Information system
US9423936B2 (en) 1996-05-03 2016-08-23 Rovi Guides, Inc. Information system
US8448209B2 (en) 1996-12-19 2013-05-21 Gemstar Development Corporation System and method for displaying advertisements responsive to EPG information
US8726311B2 (en) 1996-12-19 2014-05-13 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
US8272011B2 (en) 1996-12-19 2012-09-18 Index Systems, Inc. Method and system for displaying advertisements between schedule listings
US8635649B2 (en) 1996-12-19 2014-01-21 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
US8336071B2 (en) 1996-12-19 2012-12-18 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
US8732757B2 (en) 1996-12-19 2014-05-20 Gemstar Development Corporation System and method for targeted advertisement display responsive to user characteristics
US8918807B2 (en) 1997-07-21 2014-12-23 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
US9191722B2 (en) 1997-07-21 2015-11-17 Rovi Guides, Inc. System and method for modifying advertisement responsive to EPG information
US9015749B2 (en) 1997-07-21 2015-04-21 Rovi Guides, Inc. System and method for modifying advertisement responsive to EPG information
US9591251B2 (en) 1997-10-06 2017-03-07 Rovi Guides, Inc. Interactive television program guide system with operator showcase
US8806536B2 (en) 1998-03-04 2014-08-12 United Video Properties, Inc. Program guide system with preference profiles
US8613020B2 (en) 1998-04-30 2013-12-17 United Video Properties, Inc. Program guide system with flip and browse advertisements
US8352978B2 (en) 1998-05-15 2013-01-08 United Video Properties, Inc. Systems and methods for advertising television networks, channels, and programs
US9635406B2 (en) 1998-05-15 2017-04-25 Rovi Guides, Inc. Interactive television program guide system for determining user values for demographic categories
US9015750B2 (en) 1998-05-15 2015-04-21 Rovi Guides, Inc. Interactive television program guide system for determining user values for demographic categories
US9172987B2 (en) 1998-07-07 2015-10-27 Rovi Guides, Inc. Methods and systems for updating functionality of a set-top box using markup language
US9232254B2 (en) 1998-07-14 2016-01-05 Rovi Guides, Inc. Client-server based interactive television guide with server recording
US9154843B2 (en) 1998-07-14 2015-10-06 Rovi Guides, Inc. Client-server based interactive guide with server recording
US9118948B2 (en) 1998-07-14 2015-08-25 Rovi Guides, Inc. Client-server based interactive guide with server recording
US10075746B2 (en) 1998-07-14 2018-09-11 Rovi Guides, Inc. Client-server based interactive television guide with server recording
US9226006B2 (en) 1998-07-14 2015-12-29 Rovi Guides, Inc. Client-server based interactive guide with server recording
US9055319B2 (en) 1998-07-14 2015-06-09 Rovi Guides, Inc. Interactive guide with recording
US9021538B2 (en) 1998-07-14 2015-04-28 Rovi Guides, Inc. Client-server based interactive guide with server recording
US9055318B2 (en) 1998-07-14 2015-06-09 Rovi Guides, Inc. Client-server based interactive guide with server storage
US9426509B2 (en) 1998-08-21 2016-08-23 Rovi Guides, Inc. Client-server electronic program guide
US7941818B2 (en) 1999-06-28 2011-05-10 Index Systems, Inc. System and method for utilizing EPG database for modifying advertisements
US8931008B2 (en) 1999-06-29 2015-01-06 United Video Properties, Inc. Promotional philosophy for a video-on-demand-related interactive display within an interactive television application
US7734153B1 (en) * 1999-10-08 2010-06-08 Samsung Electronics Co., Ltd. Video stream processing method for time-delayed viewing
US20010029610A1 (en) * 2000-02-01 2001-10-11 Corvin Johnny B. Systems and methods for providing promotions with recorded programs
US9137491B2 (en) 2000-02-01 2015-09-15 Rovi Guides, Inc. Methods and systems for forced advertising
US10015562B2 (en) 2000-03-31 2018-07-03 Rovi Guides, Inc. System and method for metadata-linked advertisements
US8863170B2 (en) 2000-03-31 2014-10-14 United Video Properties, Inc. System and method for metadata-linked advertisements
US9294799B2 (en) 2000-10-11 2016-03-22 Rovi Guides, Inc. Systems and methods for providing storage of data on servers in an on-demand media delivery system
US9369741B2 (en) 2003-01-30 2016-06-14 Rovi Guides, Inc. Interactive television systems with digital video recording and adjustable reminders
US9071872B2 (en) 2003-01-30 2015-06-30 Rovi Guides, Inc. Interactive television systems with digital video recording and adjustable reminders
US10880607B2 (en) 2003-11-06 2020-12-29 Rovi Guides, Inc. Systems and methods for providing program suggestions in an interactive television program guide
US10986407B2 (en) 2003-11-06 2021-04-20 Rovi Guides, Inc. Systems and methods for providing program suggestions in an interactive television program guide
US8904441B2 (en) 2003-11-06 2014-12-02 United Video Properties, Inc. Systems and methods for providing program suggestions in an interactive television program guide
US9191719B2 (en) 2003-11-06 2015-11-17 Rovi Guides, Inc. Systems and methods for providing program suggestions in an interactive television program guide
US9177081B2 (en) 2005-08-26 2015-11-03 Veveo, Inc. Method and system for processing ambiguous, multi-term search queries
US9113107B2 (en) 2005-11-08 2015-08-18 Rovi Guides, Inc. Interactive advertising and program promotion in an interactive television system
US8612310B2 (en) 2005-12-29 2013-12-17 United Video Properties, Inc. Method and system for commerce in media program related merchandise
US8620769B2 (en) 2005-12-29 2013-12-31 United Video Properties, Inc. Method and systems for checking that purchasable items are compatible with user equipment
US10984037B2 (en) 2006-03-06 2021-04-20 Veveo, Inc. Methods and systems for selecting and presenting content on a first system based on user preferences learned on a second system
US9092503B2 (en) 2006-03-06 2015-07-28 Veveo, Inc. Methods and systems for selecting and presenting content based on dynamically identifying microgenres associated with the content
US9075861B2 (en) 2006-03-06 2015-07-07 Veveo, Inc. Methods and systems for segmenting relative user preferences into fine-grain and coarse-grain collections
US9128987B2 (en) 2006-03-06 2015-09-08 Veveo, Inc. Methods and systems for selecting and presenting content based on a comparison of preference signatures from multiple users
US9749693B2 (en) 2006-03-24 2017-08-29 Rovi Guides, Inc. Interactive media guidance application with intelligent navigation and display features
US20070274376A1 (en) * 2006-04-10 2007-11-29 Samsung Electronics Co., Ltd. Time shift apparatus and method for digital multimedia broadcasting terminal
US8655155B2 (en) * 2006-07-26 2014-02-18 Sony Corporation Recording apparatus, recording method, and recording program, and image capturing apparatus, image capturing method, and image capturing program
US20100008647A1 (en) * 2006-07-26 2010-01-14 Sony Corporation Recording Apparatus, Recording Method, and Recording Program, and Image Capturing Apparatus, Image Capturing Method, and Image Capturing Program
US8832742B2 (en) 2006-10-06 2014-09-09 United Video Properties, Inc. Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
US10694256B2 (en) 2007-03-09 2020-06-23 Rovi Technologies Corporation Media content search results ranked by popularity
US9326025B2 (en) 2007-03-09 2016-04-26 Rovi Technologies Corporation Media content search results ranked by popularity
US10063934B2 (en) 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
US20110019973A1 (en) * 2009-07-23 2011-01-27 Kazuo Ido Editing apparatus, editing method and program
US8630533B2 (en) * 2009-07-23 2014-01-14 Sony Corporation Editing apparatus, editing method and program
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US10631066B2 (en) 2009-09-23 2020-04-21 Rovi Guides, Inc. Systems and method for automatically detecting users within detection regions of media devices
US8359616B2 (en) 2009-09-30 2013-01-22 United Video Properties, Inc. Systems and methods for automatically generating advertisements using a media guidance application
US9736524B2 (en) 2011-01-06 2017-08-15 Veveo, Inc. Methods of and systems for content search based on environment sampling
US8949901B2 (en) 2011-06-29 2015-02-03 Rovi Guides, Inc. Methods and systems for customizing viewing environment preferences in a viewing environment control application
US9125169B2 (en) 2011-12-23 2015-09-01 Rovi Guides, Inc. Methods and systems for performing actions based on location-based rules
US20150281298A1 (en) * 2012-03-30 2015-10-01 Adobe Systems Incorporated Buffering in HTTP Streaming Client
US10855742B2 (en) 2012-03-30 2020-12-01 Adobe Inc. Buffering in HTTP streaming client
US10091269B2 (en) * 2012-03-30 2018-10-02 Adobe Systems Incorporated Buffering in HTTP streaming client
US9147198B2 (en) 2013-01-10 2015-09-29 Rovi Technologies Corporation Systems and methods for providing an interface for data driven media placement
US9848276B2 (en) 2013-03-11 2017-12-19 Rovi Guides, Inc. Systems and methods for auto-configuring a user equipment device with content consumption material
US20150188966A1 (en) * 2013-12-31 2015-07-02 Sling Media Inc. Placeshifting live encoded video faster than real time
US9674257B2 (en) * 2013-12-31 2017-06-06 Echostar Technologies L.L.C. Placeshifting live encoded video faster than real time
US9462230B1 (en) * 2014-03-31 2016-10-04 Amazon Technologies Catch-up video buffering
US9288521B2 (en) 2014-05-28 2016-03-15 Rovi Guides, Inc. Systems and methods for updating media asset data based on pause point in the media asset
US20230251816A1 (en) * 2022-02-07 2023-08-10 Pateo Connect+(Nanjing)Co., Ltd. Real-time service playback method and device
US11822856B2 (en) * 2022-02-07 2023-11-21 Pateo Connect+(Nanjing) Co., Ltd. Real-time service playback method and device

Also Published As

Publication number Publication date
US8452154B2 (en) 2013-05-28
US7359619B1 (en) 2008-04-15
US20080279531A1 (en) 2008-11-13

Similar Documents

Publication Publication Date Title
US8452154B2 (en) Transmitting signals to cause replays to be recorded at a plurality of receivers
US9462325B2 (en) Time shifting by concurrently recording and playing a data stream
US8463110B2 (en) Storage of video stream multiplexed with random access playback after variable time delay
EP0713334B1 (en) Real-time image recording/producing method and apparatus
EP1449360B1 (en) Improvements in receivers for television signals
EP1289288B1 (en) Digital video recorder using circular file management and method of operation
US7272296B2 (en) Navigating to a particular program or specific time increment in a personal video recorder
JPH07107439A (en) Apparatus and method for time distortion for video
JP4499573B2 (en) Easier to use time shift buffer
JPH09233415A (en) Device and method for displaying interruption permitted video program
WO1995032584A1 (en) Video time-shifting apparatus
US20020057891A1 (en) Method and device for recording/reproducing broadcasting signals of a program
US6937813B1 (en) Digital video storage and replay system
JP2002142177A (en) Recording playback apparatus
JP3721009B2 (en) Recording viewing system
JP2004007155A (en) Program recording and reproducing apparatus
AU2015215886A1 (en) Improvements in receivers for television signals

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION