throbber
I IIIII IIIIIIII Ill lllll lllll lllll lllll lllll lllll lllll lllll 111111111111111111
`US008365221B2
`
`c12) United States Patent
`Schlarb et al.
`
`(IO) Patent No.:
`(45) Date of Patent:
`
`US 8,365,221 B2
`Jan.29,2013
`
`(54) SELECTIVE SEARCH AND DISPLAY FOR
`CATEGORIZED CHANNELS IN A
`SUBSCRIBER TELEVISION SYSTEM
`
`(76)
`
`Inventors: John M. Schlarb, Alpharetta, GA (US);
`Arturo A. Rodriguez, Norcross, GA
`(US)
`
`6,005,631 A
`6,163,345 A
`6,243,145 Bl
`6,367,078 Bl*
`6,445,306 Bl *
`6,445,754 Bl
`6,760,537 B2 *
`8,321,891
`2009/0119714 Al
`
`12/1999 Anderson et al.
`12/2000 Noguchi et al.
`6/2001 Schlarb et al. ................ 348/906
`4/2002 Lasky ............................. 725/52
`9/2002 Trovato et al. ........... 340/825.24
`9/2002 Itoi
`7/2004 Mankovitz ...................... 386/83
`11/2012 Schlarb et al.
`5/2009 Schlarb et al. .................. 725/47
`
`( *) Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 248 days.
`
`EP
`WO
`
`FOREIGN PATENT DOCUMENTS
`0 790 738 A2
`8/1997
`WO 97/49242
`12/1997
`OTHER PUBLICATIONS
`
`(21) Appl. No.: 12/351,256
`
`(22) Filed:
`
`Jan.9,2009
`
`(65)
`
`Prior Publication Data
`
`US 2009/0119713 Al
`
`May 7, 2009
`
`Related U.S. Application Data
`
`Division of application No. 09/709,167, filed on Nov.
`10, 2000, which
`is a continuation-in-part of
`application No. 09/071,602, filed on May 1, 1998, now
`Pat. No. 6,243,145.
`
`Int. Cl.
`G06F 3/00
`(2006.01)
`G06F 13/00
`(2006.01)
`H04N 5/445
`(2006.01)
`U.S. Cl. ................ 725/45; 725/40; 725/44; 725/46;
`725/47; 725/52; 725/56; 725/61
`Field of Classification Search .................... 725/40,
`725/44-47,52, 56, 61
`See application file for complete search history.
`
`References Cited
`
`(60)
`
`(51)
`
`(52)
`
`(58)
`
`(56)
`
`U.S. PATENT DOCUMENTS
`5,353,121 A *
`10/1994 Young et al ..................... 725/52
`5,532,754 A *
`7/1996 Young et al ..................... 725/47
`5,585,865 A *
`12/1996 Amano et al ................... 725/14
`5,589,892 A *
`12/1996 Knee et al. ...................... 725/43
`5,619,249 A
`4/1997 Billock et al.
`5,673,089 A *
`9/ 1997 Yuen et al. ...................... 725/38
`
`U.S.
`
`U.S. Official Action mailed Jan. 7, 2009 Ill
`09/709,167.
`U.S. Official Action mailed Aug. 11, 2009 in U.S.
`09/709,167.
`U.S. Official Action mailed Jan. 22, 2010 in U.S.
`09/709,167.
`U.S. Official Action mailed Mar. 4, 2010 in U.S.
`12/351,254.
`U.S. Official Action mailed Aug. 26, 2010 in U.S.
`12/351,254, 13 pages.
`
`Appl.
`
`No.
`
`Appl.
`
`No.
`
`Appl.
`
`No.
`
`Appl.
`
`No.
`
`Appl.
`
`No.
`
`* cited by examiner
`Primary Examiner -
`Jason Salce
`(74) Attorney, Agent, or Firm - Merchant & Gould
`ABSTRACT
`(57)
`In a subscriber television system, assigning categories to a
`channel as an entity reduces the searching requirements asso(cid:173)
`ciated with searching a database of thousands of individual
`program records, identifying the channel on which an iden(cid:173)
`tified program will be displayed, and then sorting the resultant
`information. The channel information is searched for the
`assigned category information and the associated program
`information for just those channels is retrieved. This reduces
`the processor requirements for searching the thousands of
`records in the program records database. With the reduced
`processor requirements and the increased efficiency of infor(cid:173)
`mation organization for searching, a single machine state
`change is possible between viewing full screen video and a
`browse banner or between viewing full screen program infor(cid:173)
`mation and video with a browse banner.
`20 Claims, 9 Drawing Sheets
`
`CHANNEL INFO
`
`CATEGORY INFO
`
`TERMINAL
`
`120
`
`Twitter Exhibit 1042
`Twitter, Inc. v. BlackBerry Ltd.
`Page 00001
`
`

`

`U.S. Patent
`
`Jan.29,2013
`
`Sheet 1 of 9
`
`US 8,365,221 B2
`
`125
`
`110
`
`130
`
`100
`
`FIG. 1
`
`TERMINAL
`
`120
`
`TERMINAL
`
`120
`
`215
`
`220
`
`TRANSMITTER
`
`CLOCK
`
`RECEIVER
`
`240
`
`205
`
`DATA
`PORT
`
`PROCESSOR 1 - - - - - - - - - - - - t i . DISPLA y
`
`235
`
`250
`
`225
`
`MEMORY
`
`COMMANDS
`
`GUIDE INFO
`- - - - -· -- - - - ·- -· -
`CHANNEL INFO
`
`CATEGORY INFO
`
`TERMINAL
`
`120
`
`FIG. 2
`
`Page 00002
`
`

`

`U.S. Patent
`
`Jan.29,2013
`
`Sheet 2 of 9
`
`US 8,365,221 B2
`
`305
`
`(
`
`310
`
`305
`
`(
`
`310
`
`235
`
`235
`
`TUNED
`PROGRAM
`VIDEO
`
`CHANNEL
`INFO
`
`PROGRAM
`TIME
`
`PROGRAM
`NAME
`
`315
`
`325
`
`320
`FIG. 3
`
`6
`<l BROWSE C>
`'v
`
`330
`
`TUNED
`PROGRAM
`VIDEO
`
`52 ESPN
`
`4:00PM
`
`SPORTS
`NEWS
`
`l:,.
`<l BROWSE I>
`'v
`
`315
`
`325
`
`320
`FIG. 4
`
`330
`
`Page 00003
`
`

`

`U.S. Patent
`
`Jan.29,2013
`
`Sheet 3 of 9
`
`US 8,365,221 B2
`
`305
`
`TUNED
`PROGRAM
`VIDEO
`
`( 52WPBX
`
`310
`
`4:00PM
`
`CITY COUNCIL
`MEETING
`
`b.
`<I BROWSE(>
`'iJ
`
`315
`
`320
`
`325
`
`330
`
`FIG. 5
`
`TUNED
`PROGRAM
`VIDEO
`
`(410
`
`\
`
`CATEGORY INFO
`
`CHANNEL
`INFO
`
`PROGRAM
`TIME
`
`PROGRAM
`NAME
`
`11
`<l BROWSE t>
`V
`
`FIG. 6
`
`~
`
`30 5
`
`405
`
`(
`(
`
`310
`
`Page 00004
`
`

`

`U.S. Patent
`
`Jan.29,2013
`
`Sheet 4 of 9
`
`US 8,365,221 B2
`
`TUNED
`PROGRAM
`VIDEO
`
`(410
`
`\
`
`CATEGORY:ALL
`
`52 ESPN
`
`4:00PM
`
`SPORTS
`NEWS
`
`t,.
`<l BROWSE t>
`'v
`
`FIG. 7
`
`TUNED
`PROGRAM
`VIDEO
`
`(410
`
`\
`CATEGORY: SPORTS
`
`52 ESPN
`
`4:00PM
`
`SPORTS
`NEWS
`
`A
`<J BROWSE C>
`'v
`
`FIG. 8
`
`(
`
`405
`
`(
`
`310
`
`(
`(
`
`405
`
`310
`
`Page 00005
`
`

`

`U.S. Patent
`
`Jan.29,2013
`
`Sheet 5 of 9
`
`US 8,365,221 B2
`
`TUNED
`PROGRAM
`VIDEO
`
`( 97 FITNESS
`
`CHANEL
`
`310
`
`4:00 PM
`
`A
`AEROBICS <l BROWSE l>
`CHAMPIONSHIP
`
`FIG. 9
`
`"
`
`420
`
`ON/
`OFF
`
`PROGRAM
`
`PAGE
`UP
`
`PAGE
`DOWN
`
`FIG. 10
`
`465
`
`0
`
`2
`
`4
`
`6
`
`8
`
`1
`
`3
`
`5
`
`7
`
`9
`
`Page 00006
`
`

`

`U.S. Patent
`
`Jan.29,2013
`
`Sheet 6 of 9
`
`US 8,365,221 B2
`
`FIG. 11A
`
`RECEIVE COMMAND
`FROM RECEIVER
`
`505
`
`515
`
`PERFORM OTHER
`PROCESSING
`
`NO
`
`DRIVE OIPLA Y WITH BROWSE
`BANNER. INCLUDE CURRENT
`CHANNEL INFO .• PROGRAM
`TlME, ANO PROGRAM NAME
`
`CD
`
`,... -
`
`525
`
`RECEIVE NEXT COMMAND
`FROM RECEIVER
`
`535
`
`YES
`
`DRIVE DISPLAY TO CHANGE TIME IN
`INDICATED DIRECTION AND TO UPDATE
`PROGRAM NAME ACCORDINGLY
`

`
`Page 00007
`
`

`

`U.S. Patent
`
`Jan.29,2013
`
`Sheet 7 of 9
`
`US 8,365,221 B2
`
`FIG. 118
`
`565
`
`DRIVE DISPLAY TO
`SCROLL TO NEXT
`CATEGORY, WHICH
`BECOMES SELECTED
`CATEGORY
`
`DRIVE DISPLAY TO PRESENT
`CATEGORY BANNER,
`INCLUDING CURRENTLY
`SELECTED CATEGORY
`
`555
`
`550
`
`NO
`
`YES
`
`545
`
`DRIVE DISPLAY TO INCREMENT/
`DECREMENT CHANNEL INFO. AND
`PROGRAM NAME WITHIN SELECTED
`CATEGORY
`
`Page 00008
`
`

`

`U.S. Patent
`
`Jan.29,2013
`
`Sheet 8 of 9
`
`US 8,365,221 B2
`
`RECEIVE COMMAND FROM RECEIVER
`
`FIG. 12
`
`605
`
`615
`
`PERFORM OTHER
`PROCESSING
`
`62
`
`PERFORM OTHER
`PROGRAMMING
`
`DRIVE DISPLAY TO LIST ALL CHANNELS
`INCWOEO IN CURRENTLY SELECTED
`CATEGORY
`
`RECEIVE NEXT COMMAND
`
`UPDATE MEMORY
`TO ADD/REMOVE
`SELECTED
`CHANNEL FROM
`CURRENT
`CATEGORY
`
`DRIVE DlSPLAY TO REMOVE SELECTED
`~EL FROM OlSPLAYED LIST
`
`DRIVE DtSPlAV TO AOO saecTED
`CHN4Na TO OISPI.AYB) LIST
`
`Page 00009
`
`

`

`U.S. Patent
`
`Jan.29,2013
`
`Sheet 9 of 9
`
`US 8,365,221 B2
`
`930
`
`Category
`Banner
`
`920
`
`Browse
`Banner
`
`910
`
`Watch
`TV
`
`Program
`Guide
`
`940
`
`FIG. 13
`
`Page 00010
`
`

`

`US 8,365,221 B2
`
`1
`SELECTIVE SEARCH AND DISPLAY FOR
`CATEGORIZED CHANNELS IN A
`SUBSCRIBER TELEVISION SYSTEM
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`The present application is a divisional of U.S. patent appli(cid:173)
`cation Ser. No. 09/709,167, Schlarb et al., entitled Method
`and Apparatus for Browsing Television Program Information
`by Categories Assigned to Channels, filed 10 Nov. 2000,
`which is a continuation-in-part ofU.S. patent application Ser.
`No. 09/071,602, Schlarb et al., entitled Method and Appara(cid:173)
`tus for Browsing Television Channel Information by Cat(cid:173)
`egory, filed 1 May 1998, both of which are incorporated
`herein by reference in their entirety.
`
`FIELD OF THE INVENTION
`
`This invention relates generally to controlling the display
`of program guide information in a subscriber television sys(cid:173)
`tem, and more specifically to organizing the program infor(cid:173)
`mation by categories assigned to the television channels.
`
`BACKGROUND OF THE INVENTION
`
`10
`
`2
`browser displays program information in a portion of the
`display screen, while continuing to display video in the
`remainder of the display screen. With a browser a subscriber
`can linearly scan program information by time and channel
`5 while continuing to view the video of the program on the
`currently tuned channel.
`In systems that offer a relatively small number of television
`channels, the subscriber can easily scan the available pro(cid:173)
`grams one-by-one in order of channel number. However,
`many systems can provide hundreds or even thousands of
`channels. In such systems, scanning program information by
`channel number one-by-one can require hundreds or thou(cid:173)
`sands ofkeystrokes and can consume a tremendous amount of
`time. Furthermore, locating a particular channel can be quite
`difficult if the subscriber does not already know the channel
`15 number of the channel for which he or she is searching.
`Current methods of organizing the program information
`include providing, or allowing the subscriber to select, sub(cid:173)
`sets of the program information to be displayed and viewed.
`Channels can be assigned to a "Favorite" category and then
`20 only program information for the selected channels will be
`displayed. Subscribers can select to only view program infor(cid:173)
`mation for programs with a particular attribute. To provide a
`user with a listing of all of the individual programs on a
`selected channel or with a certain attribute requires searching
`25 all of the individual records in the database to find the pro(cid:173)
`gram records that contain the desired attribute. For example,
`to provide a subscriber with a listing of every program with a
`"G" rating would require searching every program record in
`the database for the "G" ratings attribute. Searching an entire
`30 program information database requires the settop terminal's
`microprocessor to execute a lot of processor cycles. This can
`produce a noticeable latency or slowed response to the sub(cid:173)
`scriber because of the number of processor cycles required to
`completely search the entire program information database,
`35 organize the results, and then display the results. In systems
`with browsers, this can have even more of an impact as the
`same processor may be processing the video and searching
`the program information database simultaneously. Searching
`a database of program records is further complicated by the
`40 fact that a program record can include a variable number of
`fields with variable sizes. Searching through variable sized
`records requires more processor cycles than searching fixed
`size records.
`Systems have been developed with a multiple modes or
`45 machine states to help control the processing cycle require(cid:173)
`ments on the processor. A machine state describes the current
`operating state of a component that is capable of functioning
`in multiple states to perform different tasks. For example, a
`menu mode is a separate machine state from a view video
`50 mode. This allows the processor to use the processor cycles
`required for searching the program information database
`without being required to simultaneously process video. The
`search results can be stored. After switching modes, the
`search results can be retrieved in the view video mode to
`55 support browsing program information while viewing video
`without requiring a simultaneous search of the program infor(cid:173)
`mation database. The menu mode still requires searching the
`entire program information database and the subscriber must
`switch between modes to select and update the sub-set of
`60 program information that they desire to view.
`What is needed is an improved way to organize and search
`program information in a subscriber television system.
`
`Subscriber television systems transmit to system subscrib-
`ers a plurality of signals, including television prograrmning
`and other services. Subscriber television systems typically
`include a headend for organizing and processing the signals
`and then transmitting the signals via a communication
`medium to subscriber equipment that tunes to television
`channels for displaying television programming to the sub(cid:173)
`scriber. The signals to the subscriber can be transmitted, for
`instance, over coaxial cables, fiber optic cables, a hybrid
`fiber-coax, or a satellite. Signals to a subscriber can be pro(cid:173)
`vided directly to a cable-ready television, a cable-ready vid(cid:173)
`eocassette recorder (VCR), or a set top terminal connected to
`a television or other display device, such as a computer.
`Many subscriber television systems provide television pro(cid:173)
`gram information describing the programs and times the pro(cid:173)
`grams will be shown. The program information is organized
`into individual program records, one for each program, and
`these records are maintained in a program information data(cid:173)
`base. The database is typically stored in the subscriber equip(cid:173)
`ment to allow the subscriber to quickly and easily access the
`program information. There is an individual record for every
`program to be shown on every channel during a specific time
`period for which the information is provided. The time period
`is based on the memory available to store the database and
`may include days or months of program information. The
`program records describe a multitude of attributes for each
`and every program. The attributes for each individual pro(cid:173)
`gram can include the program name, a description of the
`program, content rating (G, PG, R, etc.), viewing times, and
`one or more related content categories for the program ( e.g.,
`Sports, Movies, Family, etc.).
`This program information is typically organized for pre(cid:173)
`sentation purposes into a program guide format that presents
`the program information for the programs by the time when,
`and channel on which, they will be displayed. This allows the
`subscriber to scan the available programs and decide which of
`the available programs to watch. For example, a program
`guide can be scrolled through in numerical order by television
`channel, presenting the program information for the pro- 65
`grams available on each channel. Another method of viewing
`the program information is with the use of a browser. A
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram ofa subscriber television system.
`FIG. 2 is a simplified block diagram of a set top terminal.
`
`Page 00011
`
`

`

`US 8,365,221 B2
`
`3
`FIGS. 3-9 are illustrations of various browser screens that
`can be generated for display.
`FIG. 10 is a top view of a transmitter, such as a remote
`control, that can be used by a subscriber to transmit com(cid:173)
`mands to the set top terminal.
`FIG. 11 is a flowchart illustrating a method of operating a
`processor included in the set top terminal.
`FIG.12 is a flowchart illustrating a programming operation
`of the processor for adding and deleting category assign(cid:173)
`ments.
`FIG. 13 is a state diagram illustrating the machine state
`changes of the processor included in the set top terminal.
`
`DETAILED DESCRIPTION
`
`The present invention is directed to a simple and efficient
`method and apparatus for improving the way program infor(cid:173)
`mation is searched and organized in a subscriber television
`system. Assigning categories to channels provides simple
`organization of, and efficient access to, the program informa(cid:173)
`tion. Searching for program information is done on the rela(cid:173)
`tively small number of program records in the database
`related to the channel to which a chosen category has been
`assigned. This is compared to searching the huge number of
`program records for every program on every channel for
`hours, days, weeks, or months associated with current meth(cid:173)
`ods.
`Current methods assign categories to individual programs
`and in some cases allow channels to be assigned to categories.
`To display program information for a subset of the programs
`requires searching the entire database of program records for
`program records that have the desired category or attribute.
`Searching is often done in a menu text-type mode without
`video display so that the processor resources are freed from
`controlling and processing video and can be used to search the
`database in a timely manner. The menu mode methods, after
`finding and organizing the desired information, then switch
`back to a video display mode and recall the resultant search
`information from a short-term memory for display in a
`browse banner.
`The present invention's increased efficiency and reduced
`processor requirements allow the simultaneous display of
`video and the searching for and displaying of the program(cid:173)
`ming information for channels to which a desired category
`has been assigned.
`An embodiment of the present invention includes a channel
`table with one entry per channel. Each channel's entry in the
`channel table is indexed by employing the channel number.
`Each entry in the channel table provides an efficient repre(cid:173)
`sentation of one or more categories assigned to the respective 50
`channel. Tables for each individual channel category can be
`constructed in advance by searching the channel table for a
`category and storing the resulting list of related channels to
`which that category has been assigned. In addition, updating
`a channel table associated with the changing, deleting, 55
`renaming, or adding of categories assigned to a channel is
`simpler than updating an entire program record database. A
`terminal of the present invention stores and uses the table and
`associates the categories assigned to the channels to simply
`and efficiently control the searching and display of the pro- 60
`gram information. Organizing the program records of the
`program information database by channel provides additional
`searching efficiencies. For example, a first search of the chan(cid:173)
`nel table for channels that have been assigned a category and
`then searching the program records associated with the result- 65
`ant channels requires fewer processor cycles than a search of
`the thousands of program records in the entire database.
`
`5
`
`4
`In one embodiment of the present invention, the channel
`table is designed with fixed-sized entries. The entries can be
`organized with entries for adjacent channels stored contigu(cid:173)
`ously. The processor can retrieve large contiguous sections of
`the channel table, possibly the entire table. This maximizes
`the efficiency of the processor executing a search.
`In another embodiment, searching the channel information
`of the present invention, as opposed to the entire database,
`allows a single machine state transition from a machine state
`10 that functions to display full screen video to a machine state
`that includes browsing program information in a browse ban(cid:173)
`ner that is displayed with the video. A machine state describes
`the current operating state of a component that is capable of
`functioning in multiple states to perform different tasks.
`15 Other prior methods required an intermediate "Flip" state to
`allow for the searching and loading of the program records
`database between the state of viewing the full-screen video
`and the browsing state. With the simultaneous searching and
`video display of the present invention, there is no requirement
`20 to change to an intermediate machine state between a
`machine state of searching program information and a
`machine state of viewing video.
`In another embodiment, displaying a category banner is
`also invoked as a single machine state transition. A category
`25 banner can indicate the current category, display a listing of
`the categories, and allow the subscriber to select and change
`categories. With categories assigned to channels, fewer pro(cid:173)
`cessor cycles are required to perform a search for related
`program information. This enables the simultaneous display
`30 of video. In addition, switching the display from program
`information related to a first category to that related to a
`second category can be done based on searching the channel
`information, such as a channel table or a previously stored
`table of category related channels to which the second cat-
`35 egory has been assigned. The efficiency and reduced search
`requirements of the present invention allow the switching of
`categories while in a view video machine state, without
`changing to a menu mode machine state. A subscriber can
`easily select another category and view that program infor-
`40 mation without switching out of the view video mode to a
`menu mode, selecting another category, and then switching
`back to the view video mode.
`The channel table of the present invention can be used in
`conjunction with the existing methods of content searching a
`45 program record database. The search can be narrowed via the
`use of the channel table to only program records associated
`with channels to which an associated category has been
`assigned in advance. This reduces the processor resources
`required for searching. The combination would search only
`the program records associated with the channels assigned
`the associated category, not the entire program record data-
`base.
`The present invention is best understood within the context
`of a subscriber television system. Referring now to drawings
`in which like numerals represent like elements throughout the
`several figures, a subscriber television system and additional
`exemplary embodiments of the present invention will be
`described.
`FIG. 1 is a simplified block diagram of a subscriber tele(cid:173)
`vision system 100 including a headend 105 for organizing
`television signals and transmitting the signals over the system
`100. The transmitted signals can, for instance, be radio fre(cid:173)
`quency (RF) signals, although they are more preferably opti(cid:173)
`cal signals that are transmitted over a communication
`medium such as fiber optic cable 125. When optical signals
`are transmitted by the headend 105, one or more nodes 110
`may be included in the system 100 for converting the optical
`
`Page 00012
`
`

`

`US 8,365,221 B2
`
`5
`signals to RF signals that are thereafter routed over other
`media, such as coaxial cables 130. Taps 115 are provided
`within the cable system 100 for splitting the RF signal off to
`subscriber equipment, such as set top terminals 120, cable(cid:173)
`ready televisions, video cassette recorders (VCRs), or com(cid:173)
`puters.
`Referring next to FIG. 2, a simplified block diagram of the
`terminal 120 also known as a Home Communications Termi(cid:173)
`nal (HCT). Those skilled in the art will recognize that the
`simplified block diagram of FIG. 2 is a generalization of the
`elements, functions, and inner connections of a subscriber
`terminal and is used only to illustrate the present invention
`within the general concepts of a subscriber terminal. For
`example, the processor 210 of FIG. 2 could include multiple
`decoders and a central processing unit (CPU), with the CPU
`including an arithmetic logic unit (ALU), a data cache, and an
`instructions cache. The present invention functions with a
`wide variety of processor combinations and design choices
`well known to those skilled in the art. The terminal 120 is
`typically situated within the residence or business of the
`subscriber. It may be integrated into a device that has a display
`235, such as a television set, or it may be a stand-alone unit
`that couples to an external display 235, such as a display
`included in a computer or a television, and that processes
`television signals for presentation to a subscriber on the dis- 25
`play 235. The terminal 120 preferably comprises a data port
`205 for receiving the RF signals, which can include video,
`audio, and data information, from the tap 115 (FIG.1) and for
`providing any reverse information to the tap 115 for trans(cid:173)
`mission back to the headend 105. As mentioned above, the 30
`terminal 120 includes a processor 210 for controlling opera(cid:173)
`tions of the terminal 120, decoding the incoming signals, and
`for driving the display 235. The terminal 120 further includes
`a clock 215 for providing timing functions, and a tuner 225 for
`tuning into a particular television channel to be displayed. 35
`Advanced terminals may include multiple tuners. Addition(cid:173)
`ally, the terminal 120 includes a receiver 220 for receiving
`externally generated information, such as user inputs or com(cid:173)
`mands from other devices.User inputs could, for example, be
`provided via a wired or wireless controller or transmitter 240, 40
`such as buttons or keys located on the exterior of the terminal
`120, on a keyboard, or on a handheld remote control device
`that includes user-actuated buttons.
`A memory 250 coupled to the processor 210 stores opera(cid:173)
`tional parameters and executable programs, such as com(cid:173)
`mands that are recognized by the processor 210. The memory
`250 could be a single memory type, such as a non-volatile
`random access memory (NVRAM) or a random access
`memory (RAM), or combination of different memory ele(cid:173)
`ments, such as an NVRAM and a read-only memory (ROM).
`The memory 250 stores program information that can, for
`instance, be downloaded over the system 100 (FIG. 1) to the
`terminal 120. The program information includes program
`guide information that is displayed to the subscriber in the
`format of a program guide including a listing of channels,
`programs for viewing on the channels, and times during
`which the programs are shown. The program information
`includes a database of program records for each individual
`program that could be viewed during a certain time period.
`A program record is comprised of a plurality of fields, with 60
`fixed-sized fields and variable-sized fields. Fixed-sized fields
`include four-digit display time fields. The variable sized fields
`include program description fields that include a limited
`amount of text to describe a news program and a large amount
`of text to describe a movie. In addition, the number of fields in
`each program record can be different and thus the overall
`number of bytes for each record is typically different. The
`
`6
`program records includes information, such as the channel
`number, channel icons, and identification information (e.g.,
`ESPN, Disney, WXIA, etc.).
`According to an embodiment of the present invention, the
`5 program information additionally includes channel informa(cid:173)
`tion that indicates the categories assigned to the channels. By
`way of example, categories could include ALL, assigned to
`all available channels; SPORTS, assigned to sports and fit(cid:173)
`ness channels; FAMILY, assigned to channels that provide
`10 family oriented progranmiing; ADULT, assigned to channels
`providing adult programming; FOOD, assigned to channels
`that provide programs on cooking, food, and restaurants;
`LOCAL, assigned to the channels that originate in the geo(cid:173)
`graphic region of the subscriber television system 100; and
`15 any other categories that could be ofinterest to the subscriber.
`A FAVORITES category and categories that the subscriber
`names could also be provided in systems 100 that permit the
`subscriber to assign categories to subscriber selected chan(cid:173)
`nels. Furthermore, channels could have more than one cat-
`20 egory assigned to them, e.g., a channel originating in the local
`geographic region of the system 100 could be assigned the
`categories of LOCAL, SPORTS, NEWS, FAMILY, and
`ENTERTAINMENT. Channels that have several different
`types of programming on them and can be assigned multiple
`categories for the different types of programming they
`include. Multiple and more precise categories can be imple-
`mented, such as refining the SPORTS category into GOLF,
`BASEBALL, BASKETBALL, and FOOTBALL categories.
`FOOTBALL could be further refined into PROFESSIONAL
`FOOTBALL and COLLEGE FOOTBALL categories. The
`binary number representing the categories assigned to a chan(cid:173)
`nel can be adjusted to provide the number of bytes required to
`support the number of categories the system operator desig(cid:173)
`nates.
`Typically, the terminal 120 periodically downloads pro(cid:173)
`gram information through a communications or network
`interface, such as data port 205, into memory 250 from the
`headend 105 (FIG.1). The program information including at
`least programs and times by channel and channel informa(cid:173)
`tion. Other methods of delivering the program information
`can also be used, such as systems with the program informa-
`tion stored at headend 105 or the program information can be
`downloaded from a transportable data source, from a com(cid:173)
`puter network such as an Ethernet network or token ring, or
`45 from a telephone line connected to the terminal. It will be
`appreciated that the amount of this information that can be
`downloaded and the time between downloads vary according
`to the memory and storage capacity of the terminal and
`according to the system 100 requirements, such as channel
`50 bandwidth and channel line-up. When, for instance, the sub(cid:173)
`scriber television system 100 provides access to hundreds or
`thousands of cable television channels, program information,
`including the programs, times, and the categories assigned to
`each channel, may be downloaded more often than when the
`55 system 100 provides fewer channels. There may be more
`frequent downloads of portions of the information, such as
`the channel table associating the categories assigned to each
`channel to the channels. The terminal 120 can also receive
`updated program information as needed, such as when the
`cable channel lineup is changed or when the category offer(cid:173)
`ings or the categories assigned to a channel change. One of
`ordinary skill in the art will understand that various compo(cid:173)
`nents of the program information, such as user assigned cat(cid:173)
`egory information, could be stored either in the memory 250
`65 or the headend 105.
`Storage and transmission of the channel related category
`information can be accomplished in a variety of ways. By way
`
`Page 00013
`
`

`

`US 8,365,221 B2
`
`7
`of example, a channel table can be stored in memory 250 to
`minimize the amount of memory required and to facilitate
`efficient access to the categories assigned to the channels.
`Each category can be assigned a particular bit location in a
`fixed-size field comprising multiple bits, with each bit repre-
`senting a distinctive category. Each field's binary number
`represents, by a" 1" bit, the categories assigned to a respective
`channel. A byte of an n-byte category field could have cat(cid:173)
`egory assignments for the individual bits as follows:
`
`TABLE 1
`
`Cate o bitrna
`
`Bit mask (binary)
`
`Category
`
`00000001
`00000010
`00000100
`00001000
`00010000
`00100000
`01000000
`10000000
`
`Pay-per-view
`Local
`Movies
`News
`Sports
`Family
`Religious
`Mom's Channels
`
`According to the above table, a channel that has a respec(cid:173)
`tive field in the channel table represented in the memory 250
`as "10110100" would be included in the categories of
`MOM'S CHANNELS, FAMILY, SPORTS, and MOVIES. A
`channel table associating the channel numbers to their respec(cid:173)
`tive binary numbers can be stored as channel information in
`the memory 250. The processor 210 can search the channel
`table and quickly determine the channels that have been
`assigned a selected category. The processor 210 can then
`organize the results of the search and cause the display to the
`subscriber of the program information for all channels to
`which a selected category has been assigned. In systems that
`allow the user to add or delete category assignments, the
`processor 210 can easily update the channel table to reflect
`any changes. In addition, renaming a category or changing a
`category title could be accomplished by updating the category
`name in the memory 250 associated with displaying the cat(cid:173)
`egory title associated with a particular bit location. In a sys(cid:173)
`tem 100 that allows the subscriber to name or rename catego(cid:173)
`ries, the ability to change just the category title of a category
`in a channel table simplifies the requirements of providing
`this service to the subscriber without overloading the proces(cid:173)
`sor.
`In one embodiment, a single bit of the category field asso(cid:173)
`ciated with a channel is employed as a flag to track subscriber
`operations that result in the modification of the category
`assignments. System updates to the channe

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


Or .

Accessing this document will incur an additional charge of $.

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

Accept $ Charge
throbber

Still Working On It

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

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

throbber

A few More Minutes ... Still Working

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

Thank you for your continued patience.

This document could not be displayed.

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

Your account does not support viewing this document.

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

Your account does not support viewing this document.

Set your membership status to view this document.

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

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

Become a Member

One Moment Please

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

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

Your document is on its way!

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

Sealed Document

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

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


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket