METHOD AND APPARATUS FOR GENERATING MULTIPLE DYNAMIC USER-INTERACTIVE DISPLAYS
The present invention teaches a method of creating and presenting a user interface comprising a Dynamic Mosaic Extended Electronic Programming Guide (DMXEPG) using video, audio, special applications, and service dynamic metadata. The system enables television or digital radio service subscribers to select and display of various programs including video, interactive TV applications, or any combination of audio or visual components grouped and presented in accordance with the dynamic program/show metadata, business rules and objectives of service providers, broadcasters, and/or personal subscriber choices, collectively referred to as mosaic element presentation criteria
Latest WEBTUNER CORPORATION Patents:
This application is a Continuation of U.S. patent application Ser. No. 13/098,663, filed on May 2, 2011, which is a Continuation of U.S. patent application Ser. No. 11/505,063, filed on Aug. 16, 2006, which claims the benefit of U.S. Provisional Application No. 60/647,287, filed Jan. 27, 2005 and U.S. Provisional Application No. 60/678,773, filed May 9, 2005, all of which are included by reference in their entirety for all purposes.
BACKGROUND OF THE INVENTIONTelevision service providers including cable, satellite, terrestrial, video over internet, IPTV, and others can deliver a large number of channels to subscribers. To choose and select desired program among hundreds of available channels, subscribers can browse channels one by one or use grid or mosaic based Electronic Programming Guides (EPG) by which they might search for possible choices, with the effect to that those subscribers are able to select one or more choices for presentation. However, while they achieve the general goal of allowing users to search and select, known systems are subject to several draw-backs.
Browsing a large number of channels in a search of a desired show is time consuming and inefficient. For example, to preview currently broadcasted shows subscriber can surf 300 channels one by one while spending 10 seconds on each, requires over 50 minutes, which is, in many cases, longer than subscriber choose to watch television program, or the duration of desired program itself. Grid based EPG, although listing titles of programs for several channels at once, including the option of selecting favorite channels and expediting program selection process, displays on average 2 shows per grid's channel line, for the total of 600 shows subscriber has to view to select desired show. Moreover, grid based EPG does not allow users to observe the actual video content of several channels at once, thus forcing subscribers to decide on channel and program selection merely from its textual description, and not its actual content. Although some EPGs allow subscribers to preview in PIP a program selected from the grid, still users can not simultaneously observe content of more than one program. Grid based EPGs that allow subscribers to search programs by title or content category, displayed search results still in a textual representation of a matched program; at the same time not including in the search programs available over VOD, local or network PVR, or program available thru other service provider or source.
Existing mosaic based EPG (MEPG), used by CANAL+ in France for example, is also limiting since it creates pages made of mosaic element each of which is assigned for an extended period of time to a specific channel CANAL+ offers 3 screens each with 20 elements for the total of 60 channels. However, for such static MEPG, 300 channels may be presented on 15 separate screens forcing a subscriber wishing to find all “News” programs to preview video content of 300 channels by surfing 15 separate screens each with 20 elements. When a subscriber wishes to compare content of two or more channels not present on the same screen, he or she has to toggle between two or more EPG screens, rendering such system as cumbersome, inconvenient, and difficult to use. Such static MEPG systems do not allow subscribers to customize EPG screens to simultaneously display video content of their favorite channels on the same screen. Also, existing MEPG systems, when attempting to group channels by category (e.g. movies, news, cartoons) fail because the same channel broadcasts shows that can belong to different content categories at different times of the day: “Cartoons” in the morning, “Soap Operas” in the afternoon, “News” in the evening, and “Movies” at night. As the result, with the existing MEPG system, when the channels are grouped by category and displayed on the same screen, subscriber that tunes to “cartoons” mosaic EPG page, expecting to see cartoons, actually sees programs that belong to other content categories.
In U.S. Patent Application No. 2004/0070593, discloses a mosaic-like UI that can be dynamically rearranged in response, in part, to user selection and static metadata about the video titles stored in the library. However, this solution does not work for the television broadcasting environment where each channel's metadata is not static, but dynamic, since it is being contentiously updated and changed. The '593 application does not take into account business needs of service provider which might want to auction off locations of some or all of the mosaic elements on some or all MEPG screens to broadcasters or other third parties. The '593 application does not allow subscribers to simultaneously view video feed from one of any broadcasting channels on one part of the screen while simultaneously accessing MEPG in the remaining portion of the same screen.
In addition to the difficulties of selecting among a large number of currently broadcasting programs, as described above, subscribers also have many challenges selecting upcoming shows using existing EPGs. Again, to find a show that matches their criteria, subscribers have to review set of hundreds of shows that immediately following currently broadcasting programs plus review another set of hundreds of shows that follow after. This task becomes very arduous because by default programs in the existing grid and mosaic based EPGs are organized by channel and time, but not by program category.
So, to choose desired program subscribers have to review many hundreds of entries most of which do not belong to desired program category. The problem of program selection will be exacerbated in the future when even more channels and programs become accessible to subscribers thanks to proliferation of client PVR, VOD over cable, VOD over Internet, network PVR, and other program delivery methods and service. Not only subscribers would have to review hundreds of available programs many of which are irrelevant to the search since they belong to other program categories, subscribers have to juggle among several EPGs each of which is representing its own service. For example, digital cable service and VOD over cable are represented by their own EPGs, TiVO or ReplayTV PVR services are represented by their own EPGs, and VOD over Internet, like Akimbo, is also represented by its own EPG. With more and more content delivery options, subscribers are forced to spend greater amount of time searching and selecting desired content distributed among various systems represented by own EPGs.
What's more, existing EPG services use textural representation of programs and services, like interactive TV. However, it's been shown that people gravitate towards search of video information not by its textual representation but by its visual representation. The best example of this are display cases of a video store, like Blockbuster. There, latest movie releases are arranged in such a manner as to allow customers to view and select desire program by viewing front covers of the DVD cases. Most DVDs, on their front covers, show a visual representation of the video content that allows them to quickly and easily infer its genre, participating actors, and thus make a selection. Unfortunately, existing EPG services have not been designed to display program's visual representation and allow subscribers to choose desired program by it. Instead, subscribers have to choose desired program by its textual representation.
To simplify content selection process, subscribers ought to have a Content Portal that can allow them to choose desired program based on its visual representation and can consolidate access to programs available over multiple services, including those based on a locally or remotely stored content, and services based on programs broadcasted over various available media. Thus, Content Portal ought to allow subscribers to access currently broadcasted programs, soon to be broadcasted programs, locally stored and remotely stored programs by their visual representation. While consolidating access and selection of programs available over multiple networks, Content Portal should also preserve access to advanced value added services like interactive television and on demand advertisement.
In addition to EPGs, subscribers can choose desired program using other program sources including printed TV guides, and TV guides offered over the Internet. There, subscribers have to deal with the same problems of choosing desired content based on its textual representation, but not on its visual representation.
Similarly to the digital TV service providers, providers of digital and satellite radio services like XM and Cirrus have not incorporated visual representation of broadcasted or soon to be broadcasted content, although amount of available content over hundreds of available channels is large. Similarly to the digital TV service, subscribers to the digital radio service have to choose desired program based on its textual representation. With hundreds of simultaneously available programs, this task becomes as challenging as selecting video content from digital TV service providers.
BRIEF SUMMARY OF THE INVENTIONThe invention provides a method and system capable of solving many problems of content preview and selection for visual or audio content offered over digital TV or digital radio networks, and generally a user interface (UI) for accessing content. One aspect of the invention is a method of creating and presenting a Dynamic Mosaic Extended Electronic Programming Guide (DMXEPG) using video, audio, special applications, and service dynamic metadata. The system enables television or digital radio service subscribers to select and display of various programs including video, interactive TV applications, or any combination of audio or visual components grouped and presented in accordance with the dynamic program/show metadata, business rules and objectives of service providers, broadcasters, and/or personal subscriber choices. Another aspect of the invention is to print programming guides or guides in electronic form using the same solution of utilizing dynamic metadata to group, consolidate, and display program information with the purpose of allowing subscribers to view and select desired program using program's visual representation.
In accordance with an aspect of the present invention, the system can merge channel programs/shows metadata for multiple services offered by one or more than one service provider using a unique channel identifier, e.g., a service source ID either for digital TV or radio services. Such merger is performed on the backend and merged metadata is displayed on a client device or in a printed program information guide. This invention differs from the mechanism described in U.S. Pat. No. 6,072,983, which describes merging channel metadata on the client side.
In accordance with an aspect of the present invention, an application can be provided on devices with more than one tuner that can simultaneously display video and applications graphics of that application on more than one display.
In accordance with an aspect of the present invention, applications can be provided on devices with more than one tuner that can simultaneously display a program chosen by the subscriber on one portion of the screen, while displaying DMXEPG or its components on the rest of the screen.
In accordance with an aspect of the present invention, metadata from different value-added services can be integrated into a matrix element (ME) of the DMXEPG and displayed to subscribers for currently broadcasted or soon to be broadcasted programs.
In accordance with an aspect of the present invention, integrated metadata can be recorded for later playback.
Further aspects of the present invention include:
(a) it can dynamically assign channels to Mosaic Element (ME) using: continuously updated metadata (programming schedule) about television (broadcasted) channel (EPG programming/listings), criteria received from one or more sources. For example a subscriber, service provider, or third party. Example of third party can be broadcaster, content critic, and the like.
(b) it can dynamically assign iTV applications, Interactive advertisement, VOD program links to Mosaic Element (ME) using criteria received from one or more sources. For example a subscriber, service provider, or third party. Example of third party can be broadcaster, content critic, and the like.
(c) it allows to support DMXEPG where subscribers can simultaneously observe any pre-selected channel chosen by them or video content from other sources, like DVD players or programs offered by another digital TV service provider, on one portion of the screen while observing other ME with or without program related textual information on the rest of the screen
(d) it allows service providers to collect payments from broadcasters,
content owners, or third parties for assigning without service subscriber input their programs to pre-selected ME and DMXEPG screens
(e) it allows service providers to collect payments from advertisers for
assigning, without service subscriber input, logos, videos, or other visual or audio materials to ME or DMXEPG screens
(f) it allows service providers to create more than one variant of DMXEPG pages, and without subscriber input associate the specific DMXEPG variant to subsets of subscribers. These subscriber subsets can be defined by one or more criteria. For example, subscriber demographic data, capabilities of subscriber device, or capabilities of service provider head-end equipment, etc.
(g) it simplifies for subscribers channel, program, and iTV application selection, usage of interactive TV applications and DMXEPG by using available buttons on the remote control in conjunction with the optional rotating element integrated into the remote control
(h) it allows subscribers to customize DMXEPG page which can be set to display in some or all MEs either channels, programs or interactive applications chosen by the subscriber
(i) it allows subscribers to choose currently broadcasted or upcoming show which are organized according to their type, business rules or service provider, or client equipment capabilities (j) it allows subscribers to choose desired program among currently broadcasted or soon to be broadcasted audio or video programs based on their visual representation
(k) it allows subscribers using services of multiple digital TV or digital radio service providers, to choose desired program from a single programming guide and also use the same programming guide to choose desired program stored either locally or remotely
(l) it allows subscribers using programming guide to access value added
services, like VOD, which are integrated into related ME of DMXEPG. For example, ME displaying currently broadcasting or soon to be broadcasted show can have embedded sign indicating to subscribers availability of previously broadcasted episodes of the same show over VOD service
(m) it allows to created application on devices with more than one tuner that can simultaneously display video and applications graphics of that application on more than one display, for example allowing subscribers to view and navigate DMXEPG on one display, which can be a touch screen display, and view selected show on another display
(n) it allows subscribers with devices with multiple tuners to simultaneously view DMXEPG on one portion of the screen while viewing desired program delivered from local or remote source on the other portion of the screen.
(o) it allows subscribers to record desired program along with metadata of related services like TV commerce, interactive advertisement, VOD, interactive TV applications, and others
(p) it allows to virtually increase size of displayed video in the ME to improve content recognition by the subscriber by zooming in and truncating source video
(q) it allows subscribers to search channels by channel name
(r) it allows subscribers to create one or more customized DMXEPG channel line up by reassigning channel numbers to numbers selected by the subscriber. For example, subscriber can group desired channels by assigning numbers to the channels that would allow channels to be located closely to each other during channel surfing. This system can be implemented by processing original channel line up on the client side or on the headend side
(s) it allows to create content representation system using ME which is a visual and or audio representation, in addition to the textual description, of accessible content (information) or representation of content category and type.
(t) it allows subscriber to browse, view, and select desired program from all subscriber accessible content information using DMXEPG which comprises ME
(u) it allows to pre-search and display to subscribers related information including showing times, channel number, or location (VOD, PVR) of past or upcoming episodes of the show in the selected ME. For example, subscriber reviewing a show in specific ME, can ascertain show times of upcoming or past episodes as well as VOD ordering or PVR start play options
(v) it allows to indicate to subscribers availability of video trailer or show video preview or related value added service stored on PVR, network PVR, or VOD server on ME representing currently broadcasted or soon to be broadcasted shows
(w) it allows subscribers to enable content filtering service managed by service provider or third party in addition to or instead of TV Parental Guidance (TVPG) or Motion Picture (MPAA) ratings. For example, based on user preference, DMXEPG service (back-end service suite, client software, or their combination) can deny access to one or more channel, program, or portion of a program in accordance with the criteria managed by either service provider and/or third party.
Various aspects of the present invention are described in the following detailed discussion of an illustrative embodiment of the invention. The embodiment is explained in the figures listed below and in the following detailed discussion.
Following is a lexicography of terminology used in this specification:
“Select” button—STB remote control button shown on some remote controls as “Select”, or “OK”, or “Enter”, or under other equivalent name
DMXEPG—Dynamic Mosaic Extended Electronic Programming Guide
Focus—highlighted or otherwise emphasized screen element
iTV—interactive television. Any content that involves subscriber input and provides response to that input
ME—Mosaic Element
MEC—Mosaic Element Component
pressing a button—the specification discloses a conventional button-based remote control device. However, any suitable control device is contemplated, and it need not necessarily contain buttons which are pressed. It is understood that all references herein to pressing a button refers to activating an action, whether by actual button press or some other action; e.g., a voice command.
Program—any show or event transmitted over a channel
Service Provider—entity that offers video services over cable, satellite, terrestrial digital, video over internet, IPTV, fiber, or other types of infrastructure.
STB—set top box. When applicable, STB may be used as a substitute for the terms Subscriber Device or Client Device. The STB is a device which allows service subscriber to receive and decode digital stream.
VOD—video-on-demand. Service that allows a subscriber to start chosen video program stored by the service provider. Term VOD is also used to substitute term COD (content-on-demand). COD may or may not include video in addition to a combination of audio, interactive, graphical, or any other type of transmittable content.
MTVSS—Matrix TV Server Suite
Tuner-system module that allows to filter desired program stream. For example, program stream can be transmitted over RF network; it can also be transmitted over digital packet delivery network, like Internet.
Following is a list of the reference numerals used in
Following is a list of the reference numerals used in
Aspects of a user interface in accordance with the present invention are explained in detail in the illustrative embodiment of the present invention disclosed below relating to electronic program guides for accessing broadcast content. It will be appreciated by one of ordinary skill that any type of content can be accessed using a user interface that incorporates the various elements disclosed hereinbelow.
Returning to
MTVSS filters all programs by program category, subcategory, and genre. The figure depicts filtering by program subcategory “CARTOONS”. As a result of this data processing, system creates record set of all programs during the next 14 days across multiple channels (uniquely identified by source_id) and multiple head-ends (cable, satellite, or other) with the subcategory “CARTOONS”.
MTVSS will process data set made during step 233 and generate Interactive Mosaic channel insertion schedule for all channels that includes “CARTOONS” programs across multiple head-ends. MTVSS will generate schedule for short period (e.g. 1 day), because EPG schedule might dynamically change even inside 14 days windows.
On the local head-end MTVSS will apply (step 235) the local channel lineup, local business rules (e g channel priorities, non-video interactive mosaic element components), local conditional access rules (e.g. program rating, blackout), “last-minute” listings update data.
After step 235, MTVSS will generate real-time insertion schedule 236 for CARTOON programs which are broadcasted on this local head-end.
Matrix Remote Monitoring Terminal (MRMT) 242 is a web based interface that allows a system operator to access MTVSS. Once authenticated, the system operator accesses tasks and processes enabled by his security level. The system operator can perform a number of functions including: retrieval of Matrix Meta Data Server status, retrieval of Matrix Scheduler status, retrieval of Matrix SuperSplit status, and retrieval of logs, traces, and statistics for all MTVSS components. Matrix remote management portion of MRMT is a web based interface that allows the system operator to access MTVSS. Depending on granted permissions, the system operator can manage specific tasks and processes. The system operator can perform the following functions: start and stop any process on any MTVSS component, update configuration parameters for any MTVSS component.
Matrix Meta Data Server 243 comprises four components: Data Delivery Manager, Data Translation Manager, Data Cache Manager, and Matrix National resolution EPG database.
-
- Data Delivery Manager (DDM) is designed to retrieve EPG data from data aggregator server and store data in the local database. Data Delivery Manager can be customized with configuration file which includes data delivery schedule and secure connection login parameters (e.g. secure ftp connection). DDM can deliver data from multiple data sources (e.g. Tribune Media Services, TV Guide, TV-Anytime).
- Data Translation Manager (DTM) translates and converts original EPG data using Data Translation Plug-ins (DTP). DTM may support multiple DTPs for different EPG data providers (e.g. one for TMS, one for TV Guide, etc.).
- Data Cache Manager provides database interface for all MMDS tasks.
- Matrix National resolution EPG database stores original EPG data (retrieved from EPG aggregation server) and data translated to the Matrix Meta Data database. This database stores the channel lineup for all service providers in a region.
Matrix Scheduler (MS) 244 receives and retrieves the following data:
-
- Matrix Local resolution EPG database data (for specific head-end, or set of head-ends) from Matrix Meta Data Server.
- Additional conditional access data (e.g. program rating, program blackout, etc.) from local digital access controller (e.g. DAC 6000—Motorola head-end, DNCS—Scientific Atlanta head-end, DCAS server).
- “Last minute” program update data from EPG listings update terminal 245
- Enhanced data and Interactive Application insertion Terminal (EIAT) 247. EIAT provides data for all mosaic element components except “video program selected by service provider” e.g.:
- Images
- Video loops
- Audio loops
- Interactive applications
- Still images
- Texts
- Interactive advertisement
- Content Filtering Criteria received from either service provider or third party.
Matrix scheduler comprises five major components: Local Headend Configuration Manager, STB Mosaic Gill Configuration Manager, DMXEPG Application Configuration Manager, Mosaic Meta Data generator, and Matrix Local resolution EPG database importer. Local Headend Configuration Manager is designed to apply local technical (e.g. channel lineup, MPEG2/DCII SI/PSIP tables configuration) and business rules (e g channel assignment priority) to the final program mosaic video stream and mosaic meta data. STB Mosaic Gill Configuration Manager allows a service provider to configure the graphical user interface and provides navigation for the DMXEPG Client application.
Mosaic meta data generator builds Interactive Mosaic descriptor, Interactive Mosaic Master Table, control and scheduling data for the Matrix SuperSplit, and additional mosaic meta data discussed in more detail below. Matrix Local resolution EPG database importer stores EPG listings data in the local database.
Real time or manual EPG listings update terminal 245 is a web based interface that allows system operator to update EPG listings data on local and national head-end before broadcasting.
Matrix Scheduler Configuration terminal 246 is a web based interface that allows system operator to configure program mosaic video stream, DMXEPG Client Application, insert local technical information, insert local business rules, and assign mosaic element components (
Enhanced data and Interactive application Insertion terminal 247 is a web based interface that allows system operator to insert/assign mosaic element components (
-
- Tune to the scheduled channel and program using Matrix Scheduler control information
- Compose mosaic video stream
- Compose mosaic audio stream
- Encapsulate Interactive Mosaic private data
- Encapsulate modified Service Information tables
The MSS receives:
-
- private interactive mosaic tables descriptors, mosaic element components scheduling data (for example, which broadcasted video program should be inserted in the final mosaic video stream) from Matrix Scheduler
- additional mosaic element components content (e.g., video/audio loops) from Enhanced data and Interactive application Insertion terminal 247
- video feed which includes all channels sent by service provider
The MSS composes the final mosaic digital stream which comprises:
-
- Mosaic video stream
- Multiple audio streams, if applicable
- DMXEPG Client Application, if applicable
- Modified Service Information Data (E.g. PMT, SDT, CVT), if applicable
- Private Interactive Mosaic tables and descriptors
- QAM/upconverter 249 (or its IPTV equivalent) modulates Matrix SuperSplit output
- RF combiner 2410 (or its IPTV equivalent) combines original video feed with the Interactive Mosaic Virtual channel.
-
- For “non-video” mosaic components (e.g. image, text, application):
- Dynamically change position of the mosaic element with the “non-video” mosaic component. In this case we have to regenerate mosaic video feed by MSS 248 and interactive mosaic private tables/descriptors by MS 244.
- Dynamically rotate multiple “non-video” mosaic components, using transition effects (e.g. rotate weather application and market stock application)
- Dynamically change text/images positioning inside static mosaic element
- For Mosaic screen background:
- try do not use gaps between video cells
- Dynamically change mosaic screen background
- Use transition effects during background image update
- Use intelligent timeout for mosaic creeping line
- For “non-video” mosaic components (e.g. image, text, application):
-
- In band data carousel (e.g. DSMCC)
- In band private tables or message (MPEG2—private section, DCII—text message)
- VBI data
- Return path interactive channel
- Out of band data carouse
- Out of band private messaging
DMXEPG-C also can be stored in the available medium such as flash memory, hard drive, or another STB's persistent storage as STB's resident application. There are two scenarios to activate DMXEPG-C, depending on its location.
The interactive mosaic descriptor can be located in the following MPEG 2/ATSC SIIPSIP /DVB SI tables:
-
- ATSC PSIP:
- Virtual Channel Table (VCT)
- Satellite_virtual_channel( )—descriptors loop
- SMATV_virtual_channel( )—descriptors loop
- Broadcast_virtual_channel(}—descriptors loop
- Virtual_channel( )—descriptor loop
- DVB SI
- Service Description Table (SDT)-descriptors loop
- MPEG2
- Program Map Table (PMT)
- TS_program_map_secition( )-program_info descriptor loop
- Program Map Table (PMT)
A digital program which carries interactive mosaic can include the interactive mosaic descriptor inside its Program Map section in the program information descriptors loop.
The resource locators' descriptors and Interactive Mosaic Resources Table and Interactive Mosaic Application Table are protocol/transport depended (may be one for DVB SI, one for ATSC PSIP, one for OCAP, one for DSMCC).
a) MTVSS-N1 291 generates local real-time program insertion schedule in the national network operation centre (NNOC) and delivers the data to the local Matrix SuperSplit server(s), which generates DMXEPG screens.
b) MTVSS-N1 292: local video stream generates by the Matrix SuperSplit server(s) located in NNOC. This option has better scalability because it does not require any changes on a local head-end where DMXEPG screens are delivers over existing digital TV infrastructure.
c) MTVSS-L 293 generates local real-time program insertion schedule using local Matrix Scheduler Server(s) and delivers the data to the local Matrix SuperSplit server(s), which generates DMXEPG screens.
The MTVSS implementation in 295 consists of Matrix Scheduler as part of subscriber device. That configuration allows subscriber or third party to control ME mosaic element presentation criteria. The criteria service provider can be any third party that provides mosaic element presentation criteria that is used by the Matrix Scheduler. The criteria service provider can be the manufacturer of the client subscriber device. The criteria service provider can be the subscriber. In the general case, the mosaic element presentation criteria may comprise criteria from any combination of third party providers, the manufacturer, and/or the subscriber.
Mosaic element presentation criteria can be delivered using any suitable delivery medium including an Internet connection, a dial-up service, over the airwaves, satellite link, cable link, and so on. The subscriber can be provided with criteria on a CD that can be installed in the subscriber device.
Numerous combinations of aspect ratios of video sources and aspect ratios of the display area are possible. Typical combinations include:
a 16×9 video source converted to a 4×3 ME
a 4×3 video source converted to a 16×9 ME
a 16×9 or a 4×3 video source converted to an ME of non standard aspect ratio.
To virtually increase the size of the video, it is necessary to clip a percentage of the original video feed (which is usually lost because of TV overscan) and scale it to the size and aspect ratio of the target ME. As shown in
To further illustrate this clipping aspect of the present invention,
Other aspect ratios can be accommodated.
22a: The HScreen instance (HScreen class which is defined by HAVi I OCAP IMHP) represents a physical primary display device.
22b: The HScreen instance (HScreen class which is defined by HAVi I OCAP I MHP) represents a physical secondary display device.
23a,23b,23c: The HScreenDevice objects, instances of HGraphicsDevice class (HGraphicsDevice class which is defined by HAVi I OCAP I MHP), represents the graphics layers that belong to the primary display device. 23d,23e,23f: The HScreenDevice objects, instances of HGraphicsDevice Class (HGraphicsDevice class which is defined by HAVi I OCAP I MHP), represents the graphics layers that belong to the secondary display device.
24a,24b,24c: The HScreenDevice objects, instances of HVideoDevice class (HVideoDevice class which is defined by HAVi I OCAP I MHP), represents the video layers that belong to the primary display device.
24d,24e,24f: The HScreenDevice objects, instances of HVideoDevice class (HVideoDevice class which is defined by HAVi I OCAP I MHP), represents the video layers that belong to the secondary display device.
25a: The HScreenDevice object, instance of HBackgroundDevice class (HBackgroundDevice class which is defined by HAVi I OCAP I MHP), represents the background layer that belongs to the primary display device.
25b: The HScreenDevice object, instance of HBackgroundDevice class (HBackgroundDevice class which is defined by HAVi I OCAP I MHP), represents the background layer that belongs to the secondary display device.
A subscriber, in accordance with the invention, accesses DMXEPG main page which displays content categories grouped by genre, language, broadcaster name, geographical location of the broadcaster, or other pre-set criteria. For example, content can be grouped by genre in “News”, “Movies”, “Sitcoms”, “Cartoons”, “Sports”, and “Favorite” categories
If subscriber wants to observe more choices in a particular content category, he can press “ENTER” button on the remote control or depress optional rotating element 301 which brings subscriber to another DMXEPG page
With the set-top box with 2 or more tuners, in accordance with the invention, subscriber, after accessing mosaic DMXEPG landing page, selecting content category, and viewing corresponding DMXEPG page is given the option of selecting any video stream, including video from other sources like DVD player, on one ME while observing DMXEPG elements on the rest of the screen
With the set-top box with 2 or more tuners, in accordance with the invention, subscriber, after accessing DMXEPG screen, can optionally select size of ME in focus by pressing “ENTER” or any other button assigned to that function. In case of subscriber device capable of three dimensional rendering, subscriber can also choose Z coordinate of ME.
Service Provider, in accordance with the invention, can dynamically change rules responsible for dynamic association of channels with the mosaic DMXEPG elements. For the main landing page, service providers can choose to change displayed content categories, advertisement, or other visual or audio data depending on the time of the day, day of the week, customer demographic data, capabilities of customer premises equipment, and capabilities of the head-end equipment, as well as its business needs.
Claims
1. A method of generating a user interface (UI), the method comprising:
- receiving, via a plurality of receivers, at a client device, a plurality of content streams, each content stream comprising: video content, provided by one of a plurality of different service providers via a plurality of channels; and channel map data comprising: a plurality of source identifiers each identifying one of the plurality of channels in the content stream; and a plurality of descriptors, each descriptor associated with one of the source identifiers and each descriptor associated with a portion of the video content corresponding to a channel identified by the one source identifier;
- extracting, via a processor at the client device, the channel map data from each of the content streams provided by the plurality of different service providers;
- generating, via the processor at the client device, merged channel map data which associates each of the received plurality of source identifiers with (i) one of a plurality of receiver identifiers each identifying one of the plurality of receivers and (ii) the one of the plurality of descriptors;
- displaying, on the UI, a first merged channel map comprising each of the plurality of channels of the merged channel map data, extracted from each of the content streams,
- receiving one of: (i) a first user input selection to perform channel auto merge; and (ii) a second user input selection to perform manual auto merge;
- resolving one or more channel conflicts, for the plurality of channels displayed on the UI, by: when the first user input selection to perform channel auto merge is received, automatically merging one or more of the plurality of channels for display on the UI as a second merged channel map; and when the second user input to perform manual channel merge is received, receiving user input selections to manually merge the one or more channels on the UI for display and, in response to the user input selections, merging the one or more channels for display on the UI as the second merged channel map; displaying, on the UI, the second merged channel map, comprising the one or more merged channels, in at least one of a numerical order of channel numbers and an alphabetical order of channel identifiers; and receiving a third user input to reassign the channel numbers for the channel numbers displayed on the second merged channel map, displaying, simultaneously with the second merged channel map: a virtual channel map which displays a list of selectable channel elements, each comprising one of the channel identifiers and a reassigned channel number, in at least one of a numerical order of the reassigned channel numbers and an alphabetical order of the channel identifier; a first alphabetic sorting selectable element for sorting the second merged channel map in the alphabetical order of the channel identifiers and a first numerical sorting selectable element for sorting the second merged channel map in the numerical order of the channel numbers; and a second alphabetic sorting selectable element, separate from the first alphabetic sorting selectable element, for sorting the virtual channel map in the alphabetical order of the channel identifiers and a second numerical sorting selectable element, separate from the first numerical sorting selectable element, for sorting the second merged channel map in the numerical order of the reassigned channel numbers;
- wherein selection of one of the selectable channel elements, comprising a channel identifier and a reassigned channel number, on the virtual channel map displayed on the UI causes presentation of the portion of the video content, currently available for display, by tuning the client device for the portion of the content.
2. A processing apparatus comprising:
- a plurality of receivers, each receiver configured to receive one of a plurality of different content streams, each content stream comprising: video content provided by one of a plurality of different service providers via a plurality of channels; and channel map data comprising: a plurality of source identifiers each identifying one of the plurality of channels in the content stream; and a plurality of descriptors, each descriptor associated with one of the source identifiers and each descriptor associated with a portion of the video content corresponding to a channel identified by the one source identifier;
- memory configured to store each of the plurality of source identifiers; and
- a processor in communication with the memory and the plurality of receivers, the processor configured to: cause each receiver to extract the channel map data from each of the plurality of different content streams using the stored plurality of source identifiers; and generate merged channel map data by associating each of the stored plurality of source identifiers with (i) one of a plurality of receiver identifiers each identifying one of the plurality of receivers and (ii) one of the plurality of descriptors; and
- wherein,
- each of the plurality of channels of the merged channel map data, which is extracted from each of the content streams, are displayed as a first merged channel map on the UI,
- one of: (i) a first user input selection to perform channel auto merge; and (ii) a second user input selection to perform manual auto merge is received;
- one or more channel conflicts, for the plurality of channels displayed on the UI, are resolved by: when the first user input selection to perform channel auto merge is received, automatically merging one or more of the plurality of channels of the displayed first merged channel map for display as a second merged channel map on the UI; and when the second user input to perform manual channel merge is received, receiving user input selections to manually merge the one or more channels of the displayed first merged channel map and, in response to the user input selections, merging the one or more channels for display as a second merged channel map on the UI;
- the one or more merged channels are displayed on the UI as a second merged channel map in at least one of a numerical order of channel numbers and an alphabetical order of channel identifiers,
- a third user input, is received, to reassign the channel numbers for the channel numbers displayed on the second merged channel map,
- the second merged channel map is displayed simultaneously with: a virtual channel map which displays a list of selectable channel elements, each comprising one of the channel identifiers and a reassigned channel number, in at least one of a numerical order of the reassigned channel numbers and an alphabetical order of the channel identifier; a first alphabetic sorting selectable element for sorting the second merged channel map in the alphabetical order of the channel identifiers and a first numerical sorting selectable element for sorting the second merged channel map in the numerical order of the channel numbers;
- a second alphabetic sorting selectable element, separate from the first alphabetic sorting selectable element, for sorting the virtual channel map in the alphabetical order of the channel identifiers and a second numerical sorting selectable element, separate from the first numerical sorting selectable element, for sorting the second merged channel map in the numerical order of the reassigned channel numbers; and
- selection of one of the selectable channel elements, comprising a channel identifier and a reassigned channel number, on the virtual channel map displayed on the UI causes presentation of the portion of the video content, currently available for display, by tuning the client device for the portion of the content.
Type: Application
Filed: Nov 16, 2020
Publication Date: Jul 29, 2021
Applicant: WEBTUNER CORPORATION (Redmond, WA)
Inventors: Arthur Vaysman (San Jose, CA), EDUARD ZASLAVSKY (Issaquah, WA)
Application Number: 17/099,424