`US 8,249,114 B2
`(0) Patent No.:
`Aug. 21, 2012
`(45) Date of Patent:
`Vasudevanet al.
`
`US008249114B2
`
`(54)
`
`(75)
`
`METHOD AND DEVICE FOR RECEIVING
`AND PROVIDING PROGRAMS
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`Inventors: Swaminatha Vasudevan, Palo Alto, CA
`(US); Pritesh Mukeshbhai Dave,
`Fremont, CA (US); Kumaraguru
`Dhandapani, Fremont, CA (US); Ran
`Oz, Modi’in (IL); Nery Strasman,
`Ramat Gan (IL)
`
`(73)
`
`Assignee: ARRISSolutions, Inc., Suwanee, GA
`(US)
`
`(*)
`
`Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 2030 days.
`
`(21)
`
`Appl. No.: 11/200,754
`
`(22)
`
`Filed:
`
`Aug. 9, 2005
`
`5,586,264 A * 12/1996 Belknap etal. 0.00... 725/115
`6,166,730 A * 12/2000 Goode etal. 0... 715/716
`6,795,506 BI1*
`9/2004 Zhangetal. ....
`. 375/240.26
`2002/0054062 Al*
`5/2002 Gerbaetal. o..... 345/716
`2002/0122051 Al*
`9/2002 Hose etal.
`......
`.. 345/716
`2003/0067554 Al*
`4/2003 Klarfeld etal.
`.
`.. 348/461
`2003/0088872 Al*
`5/2003 Maissel etal. .........00. 725/46
`2004/0172416 Al*
`9/2004 Murakamietal. ..
`707/104.1
`
`2004/0226044 Al* 11/2004 Goode wwii 725/95
`
`........000. 725/25
`2004/0250272 Al* 12/2004 Durden etal.
`
`6/2005 Baranetal. .....cce 725/28
`2005/0132398 Al*
`.. 370/485
`2005/0190794 Al*
`9/2005 Krauseetal. ...
`2006/0067219 Al*
`3/2006 Dougall etal.
`.
`.. 370/230
`2006/0271936 Al* 11/2006 Matsuda etal.
`« 718/102
`
`
`
`....
`
`
`
`
`* cited by examiner
`
`Primary Examiner — Sai-Ming Chan
`(74) Attorney, Agent, or Firm — Troy A. Van Aacken; Robert
`J. Starr
`
`(65)
`
`(60)
`
`(51)
`
`(52)
`(58)
`
`Prior Publication Data
`
`(57)
`
`ABSTRACT
`
`US 2006/0034341 Al
`
`Feb. 16, 2006
`
`Related U.S. Application Data
`
`Provisional application No. 60/600,473, filed on Aug.
`10, 2004, provisional application No. 60/662,844,
`filed on Mar. 16, 2005.
`
`Int. Cl.
`
`(2006.01)
`HO04J 1/00
`US. C1. cc ecceccecceesecseceteeeeeneeeaes 370/486; 370/537
`Field of Classification Search.................. 370/537,
`370/485, 486, 487
`See application file for complete search history.
`
`A method for providing programs, the method includes: (i)
`providing a program multiplex to multiple users device; (ii)
`considering a removal of at least one program from the mul-
`tiplex in response to program viewing parameters; (iii) allow-
`ing at least one user to respond to a possible removal of the
`program;and (iv) determining whether to removethe al least
`one program in responseto received user removalresponses.
`A userdevice thatincludes a transceiverunit that is connected
`to a controller, wherein the device is adapted to receive a
`program multiplex, to receive an indication that at least one
`program is to be removed from the multiplex, and to selec-
`tively transmit a program removal response.
`
`42 Claims, 13 Drawing Sheets
`
`V
`generating content information representative of
`the programsthat are included within the
`multiplex
`320
`
`considering a removalof at least one program
`from the multiplex in response to program viewing
`parameters
`330
`
`
`
`allowing at Teast one Userto respond to
`consideration
`340
`
`he
`
`V
`determining whetherto removetheal least one
`programin responseto received user removal
`responses
`350
`
`V
`replacing at least one program that belonged to
`the pervious multiplex by a new program
`360
`V
`
`transmitting content information
`370
`
`00wo
`
`
`repetitively checking a
`status of multiple users
`device
`380
`
`
`
`<4
`
`
`
`receiving user viewing pattern
`
`
`
`information representative of
`<j
`userviewing related
`
`
`operations
`
`
`
`SONY - Ex.-1020
`Sony Corporation - Petitioner
`
`1
`
`SONY - Ex.-1020
`Sony Corporation - Petitioner
`
`1
`
`
`
`U.S. Patent
`
`Aug.21, 2012
`
`Sheet 1 of 13
`
`US 8,249,114 B2
`
`
`
`Le
`
`bSYNSIA
`
`92
`
`02GN30V3H
`
`
`lunjuawabeuewpuapeay
`
`
`
`[2
`
`a
`
`
` BOIASPJASN0}QNH-yOoMaUqny0}puespee}
`HOMjoUOvNH
`poteseesnenanonennnnnnereenennfonnnnnenneneenneeeeeeeneeeee
` |JOAIBSGOA———!_,|4YYizaJossaooldeEIpey\arn/~
`
`
`wayshspodsued,
`
`v2
`
`
`
`
`
`YSIPayE}2SVO
`
` v4yy4r46£6YY°Qysipaliaes
`
`
`
`ll
`
`
`
`YSIPSH//B}ES
`
`
`
`2
`
`
`
`
`
`
`
`U.S. Patent
`
`Aug. 21, 2012
`
`Sheet 2 of 13
`
`US 8,249,114 B2
`
`
`
`
`
`yJOMJaUBdIABpJOSN
`
`mrnnnnnnnnnmnnnnnnantnnnnnnnnrnnnnnnnnnnreeneneeengyLe0bSNH
`0}QNH
`
`
`
`¢AUNOlS
`
`Yomyeuqny0}puepee}
`
`Oe
`
`.0¢GNSQVSH
`
`9p9|NpowW
`
`vb
`
`Gs
`
`
`XL/XYPueg-JO-NO
`
`
`aINPOWX.L/Xe}PUED-U}
`
`
`
`yunjuawaebeuewqn}
`
`3
`
`
`
`
`
`
`
`US 8,249,114 B2
`
`€SUNOS
`
`U.S. Patent
`
`Aug. 21, 2012
`
`Sheet 3 of 13
`
`ajoway
`
`99|Ou}U09
`
`JOONUOD
`
`£9
`
`UOISIAS}S}Of cA]L9
`
`9Jeposeq
`
`HUNXY/XL
`
`4
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Aug. 21, 2012
`
`Sheet 4 of 13
`
`US 8,249,114 B2
`
`(6)08
`
`(2)08
`
`als
`
`[008|ne
`als\(g)08OL(4)o8
`aisHOMeUDAHals
`elelekelle
`(908(s}oe||(roe||(edoe
`(608|oran
`alsgalsSlsals
`
`
`(608womyeau94H
`vsaanols
`
`als
`
`«(8)08
`
`als
`
`(208
`
`wOL
`
`wOPan
`
`en
`
`als
`
`(208
`
`als
`
`.(g)08
`
`als
`
`of108
`
`als
`
`Z)08
`
`gs
`
`€)08
`
`
`
`yJOMJeUSqny0}puspesy
`
`be
`
`puapesy
`
`0¢
`
`JONI8SGOA
`
`96
`
`5
`
`
`
`
`
`
`
`U.S. Patent
`
`Aug.21, 2012
`
`Sheet 5 of 13
`
`US 8,249,114 B2
`
`als
`
`A9)08
`
`gals
`
`208
`
`o(6)08
`
`als
`
`(9)08
`
`alselsaisj]as|[Zo9
`(9)08||(S)oe||(roe||(edoe
`
`JaynolauoqysegPere
`
` cB28Jaynouauoqyoe
`
`ais
`
`{6)08
`
`als
`
`(g)08
`
`als
`
`(2)o8
`
`als
`
`aL!S
`
`(108
`
`SAYNOSIS
`
`auogyoeg
`
`8aINjONSe.yul
`
`
`
`
`
`Jaynolauogyoeg
`
`JANI8SCOA
`
`26
`
`isedBEd
`gage
`
`
`
`LZpuapeaypuoaas
`
`
`
` 6YSIPSy[lay¥eS
`
`OgPuEepeeyY
`
`
`
`
`
`jSul4aysipseres
`::a41EalttayYAWw
`aBaBese
`
`
`
`6
`
`ELS
`
`6
`
`
`
`
`
`
`
`
`U.S. Patent
`
`zeljenuesayiq
`
`LeL
`
`yua]uo09
`
`UOHEWWJOJUI
`
`Aug.21, 2012
`
`Sheet 6 of 13
`
`US 8,249,114 B2
`
`9AXNSIS
`
`
`
`ZhLZL
`
`‘pWess
`
`eIpay|
`
`yeeinn
`
`JBAOWWA)
`
`UONELUOJUI
`
`7
`
`
`
`
`
`U.S. Patent
`
`Aug. 21, 2012
`
`Sheet 7 of 13
`
`US 8,249,114 B2
`
` =ee—=AdALNOILLVYINGOW|AONSNOAYsONINNL
`
`/SsXdNOls
`
`
`
`
`
`00¢ATEVLNOLLVWYOSNILNALNOD
`
`
`
`pos|e
`
`Ole902
`
`cOc
`
`mascot
`
`_mncod
`
`erases
`
`8
`
`
`
`
`
`U.S. Patent
`
`Aug.21, 2012
`
`Sheet 8 of 13
`
`US 8,249,114 B2
`
`QSHO.UAAS
`
`QaA0WSsY
`
`pe
`
`LGOW
`
`oe
`YANVeYDOdd
`
`cWvdS0udd
`
`
`
`
`
`02¢NOILVWHYOANILNSLNOOWiILNSYsssI0
`
`84dNola
`
`9
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Aug.21, 2012
`
`Sheet 9 of 13
`
`US 8,249,114 B2
`
`
`
`
`
`NYaLlidSNIMZIA¥3asn
`
`OvSALNNIN
`
`OOVSALANIW
`
`
`
`S7ENNVHOGSHOLIMS(Joeais
`
`9EZ
`
`CES
`
`GSONVHO(e)0881sacNWHOSOUd|wove|tosfeP|cous|
`S$TSNNVHO
`
`NOLLWWYOSNISuaMaIA
`SUASNONIMAIAdoinomWyeoOud
`
`
`
`64adNoils
`
`
`
`
`
`0€¢F1IEAVLONIMAIAWvd0ud
`
`WAVYDONd
`
`10
`
`10
`
`
`
`
`
`U.S. Patent
`
`Aug. 21, 2012
`
`Sheet 10 of 13
`
`US 8,249,114 B2
`
` webbdO
`
`SAINJOdna
`
`
`
`
`
`s+4e0Hafele}oleh=ls}=}e}sfele]1p+
`
`
`
`
`
`sw.aoo|abplsfs}s}sfsfofsfofoffafa|
`
`agoo2eSeee
`
`
`
` wObbYwuueJGoidpaxejapeq
`
`
`
`we6odpakejap7G
`
`wOlbY
`
`
`
`weJ6oidpakejap1g
`
`OLY
`
`OLLywesBold
`
`LINNAV71Sqd
`
`ose
`
`OLL4weBold
`
`
`
`SULel
`
`ebb
`
`
`
`OlaYuNSls
`
`OLSYNOSIS
`
`11
`
`11
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Aug.21, 2012
`
`Sheet 11 of 13
`
`US 8,249,114 B2
`
`SUIOLLel
`
`LLAUNDIS
`
`PLL
`
`NNanaoo7”,
`
`neo”
`
`SAURPEBEEBEEPEL
`
`
`
`+bbbdOSPeylipoyy
`
`LC
`
`12
`
`12
`
`
`
`
`
`U.S. Patent
`
`Aug. 21, 2012
`
`Sheet 12 of 13
`
`US 8,249,114 B2
`
`suasnaidiynuujosnyeyseBuryoayo
`
`Ajaanyedeas
`
`
`
`S0|Aap
`
`ose
`
`
`
`
`
`
`
`wayedBumelaJasnGulaleoo
`
`
`
`JOdAnejUaseideyUOEUUOYUI
`
`
`
`
`
`payejaiBuimelaJasn
`
`suo}jesedo
`
`O6E
`
`
`
`0}paBuojeqyeu)WesGoidaucjse9}yeBuloejday
`
`
`
`
`
`
`
`
`
`weJBoidmeueAqxajdijnuusnoiviedau}
`
`oge
`
`
`
`
`
`UOHBWUOJU!}Ua}U0SBurpiusue
`
`cbSaNOlA
`
`OLE
`
`13
`
`
`
`
`
`suasn9[dyinw0}xajdninwweBoideBuipiaosd
`
`aoiap
`
`OLE
`
`
`
`
`
`
`
`JoaajejuaseidasUOJEUOJU!JUS}UODBuneiauab
`
`
`
`
`
`weJ6oidauojseajyeJO(eAOWSJ&GBULapISUCD
`
`
`
`
`
`BumaiaWwesboid0)ssuodsasulxajdiyjnwayy)wor
`
`siajaueied
`
`ogee
`
`Qu)0)puodsai0]Jasn_auojsea]1eBuimoye
`
`UdeIapISud
`
`Ove
`
`xafdnjnu
`
`OcE
`
`
`
`
`
`9UO]SB9][29U}DAOWA0}JOUJSYMBululLusayap
`
`
`
`
`
`JEAOWWSIJASNpeajede0}esuodseyulLUeJGold
`
`sasuodsal
`
`ose
`
`
`
`
`
`OY)ULMpapnjoulaie1eu)SwWwesBo1day)
`
`13
`
`
`
`
`
`U.S. Patent
`
`Aug.21, 2012
`
`Sheet 13 of 13
`
`US 8,249,114 B2
`
`Jasne0}Buipuodsai
`
`
`
`UsaMjaqYOIMS0}jsenbe.
`
`sweJGod
`
`097
`
`
`
`BulmalAJ9SNJosANejUuaseldal
`
`uoeUUOJU!Wayed
`
`
`
`suonesedopa}ejas
`
`OSr
`
`
`
`
`
`BumalasasnBunesouab
`
`
`
`BANESIBaIAapJasnou}
`
`Orr
`
`eb4YNSIs
`
`Qo
`ao
`+
`
`14
`
`wesboldeBulaiaoes
`yeu)BuneoipulsabessewaanoeBunwsues
`
`
`
`
`
`
`jeaowaywesGoideBunywsueyAjJaAjo9a|9S
`
`
`uOHedIPUl[eAocWaLeBoldeBuiaieoe
`
`xadyinu
`
`Oly
`
`0cr
`
`esuodsa
`
`oer
`
`14
`
`
`
`
`
`
`US 8,249,114 B2
`
`1
`METHOD AND DEVICE FOR RECEIVING
`AND PROVIDING PROGRAMS
`
`RELATED CASES
`
`This patent claims priority from U.S. provisional patent
`application Ser. No. 60/600,473 filed at Aug. 10, 2004 and
`from U.S. provisional patent application Ser. No. 60/662,844
`filed at Mar. 16, 2005 titled “switched broadcast implemen-
`tation”.
`
`10
`
`FIELD OF THE INVENTION
`
`The present invention relates to communication systems
`and especially to methods and systems for providing pro-
`gramsandfor receiving programs.
`
`BACKGROUND OF THE INVENTION
`
`The numberof television channels (programs) has dra-
`matically increased during the last decade. In addition, vari-
`ous technologies such as high definition television require
`larger amounts of bandwidth.
`In order to provide many programsto multiple user devices
`various techniques suchasstatistical multiplexing and vari-
`ous compression schemes (such as but not limited to the
`MPEGcompression standards) were developed. These tech-
`niques can improve the bandwidth utilization of existing
`infrastructure. Nevertheless, even when these techniques are
`implemented the numberof programsthat can be provided to
`usersis relatively limited.
`The following patents and patent applications, all being
`incorporated herein by reference, illustrate someprior art
`methods and devices for providing multiple programs to
`users: U.S. Pat. No. 6,597,670 of Tweedy et al.,
`titled
`“Method and system for distributing subscriber services
`using wireless bidirectional broadband loops”; U.S. patent
`application publication serial number 2005/0033342 of
`Rosetti et al., titled “Technique for providing a virtual digital
`video recorder service through a communication network”;
`USS. patent application serial number 2005/0120377 of Car-
`lucciet al., titled “Techniqueforeffectively providing various
`entertainmentservices thorough a communication network”;
`PCTpatent application WO2005/008419 of Comptonel al.,
`titled “Distributed and scalable architecture for on demand
`
`session and resource management”; PCT patent application
`publication number WO2005/022796 of Krauseetal., titled
`“Advanced, adaptive video multiplexing system”; PCT patent
`application publication number WO2005/022892 of Krause
`et al., titled “Video multiplexer system providing low-latency
`VCR-like effects and program changes” and U.S. Pat. No.
`6,718,552 of Goode “network bandwidth optimization by
`dynamic channelallocation”.
`There is aneed to provideefficient methods and devices for
`providing programs to multiple users and for receiving pro-
`gramsbyusers.
`
`SUMMARY OF THE PRESENT INVENTION
`
`25
`
`40
`
`45
`
`55
`
`A user device that includes a transceiver unit that is con-
`nected to a controller, wherein the device is adapted to: (i)
`receive a program multiplex, (11) receive an indication that at
`least one program is to be removed from the multiplex; and
`(iii) selectively transmit a program removalresponse.
`A device that is adapted to provide a program multiplex,
`the device includes: (1) a media processor adapted to generate
`a program multiplex; and (11) a management unit, connected
`
`2
`to the media processor, adaptedto (a) consider a removalofat
`least one program from the multiplex in response to program
`viewing parameters, and (b) determine the removal
`in
`response to at least one received user program removal
`response.
`A methodfor receiving programsthat includes: (i) receiv-
`ing a program multiplex; receiving a program removalindi-
`cation; and (ii) selectively transmitting a program removal
`response.
`A methodfor providing programs, the method includes: (i)
`providing a program multiplex to multiple user devices; (ii)
`considering a removal of at least one program from the mul-
`tiplex in response to program viewing parameters; (iii) allow-
`ing at least one user to respond to a possible removal ofthe at
`least one program; and (iv) determining whether to remove
`the at least one program in response to received user removal
`responses.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The present invention will be understood and appreciated
`more fully from the following detailed description taken in
`conjunction with the drawings in which:
`FIG. 1 illustrates a headend and a hub according to an
`embodimentof the invention;
`FIG.2 illustrates a headend and a hub according to another
`embodimentof the invention;
`FIG.3 illustrates a user device according to an embodiment
`of the invention;
`FIG.4 illustrates a cable network according to an embodi-
`mentof the invention;
`FIG. 5 illustrates a cable network according to another
`embodimentof the invention;
`FIG.6 illustrates various programs and signals exchanged
`over a cable network according to an embodiment of the
`invention;
`FIG.7 illustrates a content information table according to
`an embodimentofthe invention;
`FIG.8 illustrates differential content information message
`according to an embodimentofthe invention;
`FIG.9 illustrates a program viewing table according to an
`embodimentof the invention;
`FIG. 10 illustrates a delay unit and a timing diagram
`according to an embodimentofthe invention;
`FIG.11 illustrates various group of pictures, according to
`an embodimentofthe invention;
`FIG. 12 illustrates a method for providing programs,
`according to an embodimentofthe invention; and
`FIG. 13 illustrates a method for receiving programs,
`according to an embodimentofthe invention.
`
`DETAILED DESCRIPTION OF PREFERRED
`EMBODIMENTS
`
`The disclosed technique is directed to a broadband net-
`work, which can be either wired or wireless, such as an HFC
`network, a DSL network, satellite communication and the
`like.
`Itis further noted that the description relates to MPEG (and
`especially MPEG2) compliant programs and components,
`but the invention is applicable to other types of media unit
`decoding and/or compression schemes as well. It is further
`noted that the media streamsare also referred to as programs,
`although this is not necessarily so and the invention can be
`applied to media streamsthat are not programs.
`According to an embodimentofthe invention a device is
`provided. The device is adapted to provide a program multi-
`
`15
`
`15
`
`
`
`US 8,249,114 B2
`
`10
`
`40
`
`45
`
`50
`
`3
`plex. The device includes a media processor and a manage-
`ment unit. The media processor is adapted to generate a
`program multiplex. The managementunit is adapted to con-
`sider a removalof at least one program from the multiplex (for
`example in response to program viewing parameters) and
`determine whether to remove the program in responseto at
`least one user program removalresponseor in response to an
`absenceof such response. This device can be included within
`a headend, within a hub, within a node, partially within either
`one of the hub, headend and node, andthelike.
`The program removal response can include a removal
`approval, an objection to the removal, a parameter that can
`reflect the amount of acceptance/rejection to the removal, a
`request to delay the removal, andthe like. The requested delay
`period can be included within the response.
`According to an embodimentofthe invention a user device
`is provided. It includes a transceiver unit that is connected to
`a controller. This device is adapted to receive a program
`multiplex, receive an indicationthat at least one program is to
`be removed from the multiplex; and selectively transmit a
`program removalresponse.
`FIG.1 illustrates a headend 20 and a hub 40 according to an
`embodimentofthe invention.
`The headend 20 and hub 40 are connected to each other via
`a headend to hub network 30. It is noted that other configu-
`rations can be provided, including a unified hub and headend
`configuration.
`The hub 40 is connected to multiple user devices via hub to
`user device network 31. This network 31 is usually a hybrid
`fiber coax (HFC) network, butthis is not necessarily so.
`Headend 20 can receive media content from various
`sources such as video on demand server 92, and satellite
`dishes 93, 93' and 93". The headend 20 includes a media
`processor 21 that can process programs in various manners,
`including rate-shaping, performing PID re-mapping, gener-
`ating delayed versions of a program, duplicating programs,
`performingstatistical multiplexing, compressing, encrypting
`and the like.
`An exemplary broadband media routerthat has such media
`processing capabilities is described in U.S. Pat. No. 6,434,
`141 ofOz et al., which is incorporated herein by reference. An
`exemplary method and device for generating delayed version
`of programsis described in U.S. Pat. No. 6,813,270 of Oz et
`al., which is also incorporated herein by reference.
`The headendtransmits a headend multiplex (such as M0 of
`FIG.4) to the hubs. Each hub transmits a hub multiplex (such
`as multiplexes M1-M3 of FIG. 4) to multiple user devices.
`Typically, user devices that receive the same multiplex are
`referred to as a user devices group.
`The media processor 21 is controlled by a headend man-
`agementunit 26 that may determine which media processing
`operations to apply and also determine which programs
`should be included within the headend and hub multiplexes.
`Usually, headend 20 is connected to multiple hubs (for
`example hubs 40, 40' and 40" of FIG. 4, nodes 41 and 43 of
`FIG.5), and is capable of providing to each hub a different
`program multiplex. It is noted that the amount of hubs can
`differ from three.
`
`Alternatively, each hub can receive a headend multiplex of
`programsandselect the programs to be included within the
`hub multiplex of programs. Typically, the bandwidth of the
`headend to hub network 30 is muchlarger than the bandwidth
`ofthe hub to user network 31, thus the headend multiplex can
`include much more programsthan the hub multiplex.
`The headend managementunit 26 can perform additional
`tasks such as billing related tasks, andthelike.
`
`4
`Headend 20 also includes a transport system 24 that is
`adapted to receive one or more program multiplexes from
`media processor 21 and to process it such as to comply to
`format conveyed over headend to hub network 30. This pro-
`cessing may include fragmentation, aggregation, packet
`encapsulation, andthe like.
`The headend management unit 26 is usually adapted to
`perform resource allocation. The resource allocation deter-
`minesthe resources (including component, frequency, band-
`width, port and the like) that are allocated for a certain task
`(such as a transmission of a program). The headend manage-
`ment unit 26 can determine which programsto include within
`each multiplex, when to send program removal information
`and how to response to received program removal responses
`that are transmitted by user devices.
`According to another embodiment of the invention the
`resource managementis performed,at least partially, by man-
`agementunits located within the hubs and/or nodes.
`According to an embodimentof the invention headend 20
`can determine which programs to include within each pro-
`gram multiplex based upon various parameters, including
`user Viewing patterns, viewing statistics and thelike.
`The programscan be classified to various groups thatdiffer
`from each other by the probability removal from the multi-
`plex. As a rule of thumb programsthat are viewed by a very
`large number of the viewers can be removed only in rare
`occasions, while programsthat rarely viewed can be provided
`to users only upon request.It is noted that the programs can be
`classified to two types—“‘static” and “switched”, but this is
`not necessarily so and more than two groups can be defined.
`It is further noted that the content ofa certain multiplex can
`be responsive to current viewingstatistics, to previous view-
`ing patterns, to expected viewing patterns, and/or to pre-
`defined criteria. Such a criteria can be responsive to a trans-
`mission priority of a program.
`FIG. 2 illustrates headend 20' and hub 40' according to
`another embodimentof the invention.
`Headend 20'is connected, via headend to hub network 30
`to hub 40". Hub 40' is connected to multiple user devices via
`hub to user device network 31. Typically, multiple hubs and/
`or nodes are connectedto a single headend,but for simplicity
`of explanation a single hub and a single headendare illus-
`trated.
`Hub 40' may exchangedata, programs and control signals
`with multiple user devices. The main path for providing
`downstream signals from the hub to the user devices is also
`termed in-band, while the auxiliary path for providing
`upstream and downstream information is also referred to
`out-of-band path.
`Conveniently, programs, data and control signals (includ-
`ing for example, content information) are transmitted via the
`in-band path while data and control signals (including for
`example, active messages and program removal response)are
`transmitted via the out-of-bandpath.
`Hub 40'includes a hub managementunit54, in-bandtrans-
`mit/receive module (denoted “In-band RX/TX module”) 44
`and out-of-band transmit/receive module (denoted “Out-of-
`band RX/TX module”) 46. The hub management unit 54
`controls modules 44 and 46 and determines,either alone or by
`cooperating with the headend 20' which programs should be
`included with a program multiplex. The hub management
`unit 54 can also define modulation characteristics, control the
`provision of local content, calculate user viewing patterns and
`statistics, and the like.
`FIG.3 illustrates a user device 60, according to an embodi-
`mentof the invention.
`
`16
`
`16
`
`
`
`US 8,249,114 B2
`
`5
`Device 60 can be a set top box or another computerized
`entity. It is connected to a display, such as television 69 and
`can receive instructions from a remote control, via interface
`68. Thus, instructions such as change program instructions,
`alter picture or soundrelated instructions, as well as signals
`exchanged during interactive sessions are received by inter-
`face 65 and sent to controller 63.
`
`The analysis ofthese signals can indicate ifa user views the
`received programs. The analysis can be responsive to the
`length of viewed programs, and/or to viewing patterns of the
`viewers. The interface 65 can also receive signals sent to the
`television, thus provide additional indication about the view-
`ing related activities of the user.
`User device 60 also includes a transceiver unit (denoted
`RX/TX unit) 61 that is adapted to receive and transmit sig-
`nals, such as radio frequencysignals, over a hub to user device
`network 31. Unit 61 usually includes a tuner, a modulator, a
`de-modulator and a transmitter. It is controlled by controller
`63 that can set various reception and/or transmission param-
`eters such as tuner frequency, modulation and demodulation
`schemesandthelike.
`The transceiver unit 61 is connected to parser 62 that can
`selectively provide data and control signals to controller 63
`while sending programs to decoder 64. Decoder 64 is con-
`nectedto television 69.
`
`FIG. 4 illustrates a cable network 90 according to an
`embodimentofthe invention.
`Network 90 includes headend 20 that is connected to mul-
`tiple content providers such as Video On Demand (VOD)
`servers 94 and 96 andsatellite dish 92. It is noted that the
`
`amount of content providers as well as their type can differ
`from those illustrated in FIG. 4.
`Headend20 is connected, via headend to hubs network 31
`to three hubs 40, 40' and 40". It is noted that it can be con-
`nectedto different hubsvia different networks, that more than
`three hubs can be connected to headend 20 and that network
`90 can include additional intermediate devices, suchas nodes.
`Each hub (40, 40' and 40") is connected to multiple user
`devices via a hub to user devices network such as HFC net-
`works 70,70' and 70".
`Each hub can be connected to a large number of user
`devices. Many HFC networks are connected to hundreds of
`user devices and even to more than one thousanduser devices.
`For simplicity of explanation only nine user devicesare illus-
`trated as being connected to each hub. For example, user
`devices STB 80(1)-STB 80(9) are connected to hub 40, user
`devices STB 80(1)'-STB 80(9)' are connected to hub 40', and
`user devices STB 80(1)"-STB 8009)" are connected to hub
`40".
`Each network out of HFC networks 70, 70' and 70" can
`supply to the user devices a different program multiplex. Hub
`40 provides hub multiplex M1, Hub 40' provides hub multi-
`plex M2 and hub 40"provides hub multiplex M3. Headend 20
`sends headend multiplex M0to the three hubs.
`Conveniently, M0 can includeall the content of M1, M2
`and M3, although each hub caninsert local content to the hub
`multiplex. Conveniently, M0 includes all the programsthat
`are included within M1-M3.
`
`Conveniently, headend 20 determines which program to
`remove from the multiplex M0, which program to add, when
`to send program removal indications, how to respondto pro-
`gram removalresponses,to the receptionor lack ofreceptions
`of active messages, and the like. It is noted that this is not
`necessarily so and other components (such as hubs) can per-
`form someorall of these decisions, or participate (along with
`the headend or another component) in such a decision.
`
`6
`FIG.5 illustrates a cable network 91 according to another
`embodimentofthe invention.
`Cable network 91 includesa first headend 20 and a second
`
`headend 21. Thefirst headend 20 receives programs from
`satellite dishes 92, 92', and 92". The second headend 21
`receives programs from satellite dishes 93, 93' and 93", as
`well as from VOD server92.
`First headend 20 is connectedto first node 41 via backbone
`infrastructure 84. The backbone infrastructure 84 includes
`
`multiple backbone routers 82. Second headend 21 is con-
`nected to second node 43 via backboneinfrastructure 84. First
`
`node 41 is connected to multiple user devices 80(1)"-80(9)"
`via HFC network 70". Second node 43 is connected to mul-
`
`tiple user devices 80(1)-80(9) via HFC network 70.
`The first headend 20 can determine which programs to
`remove(or add to) from the hub multiplex that is sent over
`HFC network 70" while the second headend 21 can determine
`
`10
`
`15
`
`which programsto addto (or remove from) the hub multiplex
`that is sent over HFC network 70.
`
`20
`
`Redundancycan be provided by supplying the samepro-
`gramsfrom multiple backbonerouters 82. In such a casefirst
`headend 20 can send stream removal indications and receive
`
`program removal responses from user devices that are con-
`nected to HFC network 70 as well as those that are connected
`to HFC network 70". According to another embodimentofthe
`invention the first headend 20 can send program removal
`indications and/or receive program removal responses and/or
`respond to program removal responses from user devices
`80(1)"-80)".
`FIG.6 illustrates various programs and signals exchanged
`over a cable network according to an embodiment of the
`invention.
`
`It is assumed that the illustrated programs belong to M1.
`Between T0 and T3 M1includes K programs 101-109. K is a
`positive integer that is usually greater then fifty.
`Before T1 or at T1 headend 20 considers the removal of
`second program 102 andto replace it by program R 110. The
`decision can be responsive to various parameters, including
`lack of interest in the second program 102, a request to view
`program R 110, an expectation that program R 110 will be
`requested, bandwidth constraints, andthe like.
`At T1 headend 20 sends to user devices 80(1)-80(9) a
`program removalindication(illustrated as flag 121) that indi-
`cates that headend 20 considers to remove second program
`102. Headend 20 waits to receive a stream removal response
`during a predefined waiting period.
`At T2, in response to received responses(or to an absence
`of such responses) headend 20 decides to replace the second
`program 102 by program R 110.
`According to an embodimentofthe invention the program
`removal indication can also include the time of the removal.
`Headend 20 sends at T3 a differential content information
`message 131 that indicates that the second program 102 was
`replaced by program R 110.
`At T3 the second program 102 is replaced by program R
`110 and M1 includesthe first program 101, program R, and
`third to K’th programs 103-109. M1 remains the same until
`T6.
`Before T4 or at T4 headend 20 considers the removal ofthe
`fourth and fifth programs 104 and 105 and the inclusion of
`one or more programs, such as program Q 111 within M1.
`The decision can be responsive to various parameters, includ-
`ing lack of interest in the fourth and fifth programs 104 and
`105, a request to view various programsincluding program Q
`111, an expectation that program Q 111 will be requested,
`bandwidth constraints, and thelike.
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`17
`
`17
`
`
`
`US 8,249,114 B2
`
`7
`At T4 headend 20 sends to user devices 80(1)-80(9) a
`program removalindication (illustrated as flag 122) that indi-
`cates that headend 20 considers to remove fourth and fifth
`
`programs 104 and 105.
`Headend 20 waits to receive a stream removal response. At
`TS, in response to received responses (or to an absence of
`such responses) headend 20 decides to replace the fifth pro-
`gram 105 by program Q 111 but to continue to transmit the
`fourth program 104.
`Headend 20 sends at T6 differential content information
`
`message 132 that indicates that the fifth program 105 is being
`replaced by program Q 111.
`At T6thefifth program 105 is replaced by program Q 111
`and M1includesthefirst program 101, program R,third and
`fourth programs, program T, and the sixth to the K’th pro-
`grams 101, 110, 103, 104, 111, 106-109.
`Headend 20 transmits content information messages or
`differential content information messagesthat can assist the
`user devices to seamlessly switch between programs. A user
`device will send a requestto receive a certain program if that
`program is not included within the hub multiplex that is
`provided to the user device. The content information can
`include various information such as carrier frequency and
`modulation that can assist the user device to switch between
`
`programs. Conveniently, the user device sends an indication
`when is switches to another program, even if that program,
`belongsto the received multiplex. This enables the headend to
`track the viewing patters of the users. According to another
`embodimentof the invention the indication is not sent if the
`program is definedas a static program.
`In order to reduce bandwidth the content information can
`be sent in a differential manner. Differential content informa-
`tion messages can indicate differences between a previously
`transmitted program multiplex and a currently transmitted
`program multiplex.
`According to another embodiment of the invention the
`headend 20 can determine whether to send content informa-
`tion messages or differential content information messages.
`The determination can be responsive to the amount of
`changes between the pervious and current program multi-
`plexes. For example, if more than half of the programs are
`replaced simultaneously then the content information mes-
`sages can be smaller than thedifferential content information
`messages.
`FIG.7 illustrates a content information table 200 according
`to an embodimentofthe invention. Content information table
`200 includesa list of programs that are included within the
`program multiplex as well as multiple associated parameters.
`These parameters can include, for example, the program
`name, tuning frequency, modulation type, program identifi-
`cation field (such as an MPEG compliant PID), and program
`type (switched, static, and thelike).
`FIG.8 illustrates a differential content information mes-
`sage 131 according to an embodimentofthe invention. Dif-
`ferential content information message 131 is transmitted at
`T3 and indicates that the second program 102 is removed
`(program type is ‘“REMOVED?’) andthat program R 110 is
`provided. The parameters of program R 110 are included
`within the differential content information message 131.
`The content information can also determine the type of
`program—for example whether the program is static or
`switched. In the former case the user devices knowsthat the
`program will not be replaced, and thus can ignore program
`removalinformationif it is tuned to than program.
`According to an embodimentof the invention headend 20
`can receive user viewing indications about users viewing
`related operations (gathered by the user device) and try to
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`estimate the viewing patterns of the user and/or generate
`viewingstatistics. Thestatistics and/or viewing patterns can
`be used by headend 20 to decide which programs to remove
`from a program multiplex and which program to addto the
`program multiplex.
`FIG.9 illustrates a program viewing table 230 according to
`an embodiment of the invention. Table 230 includes four
`columns 232-238. The first column 232 includes the names of
`the programs, the second column includes the amount of
`users that are viewing the program (orat least an estimate of
`their number), the identity of user devices that are tuned to
`receive each programs and user viewing information that
`reflects the operations that are received by inter