Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DYNAMIC PRESENTATION OF AVAILABILITY OF TIME RESTRICTED CONTENT
Document Type and Number:
WIPO Patent Application WO/2017/046422
Kind Code:
A1
Abstract:
A method for dynamic presentation of availability of time restricted content. The method includes parsing metadata associated with a content streaming event and categorizing the content streaming event among a plurality of content availability categories based on a content availability time restriction in the metadata. The method further includes generating display data for an indicator of the content streaming event in a user interface in at least one of the plurality of content availability categories in accordance with the categorization, and re-categorizing, over time, the content streaming event and updates the display of the indicator among the plurality of content availability categories.

Inventors:
LAUNILA ANDREAS (SE)
ZHANG XIAO (SE)
KARLSSON RICKARD (SE)
BLASK SEBASTIAN (SE)
Application Number:
PCT/EP2016/072207
Publication Date:
March 23, 2017
Filing Date:
September 19, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MAGINE HOLDING AB (SE)
International Classes:
H04N21/262; H04N21/472; H04N21/488
Foreign References:
US8056105B22011-11-08
US7240100B12007-07-03
US20110158610A12011-06-30
Other References:
None
Attorney, Agent or Firm:
BRUNNER, John Michael Owen et al. (GB)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A method for dynamic presentation of availability of time restricted content comprising: parsing metadata associated with a content streaming event; categorizing the content streaming event among a plurality of content availability categories based on a content availability time restriction in the metadata; generating display data for an indicator of the content streaming event in a user interface in at least one of the plurality of content availability categories in accordance with the categorization; and re-categorizing, over time, the content streaming event and updating the display data for the indicator among the plurality of content availability categories.

2. The method of claim 1 further comprising updating the display data to move the indicator of the content streaming event among the plurality of content availability categories.

3. The method of claim 1 or claim 2 wherein the content streaming event is a video content streaming event.

4. The method of any one of the preceding claims wherein the plurality of content availability categories includes a category selected from the group consisting of a category indicative of future availability of the time restricted content, a category indicative of present availability for live streaming of the time restricted content, a category indicative of availability of the time restricted content for on-demand streaming, and a category indicative of an order in which the time restricted content is scheduled to be streamed.

5. The method of any one of the preceding claims wherein the content availability time restriction includes a time indicative of when the time restricted content is available for streaming.

6. The method of any one of the preceding claims wherein the content availability time restriction includes a time to live, TTL, indicator.

7. The method of claim 6 further comprising storing the content streaming event in a subscription database with the TTL indicator indicative of when the content streaming event will become unavailable.

8. The method of claim 7 further comprising removing the content streaming event from the subscription database when the TTL indicator expires.

9. The method of claim 7 or claim 8 further comprising updating the display data to remove the indicator of the content streaming event from the user interface when the TTL indicator expires.

10. The method of any one of the preceding claims further comprising receiving a request to add the indicator of the content streaming event to the user interface.

11. The method of any one of the preceding claims further comprising providing the display data to a user device for generating a user interface.

12. The method of any one of the preceding claims further comprising providing the display data to a user device for causing the display of the indicator of the content streaming event in a user interface.

13. The method of any one of the preceding claims wherein the method is performed by a content presentation server.

14. An apparatus for dynamic presentation of availability of time restricted content comprising: a processor; and memory, coupled to the processor, having stored thereon computer readable instructions, which when executed by the processor, perform the method of any one of claims 1 to 12.

15. A computer readable medium having instructions stored thereon, which when executed by a processor cause the processor to perform the method of any one of claims 1 to 12.

Description:
DYNAMIC PRESENTATION OF AVAILABILITY OF TIME

RESTRICTED CONTENT

TECHNICAL FIELD

[00011 The present disclosure is generally related to digital content distribution, and in particular to distribution of time restricted digital content.

BACKGROUND

[0002| Digital content distribution systems, such as digital video streaming services, provide access to content over a digital network medium. Depending upon content rights management settings and actual content availability from the content owner, such content may have various time restrictions, for instance relating to when the content will be available for live presentation and/or on-demand streaming. However, in such systems, users are unable to easily navigate available content and then access it based on a time view. For example, if content has already been aired live yet it is available in an on-demand scenario, a user cannot easily find this content without going to a specific on demand library. Additionally, users cannot select content in the future to watch once it becomes available in the appropriated timeslot and then follow that content through its viewing lifecycle beginning from the time the content is to be aired, to the time when it becomes available live, and when it become available via an on demand access.

BRIEF SUMMARY

10003] In one embodiment, a method for dynamic presentation of availability of time restricted content is provided. The method includes parsing metadata associated with a content streaming event and categorizing the content streaming event among a plurality of content availability categories based on a content availability time restriction in the metadata. The method further includes generating display data for an indicator of the content streaming event in a user interface in at least one of the plurality of content availability categories in accordance with the categorization, and re-categorizing, over time, the content streaming event and updates the display of the indicator among the plurality of content availability categories. The display data may be in the form of metadata. The method may be performed by a content presentation server and the content presentation server may cause the display of the indicator of the content streaming event in the user interface.

100041 In another embodiment, an apparatus for dynamic presentation of availability of time restricted content is provided. The apparatus includes a processor and memory, coupled to the processor, having stored thereon computer readable instructions, which when executed by the processor, perform the method of parsing metadata associated with a content streaming event and categorizing the content streaming event among a plurality of content availability categories based on a content availability time restriction in the metadata. The method performed by the processor further includes generating display data for an indicator of the content streaming event in a user interface in at least one of the plurality of content availability categories in accordance with the categorization and re-categorizing, over time, the content streaming event and updates the display of the indicator among the plurality of content availability categories. The processor may cause the display of the indicator of the content streaming event in the user interface.

[0005 J In various other embodiments, the display data is updated to move the indicator of the content streaming event among the plurality of content availability categories, where the content streaming event may be a video content streaming event. Additionally, embodiments of the content availability categories include a category indicative of future availability of the time restricted content, a category indicative of present availability for live streaming of the time restricted content, a category indicative of availability of the time restricted content for on-demand streaming, and a category indicative of an order in which the time restricted content is scheduled to be streamed. The content availability time restriction includes a time indicative of when the time restricted content is available for streaming. In one example, the content availability time restriction includes a time to live (TTL) indicator. The content streaming event may be stored in a subscription database with the TTL indicator that is indicative of when the content streaming event will become unavailable. In one embodiment, the content streaming event is removed from the subscription database when the TTL indicator expires. In yet another embodiment, the display data is updated to remove the indicator of the content streaming event from the user interface when the TTL indicator expires. In a further embodiment, a request is received to add the indicator of the content streaming event to the user interface. [0006] Additional features and advantages of an embodiment will be set forth in the description which follows, and in part will be apparent from the description. The objectives and other advantages of the present disclosure will be realized and attained by the structure particularly pointed out in the exemplary embodiments in the written description and claims hereof as well as the appended drawings. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the present disclosure as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

[0007J The accompanying drawings constitute a part of this specification and illustrate an embodiment of the present disclosure and together with the specification, explain the present disclosure.

[0008) Figure 1 is a diagram illustrating an embodiment of a system for dynamic presentation of availability of time restricted content.

100091 Figure 2 is a flow chart illustrating an embodiment of a method for dynamic presentation of availability of time restricted content by a content presentation server of Figure 1.

(00101 Figures 3-6 are diagrams illustrating an embodiment of a watch list user interface reflecting the lifecycle stages of time restricted content presented by the system of Figure 1.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

100111 The present disclosure is here described in detail with reference to embodiments illustrated in the drawings, which form a part here. Other embodiments may be used and/or other changes may be made without departing from the spirit or scope of the present disclosure. The illustrative embodiments described in the detailed description are not meant to be limiting of the subject matter presented here. One skilled in the art recognizes that numerous alternative components and embodiments may be substituted for the particular examples described herein and still fall within the scope of the present disclosure. [0012] In some embodiments, the present disclosure provides a technology for enabling a user to navigate available content and then access such content based on a time view, such as via following content as the content moves through various modes of access, lifecycle, or availability. For example, if the content has already been aired live and is available in an on-demand scenario, then the user can find this content whether with or without going to a specific on-demand library. Such technology can further enable the user to select the content in the future to watch once the content becomes available in an appropriated time slot and then follow that content through its viewing lifecycle beginning from a time the content is to be aired, to the time when the content becomes available live, and when the content become available via an on demand access, in any order. Such technology can comprise a graphical user interface configured to receive a request from a user device to add a desired content airing to the interface. If the desired content is available to the user device in accordance with a user's subscription and a time to live setting, then a content presentation server adds the desired airings to the interface. Then, the content presentation server receives a user request to display the interface with the added content, such as when the user follows a link to navigate to or via the interface. Next, the content presentation server assigns content airings based on airing time metadata to the one or more content lifecycle categories, such as upcoming, live, and available content lifecycle categories, and displays the content availability in the interface, such as a watch list for user selection. Upon passage of time, the content presentation server automatically updates the categorization of the content lifecycle displayed in the interface, such as a watch list, by moving the content availability categorization among the one or more content lifecycle categories, such as upcoming, live, and available (for on-demand streaming) categories.

[0013] Referring to Figure 1, an embodiment of a system 100 for dynamic presentation of availability of time restricted content is shown. In the illustrated embodiment, the system 100 is a television streaming system that provides a user device 102 with television content metadata (e.g., content name, description, and availability status) grouped into content lifecycle categories that reflect whether the availability of the requested content will be upcoming in the future, whether the requested content is presently available as a live stream, or whether the requested content is available as a "catch up" or on-demand content after the original live airing date, for example. As discussed in further detail below, the system 100 dynamically updates the content availability groupings presented via the user device 102 as the content enters different lifecycle stages with passage of time. This provides a user with a unified interface for content viewing irrespective of the content's viewing lifecycle status. Although in the illustrated embodiment the system 100 indicates availability of television video streaming content, those skilled in the art will realize that the present disclosure may be used to dynamically indicate availability of various time restricted digital content that is accessible via a network, including music, movie, and written content having associated accessibility time restrictions.

[0014] As shown in Figure 1 , a content presentation server 104 executes a plurality of services that enable dynamic presentation of content availability status to the user device 102, in accordance with the present disclosure. In various embodiments, the user device 102 is a mobile device, such as a smartphone or a tablet computer, a television set-top box or plug-in dongle type device, a smart television having a network input for streaming content, a desktop computer running a television streaming application, or the like. The user device 102 is connected to the system 100 for streaming time-restricted content via a network 103, which may be a wired or wireless local area network (LAN), wide area network (WAN), or the Internet.

[0015] In order to add the desired content airings (e.g., TV program content) to a user's watch- list, the user device 102 calls the watch-later service 108 through an Application Programming Interface (API) service 106 that interfaces with the operating system of the user device 102 and routes requests to and from the content presentation server 104. In an embodiment, the watch-later service 108 checks whether the requested content is included in the user's subscription, for instance by communicably interacting with a subscription database 110. If the desired content airing is included in the user's subscription, then the watch-later service 108 obtains the metadata for the desired airing and uses the obtained metadata to compute when the airing will become unavailable. For example, the watch-later service 108 can add the requested content to the user's subscription, but the user is not able to access the requested content if the requested content is not in the user's subscription. The watch-later service 108 then stores the airing in the subscription database 110 with a "time to live" (TTL) indicator set to when the airing will become unavailable. For instance, particular content may become unavailable upon expiration of a predetermined time period set in accordance with content rights or other digital rights management (DRM) configuration associated with such content. The subscription database 110 removes the airing once it becomes unavailable. Note that although the subscription database 110 stores subscription data informative of a plurality of subscriptions corresponding to a plurality of users, as described herein, in some embodiments, the subscription database 110 can additionally store other data, whether related or unrelated to the subscription data. For example, the subscription database 110 can store at least one of billing data corresponding to the subscriptions, authorization data corresponding to the subscriptions, or telemetry data corresponding a plurality of devices associated with the subscriptions. Further, note that the subscription database 110 can be of any type, such as a relational database, an in- memory database, an object database, or any other database type, whether distributed or undistributed.

10016] In order to display the user's watch list, referred to herein as "My Lineup," the user device 102 calls the API service 106 to forward a request to view the watch list to your-tv service 112. The your-tv service 112 requests airing metadata for the airings that the user has in their watch list from the watch-later service 108. The watch-later service 108 queries the subscription database 110, fetching the airing ids associated with the user's id. Preferably, only upcoming, currently live, or available for subsequent streaming airings are returned, as the TTL for inserted entries is set to expire once they become unavailable for subsequent catch-up (on-demand) streaming. The watch- later service 108 requests the content-airing service 114 for the metadata corresponding to the fetched airing ids and replies to the your-tv service 112 with such metadata.

[0017] To present the airings in the My Lineup watch list in accordance with their viewing lifecycle status, the your-tv service 112 groups the airings based on their respective metadata into three groups: Upcoming (content having a start-time set in the future), Live (content that is being currently aired), and Available (content presently available for on-demand streaming). The your- tv service 112 inserts the content groupings as subsections into the My Line Up user interface (e.g., FIG. 3), which is returned to the API service 106 that forwards it to the user device 102 for presentation to the user.

[0018| In an embodiment, the airing metadata includes, is representative of, or is informative of the following information. Note that such metadata is exemplarily illustrative and other types of metadata or metadata received from other types of computing systems is possible. For example, the metadata can be structural metadata or descriptive metadata. Also, for example, the metadata can be sourced or received from non-Unix run computers, such as Windows®, whether directly or indirectly. [001 j The metadata can be informative or representative of available! roml !nixtime. which describes when the airing becomes available for viewing (based on content rights), such as a time, which can be in any format, such as based on a 12 hour clock or a 24 hour clock and a date, which can be in any format, such as based on any calendar system or notation.

[0020] The metadata can be informative or representative of availableToUnixtime, which describes when the airing stops being available for viewing (based on content rights), such as a time, which can be in any format, such as based on a 12 hour clock or a 24 hour clock and a date, which can be in any format, such as based on any calendar system or notation.

(0021) The metadata can be informative or representative of a description, which describes a description of the airing, such as a plot summary or a title, in any notational or alphanumeric system, such as English, Russian, Arabic, Hebrew, Mandarin, or others.

[0022] The metadata can be informative or representative of an id, which describes an identifier for the airing, in any notational or alphanumeric system, such as English, Russian, Arabic, Hebrew, Mandarin, or others.

[0023] The metadata can be informative or representative of an image, which describes a URL to an image for the airing (either one assigned by an operator of system 100, or a fallback image). Note that URL is an example and other types of resource reference systems can be used.

[0024] The metadata can be informative or representative of a right, which describes a content right that should be applied to play the airing. Note that such content right can be part of any content right management system. For example, the content right can be a right to read the content.

[0025] The metadata can be informative or representative of a show identifier, which describes an identifier for the show that the airing belongs to (all airings belong to a show, even if it's just a show with one airing), in any notational or alphanumeric system, such as English, Russian, Arabic, Hebrew, Mandarin, or others.

10026] The metadata can be informative or representative of a startUnixtime, which describes when the airing begins airing), such as a time, which can be in any format, such as based on a 12 hour clock or a 24 hour clock and a date, which can be in any format, such as based on any calendar system or notation.

[0027J The metadata can be informative or representative of a stopUnixtime, which describes when the airing stops airing), such as a time, which can be in any format, such as based on a 12 hour clock or a 24 hour clock and a date, which can be in any format, such as based on any calendar system or notation.

10028] The metadata can be informative or representative of a stream S t art U n i x t i me . which describes when the first part of the stream for the airing will be available on the content distribution network (CDN), such as a time, which can be in any format, such as based on a 12 hour clock or a 24 hour clock and a date, which can be in any format, such as based on any calendar system or notation.

(0029J The metadata can be informative or representative of a title, which describes the title of the airing, in any notational or alphanumeric system, such as English, Russian, Arabic, Hebrew, Mandarin, or others.

10030] In an embodiment, channel metadata is informative or representative of an identifier, which describes the identifier for the channel, in any notational or alphanumeric system, such as English, Russian, Arabic, Hebrew, Mandarin, or others.

I0031J In an embodiment, channel metadata is informative or representative of a logoDark/logoLight, which describes URLs to the channel logos or graphical characteristics thereof, such as color, tint, hue, or others.

[0032] In an embodiment, channel metadata is informative or representative of a name, which describes a human-readable name of the channel, in any notational or alphanumeric system, such as English, Russian, Arabic, Hebrew, Mandarin, or others.

[0033] In an embodiment, channel metadata is informative or representative of a streamDelay, which describes an upper bound for a number of seconds from receiving a signal for the channel until the corresponding fragment should be available through the CDN under normal conditions, in any notational or alphanumeric system, such as English, Spanish, Russian, Persian, Arabic, Hebrew, Mandarin, Japanese, Korean, Hindi, or others.

[0034] In one embodiment, the content presentation server 104 sets a flag to indicate whether the user has added the show or the airing to a lineup. Other information for the airing (e.g., upcoming, live now, etc.) is determined from the metadata listed above. This flag is used by the presentation server 104 to toggle the indication of the availability of the show. For example, the flag may be configured to indicate whether the user can add the airing to their lineup or not.

100351 Although in the illustrated example, the services 106, 108, 112, 114 and the database 110 are shown as being part of the server 104, those skilled in the art will realize that one or more of the services 106, 108, 112, 114, as well as the database 110, may be associated with their dedicated servers, for example in a distributed server environment for load sharing, system redundancy, and performance optimization purposes.

[0036] Referring to Figure 2, an embodiment of a method for dynamic presentation of availability of time restricted content by the content presentation server 104 of Figure 1 is shown. In step 200, the content presentation server 104 receives a request from the user device 102 to add desired content airings to the My Lineup watch list interface. If the desired content is available to the user in accordance with the user's subscription and TTL settings, then the content presentation server 104 adds the desired airings to My Lineup, steps 202-204. In step 206, the content presentation server 104 receives a user request to display the My Lineup interface with the added content, such as when the user follows a link to navigate to the My Lineup screen depicted in Figure 3. Next, in steps 208-210, the content presentation server 104 assigns content airings based on airing time metadata to the Upcoming, Live, and Available content lifecycle categories, as discussed above, and displays the content availability in the My Lineup watch list for user selection. Upon passage of time, in step 212, the content presentation server 104 automatically updates the categorization of the content lifecycle displayed in the My Lineup watch list by moving the content availability categorization among the Upcoming, Live, and Available (for on-demand streaming) categories.

|0037J Referring to Figures 3-5, an embodiment of the My Lineup content watch list user interface reflecting different content lifecycle stages is shown. As shown in Figure 3, the My Lineup watch list 300 presents the desired content airing 302 in one of the content lifecycle categories 304-308 in accordance with the content's currently availability status. In particular, in Figure 3 the content 302, such as a program entitled "My Show" is displayed in the Upcoming category because the program is scheduled to be aired on Tuesday at 9am, while the current date and time 310, as shown in Figure 3, is Monday, 10:00 pm (22:00 hours). However, as time passes, for instance as shown in Figure 4 reflecting the current date and time as Tuesday, 9:05 am, the desired content 302 is moved to the Live Now category because it was scheduled to begin airing on Tuesday at 9:00 am and is still available as a live stream. In the illustrated embodiment, in addition to clicking on the content displayed under the Live Now category to initiate the viewing of the selected content, the user may select the Watch Now link 402 to navigate to a listing of all live and upcoming shows, where the user may select a live show for immediate viewing. Additionally, in the Watch Now program listing, the user may select an upcoming show to add to the My Lineup watch list. Finally, in Figure 5, after the content has aired live (e.g., when the current time 500 is Tuesday at 21 :10) it is automatically presented in the Available category for on-demand streaming as long as the content and the user's subscription include catch-up rights. As discussed above, the content 302 will remain in the Available category until the expiration of the time specified in the associated TTL indicator, after which time it will be automatically removed from the My Lineup interface.

(00381 In an another embodiment, as shown in Figure 6, in addition to the Upcoming, Live Now, and Available content availability categories described above, the My Lineup watch list includes a Watch Next category 600 which depicts multiple content airings added to a queue for immediate back-to-back streaming. In this case, the added content may simultaneously appear in both Watch Next and Upcoming categories.

(00391 The foregoing method descriptions and the process flow diagrams are provided merely as illustrative examples and are not intended to require or imply that the steps of the various embodiments must be performed in the order presented. As will be appreciated by one of skill in the art the steps in the foregoing embodiments may be performed in any order. Words such as "then," "next," etc. are not intended to limit the order of the steps; these words are simply used to guide the reader through the description of the methods. Although process flow diagrams may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination may correspond to a return of the function to the calling function or the main function.

[0040] The various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

(0041 J Embodiments implemented in computer software may be implemented in software, firmware, middleware, microcode, hardware description languages, or any combination thereof. A code segment or machine-executable instructions may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and/or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc. may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, network transmission, among others.

100421 The actual software code or specialized control hardware used to implement these systems and methods is not limiting of the present disclosure. Thus, the operation and behavior of the systems and methods were described without reference to the specific software code being understood that software and control hardware can be designed to implement the systems and methods based on the description herein.

100431 When implemented in software, the functions may be stored as one or more instructions or code on a non-transitory computer-readable or processor-readable storage medium. The steps of a method or algorithm disclosed herein may be embodied in a processor-executable software module which may reside on a computer-readable or processor-readable storage medium. A non-transitory computer-readable or processor-readable media includes both computer storage media and tangible storage media that facilitate transfer of a computer program from one place to another. A non-transitory processor-readable storage media may be any available media that may be accessed by a computer. By way of example, and not limitation, such non-transitory processor- readable media may comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other tangible storage medium that may be used to store desired program code in the form of instructions or data structures and that may be accessed by a computer or processor. Disk and disc, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media. Additionally, the operations of a method or algorithm may reside as one or any combination or set of codes and/or instructions on a non-transitory processor-readable medium and/or computer- readable medium, which may be incorporated into a computer program product.

100441 The preceding description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the present disclosure. Thus, the present disclosure is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the following claims and the principles and novel features disclosed herein.

[0045| While various aspects and embodiments have been disclosed, other aspects and embodiments are contemplated. The various aspects and embodiments disclosed are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.

(00461 The following is a non-exhaustive list of numbered embodiments which may be claimed: [0047] 1 . A method for dynamic presentation of availability of time restricted content comprising:

parsing, by a content presentation server, metadata associated with a content streaming event; categorizing, by the content presentation server, the content streaming event among a plurality of content availability categories based on a content availability time restriction in the metadata; and causing a display, by the content presentation server, of an indicator of the content streaming event in a user interface in at least one of the plurality of content availability categories in accordance with the categorization, wherein, the content presentation server re-categorizes, over time, the content streaming event and updates the display of the indicator among the plurality of content availability categories.

(0048) 2. The method of embodiment 1 wherein the content presentation server moves the indicator of the content streaming event among the plurality of content availability categories.

(004 J 3. The method of embodiment 1 wherein the content streamin event is a video content streaming event.

(00501 4. The method of embodiment 1 wherein the plurality of content availability categories includes a category selected from the group consisting of a category indicative of future availability of the time restricted content, a category indicative of present availability for live streaming of the time restricted content, a category indicative of availability of the time restricted content for on-demand streaming, and a category indicative of an order in which the time restricted content is scheduled to be streamed.

[0051] 5. The method of embodiment 1 wherein the content availability time restriction includes a time indicative of when the time restricted content is available for streaming. [0052] 6. The method of embodiment 1 wherein the content availability time restriction includes a time to live (TTL) indicator.

10053) 7. The method of embodiment 6 further comprising storing, by the content presentation server, the content streaming event in a subscription database with the TTL indicator indicative of when the content streaming event will become unavailable.

[0054J 8. The method of embodiment 7 further comprising removing, by the content presentation server, the content streaming event from the subscription database when the TTL indicator expires.

[0055] 9. The method of embodiment 7 further comprising removing, by the content presentation server, the indicator of the content streaming event from the user interface when the TTL indicator expires.

[0056] 10. The method of embodiment 1 further comprising receiving, by the content presentation server, a request to add the indicator of the content streaming event to the user interface.

|0057| 11. An apparatus for dynamic presentation of availability of time restricted content comprising:

a processor; memory, coupled to the processor, having stored thereon computer readable instructions executed by the processor, the instructions comprising: parsing, by the processor, metadata associated with a content streaming event; categorizing, by the processor, the content streaming event among a plurality of content availability categories based on a content availability time restriction in the metadata; and causing a display, by the processor, of an indicator of the content streaming event in a user interface in at least one of the plurality of content availability categories in accordance with the categorization, wherein, the processor re-categorizes, over time, the content streaming event and updates the display of the indicator among the plurality of content availability categories.

[0058] 12. The apparatus of embodiment 1 1 wherein the instructions further include moving the display of the indicator of the content streaming event among the plurality of content availability categories.

10059) 13. The apparatus of embodiment 1 1 wherein the content streaming event is a video content streaming event.

[0060] 14. The apparatus of embodiment 1 1 wherein the plurality of content availability categories includes a category selected from the group consisting of a category indicative of future availability of the time restricted content, a category indicative of present availability for live streaming of the time restricted content, a category indicative of availability of the time restricted content for on-demand streaming, and a category indicative of an order in which the time restricted content is scheduled to be streamed.

[00611 15. The apparatus of embodiment 1 1 wherein the content availability time restriction includes a time indicative of when the time restricted content is available for streaming.

10062 J 16. The apparatus of embodiment 11 wherein the content availability time restriction includes a time to live (TTL) indicator.

10063] 1 7. The apparatus of embodiment 16 wherein the instructions further include storing, by the processor, the content streaming event in a subscription database with the TTL indicator indicative of when the content streaming event will become unavailable.

[0064] 18. The apparatus of embodiment 17 wherein the instructions further include removing, by the processor, the content streaming event from the subscription database when the TTL indicator expires. [0065] 19. The apparatus of embodiment 17 wherein the instructions further include removing, by the processor, the indicator of the content streaming event from the user interface when the TTL indicator expires.

[0066] 20. The apparatus of embodiment 11 wherein the instructions further include receiving, by the processor, a request to add the indicator of the content streaming event to the user interface.