throbber
as) United States
`a2) Patent Application Publication 10) Pub. No.: US 2009/0254708 Al
`(43) Pub. Date: Oct. 8, 2009
`
`Balraj et al.
`
`US 20090254708A1
`
`(54) METHOD AND APPARATUS FOR
`DELIVERING AND CACHING MULTIPLE
`PIECES OF CONTENT
`
`(75)
`
`Inventors:
`
`Sajith Balraj, San Diego, CA
`(US); An Mei Chen,San Diego,
`CA (US)
`
`Correspondence Address:
`QUALCOMM INCORPORATED
`5775 MOREHOUSEDR.
`
`SAN DIEGO, CA 92121 (US)
`
`(73) Assignee:
`
`QUALCOMMIncorporated, San
`Diego, CA (US)
`
`(21) Appl. No.:
`
`12/419,193
`
`(22)
`
`Filed:
`
`Apr. 6, 2009
`
`Related U.S. Application Data
`
`(60) Provisional application No. 61/043,033, filed on Apr.
`7, 2008.
`
`Publication Classification
`
`(51)
`
`Int. Cl.
`(2006.01)
`GO6F 12/00
`(52) US. Ch wi 711/118; 71 1/E12.001; 711/E12.017
`
`(57)
`
`ABSTRACT
`
`Aspects relate to systems and methods for providing the
`ability to customize content delivery. A device can cache
`multiple presentations. The device can establish a cache
`depth upon initiation of the subscription service. The device
`can provide an interface to select a cache depth. The cache
`depth can be the numberof presentations the device will
`maintain on the device at a given time.
`
`CONTENT
`
` CONTENT
`PROVIDER
`
` OPTIMIZED
`
`BROADCAST
`NETWORK
`
`132
`
`132
`
`NOTEBOOK
`COMPUTER
`
`‘182
`
`CLIENT
`
`PROVIDER
`
`
`
`CLIENT|WOBILE
`134
`TELEPHONE
`
`CHE
`
`134
`
`134
`
`APPLE 1007
`
`APPLE 1007
`
`1
`
`

`

`Patent Application Publication
`
`Oct. 8, 2009 Sheet 1 of 9
`
`US 2009/0254708 Al
`
`CONTENT
`PROVIDER
`
` CONTENT
`
`PROVIDER
`
`108
`
`
`
` OPTIMIZED
`
`BROADCAST
`NETWORK
`
`
`
`CLIENT
`
`CACHE
`
`PDA
`
`132
`
`NOTEBOOK
`COMPUTER
`
`132
`
`CLIENT
`
`
`
`134 CLIENT|MOBILE
`TELEPHONE
`
`ACHE
`
`134
`
`134
`
`FIG. 1
`
`2
`
`

`

`Patent Application Publication
`
`Oct. 8, 2009 Sheet 2 of 9
`
`US 2009/0254708 Al
`
`200\
`
`GUIDE
`INFORMATION
`
`TRANSCEIVER
`LOGIC
`
`RESOURCES
`AND
`INTERFACES
`
`216
`
`PROCESSING
`LOGIC
`
`ACTIVATION
`LOGIC
`
`CLIENT
`
`FIG. 2
`
`3
`
`

`

`Patent Application Publication
`
`Oct. 8, 2009 Sheet 3 of 9
`
`US 2009/0254708 Al
`
`300\
`
`RESOURCES
`AND
`INTERFACES
`
`CLIENT
`
`LOGIC
`
`GUIDE AND
`PRESENTATION
`LOGIC
`
`PROCESSING
`LOGIC
`
`314
`
`TRANSCEIVER
`
`FIG. 3
`
`4
`
`

`

`Patent Application Publication
`
`Oct. 8, 2009 Sheet 4 of 9
`
`US 2009/0254708 Al
`
`405
`
`410
`
`Epoch 2
`Epoch 1. ————>
`
`
`
`425 415
`
`420
`
`Service License
`Prefetch time Epoch
`2
`430
`
`Presentation
`Expiry Time
`
`505
`
`510
`
`Epoch 1. ————>
`Epoch 2
`
`
`
`525 515
`
`535
`
`520
`
`t
`
`t
`
`Service License
`Prefetch time Epoch
`2
`530
`
`FIG. 5
`
`5
`
`

`

`Patent Application Publication
`
`Oct. 8, 2009 Sheet 5 of 9
`
`US 2009/0254708 Al
`
`DEVICE
`RESOURCES
`
`AND
`INTERFACES
`
`CLIENT
`
`618
`
`TRANSCEIVER
`LOGIC
`
`MANAGER
`
`600 \
`
`-
`COLLECTION ~
`
`CACHE
`
`PROCESSING
`LOGIC
`
`SUBSCRIPTION
`DATABASE
`
`RESOURCE
`
`FIG. 6
`
`6
`
`

`

`Patent Application Publication
`
`Oct. 8
`
`’
`
`2009 Sheet 6 of 9
`
`US 2009/0254708 Al
`
`(¢+1)pUSJd
`
`qZSls
`
`V2‘Slad
`
`Oc
`
`GZOZGOZ
`
`GbZOZGOL
`
`————>76c9
`
`¢=yldagayoaeg
`(14)x€USIZUSI“ON
`
`(241)
`(z+3)(4)oy©USIZUSI|USIN
`
`
`¢=yidaqayoeq)—————>
`
`cog
`
`~~,
`
`7
`
`
`

`

`Patent Application Publication
`
`Oct. 8
`
`’
`
`2009 Sheet 7 of 9
`
`US 2009/0254708 Al
`
`
`
`¢=ydegayoe)
`
`7669
`
`C09
`
`
`
`
`
`p=yjdegayseg.——————>
`
`0c8Gb8
`
`pyUSJd€USJd
`
`(E+)(2+)
`
`ee
`S08&
`
`O18
`
`0c8
`
`S18O18S08
`
`(f+)yUSI
`
`(,+})(0)¢USJdZUSI|USJd00
`(Z+})
`
`a8Sls
`
`V8‘Sila
`
`8
`
`
`
`

`

`Oct. 8, 2009 Sheet 8 of 9
`
`Patent Application Publication
`
`605-7
`
`
`
`DIIN9dSBOIAIAS
`
`O16uoNduoseq
`
`
`
`SILDyloadsadIAJaS
`
`G06
`
`
`
`
`
`Saul|peaySsauIsngdo}ay}JoyoIdSyolpy
`
`
`
`SMONSSEUISNGYdN
`
`“OMOU]JeayelsJeYONWaveSeiuedwodJofewOm]
`
`
`ePIPPYSAOYINaAegdndPONJO}OWL
`
`““JOYLOMIjaqpueJOUJeJNULIBay}S$!Bd10ABbe}IABU
`
`
`
`
`SOU]YIMSeBueYOBd10ABbeIII\|uoNeUaseld
`
`
`
`JO)uoNduoseqZuojejuesaud
`
`US 2009/0254708 Al
`
`|uojejuasaid
`
`_——&8
`
`6Sis
`
`JO}uoNduosaq
`
`
`
`ZUONEJUSSAJqJO}OP
`
`aa
`
`S16
`
`9
`
`
`

`

`Patent Application Publication
`
`Oct. 8, 2009 Sheet 9 of 9
`
`US 2009/0254708 Al
`
`1000
`
`BEGIN
`
`INITIATE RECEIVING CONTENTON A DEVICE
`
`DETERMINE A CACHE DEPTH FOR STORING THE CONTENT
`
`RECEIVE THE CONTENT AND STORE THE CONTENT IN THE
`CACHE ACCORDING TO THE CACHE DEPTH
`
`INITIATE CHANGE IN THE CACHE DEPTH (OPTIONAL)
`
`1010
`
`1020
`
`1030
`
`1040
`
`1050
`
`
` YES|ALTER PRESENTATIONS
`MEMORY
`STORED IN THE CACHE,
`SUPPORT
`CHANGE?
`
`
`1060
`
`IF NECESSARY
`
`
`
`
`
`END
`
`FIG. 10
`
`10
`
`

`

`US 2009/0254708 Al
`
`Oct. 8, 2009
`
`METHOD AND APPARATUS FOR
`DELIVERING AND CACHING MULTIPLE
`PIECES OF CONTENT
`
`CROSS REFERENCE TO RELATED
`APPLICATIONS
`
`[0001] This application is related and claimspriority to
`US. Provisional Application No. 61/043,033, filed Apr. 7,
`2008, assigned or under obligation of assignment to the
`assignee of the present application, entitled “Method and
`Apparatus for Delivering and Caching Multiple Pieces of
`Content,’ which provisional application is
`incorporated
`herein,in its entirety, by reference.
`
`BACKGROUND
`
`[0002] Content delivery systems, such as wireless multicast
`platforms, host and deliver a variety ofvideo, audio and other
`content to users ona subscriptionorother basis. In the case of
`media delivered to mobile users over the air interface, the
`content can include videoor audioclips delivered by a service
`to the handset. The service in general can produce media
`content such as news, sports, business, weather or other video
`or audio programming, and makethat media content available
`to wireless users under arrangementwith the wireless carrier.
`The content delivered by the service can be broken downinto
`individual channels, such as channels for streaming stock
`quotes, sports scores, weather forecasts or others.
`[0003]
`In current systems, the content can be downloaded
`onto a user’s device. The user, however, is limited to storing
`and viewing one piece of content downloaded onto the
`device. As such, the user may have limited viewing choices
`and miss or lose downloaded content if not viewed before the
`content expires. It may be desirable to provide methods and
`apparatus for downloading and caching multi-pieces of con-
`tent in wireless or other content delivery systems.
`
`DESCRIPTION OF THE DRAWINGS
`
`on a personaldevice. In aspects, the content delivery system
`can be or include a wireless content delivery system, such as
`the MediaFLO™system developed by the Qualcomm Inc. of
`San Diego, Calif. In aspects, the content delivery system can
`be or include a content delivery platform based on wired or
`optical connections, in addition to or instead of a wireless
`interface. In general, the content delivered by the content
`delivery system can include video media, such as videoclips
`encoded in the Real™ format, the Motion Pictures Group
`(.mpg) format, the Windows Media format by Microsoft™
`Corp., or other video codec or format. The content can further
`include audio media, such as music tracks or broadcast
`recordings encoded in Motion Pictures Expert Group
`(MPEG)-1 Audio Layer 3 (MP3) format, Microsoft Corp.
`.wav format, RealAudio™ format, or other audio codec or
`format. The content can further include datacast contents
`such as JPEGfiles, PNG files and HTMLfiles.
`[0014] As used at times herein, a “service” can refer to a
`collection of content typically generated by a content pro-
`vider, such as television organizations or broadcast radio
`operators. A “presentation” as used at times herein can refer
`to a discrete content instance that is carried or produced by a
`service, such as a television sitcom episode or particular
`sporting event. A presentation typically has an associatedtitle
`for the user in a media program guide, such as a television
`guideorlist of streaming media. System information can also
`be provided with the content. System information as some-
`times used herein can be or include the metadata describing
`the content delivery system and/or available content in the
`content delivery system.
`[0015] According to aspects of the present teachings in one
`regard, the content delivery system provides a user with the
`ability to customize contentdelivery. To achievethis, a device
`can also allow the user to cache multiple presentations. The
`device can establish a default cache depth uponinitiation ofa
`service. The device can provide an interface to the user to
`select a cache depth. The cache depth can be the numberof
`presentations the device will maintain on the device at a given
`time.
`
`[0004] The accompanying drawings, which are incorpo-
`rated in and constitute a part of this specification, illustrate
`In one or more aspects, once presentations have
`[0016]
`aspects ofthe present teachings and together with the descrip-
`been cached, the device can provide a multi-view interface to
`tion, serve to explain the principles of the present teachings.
`the user to allow the select cached presentations to be viewed.
`In the figures:
`The device can populate the multi-view interface with infor-
`[0005]
`FIG. 1 illustrates an exemplary overall system for
`mationrelated to the service and presentations received from
`content delivery, according to various aspects;
`the content delivery system.
`[0006]
`FIG. 2 illustrates an exemplary content provider
`[0017] When the device receives new presentations, the
`server, according to various aspects;
`device can cache the presentations in the device until the
`[0007]
`FIG. 3 illustrates an exemplary content server,
`cache depth is reached. Once the cache depth is reached, the
`according to various aspects;
`device can replace the cached presentations with newly
`[0008]
`FIGS. 4 and 5 illustrate examples of presentation
`received presentations. The device can replace the cached
`expiration, according to various aspects;
`presentations based onaFirst-In/First-Out (FIFO) scheme.
`[0009]
`FIG.6 illustrates an exemplary device, according to
`[0018] Reference will now be madein detail to exemplary
`various aspects;
`aspects of the present teachings, which are illustrated in the
`[0010]
`FIGS. 7A, 7B, 8A, and 8B illustrate exemplary
`accompanying drawings. Where possible the same reference
`cache configurations and management processes, according
`numbers will be used throughout the drawingsto refer to the
`to various aspects;
`sameorlike parts.
`[0011]
`FIG. 9 illustrates an exemplary multi-view inter-
`[0019]
`FIG. 1 shows an exemplary communication net-
`face, according to various aspects; and
`work 100 that comprises one aspect of a content delivery
`[0012]
`FIG. 10 illustrates an exemplary process for receiv-
`system that operates to create and transport multimedia con-
`ing and storing content, according to various aspects.
`tent flows across data networks. For example, the content
`delivery system can be suitable for use in transporting pre-
`sentations from a content provider network to a wireless
`access network for broadcast distribution. One skilled in the
`art will realize that communication network 100 is exem-
`
`DETAILED DESCRIPTION
`
`[0013] According to aspects, a content delivery system can
`be configuredto allow a user to customize content maintained
`
`11
`
`11
`
`

`

`US 2009/0254708 Al
`
`Oct. 8, 2009
`
`plary. The components of communication network 100 can be
`modified or combined and additional components can be
`added.
`
`In one or moreaspects, the network 100 can include
`[0020]
`one or more content providers (CP) 102, a content provider
`network 104, an optimized broadcast network 106, and a
`wireless access network 108. The network 100 also includes
`
`devices 110 that can include a mobile telephone 112, a per-
`sonal digital assistance (PDA) 114, and a notebook computer
`116. The devices 110 illustrate just some of the devices that
`are suitable for use in one or more aspects of the content
`delivery system.
`It should be noted that although three
`devices are shown in FIG.1, virtually any numberof devices,
`or types of devices are suitable for use in the content delivery
`system.
`In one or more aspects, the CP 102 operates to
`[0021]
`provide content 136, for example one or more presentations,
`for distribution to users in the network 100. The CP 102
`provides the content 136 to the content provider network 104
`for distribution. For example, the CP 102 communicates with
`the content provider network 104 via the communication link
`118, which includes any suitable type of wired and/or wire-
`less communication link.
`
`Inoneormoreaspects, the content provider network
`[0022]
`104 can include any combination of wired and wireless net-
`worksthat operate to distribute the content 136 fordelivery to
`the devices 1 10 and users. The content provider network 104
`communicates with the optimized broadcast network 106 via
`the link 120. The link 120 can include any suitable type of
`wired and/or wireless communication link. The optimized
`broadcast network 106 can include any combination of wired
`and wireless networks that are designed to broadcast high
`quality content. For example, the optimized broadcast net-
`work 106 can be a specialized proprietary network that has
`been optimized to deliver high quality content to selected
`devices over a plurality of optimized communication chan-
`nels.
`
`include a real-time or nonreal-time content, for example one
`or more presentations, that was provided by the CP 102 for
`distribution using the content provider network 104. In one
`aspect, the CS 122 can operate to negotiate with the BBS 124
`to determine one or more parameters associated with the
`wireless access network 108. Once the BBS 124receives the
`
`presentation, it broadcasts/multicasts the presentation over
`the wireless access network 108 for reception by one or more
`of the devices 110. Any of the devices 110 can be authorized
`to receive the presentation and cacheit for later viewing by
`the device user.
`
`In one or more aspects, the device 110 can include a
`[0026]
`client 132 that operates to provide a user interface that dis-
`plays a listing of the content 136, for example one or more
`presentations, that is scheduled for broadcast over the wire-
`less access network 108. The device user can then select to
`
`receive any particular content for rendering in real-time or to
`be stored in a cache 134 for later viewing. For example, a
`particular presentation can be scheduled for broadcast during
`the evening hours, and the device 112 operates to receive the
`broadcast and cache the presentation in the cache 134 so that
`the device user may viewthe clip the next day. Typically, the
`content 136 can be broadcast as part of a service, such as a
`subscription service, and the receiving device can need to
`provide a decryption key or otherwise authenticate itself to
`receive the broadcast.
`
`Inone or moreaspects, the client 132 can also allow
`[0027]
`the user to cache multiple presentations in the cache 134. To
`achievethis, the client 132 can establish a default cache depth
`upon initiation of a service, such as a subscription service.
`The client 132 can provide an interface to the userto select a
`cache depth. The cache depth can be the numberof presen-
`tations the client 132 will maintain in the cache 134 at a given
`time.
`
`In one or more aspects, once presentations have
`[0028]
`been cached, the client 132 can provide a multi-view interface
`to the user to allow the cachedpresentations to be viewed. The
`client 132 can populate the multi-view interface with infor-
`mationrelated to the service and presentations received from
`CS 122.
`
`[0029] When the device 110 receives presentations, the
`client 132 can cache the presentations in the cache 134 until
`the cache depth is reached. Once the cache depth 1s reached,
`the client 132 can replace the cached presentations with
`newly received presentations. The client 132 can replace the
`cached presentations based on a First-In/First-Out (FIFO)
`scheme.
`
`In one or more aspects, the content delivery system
`[0023]
`can operate to deliver the content 136 from the CP 102 for
`distribution to one or more content servers (CS) 122 at the
`content provider network 104 that operates to communicate
`with a broadcastbase station (BBS) 124at the wireless access
`network 108. The content delivery system allows the CS 122
`to receive the content 136, such as presentations, guide infor-
`mation andother related information, from content provider
`102. The CS 122 updates and/or creates content flows for
`delivery to devices 110.
`Oneskilled in the art will realize that communica-
`[0030]
`[0024]
`Inoneor more aspects, the CS 122 and the BBS 124
`tion network 100 is exemplary. In the content delivery system
`can communicate using one or more aspects of a transport
`of the aspects, communication network 100 can be arranged
`interface 126 that allows the content provider network 104 to
`deliver the content 136 in the form of content flows to the
`in any configuration and include any components necessary
`to deliver the content 136 from CP 102 to devices 110 via CS
`wireless access network 108 for broadcast/multicast to the
`122.
`devices 110. The transport interface 126 can includeacontrol
`interface 128 and a bearer channel 130. The control interface
`[0031]
`FIG. 2 showsone aspect of a content provider server
`128 operates to allow the CS 122 to add, change, cancel, or
`200 suitable for use in one aspect of the content delivery
`otherwise modify content flows that flow from the content
`system. For example, the server 200 can be used as the CP 102
`provider network 104 to the wireless access network 108. The
`in FIG. 1. The server 200 can include processing logic 202,
`bearer channel 130 operates to transport the content flows
`resources and interfaces 204, and transceiver logic 210, all
`from the content provider network 104 to the wireless access
`coupled to an internal data bus 212. The server 200 can
`network 108.
`include activation logic 214, guide information 206, and
`guide logic 208, which are also coupled to the data bus 212.
`[0032]
`Inoneor more aspects, the processing logic 202 can
`include a CPU, processor, gate array, hardware logic,
`memory elements, virtual machine, software, and/or any
`
`In one or more aspects, the CS 122 can use the
`[0025]
`transport interface 126 to schedule a contentflow to be trans-
`mitted to the BBS 124 for broadcast/multicast over the wire-
`
`less access network 108. For example, the content flow can
`
`12
`
`12
`
`

`

`US 2009/0254708 Al
`
`Oct. 8, 2009
`
`combination of hardware and software. Thus, the processing
`logic 202 can generally include logic to execute machine-
`readable instructions and to control one or more other func-
`tional elements ofthe server 200 via the internal data bus 212.
`
`In one or more aspects, the resources andinterfaces
`[0033]
`204 can include hardware and/or software that allow the
`server 200 to communicate with internal and external sys-
`tems. For example, the internal systems can include mass
`storage systems, memory, display driver, modem, or other
`internal device resources. The external systems can include
`user interface devices, printers, disk drives, or other local
`devices or systems.
`[0034]
`Inone or more aspects, the transceiver logic 210 can
`include hardwarelogic and/or software that operate to allow
`the server 200 to transmit and receive data and/or other infor-
`
`mation with remote devices or systems using communication
`channel 216. For example, in one aspect, the communication
`channel 216 can include any suitable type of communication
`link, such as link 118 illustrated in FIG.1, to allow the server
`200 to communicate with a data network, such as the content
`provider network 104.
`[0035]
`In one or more aspects, the activation logic 214 can
`include a CPU, processor, gate array, hardware logic,
`memory elements, virtual machine, software, and/or any
`combination of hardware and software. The activation logic
`214 operates to activate a CS, such as CS 122, and/or a device
`to allow the CS and/orthe device to select and receive content
`
`and/or services described in the guide information 206. In one
`aspect, the activation logic 214 can transmit a client 220 or
`server (not shown) to the CS and/or the device during the
`activation process. The client program 220 runs on the CS
`and/or the device to receive the guide information 206 and
`display information aboutavailable content or services to the
`user of the CS and/or device. Thus, the activation logic 214
`operates to authenticate a CS and/or a device, download the
`client 220, and download the guide information 206 for ren-
`dering on the CSorthe device by the client 220.
`[0036]
`In one or more aspects, the guide information 206
`can include information in any suitable format that describes
`content and/or services that are available for a CS and/or
`devices to receive. For example, the guide information 206
`can be stored in a local memory of the server 200 and can
`include information such as content or service identifiers,
`scheduling information, pricing, and/or any other type of
`relevant information. The guide information 206 can also
`include information describing the content, such as a presen-
`tation title and presentation description and otherattributes
`that are specific to a presentation. Additionally, the guide
`information 206 can include other information about access
`and availability such as expiry duration for presentation or
`service, and/or explicit expiry time for presentations.
`[0037]
`In one or more aspects, the guide logic 208 can
`include hardware and/or software that operate to generate
`notification messages that identify and/or describe changes to
`the guide information 206. For example, whenthe processing
`logic 202 updates the guide information 206, the guide logic
`208 is notified about the changes. The guide logic 208 can
`generate one or more notification messagesthat are transmit-
`ted to one or more CS, which may have beenactivated with
`the server 200, so that these one or more CS are promptly
`notified about the changes to the guide information 206.
`[0038]
`Inone or moreaspects, the server 200, including for
`example guide information 206, guide logic 208, activation
`logic 214, client 220, can include program instructions stored
`
`on a computer-readable media, which when executed by a
`processor, for instance, the processing logic 202, provides the
`functionsofthe server 200 described herein. For example, the
`program instructions may be loadedinto the server 200 from
`a computer-readable media, such as a floppy disk, CDROM,
`memory card, FLASH memory device, RAM, ROM,or any
`other type ofmemory device or computer-readable media that
`interfaces to the server 200 through the resources 204. In
`another aspect, the instructions may be downloadedinto the
`server 200 from an external device or network resource that
`interfacesto the server 200 through the transceiver logic 210.
`The program instructions, when executed by the processing
`logic 202, provide one or more aspects ofthe content delivery
`system as described herein.
`[0039] FIG.3 shows one aspect ofacontentserver (CS) 300
`suitable for use in one aspect of a content delivery system. For
`example, CS 300 can be the CS 122 shown in FIG. 1. The CS
`300 can include processing logic 302, resources and inter-
`faces 304, and transceiver logic 306, all coupled to a data bus
`308. The CS 300 can also include a content server (CS) client
`310, and a guide and presentation (GP) logic 312, which are
`also coupled to the data bus 308.
`[0040]
`Inoneor more aspects, the processing logic 302 can
`include a CPU, processor, gate array, hardware logic,
`memory elements, virtual machine, software, and/or any
`combination of hardware and software. Thus, the processing
`logic 302 can generally include logic configured to execute
`machine-readable instructions and to control one or more
`other functional elements of the CS 300 via the internal data
`bus 308.
`
`Inone or moreaspects, the resources andinterfaces
`[0041]
`304 can include hardware and/or software that allow the CS
`300 to communicate with internal and external systems. For
`example, internal systems can include mass storage systems,
`memory, display driver, modem, or other internal device
`resources. The external systems can include user interface
`devices, printers, disk drives, or other local devices or sys-
`tems.
`
`Inone or more aspects, the transceiver logic 306 can
`[0042]
`include hardwareand/or softwarethat operate to allow the CS
`300 to transmit and receive data and/or other information with
`
`external devices or systems through communication channel
`314. For example,
`the communication channel 314 can
`include a network communication link, a wireless communi-
`cation link, or any other type of communicationlink, such as
`links 118,120, and 126 as illustrated in FIG.1.
`[0043]
`Inoneor more aspects, during operation, the CS 300
`can be activated so that it can receive and serve available
`
`contentor services over a data network. For example, in one
`aspect, the CS 300 can identify itself to a content provider
`server, for example server 200, during an activation process.
`Aspart of the activation process, the CS 300 can receive and
`store guide information and presentations by GP logic 312.
`The GP logic 312 can contain information that identifies
`content or services available for the CS 300 to receive and
`
`serve to the devices 110. The CS client 310 operates to render
`information in the GP logic 312 on the CS 300 using the
`resources and interfaces 304. Additionally, the CS client 310
`can operate to generate and provide the content flows to the
`devices 110.
`
`In one or more aspects, the CS 300 receives guide
`[0044]
`information and presentations via transceiver logic 306. The
`guide information can include information that describes the
`content available. Additionally, the guide information can
`
`13
`
`13
`
`

`

`US 2009/0254708 Al
`
`Oct. 8, 2009
`
`include information regarding the availably and accessibility
`of the content such as expiry duration fora service or presen-
`tation and an explicit expiry time for a presentation.
`[0045]
`Inone or more aspects, the CS client 310 utilizes the
`guide information in order to construct the content flow to be
`provided to a device, such as device 110. In constructing the
`content flow, the CS client 310 can construct a presentation
`definition record to be included with the presentation. The
`presentation definition record can include information that
`describes the presentations contained in a content flow. For
`example, the presentation definition record can includeinfor-
`mation suchas title of a presentation and a description of the
`presentation. The presentation definition record can also
`include information defining the accessibility and availability
`of the presentation, such as presentation expiry time, decryp-
`tion keys to access the presentation, and the like. Additionally,
`service information can be provided in system information
`(SD record. The service information can include information
`that describes the service for which the content is being pro-
`vided.
`
`In one or more aspects, the content provided by CS
`[0046]
`300 can berelated to a service, such as a subscription service.
`For example, a user of device 110 can subscribe to the sub-
`scription service and receive content based on the termsofthe
`subscription service. For content provided related to a ser-
`vice, the content can have a limited time period for which the
`content can be available to users. For example, each presen-
`tation on a service can have an expiry time (time at which the
`presentation is no longer accessible) associated with the ser-
`vice or the presentation. The presentation expiry time can be
`determined based on a presentation expiry duration (amount
`of time the presentation is accessible) or an explicit expiry
`time. The presentation expiry duration and/or explicit expiry
`time can be provisioned per the service or provisioned per
`presentation. The presentation expiry duration and/or explicit
`expiry time can be set and provided by the CP 102 or other
`system associated with the CP 102.
`[0047]
`In one or more aspects, as mentioned above, the
`presentation expiry time can be based on an expiry duration.
`Ifthe CS 300 receives an expiry duration instead ofan explicit
`expiry time from the CP 102, the CS 300 can calculate the
`presentation expiry time based on the presentation expiry
`duration. The CS 300 can utilize the CS client 310 to calculate
`
`the presentation expiry time. Ifthe CS 300 receives an explicit
`expiry timefor the presentation from the CP 200, the CS 300
`can use the explicit expiry time as the expiry time for the
`presentation.
`[0048]
`In one or moreaspects, the CS 300 can calculate the
`presentation expiry time based on contact window (time
`period in which the presentation is accessible), contact start
`window(start time in whichthe presentation becomesacces-
`sible), and/or the presentation expiry duration (amount of
`time the presentation is accessible). For example, when cal-
`culating the presentation expiry time based on the expiry
`duration for a presentation with a single contact window,the
`CS 300 can add the expiry duration to the contact start win-
`dow for that presentation. When calculating the presentation
`expiry time for a presentation based on the expiry duration for
`a presentation with multiple contact windows, the CS 300 can
`add the expiry duration to the contact start windowofthelast
`contact window forthat presentation.
`[0049]
`In one or more aspects, the presentation may not
`have an associated contact window (time period in which the
`presentation is accessible). The presentation can be available
`
`for viewing on the device 110 at the time it is downloaded, and
`the latest possible time at which the presentation can be
`available on the device is the presentation expiry time.
`[0050]
`Inone or more aspects, the accessibility start time of
`the presentation can be defined as the contact start window in
`the contact window (in the case of multiple contact windows
`this can be the beginning time ofthe first contact window)
`since this is the earliest time at which the presentation can be
`accessible on the device 110. The availability end time can be
`given by the presentation expiry time, whether based on an
`expiry duration or an explicit expiry.
`[0051]
`In one or more aspects, in order to control access to
`the content, the CS 300 can provide the presentation expiry
`time with the content provided to the devices 110. For
`example, the CS client 310 can include the presentation
`expiry time in the presentation definition record sent to the
`device 110.
`
`In one or more aspects, in order to prevent access
`[0052]
`upon occurrence of the presentation expiry time, the presen-
`tations, which do not contain access control measures, can be
`deleted at the presentation expiry time. Additionally, in order
`to prevent accessprior to the contact window or upon occur-
`rence of the presentation expiry time,
`the presentation’s
`accessibility can be achieved by access control measures
`and/or digital rights management schemes, such as encryp-
`tion scheme.
`
`In one or more aspects, the presentation expiry time
`[0053]
`can be based on access control measures and/or digital rights
`management schemes, such as the encryption status of the
`presentations. For example, when contentis received, the CS
`300 can secure the presentation with a presentation key or
`keys utilizing any type of well-known cryptographic pro-
`cesses or schemes, for example symmetric or asymmetric
`encryption. Likewise, the CP 102 can secure the presentations
`and provide the presentation key or keys to the CS 300. Once
`encrypted, the CS 300 can provide the presentation key or
`keys to a Conditional Access Server (not shown). The CAS
`can secure the presentation key with an encryption key (ser-
`vice key) utilizing any type of well-known cryptographic
`processes or scheme, for example symmetric or asymmetric
`encryption. The CAScanbe locatedat the CP 102,the content
`provider network 104, or other location associated with the
`content and/or service. Once completed, the CAS can return
`the encrypted presentation key to the CS 300, which in-turn,
`can provide the encrypted presentation key with the secured
`presentation. Additionally, the CAS can provide the device 1
`10 with the service key at the time of subscription to the
`service. To access a secured presentation, the device 110 can
`utilize the service key to decrypt the encrypted presentation
`key andutilize the presentation key to access the presentation.
`[0054]
`Inone or more aspects, the CAS canutilize different
`service keys for different services. Additionally, the CAS can
`periodically change service keys for a service. As such, a
`particular service key can grant access to a presentation asso-
`ciated with a service for a specific period of time or “Epoch”.
`To enable access across different Epochs, the CS 300 can
`provide, to the CAS, the availability start time and expiry
`duration for the presentation along with the presentation key.
`The CAS maynot have Epochs that match the accessibility
`start timeor definedfor the entire time periodthe presentation
`is accessible when the request is made by the CS 300. To
`provide access for the entire accessibility time period, the
`CAScan return multiple encrypted presentation keys, each
`
`14
`
`14
`
`

`

`US 2009/0254708 Al
`
`Oct. 8, 2009
`
`encrypted presentation key secured with the service key for
`the Epochs defined in the CAS that the accessibility of the
`presentatio

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