The present invention relates to a system for providing users access to content. The invention also relates to a method of providing users access to content and to a graphical user interface. This invention also relates to a system for determining whether a content item should be provided to user equipment, and an associated method.
According to one aspect of the invention, there is provided system for providing users access to audio/visual content, the system comprising means for enabling a user to browse available content items; and means for enabling a user to add particular content items to a user defined content item list, wherein content items that are added to the user defined content item list are subsequently accessible by the user via said user content item list.
Preferably, the system further comprises means for adding a series of related content items to the content item list, whereby future content items in said series are available via the content item list. More preferably, the series adding means is adapted to add all content items in a group of related series items to the content item list. In this way, a user may be provided with access to all episodes in a current programme series, as well as episodes in any future series of the programme, and/or any one-off special editions of the programme.
Preferably, at least some of the available content items are in the form of on-demand content items.
Preferably, at least some of the on-demand content items are based on previously broadcast content items available for access within a fixed time period following the broadcast of said content items.
Preferably, at least some of the available content items are in the form of live broadcast content items.
Preferably, the system further comprises a streaming media system for streaming live and/or on-demand content to users.
Preferably, the system further comprises means for adding a series of related content items to the content item list, whereby future content items in said series are available via the content item list.
Preferably, the series adding means is adapted to add all content items in a group of related series items to the content item list.
Preferably, the system further comprises means for generating a graphic indicium representative of each content item provided in the list, whereby said content items are accessed by selecting said graphic indicium.
Preferably, the system further comprises means for accessing the content items directly from the content item list.
Preferably, the access means is adapted to enable a user to play the selected content item in a streamed fashion, and/or download the content item for later playing.
Preferably, the adding means is adapted to create a link to the content item when the content item is added to the content item list.
Preferably, the link is an active link that enables a user to access the content item directly from the content item list.
Preferably, the system further comprises means for removing content items from the content item list.
Preferably, the system further comprises means for generating a graphic indicium representative of a series of related content items contained within the content item list.
Preferably, the selection of said graphic indicium relating to a series of related content items provides access to all available content items within the series, and/or access to a latest content item in the series.
Preferably, the system is connectable to a communication network, and comprises a plurality of remote terminals thereby to enable users to browse available content items from a plurality of remote locations.
Preferably, the system comprises a website accessible via a communication network, such as the Internet, and wherein the website provides a user interface to enable users to browse available content items.
Preferably, the system further comprises means for storing the content item lists for each user centrally, thereby to enable each user to access their respective content item lists from different remote locations.
Preferably, the system further comprises means for storing, for each available content item, the identity of a user that has added that particular content item to that user's content item list. Preferably, the user identity is stored together with a content item. Preferably, the user identity is stored together with information relating to the content item. Preferably, the user identity is based on a user login and/or personalisation information relating to a user's terminal and/or PC, such as the user's IP address or an HTTP cookie.
Preferably, the system further comprises means for reconstituting a particular user's content item list by identifying those content items having the particular user's identity associated therewith.
Preferably, the system further comprises means for generating a graphical representation of the content item list for display to a user. Preferably, the generating means is adapted to display the content items in the form of a carousel.
Preferably, the means for enabling a user to browse available content items comprises a graphical user interface, and wherein the system further comprises means for generating a signal for displaying content items added to a user content item list within a specified location within the graphical user interface. Preferably, the location is in the form of window that is preferably accessible from all screens and/or pages provided by the graphical user interface. More preferably, the window is collapsible, and provided in the form of a toolbar widget in its collapsed state.
Preferably, the means for enabling a user to add content items to the content item list is adapted to add any available content items that are provided on the graphical user interface to the content item list.
Preferably, the system further comprises means for notifying a user that a particular content item within the list is about to expire.
Preferably, further comprising means for managing the content item list.
Preferably, the system further comprises means for notifying a user that new content items are available, for example, a latest episode in a series.
Preferably, the system further comprises means for adding recently played content items to the content item list.
Preferably, the system further comprises means for automatically arranging the content items in the content item list.
Preferably, the system further comprises means for removing unavailable and/or expired content items from the content item list without intervention from a user.
According to another aspect of the invention, there is provided a system for providing users access to audio/visual content, the system comprising means for enabling a user to sign in to the system, means for receiving information relating to an available content item from a signed-in user, and means for storing the information relating to the content item for transmission to at least one other signed-in user.
According to a further aspect of the invention, there is provided a system as herein described, further comprising means for enabling a user to sign in to the system, means for receiving information relating to an available content item from a signed-in user, and means for storing the information relating to the content item for transmission to at least one other signed-in user.
Preferably, the system further comprises means for transmitting said information to at least one other signed-in user.
Preferably, the receiving means is adapted to receive a recommendation relating to a content item from a user. More preferably, the receiving means is adapted to receive a user comment relating to a content item from a user.
Preferably, the system further comprises means for prompting the user to input a comment relating to a content item upon receipt of a user recommendation for said content item.
Preferably, the system further comprises means for displaying a content indicium in respect of each available content item, together with a control indicium which provides a user with an option to recommend said content item.
Preferably, the system is connectable to a communication network, such as the Internet, and further comprises an interface for connecting the system to at least one social networking site.
Preferably, the system further comprises means for identifying a signed-in user's user connections on a social networking site that are themselves also signed-in users thereby to create a social network on the system for the signed-in user.
Preferably, the system further comprises means for broadcasting information relating to content items received from a signed-in user to all other users in said user's system social network.
Preferably, the social networking site includes at least one or more of the following social networking sites: Facebook; Bebo; and twitter.
Preferably, the system further comprises means for displaying to a signed-in user information relating to content items received from other signed-in users. Preferably, the information is displayed adjacent to an available content item. Preferably, the information is displayed together with an identity of the user from which said information was received.
Preferably, the system comprises a graphical user interface, and wherein the display means is adapted to display the information relating to content items received from other signed-in users within a predefined location within the graphical user interface.
According to another aspect of the invention, there is provided a system as herein described, further comprising means for enabling a plurality of users to connect to the system, means for receiving a message from at least one user connected to the system, and means for transmitting said message to at least one further user connected to the system.
According to a further aspect of the invention, there is provided a system for providing users access to audio/visual content, the system comprising means for enabling a plurality of users to connect to the system, (optionally) means for enabling users to browse available content items; means for receiving a message from at least one user connected to the system; and means for transmitting said message to at least one further user connected to the system.
According to another aspect of the invention, there is provided a system as herein described, further comprising means for enabling users to synchronise consumption of available content items.
According to a further aspect of the invention, there is provided a system for providing users access to audio/visual content, the system comprising means for enabling a plurality of users to connect to the system; (optionally) means for enabling users to browse available content items; and means for enabling connected users to synchronise consumption of available content items.
Preferably, the system further comprises means for enabling users to consume at least certain of the available content items in an on-demand fashion. In this way a synchronised video-on-demand (VOD) system can be provided.
Preferably, the system further comprises means for enabling a connected user to send a synchronisation invitation to one or more other connected users to consume a particular content item.
Preferably, the system further comprises means for enabling a user to request access to a particular content item, and more preferably a particular location within said content item.
Preferably, the system is connectable to a communications network, such as the Internet, and wherein each of the users are connectable to the system via user terminal equipment connectable to said communications network.
Preferably, the terminal equipment is in the form of at least one of the following devices: a personal computer; an Internet television; a laptop; a PDA; a tablet computing device; and a mobile telephone.
Preferably, the means for enabling users to browse available content items includes a website accessible via the Internet.
Preferably, the system further comprises a signing in module, thereby to enable users to sign in to the system.
Preferably, the system further comprises means for connecting at least two users to one another thereby to form at least one user group.
Preferably, the connecting means is adapted to connect a new user to one or more existing user groups.
Preferably, the system further comprises means for enabling a user to connect to at least one other user thereby to form a user group.
Preferably, the system further comprises means for enabling a user to invite other users to sign in to the system.
Preferably, the system further comprises means for enabling a user to transmit a message to a particular user and/or to all the users within one or more user groups.
Preferably, the system further comprises means for enabling a user to broadcast a message to a plurality of users.
Preferably, the receiving means is adapted to receive text-based messages.
Preferably, the system comprises an instant messaging module, preferably in the form of MSN Messenger or Windows Live Messenger, which is adapted to handle the receipt and transmission of instant messages between users.
Preferably, the system further comprises a media player for enabling users to consume audio/visual content items.
Preferably, the system further comprises means for publishing information relating to a content item that has been consumed and/or accessed by a user to one or more other users.
Preferably, the publishing means is adapted to publish information relating to a content item that is presently being consumed by a user to one or more other users. In this way a user may be able to see what content items are currently being watched by other users in the user's user group.
Preferably, said information is only made available to a restricted set of users.
Preferably, said information is only made available to other users within a user's user group or groups, and preferably only to selected users within said group or groups.
Preferably, said information includes the title of the content item.
Preferably, said information provides an indication of a user's progress though said content item.
Preferably, said information provides a link to said content item. More preferably, the information includes an index to a user's present location within the content item. In this way a user may be able to access more easily the content items being consumed by other users within the user's user groups.
Preferably, the system further comprises means for streaming available content items to users. More preferably, the streaming means is adapted to stream on demand and/or live-broadcast content.
In the case of an on demand content item the system provides a link to each user's current position within the content item being consumed by that user, so as to enable another user to join the user at that same point within the content item. In the case of live-broadcast content items, the system switches the joining user's media player to the live-broadcast content item currently being watched by the user.
Preferably, the system further comprises means for enabling one or more other users to access said content item being consumed by said user via said link. In this way users may be able to synchronise their consumption of a particular content item.
Preferably, the system further comprises means for streaming a particular content item to at least two users at a time specified by those users, thereby to enable synchronised viewing of a particular content item.
Preferably, the system further comprises means for transmitting, together with each user message, information relating a content item currently being consumed by that user. In this way a user may be able to invite one or more other users to consume content items together with said user.
Preferably, the information includes a link to said content item.
Preferably, the information includes an index to a user's present location within the content item.
Preferably, the system further comprises a graphical user interface for displaying available content items, and means for generating a display window for displaying to a user one or more user groups to which said user is connected.
Preferably, the generating means is adapted to display the window on all screens or pages of the graphical user interface, and preferably alongside a media player window.
Preferably, the generating means is adapted to generate a display which includes a list, preferably in graphical form, of all the users within a user's user group.
Preferably, the generating means is adapted to generate a display which includes information relating to the content item currently being consumed by each user.
Preferably, the information includes at least one of the following: the title of the content item; a programme identifier for the content item; a link to the content item; user comments relating to the content item; and a progress bar indicating a user's progress though the content item.
Preferably, the generating means is adapted to generate a graphical indication, preferably in the form of a selectable button, which provides a link to the content item currently being consumed. More preferably, the selectable button provides an index to a user's present location within the content item.
Preferably, the generating means is adapted to generate a display which includes the messages transmitted by each user in the displayed user group.
According to a further aspect of the invention, there is provided a system for providing users access to audio/visual content, the system comprising means for enabling a user to browse available content items, means for generating an output representing a display window for displaying a set of categories thereby enabling a user to access said content items via said categories, and means for enabling a user to select one or more categories from the set of categories for inclusion in a user defined category display window, thereby to create a customised category display.
According to a further aspect of the invention, there is provided a system herein described, further comprising means for enabling a user to browse available content items, means for generating an output representing a display window for displaying a set of categories thereby enabling a user to access said content items via said categories, and means for enabling a user to select one or more categories from the set of categories for inclusion in a user defined category display window, thereby to create a customised category display.
Preferably, the system further comprises a satellite or pop-out media player for playing media content items, and means for providing a user access to at least some of the functionality of the system directly from the satellite media player.
Preferably, the system further comprises means for generating on the satellite player a set of graphic indicia for enabling a user to access said system functionality, and wherein the size and placement of said graphic indicia is optimised to take up as little display area as is possible.
Live and on-Demand TV/Radio Channels
According to a further aspect of the invention, there is provided a system for providing a user with access to content items, the system comprising: means for generating a graphical element, preferably associated with a content provider; means for generating an array of graphical elements, preferably associated with content items provided by the content provider; means for receiving input from the user representing selection of a graphical element; and means for updating the array of graphical elements in dependence on the selection of a graphical element; wherein at least one position within the array represents an available content item first available in the past, and at least one position within the array represents an available content item not first available in the past.
According to a yet further aspect of the invention, there is provided a graphical user interface for providing a user with access to content items, the interface comprising: means for generating a graphical element, preferably associated with a content provider; means for generating an array of graphical elements, preferably associated with content items provided by the content provider; means for receiving input from the user representing selection of a graphical element; and means for updating the array of graphical elements in dependence on the selection of a graphical element; wherein at least one position within the array represents an available content item first available in the past, and at least one position within the array represents an available content item not first available in the past.
Preferably, the means for generating the array of graphical elements is further adapted to arrange the array of graphical elements such that the position of a graphical element within the array represents the time of first availability of the associated content item.
Preferably, the means for generating the array of graphical elements is adapted to generate a subset of the array of graphical elements.
Preferably, the subset of the array of graphical elements comprises graphical elements associated with content items first available today.
Preferably, the subset of the array of graphical elements comprises graphical elements associated with content items first available on a day preceding today.
Preferably, the subset of the array of graphical elements comprises graphical elements associated with content items first available on a day following today.
Preferably, the subset of the array of graphical elements comprises graphical elements associated with content items first available during part of a day.
Preferably, the system further comprises means for generating a further graphical element associated with a presently available content item in dependence on the selection of a graphical element.
Preferably, the system further comprises means for providing access to a content item in dependence on the selection of a graphical element.
Preferably, this system further comprises: means for receiving input from the user representing a customisation request; means for generating a content provider identifier in dependence on the customisation request received from the user; and wherein the means for generating a graphical element is adapted to generate a graphical element in dependence on a content provider identifier.
According to a yet further aspect of the invention, there is provided a graphical user interface implementing the system as herein described, further comprising: means for receiving input from the user representing a customisation request; means for generating a content provider identifier in dependence on the customisation request received from the user; and wherein the means for generating a graphical element is adapted to generate a graphical element in dependence on a content provider identifier.
Preferably, the customisation request received from the user comprises a geographical location identifier.
Preferably, the means for generating a content provider identifier is adapted to delete a content provider identifier set in dependence on the customisation request received from the user.
Preferably, the means for generating a graphical element is adapted to arrange the generated graphical element in dependence on the customisation request received from the user.
According to a further aspect of the invention, there is provided a system for providing a user with access to a media content stream, the system comprising: means for streaming media content to the user; means for generating a plurality of graphical elements, each graphical element associated with a media content stream; and means for receiving input from the user representing first and second selection modes of the graphical elements; wherein i) for a first selection mode, the generating means is adapted to generate information relating to the media content stream associated with said selected graphical element; and ii) for a second selection mode, the streaming means is adapted to stream the media content associated with said selected graphical element to the user.
Preferably, the information further includes information relating to a subsequent media content stream associated with said selected graphical element. Preferably, the first selection mode comprises the user indicating a graphical element. Preferably, the second selection mode comprises the user activating a graphical element.
According to a further aspect of the present invention, there is provided a graphical user interface for providing a user with access to content items, the interface comprising: means for generating a graphical element, preferably associated with a content provider; means for generating an array of graphical elements, preferably associated with content items provided by the content provider; means for receiving input from the user representing selection of a graphical element; and means for updating the array of graphical elements in dependence on the selection of a graphical element; wherein at least one position within the array represents an available content item first available in the past, and at least one position within the array represents an available content item not first available in the past.
According to another aspect of the invention, there is provided a graphical user interface for providing a user with access to content, the interface comprising: means for generating output representing a content selection region comprising a plurality of content panes (e.g. so called ‘drawers’), each content pane being configured for displaying at least one content indicium representing a respective item of content; means for detecting selection of a content pane by a user; and means for expanding or contracting the selected content pane, in response to the selection, whilst respectively contracting or expanding at least one other content pane, whereby when the selected content pane expands it expands into an area of the content selection region made available by contraction of the at least one other content pane, and when the selected content pane contracts the at least one other content pane expands into an area of the content selection region made available by contraction of the selected content pane.
Beneficially, this harmonious contraction and expansion of the different content panes, potentially allows a greater number of content items to be represented in a smaller area of screen real estate than would otherwise be the case. The harmonious contraction and expansion also allows a greater number of content panes (each possibly representing content items selected based on a different respective content selection criteria) to be represented in a smaller area of screen real estate than would otherwise be the case. Advantageously, therefore, the content selection region occupies substantially the same size area of a display after the expansion or contraction as before the expansion or contraction.
Each content pane may be provided with an open state in which the content pane is maximally expanded, a closed state in which the content pane is maximally contracted, and possibly an intermediate state in which the content pane is partially expanded. In accordance with this, the means for expanding or contracting the selected content pane may be operable to expand the selected content pane to the open state when the selected content pane is selected in the closed state or the intermediate state and/or may be operable to contract the selected content pane to the intermediate state when the selected content pane is selected in the open state. Similarly, means for expanding or contracting the selected content pane may be operable to contract the at least one other content pane to the closed state when the selected content pane is selected in the closed state or the intermediate state and/or may be operable to expand the at least one other content pane to the intermediate state from the closed state when the selected content pane is selected in the open state.
Advantageously, the provision of the intermediate state (or states) potentially allows a user to have a ‘snapshot’ of the content in an associated drawer without it being fully open (e.g. in an analogous manner to a physical chest of draws in which a draw can be opened partially to see the type of things that are in it before the draw is fully opened to reveal more).
Each content pane may be configured for displaying content indicia representing items of content from an associated content subset. The output generating means may be operable to generate output representing a navigation indicium for each content pane for use by the user to navigate the items of content in the associated content subset. The graphical user interface may further comprise means for detecting utilisation of the navigation indicium, by the user, and for navigating the items of content accordingly.
Each content pane may be configured for displaying the content indicia in a sequence of pages. The navigation indicium may be configured for use by the user to navigate to an undisplayed page in the sequence of pages and/or may be configured for use by a user to navigate to the next page in the sequence of the pages or to the previous page in the sequence of the pages and/or may be configured for use by a user to navigate directly to a page which is not the next page or the previous page in the sequence of the pages.
The output generating means may by operable to generate output representing the navigation indicium for a content pane when the content subset associated with that content pane includes at least one item of content for which a content indicium is not already being displayed. The output generating means may be operable not to generate output representing the navigation indicium for a content pane when content indicia for every item of content (or possibly a predetermined proportion of all the content items) in the content subset associated with that content pane is already being displayed. The output generating means may be operable to generate output representing the navigation indicium for a content pane when that content pane is in the open state. The output generating means may be operable not to generate output representing the navigation indicium for a content pane when that content pane is in the intermediate state or the closed state.
The provision of the navigation indicium, as appropriate, according to circumstances, potentially allows a user to be able to see substantially instantaneously whether or not there are additional content items in the content subset to which the content pane being viewed relates. Where the navigation indicium is only displayed when the pane is open this helps to avoid the potential confusion that might arise if the navigation indicium was simultaneously displayed for different drawers.
The output generating means may be operable to attempt to generate output representing a first of the content panes substantially independently of an attempt to generate output representing another of the content panes, whereby, for example, if the attempt to generate output representing the first of the content panes is unsuccessful, the attempt to generate output representing the other of the content panes may be substantially unaffected.
The output generating means may be operable to attempt to generate output representing a first of the content panes in harmony with an attempt to generate output representing another of the content panes, whereby, for example, if the attempt to generate output representing the first of the content panes is unsuccessful and the attempt to generate output representing the other of the content panes is successful, the output generating means may be operable to initiate expansion of the other of the content panes into an area of the content selection region which would otherwise be occupied by the first of the content panes.
The output generating means may be operable to generate output representing content indicia in each content pane, which content indicia represent items of content from a content subset associated with the content pane. Each content item in a respective content subset may be selected expressly for the user, a group of users, and/or all users, based on a popularity of the content item with other users, based on a recommendation of the content item by at least one other user, based on a usage history associated with the user, or with apparatus being used by the user to access the graphical user interface, and/or based on a decision to promote the item to all users (or a predefined group of users) of the graphical user interface.
The output generating means may be further operable to generate output representing one or more of the following: a content guide region comprising, for example, at least one channel indicium representing a respective channel associated with a particular content subset for use by the user to browse to at least one content indicium representing an item of content associated with the respective channel; and/or a content browser region comprising, for example, at least one category indicium representing a respective category of content for use by the user to browse to at least one content indicium representing an item of content in the respective category.
The graphical user interface may further comprise: means for determining if predetermined information relating to the user is available; wherein the output generating means may be operable: (i) to generate output representing a first content pane arrangement comprising at least one content pane when the predetermined information relating to the user is determined to be unavailable; and (ii) to generate output representing a second content pane arrangement comprising a plurality of content panes when the predetermined information relating to the user is determined to be available; wherein the second arrangement may include each content pane of the first arrangement and at least one further content pane.
According to an aspect of the invention there is provided a graphical user interface for providing a user with access to content, the interface comprising: means for generating output representing a content selection region comprising a plurality of content panes to the user, each content pane being configured for displaying at least one content indicium representing a respective item of content; and means for determining if predetermined information relating to the user is available; wherein the output generating means is operable: (i) to generate output representing a first content pane arrangement comprising at least one content pane when the predetermined information relating to the user is determined to be unavailable; and (ii) to generate output representing a second content pane arrangement comprising a plurality of content panes when the predetermined information relating to the user is determined to be available; wherein the second arrangement includes each content pane of the first arrangement and at least one further content pane.
Providing additional drawers of content to a user who has previously used the user interface beneficially has the potential to allow a tailored content selection to be provided to the user (e.g. based on their prior use or on recommendations made by their friends) in a relatively clear manner, without significantly compromising the clarity with which general content items selected for all users are presented.
The predetermined information relating to the user may comprise information stored in a file (for example a cookie) stored on a storage device of apparatus used by the user to access the graphical user interface. The predetermined information relating to the user may comprise registration information for the user.
The graphical user interface may comprise means for receiving log-in information from the user and the determining means may be operable to determine if the registration information is available based on the log-in information entered by the user.
The at least one further content pane may comprise a content pane for displaying at least one content indicium representing an item of content from a user related content subset, which user related content subset may comprise content items selected in dependence on the user to which the predetermined information relates.
The user related content subset may comprise content items selected in dependence on a content history, which content history may identify content items previously accessed by the user to which the predetermined information relates. The content items selected in dependence on a content history may comprise at least one content item selected in dependence on at least one of: a content category (for example, children's, comedy, drama, entertainment, factual, films, lifestyle, music, news, religion/ethics, sport, special interest or the like) associated with a content item previously accessed by the user; a genre associated with a content item previously accessed by the user; a media channel associated with a content item previously accessed by the user; a content series (for example, a series of episodes) associated with a content item (for example, an episode from the series) previously accessed by the user; and/or a content type (for example, film, television, radio, music, or the like) associated with a content item previously accessed by the user.
The user related content subset may comprise content items selected in dependence on a geographical location associated with the user to which the predetermined information relates. The user related content subset may comprise content items selected in dependence on an interest area or genre chosen by the user to which the predetermined information relates.
The at least one further content pane may comprise a content pane for displaying at least one content indicium representing an item of content from a user recommended content subset, which user recommended content subset may comprise content items recommended by other users of the graphical user interface.
The first content pane arrangement may comprise a content pane for displaying at least one content indicium representing an item of content from a popular content subset, which popular content subset may comprise content items selected in dependence on their popularity with other users.
The first content pane arrangement may comprise a content pane comprising at least one content indicium representing an item of content from a featured content subset, which featured content subset may comprise content items selected for promotion to users of the graphical user interface.
The graphical user interface may further comprise: means for detecting movement of a pointer, relative to the graphical user interface, over the at least one content indicium; wherein the output generating means may be operable to generate output, potentially in response to detecting the movement of a pointer over the at least one content indicium, representing a plurality of control indicia, each control indicium potentially representing a respective option for handling the item of content represented by the content indicium over which the pointer has moved.
According to an aspect of the invention there is provided a graphical user interface for providing a user with access to content, the interface comprising: means for generating output representing at least one content indicium representing an item of content; and means for detecting movement of a pointer, relative to the graphical user interface, over the at least one content indicium; wherein the output generating means is operable to generate output, in response to detecting the movement of a pointer over the at least one content indicium, representing a plurality of control indicia, each control indicium representing a respective option for handling the item of content represented by the content indicium over which the pointer has moved.
Providing options (e.g. play, download, recommend, favourite) when a user ‘hovers’ over a content indicium beneficially allows users the possibility of navigating to a desired control option for any of the potentially many content items represented in their display relatively easily and without an over-proliferation of control options for the many items of content potentially being represented in a relatively small area of screen real estate.
The options may include at least one of: an option for playing the content; an option for adding the content to a list of favourites; on option for recommending the content; and/or an option for downloading the content.
The output generating means may be configured for modifying the control indicium displayed for at least one of the options, preferably in dependence on whether the at least one option has previously been used by the user for handling the item of content represented by the content indicium over which the pointer has moved.
The output generating means may be configured for modifying the control indicium displayed for at least one of the options, preferably in dependence on whether the at least one option is available for the item of content represented by the content indicium over which the pointer has moved.
The output generating means may be configured for modifying the control indicium displayed for at least one of the options, preferably in dependence on the size of the content indicium over which the pointer has moved.
The detecting means may be operable to detect movement of the pointer, relative to the graphical user interface, over the at least one control indicium.
The output generating means may be configured for modifying the control indicium displayed for the at least one option, preferably on the detection of movement of the pointer over the control indicium for the at least one option.
The means for generating output representing at least one content indicium representing an item of content may be operable to generate output representing at least one of the following: a content selection region preferably comprising a plurality of content panes, each content pane preferably being configured for displaying at least one content indicium representing a respective item of content expressly selected for recommendation/promotion to the user, a group of users and/or all users; a content guide region preferably comprising at least one channel indicium preferably representing a respective channel associated with a particular content subset for use by the user to browse to at least one content indicium representing an item of content associated with the respective channel; and/or a content browser region preferably comprising at least one category indicium preferably representing a respective category of content for use by the user to browse to at least one content indicium representing an item of content in the respective category.
According to an aspect of the invention there is provided a method for providing a user with access to content, the method comprising: generating output representing a content selection region comprising a plurality of content panes, each content pane being configured for displaying at least one content indicium representing a respective item of content; detecting selection of a content pane by a user; and expanding or contracting the selected content pane, in response to the selection, whilst respectively contracting or expanding at least one other content pane, whereby when the selected content pane expands it expands into an area of the content selection region made available by contraction of the at least one other content pane, and when the selected content pane contracts the at least one other content pane expands into an area of the content selection region made available by contraction of the selected content pane.
According to an aspect of the invention there is provided a system for providing a user with access to content, the interface comprising: means for generating output representing a content selection region comprising a plurality of content panes, each content pane being configured for displaying at least one content indicium representing a respective item of content; means for detecting selection of a content pane by a user; and means for expanding or contracting the selected content pane, in response to the selection, whilst respectively contracting or expanding at least one other content pane, whereby when the selected content pane expands it expands into an area of the content selection region made available by contraction of the at least one other content pane, and when the selected content pane contracts the at least one other content pane expands into an area of the content selection region made available by contraction of the selected content pane.
A system for providing a user with access to content, the system comprising: means for generating output representing a content selection region comprising a plurality of content panes to the user, each content pane being configured for displaying at least one content indicium representing a respective item of content; and means for determining if predetermined information relating to the user is available; wherein the output generating means is operable: (i) to generate output representing a first content pane arrangement comprising at least one content pane when said predetermined information relating to the user is determined to be unavailable; and (ii) to generate output representing a second content pane arrangement comprising a plurality of content panes when said predetermined information relating to the user is determined to be available; wherein the second arrangement includes each content pane of the first arrangement and at least one further content pane.
A method of providing a user with access to content, the method comprising: generating output representing a content selection region comprising a plurality of content panes to the user, each content pane being configured for displaying at least one content indicium representing a respective item of content; and determining if predetermined information relating to the user is available; wherein the output generating step comprises: (i) generating output representing a first content pane arrangement comprising at least one content pane when said predetermined information relating to the user is determined to be unavailable; and (ii) generating output representing a second content pane arrangement comprising a plurality of content panes when said predetermined information relating to the user is determined to be available; wherein the second arrangement includes each content pane of the first arrangement and at least one further content pane.
According to another aspect of the invention, there is provided a system for providing a user with access to content, the system comprising: means for generating output representing at least one content indicium representing an item of content; and means for detecting movement of a pointer, relative to said graphical user interface, over said at least one content indicium; wherein the output generating means is operable to generate output, in response to detecting said movement of a pointer over said at least one content indicium, representing a plurality of control indicia, each control indicium representing a respective option for handling the item of content represented by the content indicium over which said pointer has moved.
According to a further aspect of the invention, there is provided a method of providing a user with access to content, the method comprising: generating output representing at least one content indicium representing an item of content; and detecting movement of a pointer, relative to said graphical user interface, over said at least one content indicium; wherein the output generating step comprises generating output, in response to detecting said movement of a pointer over said at least one content indicium, representing a plurality of control indicia, each control indicium representing a respective option for handling the item of content represented by the content indicium over which said pointer has moved.
According to yet a further aspect of the invention, there is provided a system for determining whether a content item should be provided to user equipment, the system comprising: means for receiving, at a time and/or date, a download request from the user equipment to download the content item; means for determining if the download request is to be allowed or denied in dependence on a traffic management requirement for the time and/or date at which the download request is received; and means for providing, to the user equipment, information identifying a download location of the content item when it is determined that the download request is to be allowed.
The determining means may be operable to determine a transmission time and/or date for the content item at which the content item is to be (or has been) transmitted.
The providing means may be operable to provide, to the user equipment, information identifying a download location of the content item preferably if the time and/or date at which the download request is received is within a predetermined time period (for example, a ‘grace’ period) prior to the transmission time and/or date.
The predetermined time period may be reconfigurable and, may be stored in at least one of a key-value store, a database, and/or the like, and may be configured with a default value (e.g. three hours).
The providing means may be operable to provide, to the user equipment, information identifying a download location of the content item preferably if the time and/or date at which the download request is received is at or after the transmission time and/or date.
The system may further comprise means for receiving a request to play the content item (which may be a request for an appropriate licence to allow the item to be played) from the user equipment, and may comprise means for issuing a licence for playing the content item, to the user equipment, preferably if the time and/or date at which the request to play the content item is received is after (for example a predetermined period such as a duration of the content item after) the transmission time and/or date.
The providing means may be operable to provide information indicating that the download request has been denied preferably when it is determined that the download request is to be denied. The information indicating that the download request has been denied may comprise an indicator that the download request has been denied as the result of limited bandwidth availability. The information indicating that the download request has been denied may comprise information indicating a time and/or date for the user equipment to retry requesting download of the content item. The information indicating a time and/or date for the user equipment to retry requesting download of the content item may comprise a time stamp (for example, an ISO 8601 timestamp). The time stamp may indicate a standardised time and/or date (for example, a standardised time and/or date based on Universal Coordinated Time (UTC)). The time and/or date for the user equipment to retry requesting download of the content item may be at a pre-determined minimum time period (or time ‘offset’) after the time and/or date of the download request. The pre-determined minimum time period may be stored in at least one of a key-value store, a database, and/or the like, and may be configured with a default value (e.g. 60 minutes), and may be limited to a minimum value (e.g. 5 minutes). The time and/or date for the user equipment to retry requesting download of the content item may be a time at which download is potentially allowable based on the traffic management requirement for the time and/or date for the user equipment to retry requesting download.
The traffic management requirement may be determined for a predetermined granularity period including the time and/or date at which the download request is received. The predetermined granularity period may remain substantially the same period (e.g. 15 minutes) regardless of the time and/or date at which the download request is received. The predetermined granularity period may vary (e.g. between 5 minutes and 30 minutes) in dependence on the time and/or date at which the download request is received.
The traffic management requirement for the time and/or date may be represented by a weighting factor for the time and/or date at which the download request is received. The weighting factors for various time and/or dates may be stored in at least one of a dedicated document, a value in a key-value store, a database, and/or the like. The weighting factors for various time and/or dates may be calculated using a predetermined algorithm for determining them in dependence on demand at a particular time and/or date to which the respective weighting factor relates. The determining means may be operable to determine that the download request should be denied if the weighting factor is equal to a predetermined number (for example zero, a number greater than 100, any number not in a predetermined range representing a traffic management requirement at which the download is potentially allowable, or the like).
The determining means may be operable to generate a random (or pseudo-random) number (for example, between 1 and 100), may be operable to determine that the download request should be allowed if the random (or pseudo-random) number does not exceed the weighting factor, and/may be operable to determine that the download request should be denied if the random (or pseudo-random) number exceeds the weighting factor.
The weighting factor may comprise a percentage value, which value may indicate a likelihood that a download request will succeed. The determining means may be operable to determine if the download request is to be allowed or denied based on a traffic management formula.
The determining means may be operable to determine if the download request is valid or invalid, and the providing means may be operable to provide information to the user equipment indicating that an error condition has arisen if the download request is determined to be invalid.
The determining means may be operable to determine if the requested content item is available or unavailable, and the providing means may be operable to provide information to the user equipment indicating that an error condition has arisen if the requested content item is determined to be unavailable.
According to a further aspect of the invention, there is provided a method of determining whether a content item should be provided to user equipment, the method comprising: receiving, at a time and/or date, a download request from the user equipment to download the content item; determining if the download request is to be allowed or denied in dependence on a traffic management requirement for the time and/or date at which the download request is received; and providing, to the user equipment, information identifying a download location of the content item when it is determined that the download request is to be allowed.
Further features of the invention are characterised by the dependent claims.
The invention extends to methods and/or apparatus substantially as herein described with reference to the accompanying drawings.
The invention also provides a computer program and a computer program product for carrying out any of the methods described herein and/or for embodying any of the apparatus features described herein, and a computer readable medium having stored thereon a program for carrying out any of the methods described herein and/or for embodying any of the apparatus features described herein.
The invention also provides a signal embodying a computer program for carrying out any of the methods described herein and/or for embodying any of the apparatus features described herein, a method of transmitting such a signal, and a computer product having an operating system which supports a computer program for carrying out any of the methods described herein and/or for embodying any of the apparatus features described herein.
Any apparatus feature as described herein may also be provided as a method feature, and vice versa. As used herein, means plus function features may be expressed alternatively in terms of their corresponding structure, such as a suitably programmed processor and associated memory.
Any feature in one aspect of the invention may be applied to other aspects of the invention, in any appropriate combination. In particular, method aspects may be applied to apparatus aspects, and vice versa. Furthermore, any, some and/or all features in one aspect can be applied to any, some and/or all features in any other aspect, in any appropriate combination.
It should also be appreciated that particular combinations of the various features described and defined in any aspects of the invention can be implemented and/or supplied and/or used independently.
Furthermore, features implemented in hardware may generally be implemented in software, and vice versa. Any reference to software and hardware features herein should be construed accordingly.
These and other aspects of the present invention will become apparent from the following exemplary embodiments that are described with reference to the following figures in which:
Media content broadcaster operates and/or has media content hosted on one or more content servers, preferably a plurality of servers further assisted by a content distribution network (CDN).
The client devices may include, for example, desktop PCs or laptops or other portable devices (which may receive content directly or via another device) such as mobile phones or personal digital assistants. In at least one example, the interactive media player system is implemented (at least in part) as software running on a client device.
The devices and the server are connectable to a network such as the internet, and the clients access the interactive media player service or website hosted on a server executing server-side software and provided by, or for, the broadcaster.
Each of the client devices and the server include at least one processor and an associated memory, in the form of RAM and ROM, user input devices such as a keypad, a touchscreen or keyboard and mouse, and a display.
In some embodiments the functionality of the server may be distributed or replicated amongst a plurality of separate servers connected to one another over the network, each adapted to perform a particular function.
The broadcaster's broadcasting equipment may be, as shown, a satellite (for example, for television or radio broadcasts), which is shown connected to the server. The server is also connected to a database and/or an archive to enable the server to provide access to audio/visual media content of various types.
In some embodiments the content may be distributed from the server to one or more content delivery networks (CDN) to allow devices to access the media content more conveniently and/or to ease the load on the broadcaster's server(s) and/or network.
Various types of media content may be provided, including streaming of live broadcast and pre-recorded content on-demand. Content may also be made available for downloading to a client device as one or more media files, or potentially transferred from one client to another (for example from PC to portable device) for subsequent viewing. User viewing of media content may require the client device to possess an appropriate licence. This licence may be specific to a particular item of media content (or associated media file) and/or to a particular user and/or to a particular client device and may be in the form of code obtainable from a licence server. The licence may be obtainable separately from the media content (or media file). In some embodiments the licence may permit the media content to be consumed only after a particular time, during a particular time interval and/or not after a particular time and/or only a particular number of times.
In use, the provision of content from a content provision system over a network to a user seeking to access the content from a client device typically comprises at least some of the following steps:
The content discovery system can be seen to comprise subsystems such as Dynamite and PAL.
Dynamite is a service (optionally in the form of an application) that serves on-demand programme metadata. Data requests to Dynamite are handled by widgets which upon receiving a request or query—for example, all currently available cooking episodes on channel on tv—create in response a series of perl objects that satisfy the request; these then have perl templates applied to them to create html output.
The Page Assembly Layer (PAL) is responsible for assembling pages and rendering them for consumption by client applications—the most common being the web browser. The PAL uses the PHP scripting language and the Zend framework (an open-source object-orientated web application framework implemented in PHP) component library to fetch, render and display content.
The access control system can be seen to comprise of subsystems such as Media Selector and MAD.
The Media Selector is the front-end service application providing required media information to a user-facing client application such as Embedded Media Player (EMP) and iPlayer Desktop enabling them to access media assets. Media Selector enforces content access restrictions (GeoIP, time-expiring authentication tokens, client/device authentication, etc.) if required. The Media Selector also provides dynamic service configuration based on live traffic and performance statistics, and operational monitoring of streaming and/or download infrastructure, and of the Media Selector application itself.
The Media Availability Database (MAD) is used to manage media availability and service information. Meta data stored for media assets in MAD includes: availability time, media information (format, encoding, bitrate, width, height), CON/location information (server, protocol, path, file name, priority). MAD gets accessed by various application and services including WorkFlowEngine (WFE), content production systems (RBM ODPS, SIS CUS, RadioBridge, etc.), content provision systems (PIPS, CPE, Dynamite), content monitoring systems (iMonitor), reporting systems (iStats), and Media Selector.
The Media distribution system can be seen to comprise various subsystem for distributing media content within the broadcaster network, and also content delivery networks (CDNs) which assist in distributing media content externally to the various media clients.
The digital rights management (DRM) system may be implemented by means of systems such as Adobe Flash Media Rights Management System (FMRMS) or within Adobe AIR.
Generally, the system may be implemented in part using standard web services and database technologies such as Apache web server and SQL databases.
The use of separate elements assembled into a composite web page in this way allows for more efficient content provision as each element may be addressed by separate system calls. Individual components and drawers can fail whilst others (and therefore the player also) remain functioning. The same applies to the drawers themselves; each work as individual elements.
The elements (which will be discussed in more detail below) can be seen to comprise the following:
The general concept behind the interactive media player is essentially to provide an intuitive and comprehensive personalised television and radio experience. Key elements in this system include:
In one embodiment this is achieved by the setting and subsequent retrieval of a locally-stored cookie. That is, the user will have a cookie set at various stages throughout their lifecycle, that is, the user's interaction with the media player system (whether in a single interactive session or over subsequent sessions).
Alternative embodiments may identify the user by way of information associated with the user, the user's device, a network or geographical identifier or via authentication credentials provided by a third party.
The use of a user identity allows for persistent user preferences to be maintained between user sessions. It also allows for the provision further of user-specific features such as the facility to allow the user to maintain a listing of ‘Favourites’, providing the user with recommendations and the introduction of social elements across multiple PCs.
Three types of user status are defined:
New users. A user is classified as a ‘new user’ if they have never been to the iPlayer site before on that particular browser, or the user has flushed (ie. deleted) their cookies. A user that has browsed the site (in TV or radio mode) but not played any media is also classified as a ‘new user’.
Active users. An active user is defined as someone that has played media in the EMP (site or console). If a user is signed-on they are also classified as active.
Social users. A user that has friends (calculated by content in the ‘People’ drawer at any point, with the exception of flushed cookies) is defined as a social user.
Personalised recommendations are calculated regardless of media type—if a user has played a single TV or radio episode in the iPlayer site or console, personalized recommendations are triggered
Consequently there are effectively (at least) three versions of the media player system homepage (and Radio equivalents):
A locally-set cookie is used to determine to which page the user (strictly, the user's media client) is redirected; in the absence of a cookie the default is to direct the user to the TV homepage.
This may also allow for geographical restrictions to be implemented, for example, it is possible to differentiate between users based in the UK and overseas.
For a UK-based user, in one example, the cookie setting process is as follows:
For an international or overseas user, where the media playback rights may be restricted for video media content the process regarding user sign-in is the same, but the defaults to /iplayer/radio i.e. primarily an audio-only experience.
Various alternative embodiments may have one or more of the following features:
Referring back to
Table 1 indicates the data sources used to populate the various elements (drawers and components) of the user interface.
These various elements respond to user interaction (for example mouse hover-over, click-selection and activation) as described in the following table (Table 2):
Table 3 indicates the data sources used to populate the various elements of the item page. Reference is made to the following:
The item page presents the user with a number of possible (calls to) action(s) represented by icons of the following form:
As explained later, the ‘Favourite’ action is only available if the media item has not previously been made a ‘favourite’; if it has, the replacement action is appropriately:
Alternative embodiments may substitute alternative icons, for example ‘+’ for ‘’.
Recommendations made by the ‘For You’/‘More like This’ drawer on the item page are based solely on the media item being viewed (ie. the media item's metadata). This contrasts with the ‘For You’ drawer associated with behavioural-based recommendations which appears on the main home page and is described in detail below.
The following sections discuss various user interface aspects of the interactive media player relating to content discovery, navigation and access to functionality including:
Drawers
The drawers concept provides a more user-friendly alternative to the traditional drill-down menu structure. In particular, drawers present content in a significantly less hierarchical way, avoiding overwhelming the user with long lists of content and reducing the need for a user when browsing content to repeatedly be required to return to an originating position in order to get their bearings. Instead, drawers expand and contract bringing content in and out of user focus in a natural way for exploring a large volume of media content.
Generally, the drawers may be considered as content panes within a content selection region. Each content pane is capable of displaying thumbnail images (or other such indicium) representative of media content and by which means the content may be accessed (for example via a hyperlink).
When a user opens a drawer (for example by clicking an activation area of the drawer, such as the drawer label) it expands (or contracts) to reveal further (or fewer) thumbnail links to content; simultaneously, the other drawers contract from (or expand into) the space occupied (or vacated) by the expanded (contracted) drawer. A drawer has three states: fully-open, partially-open (the default state) and closed. A typical display for an open drawer comprises a single dominant thumbnail (selected for relevance, novelty or according to some other criteria) and several subsidiary thumbnails. Alternatively, all thumbnails may be similarly sized.
For the convenience of the user, drawers are marked with expansion/contraction indicators in the form of arrow indicators ‘>’ and ‘<’ to aid location of the drawer activation areas. Where the number of items available within a single window exceeds the available screen area, a multi-spot menu is also provided to allow easy navigation between successive screens of the single window.
Closing a drawer returns it (and all others) to the default partially-open state.
As a further feature to encourage content discovery, drawers are configured to present content in a ‘taster’ mode in their default partially-open state, presenting a sample of content (for example, content which may be available shortly or which is perceived to be generally popular or of interest. Once content is played additional content is exposed to users in individual drawers so that users can browse based on their mood.
Drawers import their constituents using PHP on the server or JavaScript on the client. This allows generic drawer content to be cached while personalised content is loaded dynamically.
In the example shown in
The number of drawers displayed to a user is based upon the user's state and behaviour:
Referring back to
In alternative embodiments, other user interface elements—such as the channel list—may also be presented in drawer form. Other embodiments may implement some or all features described herein as drawers as components and vice versa.
Categories
In the example shown, the Categories interface presents two larger thumbnails for the two most popular media items in the category, and five smaller thumbnails for the otherwise five most recent media items.
Initially, on first use, the Category module presents a pre-filtered ‘taster’ of latest media content sorted according to subject matter (eg. latest film/news/entertainment) in order to provide an example of how the interface may be used. By providing a large number of sub-categories, finely-tuned category preferences may be selected by a user. For example, the ‘Entertainment’ category comprises some 20 different sub-categories, with over 200 categories in total in the whole site. Categories may be specific to content, or be specific to particular themes or grouping of content. Some duplication is to be expected as some media items will span categories or otherwise prove difficult to categorise in a way which will ensure they nevertheless are found by a searching user.
The user is encouraged to build up a list of favourite categories; the pre-loaded taster categories are then pre-populated by these second level categories, the results of which are presented to the user on the home page. The user can identify favourite categories and assign them to a ‘My Categories’ menu so that when the user consults the Category pages the first categories seen are the user's favourite categories.
Category information may be stored locally (by a cookie) or remotely according to user ID.
Table 8 indicates the data sources used in the various elements of the Categories page.
Overlays
Typically, overlays are used directly on items of media content rather than on navigation items, and present to the user only a small subset of actions or functions (typically two to four) from all those possible, the intention being to present the most common actions in a non-hierarchical menu. For example, a media item overlay in drawers and list views provides the user in situ with the ability to play, (add to the) favourite (list), download and recommend the media item.
Typical icons indicating the various functions available are as follows:
|> Play
Overlays appear for both collapsed and open drawers—in principle overlays could be added to almost all content list views.
Ideally, essentially the same overlay functions are provided for all similar media items (subject to the actions being possible, functionality and resources permitting).
Different overlay types are possible according to the size of the associated media item thumbnail.
In some instances overlays present multiple alternatives, for example for downloading media items different resolution or encoding versions (for example for desktop and portable device playback) are presented by separate download icons.
For certain media items particular overlay functions may be absent when the associated function is not possible. For example, the option to download a TV programme (or of a podcast for radio) may not be possible, for example for rights reasons; the overlay download symbol in that case is either greyed out (or similarly de-highlighted) or absent entirely. Similarly, the ‘Favourite’ icon is present and actionable (and the ‘Delete from Favourites’ is not) only until such time as an item is added by a user to the ‘Favourites’ list (at which point it is replaced by the ‘Delete from Favourites’ icon).
The operation of the overlay CTAs are described in detail in the following tables:
Table 10 describes the overlay CTAs generally:
Table 11 describes the CTAs for Drawers (small version)
Table 12 describes the CTAs for Drawers (medium version)
Table 13 describes the CTAs for Drawers (large version)
Pop-Out Media Player (Radio Console)
The pop-out radio console provides a compact satellite module which the user can use to listen to audio content as a background or companion activity whilst doing other things, for example using other applications. Being fully-integrated with the interactive media player system website offers users much of the same functionality, (albeit in a smaller form factor) for example the ability to add favourites, to recommend and play programmes. In addition, the user can edit the radio stations and these changes are reflected on the main site.
The pop-out radio console makes use of overlays to provide roll-over channel/programme information.
As space for the pop-out console user interface is limited, quick access to different console views is provided by a series of user-selectable tabs (or alternatively, drawers). In this embodiment, four tabs are provided:
Data sources for the tabs are as shown in table 15
The ‘stations’ tab also presents an ‘Edit stations’ option. A post-code lookup application such as Postcoder to determine local radio stations for the user and these are offered as options for selection. The data for this form is fed from Dynamite and favourite stations are stored in KV.
The ‘Favourites’ component allows for a user of the interactive media player system to personalise their experience by providing a way for them to store bookmarks to particular media items or content for later revisiting.
The system thus comprises means for enabling a user to add particular (media) content items to a user-defined content list, or ‘Favourites’ list (for example by the user executing a suitable CTA such as making use of the ‘Favourite’ icon in an overlay). The ‘Favourites’ module thus acts as a virtual shopping basket or playlist, that is, a companion module that discretely follows the user around the site and a console where favourite programmes are parked to be available to play later, effectively providing quick access for the user to their preferred media items by means of a ‘Favourites’ toolbar which is a persistent item in the user interface throughout the media player site (in the example as shown, in the top right hand corner of each media player page). The user is therefore never more than a click or two away from their preferred media content.
While there is no requirement a user is signed-in to the media system service, doing so allows the user's Favourites to follow them across different PCs, phones etc (otherwise a local cookie is set and the particular Favourites only apply to that specific device).
By marking a media item as a favourite, the user is effectively subscribed to that item and can be kept informed of relevant developments. For example, if the user subscribes to a series (or, more comprehensively, a ‘brand’ which includes multiple series and special editions), the Favourites module is automatically updated (and can notify the user) when new episodes of the same brand or series are made available. The Favourites module also allows users to bookmark content ahead of the time of transmission (commonly referred to as ‘TX’). Where rights restrictions impose media availability limitations (for example, on-demand access or download viewing permission only for a certain time window), the Favourites module can track the availability of the media item and notify the user of content that is about to expire from the availability window.
The ‘Favourites’ module presents two different views to the user according to whether it is in ‘compact’ or ‘expanded’ mode (a mouse click toggles between the two via suitable drop-down/pull-up animated effects).
In the compact state, the Favourites module provides the following summary information:
The Favourites module also generates a Favourites management page; a link to access this is provided from the Favourites toolbar.
Subscribed to items are automatically added to the list when they become available; expired items are automatically removed.
Various further features of the Favourites module are described under the following heads:
Default Summary View/Closed State
For a new user that has never played content, has deleted cookies and/or is not signed-in, the carousel just below the top navigation bar is presented in its closed state.
In the closed default state visible attributes include:
For an existing user with populated content, summary mode attributes include:
Default Ordering
Number of Items
Series Level
Multiple Episodes
Clicking more episodes unrolls all available episodes associated with that brand/series and filters out all other brands and series from the carousel. Closing the episodes reloads carousel to previous view.
Brand Level (Optional)
Last Played
Played Indicator (Optional)
Reordering
Positioning on Site
Full Screen Mode
TV and Radio Modes
Syndication
CTAs from Favourites
Episode Availability
Content Population
Content Availability (in Alternative Embodiments)
Audio Described and Sign Zone
HD Format
Adding Favourites CTA
New Items Rule
Expiring Items Rule
New Content
Expired items
Rollover States
Images
Simulcast
Favourites Repeats Rules
Table 16 describes the CTAs for the Favourites Module
The following section discusses the various means by which a user of the interactive media player system can make and receive recommendations regarding media items.
Recommendations are calculated according to three different processes:
Contextual and behavioural recommendations have to some extent already been described with reference to the “For You” modules.
The distinction was drawn between recommendations made in the ‘For You/More Like This’ module on the item page (which are contextual, based on the item metadata) and those made in the ‘For You’ drawer on the home page (which are behavioural, and only appear once some media items have been played as the recommendation algorithm requires at least a modicum of data on which to base a recommendation). In this regard, the latter ‘For you’ algorithm is deliberately configured to produce recommendations which are more quirky, preferring programmes which have not already been seen/heard by the user (what might be termed hidden gems).
In summary, contextual recommendations concern the media item, not the user directly (hence ‘More’ may suggest more items from the same brand); recommendations based on behavioural traits are based on a user profile which has been built up, for example, from the user's favourite media item categories and the types of (other) programme usually associated with (this) programme (hence a user category ‘cars’ may suggest another category ‘boats’).
Regarding social aspects of recommendations, the ‘Most popular’ drawer may be considered effectively to provide anonymous recommendations.
However, the main source for social recommendations is the ‘People’ drawer, some aspects of which (such as its absence if the user is not signed-in, and its persistence across subsequent signed-in sessions) have been described previously.
There are two key aspects to social recommendations: generating and receiving.
Generating Social Recommendations
In order to make a recommendation the user has to be identifiable in some way (if not precisely, at least uniquely) and therefore requires a sign-in ID. The Promotes module (which handles recommendations received from the user) detects whether user has an appropriate ID—and if not, suggests the signs-up.
For a user being prompted to connect to their social network from within an interactive media player signed-in session for the first time, the user is shown most recent recommendations.
Once connected, use of for example FaceBook connect can then determine which of the user's friends from the social network also have a BBC ID and an editable list of these friends can be automatically created for the convenience of the user—or alternatively merely suggested with a veto option. By default, no email confirmation is issued (the connection to friends on the social network is assumed correct); alternative embodiments provide for confirmation.
The connected social user can then make recommendations and post comments directly to those his friends from the social network (either singly or in user-defined groups) who also possess a BBC ID, and these friends will see the results of these inputs in their media player interface.
When making a recommendation, a signed-in social user will be asked if they wish also to attach a message; if so, the recommendation message will be sent to all friends previously selected.
Social recommendations can be made pre-, post- or during a media item being consumed and are ‘pushed’ to user from friends, not passively read.
For privacy reasons no status updates of viewed media content are provided; alternative embodiments allow this with appropriate user permission.
Both recommendation and comment are fed back to a users' ‘People’ drawer via ‘Activity’ component.
Essentially, iPlayer will write Comments and Promotes messages to two different services; DNA will write an activity to the Activity service. A promotes message will be delivered to a queue feeding both the Promotes and Activity Service. These are aggregated and read from Activity. To build an item page for those without social network, all activity is read for a PID. iPlayer will link the comment and promote (recommendation) into one item, based on an inferred transaction id made up for identityID, pid and timecode. iPlayer gets total number of promotes for an episode from the Promotes service.
Recommendations may be specific to a media item version type (for example, a HD media file) not merely the media content (say, a particular programme).
Also provided is a ‘Link to this’ option. This allows a signed-in user to email a URL link to (the beginning of) a media item—optionally including a timecode to a particular place in the programme. The posting of actual media clips may not be possible in some embodiments because of rights issues.
Receiving Social Recommendations
The main interface for a user to receive social recommendations is via the ‘People’ drawer (called ‘Friends’ in some embodiments).
As described above, a user can connect with third party social networking providers such as FaceBook and Twitter and ‘seed’ their ‘People’ drawer with their friends (both social networks provide their own dashboards to edit a user's friends).
The ‘People’ drawer therefore acts as a social inbox on the user's homepage and provides a social barometer of programme recommendations based upon a users social network.
The interactive media player system provides the user several ways to access both live and on-demand media content via different interfaces, including:
The aim is to provide a unified experience, blending live and on-demand content into a single experience, thereby allowing users to browse and play on-demand and live television and radio programmes from a single destination
TV/Radio Channels Component
Selecting a channel icon displays the vertically-scrollable programme guide for the selected channel. Programme guide for successive days are selectable from a tabbed menu for today and up to three previous days (the schedule is a feed from the Dynamite database). Selecting a media item directly redirects the user to the appropriate item page for the selected media item.
A button option allows the user access to the full electronic programme guide (EPG) or schedule for the selected channel—which is described below.
Examples of user actions for the Channel Changer component are shown in Table 17.
CTA's for the Channel Selector are shown in Table 18
Further aspects include:
Referring back to
EPG Module
The EPG can be switched by the user to show the programming for different channels by selecting the channel from the selectable channel icons listed in a vertical column on the left-hand side. As for the ‘TV/Radio Channels’ component, this listing is user-configurable.
An ‘On Now’ thumbnail is also presented which directs the user to the ‘Watch Live’ (Siimulcast) page.
‘Watch Live’ Page (Simulcast)
A ‘For you’ module presents recommendations of on-demand programs which have consumption pattern links to current programme.
Table 19 shows examples of possible actions for Simulcast ON Air.
Table 20 shows examples of possible actions for Simulcast OFF Air.
A further social aspect of the interactive media player system involves the integration with an instant messaging system (IMS) such as MSN Messenger or Windows Live Messenger provided by Microsoft® or some other instant messaging (IM) provider or facility (for example, that provided within FaceBook®).
Utilising the messaging backend as a plug-in into the iPlayer enables IM features (for example the messaging interface and the IM contacts list) to become an integral part of the media player client. This allows for features such as:
In order to maintain privacy, some of these features are preferably limited by user-set restrictions and the messaging system is operated on an opt-in basis.
A further embodiment integrates the messaging system as a module pervasive across the media player interface, much like the Favourites module.
Various further aspects of the instant messaging service are now described with reference to
For a user who has not previously signed-in to the IM service preliminary information and agreement/consent screens are presented. Where the IM service is provided by a third party and not the entity which provides the interactive media player system, suitable disclaimers are presented to inform the user of the differing areas of responsibility.
a) shows the IM service terms and conditions agreement screen. The user is required to agree to the terms and conditions before being allowed to proceed with the sign-in process.
b) shows the information sharing consent screen. The user is alerted that information will be shared between the interactive media player system and the instant messaging service and is required to provide consent to this before proceeding with the sign-in process.
c) shows the IM service sign-in screen presented once the user's agreement/consent has been received—or for a returning, previously signed-up user.
Once the user has signed-in to the IM service standard IM service facilities are provided, for example the facility for a user to report abuse via the IM service provider's report abuse page.
Access to the IM service (as for all media player functions including restricted play according to age- or content-related media categorisation) can be controlled via parental control mechanisms.
a) shows the interface seen by a signed-in user. The display shows identifiers or icons representing those of the user's friends or IM contacts currently both signed into the interactive media player system and to the IM service. The IM contacts' most recent comments (or summary extracts thereof) are shown alongside their IM contact or user names. Recent comments are shown in bright or otherwise highlighted text; as comments age they fade or are otherwise de-highlighted so that the user's attention is drawn to the most recent comments. Options are provided (for example by means or a directly-accessible text entry box and ‘shout’ button) for the user to ‘shout’ or message all (or in, some embodiments, pre-defined subsets of) the currently listed contacts and/or to invite other users not currently signed-on to do so.
b) shows the notification system which highlights most recent IM contacts comments. In this example, a user (Blake) has recently (within a predetermined time interval) posted a comment—or is in the process of commenting—and the accompanying IM contact identifier is itself highlighted in order to attract the attention of the user.
c) shows additional detail presented to the user when the user ‘mouses-over’ or otherwise selects an active IM contact. In this example, subject to the IM contact having set the appropriate permissions, a programme identifier is presented to indicate the programme currently being watched by the selected IM contact (alternative embodiments also display how far through watching the programme the IM contact is). Adjacent the programme identifier is a ‘Watch together’ button which provides a link to the identified programme by means of an underlying URL of the form:
The programme identifier and the underlying URL of the ‘Watch together’ button are updated either periodically or in response to a triggering event such as selection by the user of a different IM contact or the selected IM contact switching to watch a different programme. In some embodiments the updates form part of IM messages passed between IM contacts or be separate updates provided via the IM service.
The ‘Watch together’ button allows the user (by means of the underlying URL) to watch the same programme as the one or more selected IM contact(s).
In some embodiments, the programme identifier itself offers additional functionality, for example providing a separate link to the specific programme or to the home page of the programme series.
For live streamed or broadcast content, selecting ‘Watch together’ sets the user's media player to present the currently streamed or broadcast media content; for on-demand content, the user's media player is first synchronised with that of the selected IM contact so that the user and selected IM contact can watch the on-demand content simultaneously. This synchronisation process is described below.
‘Watch together’ may therefore be considered as a facility which reintroduces with on-demand media the communal media experience of the traditional broadcast era i.e. essentially provides synchronised video-on-demand.
a) shows an IM status bar located at the interface footer. This provides a quick sign-on/off activation facility to allow ease of access to the IM service during a user session and/or throughout the media player system website or application. Alternative embodiments provide information such as, for example, the number of the user's IM contacts currently signed-in and notifications.
b) and c) show examples of alternative methods (respectively, a scrollable menu and a dot-paging mechanism <•o•>) for providing user access to a plurality of signed-in IM contacts when their number exceeds the amount of available display area to display them all simultaneously.
a) shows an overview of the process when user B activates the ‘Watch together’ feature:
The programme identifier is in the form of a URL link to (the beginning of) the programme or media item—optionally (for example for on-demand programmes) including a timecode (for example a numerical value representing elapsed seconds) appended to this URL to provide a link directly to a particular place in the programme. A possible form for the programme identifier and timecode is:
The (optional) offset Δt is to allow for a delayed synchronisation to account for network timing delays to ensure users A and B watch the programme simultaneously. Rather than attempt to have user B immediately attempt synchronised viewing of the programme with user A, joint viewing is arranged to commence at a time Δt in the future to allow, for example, for sufficient buffering of streamed content at user B to occur. For low latency networks, for example, Δt will tend to zero and synchronised viewing can begin effectively immediately.
In alternative embodiments, the IM unit of the server of the interactive media player system is absent and IM messages are transmitted ‘directly’ between users A and B i.e. via the IM server rather than relayed via the media server.
b) shows elements which make up the IM message payload at various stages when also being used to provide programme information, including:
c) shows a timeline of the ‘Watch together’ process showing users A and B with respect to the media server:
The acceptance of step 2 may occur some time after the initial invitation has been sent, hence the need for a following synchronisation step.
As shown, two options are possible for the synchronisation of step 3. The first involves synchronisation being accomplished entirely at the media server. The second requires polling of user A's media player MP-A, for example to the ascertain time elapsed of the media programme currently being watched by user A.
In some embodiments, information is provided via each user's media player and/or IM interface regarding the status of the other users participating in a ‘Watch together’ session, for example, whether users have paused or terminated their ‘watch together’ session. A user who has paused their ‘watch together’ session may subsequently re-activate the session by means of the ‘watch together’ button thereby re-synchronising with the other users participating in the ‘watch together’ session.
In some embodiments, user B's activation of the ‘Watch together’ option essentially cedes control of user B's media player for the duration of the programme (or until user B disengages from the ‘Watch together’ session) to user A. Thus, for example, when watching together an on-demand programme were user A to pause, play, fast-forward or rewind the corresponding operations would be carried out (where possible) by user B's media player.
Further embodiments provide the IM messaging facility and ‘Watch together’ option for other types of media, for example audio (where the latter option may be called ‘Listen together’).
Media Selector/Pre-Booking Traffic management
The interactive media player system is provided with a pre-booking feature, an implementation of which will now be described, by way of example only, with reference to
The pre-booking feature is a function of the interactive media player system which allows a user to download (media) content in advance of transmission ‘TX’ (i.e. in advance of the time/date when the content is to be transmitted, broadcast or aired), and to store it locally to the equipment used to access the interactive media player system, without allowing that content to be played until after it has been transmitted.
This feature is particularly beneficial for scenarios in which a user would find it more convenient to download a content item in advance of it being aired, for example to avoid the need to download it later via a more expensive and/or technically limited connection (e.g. if the user wishes to watch the item whilst travelling in another country). The feature is also particularly useful for scenarios where a user would wish to download a series of related content items (e.g. episodes in a series of programmes) as and when each content item become available for download.
As seen in step 1 on
As seen in step 2 on
It will be appreciated that each item of content may have any suitable number of media assets associated with it, for example, a low definition media asset, a hi definition media asset etc.
If the media selector determines that the pre-booking request should be denied then the download request is rejected, optionally with an indication of a time after which the media client can re-attempt making a request for pre-downloading the same content. The media client may re-attempt making this request automatically (for example in accordance with a pre-defined polling cycle) or may make this request when the user initiates it.
As seen in step 3 on
When a user wishes to view the content with which the media asset is associated, the media client determines whether a suitable licence is held and, if not, it requests the licence from the licence server. As seen in step 4 on
It will be appreciated that, once downloaded, the media asset can beneficially be transferred to a different piece of user equipment (e.g. from a computer having a high speed internet link to a mobile communications device potentially having an inferior, or simply more expensive, internet link) and the licence request may be made via a version of the media client on that different piece of user equipment (as shown in
Operation of the media selector: to assess the availability of the content, and the validity and allowability of the request; and to notify the media client accordingly will now be described in more detail.
In response to a pre-booking request, the media selector determines the allowability of the request using a predetermined formula based on configurable weighting factors which represent traffic management requirements for different times of day on a given date (as described below). If the request is allowed the media selector returns a media asset location for a requested content item. If the request is denied based on the predetermined formula, the media selector returns a response to the media client, indicating a time period which the media client is required to wait before reattempting the request. The media client is required to wait until this time period has elapsed before requesting the same resource again.
The communication with the media client is made in accordance with a pre-booking application programming interface.
In this implementation, a predetermined weighting factor representing a traffic management requirement at each time of day on a particular date is stored in a table. The granularity of this table is 15 minutes (although it could be higher or lower independence on requirements—e.g. between 5 minutes and 30 minutes). Accordingly, for each 24 hours there are 96 values each representing the traffic management requirement for a respective 15 minute period, and there are 672 values representing the traffic management requirements for the 672 15 minute periods in a given week. It will be appreciated that the granularity may, in itself, vary in dependence on the time of day and/or date.
The weighting factor is a percentage value which effectively indicates the likelihood that a download request within that period will be allowed (i.e. will result in a response providing the download location for an appropriate media asset associated with the requested content). Thus, the value of the weighting factor can be between 0 and 100 with a value of 0 for a given time period indicating that all pre-booking requests made during that time period should be denied (e.g. because it is expected that demand will be so high that pre-booking downloads should be prevented to maximise the bandwidth available for other users). The weighting factors are reconfigurable and, in this example have a default value of 100 (although it will be appreciated that they may have default of any suitable value).
A global flag ('global_disable_flag) is also provided which, if set (e.g. has a value of ‘1’ or ‘TRUE’), disables pre-booking requests completely (e.g. by causing the media selector to deny all requests). The global flag is reconfigurable and, in this example, is by default not set (e.g. has a value of ‘0’ or ‘FALSE’).
The media selector uses the following traffic management algorithm to determine if the media client's pre-booking request will be allowed or denied:
Thus, when pre-booking is enabled and the weighting factor is not zero, after each pre-booking request, the media selector generates a random (or pseudo-random) number and compares this to a weighting factor retrieved for the time of day (on a particular date) at which the request is received. If the generated number is less than (or equal to) the retrieved weighting factor the media selector deems that the request should be allowed and returns the associated media asset location accordingly.
Otherwise, if pre-booking is disabled, the weighting factor is zero, or the generated number is greater than the retrieved weighting factor, the media selector deems that the request should be denied and returns a response indicating this to the media client. The response indicating that the request has been denied includes an indicator that no bandwidth is available (no_bandwidth) and a time stamp offset (in a recheck_after parameter) defining how long the media client has to wait before being allowed to request the same content resource again.
The time stamp value is reconfigurable and, in this example, has a default value of 60 minutes (although it will be appreciated that this may be any suitable value). The timestamp may, for example, be an ISO 8601 timestamp using the universal coordinate (UTC) system—for example, in the format 2009-12-31T23:42Z). Preferably, the time stamp indicates an offset at least 5 minutes after the time the pre-booking request was received. To avoid a proliferation of non-allowable pre-booking requests, the time stamp value is advantageously set to coincide with the start of a time period (e.g. the next time period) for which the weighting factor is non-zero. For example, if the current, and the next two 15-minute time periods are configured with a weighting factor of zero, the time stamp is set to indicate that a pre-booking re-attempt should be made at least 30 minutes (and possibly as much as 45 minutes) in the future.
The media selector is also operable to allow a request if it is made within a predetermined ‘grace’ period before transmission (‘TX’) of the content to which it relates. The grace period is reconfigurable and, in this example, has a default value of three hours (although it will be appreciated that this may be any suitable value). Similarly, the media selector is also operable to allow a request if it is made after transmission (‘TX’) of the content to which it relates.
The weighting factors may be stored in any suitable form, for example in a dedicated document in a key-value store, in a database or the like. It will be appreciated that there may be an algorithm for calculating the weighting factor, for example, based on a known or estimated current demand (e.g. live traffic and/or performance statistics). Similarly, the grace period and/or the time stamp offset may be stored in any suitable form, for example in a key-value store, a database or the like.
The media selector is also operable to issue various error responses in the event that the pre-booking request is deemed to be invalid or the content to which the request relates is found to be unavailable or not to exist. These responses include, for example:
In the event that a media client continues to make many repeated pre-booking request for the same content which are then denied based on the traffic management algorithm, the media selector eventually allows the request without requiring the traffic management algorithm to be passed. This may be achieved by any suitable means for example by reference to a counter which records the number of unsuccessful requests made for the same content via a particular media client.
It will be appreciated that, media assets may be available for download up to several days before broadcast and one of the intentions of the pre-booking support is to assist management of the traffic in relation to downloading these assets.
In one specific example, the media selector is configured to use managed token issue service (MTIS) responses to implement the above, for example, the various possible responses may be issued, and the associated parameters configured, as follows:
Accordingly, the media client is advantageously able to request pre-downloading (or pre-booking) of a particular media asset associated with content of interest, based on user preferences. The success of this request is determined, in part, by the traffic manage requirements at the time the request is made. For example, in a time period during the interactive media player system is (or is expected to be) subject to a high level of traffic (e.g. during or soon after transmission of a major sporting event), the probability of a pre-booking request being allowed in that time period may be reduced by reducing the weighting factor(s) for that time period. The pre-booking request may also be effectively blocked by setting the weighting factor(s) for that time period to zero. Contrastingly, at times of low usage, the probability of a pre-booking request being allowed in that time period may be increased by increasing the weighting factor(s) for that time period or may be effectively guaranteed by setting the weighting factor(s) to (or leaving them at) 100. Thus, the media selector is beneficially able to effectively manage the download traffic by only allowing a certain percentage of requests at a given time. If a request is rejected the client is given a time when the media asset may be requested again. Allowance or denial of a request can advantageously be based on pre-configured settings (e.g. pre-stored weighting factors) and/or live traffic and performance statistics.
In summary, a content delivery system in the form of an interactive media player system has been presented. In particular, different forms of content discovery have been shown which enable a user of the system to discover content in alternative ways:
Also provided is a Favourites module, which enables the user to bookmark and keep track of content across all these forms of discovery.
It will be appreciated that where the examples are shown in respect of television or video media content, aspects are also applicable to radio or audio content.
It will be understood that the present invention has been described above purely by way of example, and modifications of detail can be made within the scope of the invention.
Each feature disclosed in the description, and (where appropriate) the claims and drawings may be provided independently or in any appropriate combination.
Reference numerals and/or titles appearing in the claims are by way of illustration only and shall have no limiting effect on the scope of the claims.
The following GB Patent Application filed on 29 Apr. 2010 is hereby incorporated herein by reference:
Number | Date | Country | Kind |
---|---|---|---|
1007191.8 | Apr 2010 | GB | national |
1008734.4 | May 2010 | GB | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/GB2011/000654 | 4/28/2011 | WO | 00 | 6/13/2013 |