Dynamically adjustable electronic program guide

By dynamically adjusting the EPG on the mobile device, the additional information of the video is automatically displayed, which solves the problem of truncating the video information on the small display screen, and improves the efficiency of the user interface and the utilization of computing resources.

CN114584813BActive Publication Date: 2025-05-02GOOGLE LLC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210073264.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2017-06-19
Filing Date
2018-03-30
Publication Date
2025-05-02
Estimated Expiration
2038-03-30

AI Technical Summary

Technical Problem

On mobile computing devices with small display screens, video information in the Electronic Program Guide (EPG) is easily truncated or unreadable, resulting in increased user interaction and high computing resources consumption.

Method used

By dynamically adjusting the EPG in the user interface on the mobile computing device, automatically modifying the amount of information and information type, and automatically displaying additional information for specific videos in the focus area of ​​the EPG in response to user interaction.

Benefits of technology

Reduces the computing resources initiated by users on mobile devices, improves the readability of video information and the efficiency of user interfaces, and reduces the number of user interactions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114584813B_ABST
    Figure CN114584813B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a dynamically adjustable electronic program guide. A processing device receives metadata for a media content item and displays a cell for the media content item in an overview area of ​​an electronic program guide (EPG). The cell includes a subset of the metadata for the media content item. The processing device receives a selection of a media content item and moves a cell including the subset of metadata for the selected media content item from the overview area to a focus area in the EPG. In response to determining that a scheduled duration for the selected media content item does not satisfy a condition related to a maximum time interval of the focus area, the processing device adjusts a timeline of the focus area based on the scheduled duration of the selected media content and replaces the subset of metadata in the cell in the focus area with extended metadata for the selected media content item.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Description of the case

[0002] This application is a divisional application of Chinese invention patent application No. 201880028627.4, with a filing date of March 30, 2018. Technical Field

[0003] Aspects and embodiments of the present disclosure relate to electronic program guides (EPGs), and more particularly to dynamically adjustable EPGs. Background Art

[0004] The EPG may include a schedule for playing a media content item (e.g., a video). The EPG may include information about the video to be played, such as a title and a scheduled time. When the EPG is displayed on a user device (e.g., a mobile phone) that may have a small display, the information about the video in the EPG may be truncated or unreadable due to the small screen size. Summary of the invention

[0005] Aspects and embodiments of the present disclosure improve upon EPG technology by dynamically adjusting an electronic program guide (EPG) in a user interface (UI) on a mobile computing device to display additional information for a particular video. The technology can dynamically and automatically modify the amount and type of information being displayed for a video in the EPG. In one embodiment, the EPG can be automatically and dynamically adjusted in response to a single user's interaction with the EPG. The EPG can include a focus area that automatically displays additional information for a particular video.

[0006] According to one aspect of the present disclosure, a method implemented by a mobile computing device is provided, comprising: receiving metadata for a plurality of media content items, wherein the metadata includes a scheduled duration for streaming each of the plurality of media content items; displaying a plurality of cells for the plurality of media content items in an overview area in an electronic program guide (EPG) in a user interface, the plurality of cells including a subset of metadata for the corresponding media content items; receiving input of a selection of one of the plurality of media content items via the EPG in the user interface; moving the cell including the subset of metadata for the selected media content item from the overview area to a focus area in the EPG; in response to determining that the scheduled duration for streaming the selected media content item does not satisfy a condition related to a maximum time interval of the focus area, adjusting a timeline of the focus area based on the scheduled duration for streaming the selected media content item via a processing device; and replacing the subset of metadata in the cell in the focus area with extended metadata for the selected media content item.

[0007] The mobile computing device may include the processing device. The user interface may be displayed on a display unit coupled to the mobile computing device. The input may be provided by a user associated with the mobile computing device.

[0008] The method may further include adjusting a width of a cell of the selected media content item based on the maximum time interval of the focus area.

[0009] The method may further include determining that the selected media content item is currently being streamed; and playing a sample of the selected media content item in the focus area.

[0010] The sample may be played as an underlay for a display of extended metadata for the selected media content item.

[0011] The method may further comprise displaying an image of a frame of the selected media content item in the focus area as a base for display of extended metadata for the selected media content item in the focus area.

[0012] The method may further include adjusting widths of remaining cells of the plurality of cells in the overview area based on the adjusted timeline of the focus area.

[0013] The method may further include displaying a preview area adjacent to the focus area in the EPG, the preview area including a cell representing another media content item scheduled to be played immediately after the selected media content item, the cell including at least a portion of additional metadata for the other media content item.

[0014] The method may further include: receiving input of a selection of the cell in the preview area; moving the cell from the preview area to the focus area; in response to determining that the scheduled duration for streaming the other media content item is less than or equal to a maximum time interval of the focus area, adjusting a timeline of the focus area based on the scheduled duration for streaming the other media content item; and in response to determining that the scheduled duration for streaming the other media content item is greater than a maximum time interval of the focus area, adjusting the timeline of the focus area to the maximum time interval.

[0015] The method may further include adjusting a width of the cell moved from the preview area to the focus area to match a width of the focus area.

[0016] The scheduled durations for the plurality of media content items may be based on a playlist of media content items created for a particular user.

[0017] According to another aspect of the present disclosure, a system is provided, the system comprising: a memory storing instructions; a processing device for executing the instructions to: receive metadata for a plurality of media content items, wherein the metadata includes a scheduled duration for streaming each of the plurality of media content items; display a plurality of cells for the plurality of media content items in an overview area in an electronic program guide (EPG) in a user interface, the plurality of cells including a subset of metadata for the corresponding media content items; receive input of a selection of one of the plurality of media content items via the EPG in the user interface; move the cell including the subset of metadata for the selected media content item from the overview area to a focus area in the EPG; in response to determining that the scheduled duration for streaming the selected media content item does not satisfy a condition related to a maximum time interval of the focus area, adjust a timeline of the focus area based on the scheduled duration for streaming the selected media content item via the processing device; and replace the subset of metadata in the cells in the focus area with extended metadata for the selected media content item.

[0018] The processing device may be further configured to adjust a width of a cell of the selected media content item based on the maximum time interval of the focus area.

[0019] The processing device may be further configured to: determine that the selected media content item is currently being streamed; and play a sample of the selected media content item in the focus area.

[0020] The sample may be played as a base for display of extended metadata for the selected media content item.

[0021] The processing device may be further configured to adjust widths of remaining cells of the plurality of cells in the overview area based on the adjusted timeline of the focus area.

[0022] The processing device may be further configured to display a preview area adjacent to the focus area in the EPG, the preview area including a cell representing another media content item scheduled to be played immediately after the selected media content item, the cell including at least a portion of additional metadata for the other media content item.

[0023] According to another aspect of the present disclosure, a non-transitory computer-readable medium is provided, on which instructions are stored. When the instructions are executed by a processing device of a user equipment, the processing device performs the method described herein. BRIEF DESCRIPTION OF THE DRAWINGS

[0024] The various aspects and embodiments of the present disclosure will be more fully understood from the detailed description given below and from the accompanying drawings of the various aspects and embodiments of the present disclosure, however, the various aspects and embodiments of the present disclosure should not be regarded as limiting the present disclosure to specific aspects or embodiments, but are only for illustration and understanding.

[0025] Figure 1A An example of a focus area and an overview area in a dynamically adjustable electronic program guide (EPG) on a mobile computing device is illustrated according to one embodiment of the present disclosure.

[0026] Figure 1B An example of a dynamically adjustable EPG with multiple overview areas according to one embodiment of the present disclosure is illustrated.

[0027] Figure 1C An example of a dynamically adjustable EPG with a preview area according to one embodiment of the present disclosure is illustrated.

[0028] Figure 2 An example of metadata displayed in a dynamically adjustable EPG according to one embodiment of the present disclosure is illustrated.

[0029] Figure 3 An example of selecting a media content item for a focus area in an EPG in an overview area in an EPG and dynamically adjusting a timeline of the focus area based on the selected media content item according to one embodiment of the present disclosure is depicted.

[0030] Figure 4 An exemplary system architecture for embodiments of the present disclosure is illustrated.

[0031] Figure 5 A flow chart depicting aspects of a method for dynamically adjusting an electronic program guide according to one embodiment of the present disclosure.

[0032] Figure 6 An example of selecting a media content item for a focus area in an EPG in a preview area of ​​the EPG and dynamically adjusting a timeline of the focus area based on the selected media content item is depicted according to one embodiment of the present disclosure.

[0033] Figure 7 An example of a width of a cell in an EPG that is dynamically adjustable according to an embodiment of the present disclosure is illustrated.

[0034] Figure 8 An example of an EPG with multiple overview areas is depicted according to one embodiment of the present disclosure.

[0035] Fig. 9 Depicted is an example of a transition from an EPG having one overview area to multiple overview areas according to one embodiment of the present disclosure.

[0036] Fig.10 An example of a system architecture for dynamically adjusting an electronic program guide according to one embodiment of the present disclosure is illustrated.

[0037] Fig.11 A block diagram depicts an example computing device operating in accordance with one or more aspects of the present disclosure. DETAILED DESCRIPTION

[0038] Aspects and embodiments of the present disclosure relate to dynamically adjusting an electronic program guide (EPG) in a user interface (UI) on a mobile computing device to display additional information for a particular video. A video streaming service may be an on-demand online source for videos, TV shows, movies, and other streaming media. Video is used throughout this document as an example of streaming media. The technology of the present disclosure may dynamically and automatically modify the amount and type of information being displayed for a video in an EPG. For example, an EPG may include a schedule for playing videos and information for each video. In a traditional EPG, the type of information being displayed for each video is typically the same. For example, an EPG may include a title for each video and a scheduled time for playing each video. When an EPG is displayed on a mobile computing device with a small display screen, a small font size is typically used to display information for each video and / or a limited amount of video information is displayed. A user typically has to manually zoom in on the user interface to read the information and zoom out on the user interface to display more of the EPG. Information may also be limited and / or truncated due to a smaller display. For example, if the title of a video is too long for the EPG on a small display, the EPG may include a truncated title for the video or an incomplete title for the video. The user may have to trigger another user interface window (e.g., a pop-up window) to display the full title for the video, and may have to close the pop-up window to return to the display of the EPG. Traditional EPGs process a large number of user interface commands to perform a large number of user interactions. Embodiments can solve problems associated with displaying EPG information on a mobile computing device with a display screen with limited display area.

[0039] Various aspects of the present disclosure improve electronic program guide technology by dynamically adjusting the type and / or amount of video information being displayed in an EPG. Additionally, cells including video information may also be dynamically adjusted to present additional information included in the cells. In one embodiment, dynamic adjustment of the EPG may be automatically performed in response to a single user's interaction with the EPG. The EPG may include a focus area that automatically displays additional information for a particular video. Therefore, described herein in various embodiments is a technique for providing a greater amount of information for a video on a display of a mobile device while processing a reduced number of user interface interactions. For example, a user does not need to initiate multiple operations of generating a pop-up window and / or closing a pop-up window to access additional video information. Advantages of the disclosed embodiments may include reducing the amount of computing resources (e.g., memory and / or processing) induced on a mobile computing device.

[0040] Figure 1A An example of a focus area and an overview area in a dynamically adjustable EPG 140A on a mobile computing device 102 according to one embodiment of the present disclosure is illustrated. The EPG 140A may be displayed in a user interface. The user interface may be a graphical user interface. The EPG 140A may include a focus area 150A that automatically displays additional information for a particular media content item (e.g., a video) selected by a user, as described below in conjunction with Figure 2-3 Media content items may include, but are not limited to, digital videos, digital movies, digital photos, digital music, website content, social media updates, etc. Video is used throughout this document as an example of a media content item.

[0041] The EPG 140A may include an overview area 157A that displays limited information about other media content items (e.g., videos) scheduled to be played, as described below in conjunction with Figure 2-3 As described in more detail, the focus region 150A may be located in the top portion, the middle portion, or the bottom portion of the EPG 140A. The content in the focus region 150A and the overview region 157A may be scrollable.

[0042] Focus region 150A may have width 121. Configuration data may include a maximum width parameter and a minimum width parameter for focus region 150A. Width 121 of focus region 150A may be dynamically adjusted to correspond to (e.g., match or be no greater than or less than) the maximum width or minimum width specified in the configuration data, as described below in conjunction with Figure 3 Described in more detail.

[0043] The focus area 150A may be associated with a time interval and the timeline 103 may be displayed based on the time interval. An interval is a measure of the difference in time defined by a start time and an end time. For example, a 30 minute time interval may be assigned to the focus area 150A, and the timeline 103 may have a start time of 8:00 pm and an end time of 8:30 pm. In one embodiment, the start time of the timeline 103 (e.g., 8:00 pm) corresponds to the scheduled start time of the video selected for the focus area 150A. In another embodiment, the start time of the timeline 103 (e.g., 8:00 pm) is the current time.

[0044] The time interval and display of the timeline 103 can be adjusted dynamically, such as in the following combination Figure 3 100A. The focus area 150A may have a maximum time interval. In one embodiment, the maximum time interval is 30 minutes. The maximum time interval may set a limit on the time period represented by the timeline 103. For example, the timeline 103 may not extend beyond a 30 minute time interval. The parameters (e.g., width, maximum time interval) of the focus area 150A may be defined by configuration data, as described below in conjunction with Figure 4 Described in more detail.

[0045] EPG 140A may be presented in a layout corresponding to the orientation of mobile device 102. For example, EPG 140A may have a landscape layout when mobile device 102 has a landscape (horizontal) orientation and a portrait layout when mobile device 102 has a portrait (vertical) orientation.

[0046] Figure 1B An example of a dynamically adjustable EPG 140B with multiple overview regions 157B, 157C is illustrated according to one embodiment of the present disclosure. The focus region 150B may display additional information for a particular video. The multiple overview regions 157B, 157C may each display limited information about other videos scheduled to be streamed and played. In one embodiment, the focus region 150B is between multiple overview regions (e.g., overview region 157B and overview region 157C). The content in the focus region 150B and overview regions 157B, 157C may be scrollable.

[0047] Figure 1CAn example of a dynamically adjustable EPG 140C with a preview area according to one embodiment of the present disclosure is illustrated. The EPG 140C includes a focus area 150C, an overview area 157A, and a preview area 155. The content in the focus area 150C, the overview area 157A, and the preview area 155 may be scrollable. The preview area 155 displays additional information about an upcoming scheduled video to be played after the selected video being displayed in the focus area 150C. In one embodiment, the preview area 155 is adjacent to the focus area 150C along a horizontal axis. In one embodiment, the height of the preview area 155 is the same as the focus area 150C. In conjunction with the following Figure 6 The width of the preview area is described in more detail. In one embodiment, the preview area 155 and the focus area 150C display information of the video to be streamed via the same channel. Figure 2 Describe the channel in more detail.

[0048] Figure 2 An example of metadata displayed in a dynamically adjustable EPG 240 according to an embodiment of the present disclosure is illustrated. The EPG 240 may include information for a schedule of a streaming content item (e.g., a video). In one embodiment, the schedule is predefined. In another embodiment, the schedule is dynamically defined in real time. In yet another embodiment, a portion of the schedule is predefined and another portion is dynamically defined in real time. As used herein, the term real time is used to indicate an event that occurs close in time to its cause (e.g., without unnecessary delays). For example, the real-time scheduling of one or more videos involves determining that the video has completed playback, and based on an analysis of a group of videos associated with a user (e.g., played by the user, liked by the user, shared by the user, etc.), a selection or determination of the video to be played next is made in real time (e.g., within a predefined time limit (such as 0.1 seconds or 0.5 seconds) of the video completion). In one embodiment, the selection of which videos will be streamed and played is based on videos that the user has watched, liked, shared, added to a playlist, commented on, subscribed to (as part of a channel subscription or separately), etc.

[0049] The EPG 240 may include a visual representation of the scheduled video. In one embodiment, the visual representation is a cell (e.g., cell 204, cell 206, cell 207, cell 208, cell 209, cell 210, and cell 211). The cells may be located in the focus area 250 or in the overview area 257. For example, the focus area 250 includes the cell 204, and the overview area 257 includes the cells 206, 207, 208, 209, 210, 211.

[0050] The cell may display schedule time data (e.g., start time, end time) for the corresponding scheduled video. The cell may display a video identifier (e.g., video title) for the corresponding scheduled video. The cells in the focus area 250 may include expanded information compared to the information in the cells in the overview area 257. The expanded information may refer to complete information and / or information in addition to the information displayed in the overview area 257. For example, the cell 204 in the focus area 250 includes the full title "Standup Comedy Show", a full display of the scheduled start time and the scheduled end time, and a description 205 of the content of the video "Standup Comedy Show".

[0051] Due to the width of overview area 257 and the width of individual cells in overview area 257, some of the cells in overview area 257 include incomplete titles and / or truncated titles. For example, cell 207 in overview area 257 may represent a video with a full title "The Big Brown Fox", while the title displayed in cell 207 may be an incomplete title "The Big Br...". In another example, in overview area 257, cell 210 may represent a video with a full title "Nature Show", while the title displayed in cell 210 may be an incomplete title "Natur...".

[0052] One or more of the scheduled videos may be associated with a content provider. A video streaming service provider may assign channels to content providers, and the content provider may stream videos via corresponding channels according to a schedule. A channel may be data content available from a public source or data content with a public topic or theme. The data content may be digital content selected by a user, digital content provided by a user, digital content uploaded by a user, digital content selected by a content provider, digital content selected by a broadcaster, and the like. EPG 240 may include a channel identifier. The channel identifier may be an image and / or text. The image may be a logo of a content provider assigned to a corresponding channel. For example, channel identifier 245 may be a logo image for an ACME network. In one embodiment, EPG 240 includes a channel identifier for video content being displayed in focus area 250. The channel identifier for focus area 250 may be adjacent to focus area 250.

[0053] The EPG 240 may include a channel axis with channel identifiers along the axis. In one embodiment, the channel axis is a vertical axis. The cells for videos in the EPG 240 may be arranged by content providers and / or channels. For example, a cell 206 for the video "Short Program" and a cell 207 for the video "The Big Br..." are aligned horizontally with the ACME-FAM channel.

[0054] The EPG 240 may include a time axis. In one embodiment, the time axis is a horizontal axis. Video representations (e.g., cells) may be positioned in the EPG 240 based on time and may correspond to the timeline 203 of the focus area 250. For example, the video "Short Program" may be scheduled to play at 8:00 pm on the ACME-FAM channel, and the left side of the cell 206 for the video "Short Program" is aligned with "8:00 pm" in the timeline 203. In another example, the video "The Big Br..." may be scheduled to play at 8:15 pm on the ACME-FAM channel, and the left side of the cell 207 for the video "The Big Br..." is aligned between "8:00 pm" and "8:30 pm" in the timeline 203. It should be understood that the timeline for the videos in each EPG discussed in this document is 8:00 pm for illustrative purposes.

[0055] As depicted, due to the small screen size of the display, overview area 257 includes cells (e.g., cells 206, 207, 208, 209, 210, 211) that display limited metadata, as opposed to the extended metadata being displayed for the video in focus area 250. Figure 4 The various types of metadata are described in more detail. A subset of metadata is a limited set of metadata that refers to incomplete metadata (e.g., incomplete title, incomplete start time, incomplete end time), truncated metadata, and a number of types of metadata that is less than the number of types of metadata in the focus area 250. Extended metadata may include complete metadata (e.g., full title) and additional metadata types (e.g., description, statistics, rating, thumbnail) that are not displayed in the overview area 257.

[0056] Figure 3An example of selecting a media content item for a focus area in an EPG in an overview area and dynamically adjusting a timeline of the focus area based on the selected media content item is depicted according to one embodiment of the present disclosure. EPG 340A depicts cells in focus area 350A and cells in overview area 357A when a user selects a video for focus area 350A from overview area 357A. For example, a user may select (e.g., tap) location 301 and swipe in a vertical direction (e.g., bottom-up) to scroll cells in overview area 357A upward toward focus area 350A. In one embodiment, the swipe gesture is interpreted as a selection of a video (e.g., "Short Program") that is scheduled next for streaming, represented by the topmost cell (e.g., cell 306A) in overview area 357A. In another embodiment, the input for selection may be a user selecting a cell (e.g., selecting cell 306A via location 301), dragging the selected cell (e.g., cell 306A) to focus area 350A, and releasing the dragged cell. In the overview area 357A in the EPG 340A, the cell 306A for the selected "Short Program" video includes a limited set of metadata for the selected video. For example, the cell 306A includes a title and a scheduled duration.

[0057] In response to selection of a video, cell 306A for the selected video is automatically moved to focus region 350A. EPG 340B is a dynamically adjusted version of EPG 340A and depicts cell 306B in focus region 350B and cells in overview region 357B after cell 306A has been moved to focus region 350A.

[0058] There may be one or more conditions related to a maximum time interval for the focus area. The one or more conditions may be related to whether the scheduled duration for streaming the selected video is less than the maximum time interval, equal to the maximum time interval, and / or greater than the maximum time interval. In an example, the condition may be related to whether the scheduled duration for streaming the selected video is greater than the maximum time, and it may be determined that the scheduled duration for streaming the selected video does not meet the condition when the scheduled duration is less than or equal to the maximum time interval for the focus area. In another example, the condition may be related to whether the scheduled duration for streaming the selected video is greater than or equal to the maximum time interval for the focus area, and it may be determined that the scheduled duration for streaming the selected video does not meet the condition when the scheduled duration is less than the maximum time interval. Satisfaction or non-satisfaction of the one or more conditions may cause the timeline and / or width of the focus area to be adjusted, as described in more detail below.

[0059] The timeline 303A in the focus area 350A (e.g., "8:00pm - 8:30pm") is changed to the timeline 303B for the focus area 350B. The timeline 303A may be adjusted based on the duration of the selected video "Short Program" to create the timeline 303B. If the scheduled duration for streaming the selected video (e.g., "Short Program") does not satisfy the condition related to the maximum time interval of the focus area 350B (e.g., the scheduled duration for streaming the selected video is less than or equal to the maximum time interval of the focus area 350B), the time interval of the timeline 303B for the focus area 350B is created to match the scheduled duration for the selected video. The start time and the end time for the timeline 303B may match the scheduled start time and the scheduled end time for the selected video. For example, the scheduled duration for streaming the selected video "Short Program" (e.g., 8:00 pm-8:15 pm) is less than the maximum time interval of the focus area 350B (e.g., 30 minutes), and the "8:00 pm-8:30 pm" timeline 303A in the EPG 340A is changed to "8:00 pm-8:15 pm" in the timeline 303B in the dynamically adjusted EPG 340B. If the scheduled duration for streaming the selected video meets the condition related to the maximum time interval of the focus area 350B (e.g., the scheduled duration for streaming the selected video is greater than the maximum time interval of the focus area 350B), the time interval of the timeline 303B for the focus area 350B is created to match the maximum time interval.

[0060] A subset of the metadata (e.g., title, duration) in cell 306A in focus area 350B is replaced with expanded metadata for the selected "Short Program" video, as depicted in cell 306B in focus area 350B. For example, the title and duration in cell 306A are replaced with title, duration, description 360 ("This video includes content uploaded by user XYZ on January 1, 2017."), and sample 361, as depicted in cell 306B in focus area 350B. Sample 361 may be an image (e.g., thumbnail) or rendering of a short segment of the video. In some implementations, the extended metadata may be included in cell 306A, but may be obscured and / or truncated due to the reduced size of cell 306A, and a dynamically expanded cell 306B in focus area 350B may display the extended metadata. If the selected video is currently streaming, the portion of the selected video currently being streamed may be played as a sample in focus area 350B. The sample may be played as a background image for the display of extended metadata for the selected video. If the selected video is not currently streaming, an image of a frame of the selected video may be displayed in the focus area 350B as a background image for the display of extended metadata for the selected video.

[0061] The height of the cell 306A that has been moved to the focus area 350B may be adjusted to a default height associated with the focus area 350B. The width of the cell 306A that has been moved to the focus area 350B may be adjusted based on a maximum time interval (e.g., 30 minutes) for the focus area 350B. The width 390 in the focus area 350A depicts the maximum width, and the width 395 in the focus area 350B depicts the minimum width. The maximum width of the focus area and the minimum width of the focus area may be specified in the configuration data.

[0062] If the scheduled duration for streaming the selected video does not satisfy the condition related to the maximum time interval of the focus area (e.g., the scheduled duration for streaming the selected video is less than the maximum time interval of the focus area), the width of the cell for the selected video in the focus area is set to the minimum width 395. If the scheduled duration for streaming the selected video satisfies the condition related to the maximum time interval of the focus area (e.g., the scheduled duration for streaming the selected video is greater than or equal to the maximum time interval of the focus area), the width of the cell for the selected video in the focus area is set to the maximum width 390. In this example, the scheduled duration for streaming the selected video "Short Program" (e.g., 8:00 pm - 8:15 pm) is less than the maximum time interval of the focus area 350B (e.g., 30 minutes), and the width of the cell 306B for the selected "Short Program" video in the focus area 350B is set to the minimum width 395.

[0063] The widths of other cells in overview area 357B may be adjusted based on the adjusted timeline 303B of focus area 350B (e.g., “8:00pm–8:15pm”). For example, in EPG 340A, cell 309A for the video “Mystery Show” has a width 329 that is scaled to the 30-minute time interval (e.g., “8:00pm–8:30pm”) in timeline 303A in focus area 350A. When a 15-minute time interval for timeline 303B is created in adjusted EPG 340B, the width 329B of cell 309B for the video “Mystery Show” is scaled (e.g., expanded) based on the 15-minute time interval (e.g., “8:00pm–8:15pm”) for timeline 303B in focus area 350B. In conjunction with the following Figure 7 Adjusting the width of cells in overview area 357 is described in more detail.

[0064] If the scheduled duration (e.g., “8:00 pm–8:15 pm”) for streaming the selected video (e.g., “Short Program”) is less than the maximum time interval (e.g., 30 minutes) for the focus area, the adjusted EPG 340B may include a preview area 355 adjacent to the focus area 350B. The preview area 355 includes a cell (e.g., cell 307B) representing another video (e.g., “The Big Brown Fox”) that is scheduled to be streamed and played immediately after the selected video (e.g., “Short Program”) on the same channel as the selected video. If the EPG includes a preview area, when the cell 306A for the selected video “Short Program” is moved to the focus area 350B, the cell 307A for the next scheduled video “The Big Brown Fox” is moved to the preview area 355. The width and height of the cell 307B in the preview area 355 may be adjusted based on the width and height specified in the configuration data for the preview area 355. Preview area 355 can have the same height as focus area 350B. In some implementations, the width of preview area 355 is the difference between maximum width 390 and minimum width 395 associated with the focus area.

[0065] The preview area 355 may provide a reminder of information about the next video scheduled to be streamed and played on the same channel as the selected video. Cells 307B in the preview area 355 may include at least a portion of additional metadata (e.g., a description) for the video scheduled to play next. The type of metadata to be included in the preview area 355 may be specified in the configuration data for the preview area.

[0066] When cell 306A for the selected video "Short Program" is moved to focus area 350B, the positions of other cells (e.g., 308A, 309A, 311A) in overview area 357A in EPG 340B are adjusted. For example, the position may be moved up in position. When cell 306A for the selected video "Short Program" is moved to focus area 350B, one or more cells (e.g., cell 310) may not appear in the adjusted EPG 340B. For example, cell 310 is not displayed in the adjusted EPG 340B.

[0067] Figure 4An exemplary system architecture 400 for an embodiment of the present disclosure is illustrated. The system architecture 400 may include one or more client devices 410, one or more video streaming servers 401, and one or more data stores 413 coupled to each other via one or more networks 405. The network 405 may be a public network (e.g., the Internet), a private network (e.g., a local area network (LAN) or a wide area network (WAN)), or a combination thereof. The video streaming server 401 may be hosted on a machine such as, but not limited to, a rack server, a personal computer, a desktop computer, a media center, or any combination thereof.

[0068] The video streaming server 401 can provide video streaming services to one or more client devices 410. A client device is used as an example throughout this document. The video streaming server 401 can stream video to the client device 410. In one embodiment, the video streaming server 401 is a content sharing platform (such as the one described below in conjunction with Fig.10 In one embodiment, the video streaming server 301 is a part of a content provider platform (such as the one described below in conjunction with Fig.10 Part of the content provider platform 1095) described in more detail.

[0069] The video streaming server 401 may host content, such as videos 427 and metadata 425 for each video 427. In one embodiment, the videos 427 and metadata 425 are stored on one or more data stores 413 coupled to the video streaming server 401. The data store 413 may be a persistent storage device capable of storing data. As will be appreciated by those skilled in the art, in some embodiments the data store 413 may be a file server attached to a network, while in other embodiments the data store 413 may be some other type of persistent storage device, such as an object-oriented database, a relational database, etc.

[0070] In one embodiment, the video streaming server 401 streams the video 427 to the client device 410 according to a predefined schedule. In one embodiment, the video streaming server 401 streams the video 427 to the client device 410 according to a playlist or a set of recommended videos dynamically created in real time for a particular user. In one embodiment, the video streaming server 401 creates a schedule of videos to be streamed and stores schedule data 403 for the schedule. In one embodiment, the schedule data 403 is stored in the data storage 413.

[0071] The client device 410 may include an application 413 for playing a media item (e.g., video 427). The application 413 may be, for example, a web browser that can access content served by the video streaming server 401. In another example, the application 413 may be an application (e.g., a mobile application, a smart TV application, a streaming device application) that can access content (e.g., video 427) served by the video streaming server 401. The client device 410 may be a computing device such as a personal computer (PC), a laptop, a mobile phone, a smart phone, a tablet computer, a netbook computer, a network-connected television, etc.

[0072] The client device 410 may receive a video stream for the video 427 from the video streaming server 401, and an application 413 on the client device 410 may render the video on a display coupled to the client device 410 according to the schedule data 403. In one embodiment, the client device 410 receives a video identifier, such as a uniform resource identifier (URI) (e.g., a uniform resource locator (URL)), for the video 427 from the video streaming server 401. The client device 410 uses the URI to obtain the video 427 via an Internet connection through the network 405. The client device 410 receives portions of the video stream and renders the portions on the display as they are received.

[0073] In one embodiment, the video streaming server 401 creates data packets 454 including the videos 427 and metadata 425 for each video 427, and sends the data packets 454 to the client device 410. In one embodiment, the data packets 454 include schedule data 403 for the videos 427. In another embodiment, the schedule data 403 for the videos 427 is in a separate data packet created by the video streaming server 401 and / or sent to the client device 410 separately.

[0074] The types of metadata 425 for each video 427 may include, for example, a video identifier, a description, a creator or owner, a thumbnail representation, a duration, statistics, a release date, a language associated with the corresponding video, a genre (e.g., comedy, drama, etc.), user rating data, critic rating data, movie ratings (e.g., Motion Picture Association of America (MPAA) movie ratings, TV Parental Guide ratings, etc.), a channel associated with the video, one or more keywords associated with the video, and statistics. Examples of statistics may include the number of views, the number of likes, the number of dislikes, the number of shares, the number of playlists that include the video, and the number of comments.

[0075] The client device 410 may generate and display a user interface (UI) on a display coupled to the client device 410. The user interface may be a graphical user interface. The client device 410 may include an EPG component 415 for creating and displaying an electronic program guide (EPG) in the UI. The EPG component 415 may communicate with or be part of the application 413. The EPG may include a schedule for streaming and playing a video 427. The EPG component 415 may extract information from the schedule data 403 and / or metadata 425 received from the video streaming server 401 and fill in a template to create an EPG in the UI.

[0076] The EPG component 415 can dynamically adjust the content displayed in the EPG. The EPG component 415 can display an EPG including a focus area and one or more overview areas. For example, the UI can display Figures 1A to 1C The user may select a video in the EPG, and the EPG component 415 may dynamically change the content in the focus area in the EPG to display extended metadata for the selected video in the focus area. For example, the EPG component 415 may display a truncated title, scheduled start time, and incomplete scheduled end time for the video represented in the overview area. When the user selects a video in the overview area, the EPG component 415 may display, for example, the full title, full scheduled start time, full scheduled end time, and additional metadata types, such as a description, critics' ratings, and users' ratings for the selected video in the focus area of ​​the EPG.

[0077] The client device 410 may store configuration data 417 for the EPG. The configuration data 417 may specify parameters for a focus area, overview area(s), a preview area, channel identifiers, and visual representations (e.g., cells) for videos in the EPG. The configuration data 417 may be configurable and user-defined.

[0078] The parameters for the focus area may specify a maximum time interval for the timeline of the focus area (e.g., 30 minutes), a time format, a maximum width, a minimum width, a height, a location in the UI for the focus area (e.g., top portion, bottom portion, between overview areas), and the types of metadata to include in the focus area (e.g., title, start time, end time, description, user rating, critic rating, thumbnail). For each type of metadata in the focus area, the parameters may also include a font, font size, font style, and a location in a cell in the focus area.

[0079] Parameters for the overview area(s) may specify the number of overview areas for the EPG, the width for the respective overview areas, the height for the respective overview areas, the location for the respective overview areas in the UI (e.g., top portion, bottom portion), and the types of metadata to be included in the cells of the respective overview areas (e.g., title, start time, end time). Parameters for the visual representations (e.g., cells) in the respective overview areas may specify the height for each cell, and for each type of metadata in the cell, the font, font size, font style, and location in the cell in the respective overview area may be specified.

[0080] Parameters for the channel identifier may specify whether to display an image (eg, a logo) and / or a string of the channel identifier, the dimensions of the channel identifier (eg, height, width), and the location in the EPG for the channel identifier.

[0081] Parameters for the preview area may specify whether to include the preview area in the focus area, the width, height, the location in the UI for the preview area (e.g., top portion, bottom portion, between overview area), and the types of metadata to include in the preview area. For each type of metadata in the preview area, the parameters may also include the font, font size, font style, and location in a cell in the preview area. Figure 5 and Figure 6 Describe the preview area in more detail.

[0082] Figure 5 A flowchart depicting aspects of a method 500 for dynamically adjusting an electronic program guide according to one embodiment of the present disclosure. The method 500 is performed by processing logic, which may include hardware (circuitry, dedicated logic, etc.), software (such as software running on a general purpose computer system or a dedicated machine), or a combination of both. In one embodiment, the method 500 is performed by Figure 4 The method 500 is executed by the EPG component 415 in the client device 410. In one embodiment, the method 500 is executed by a processing device of the client computing device.

[0083] At block 510, the processing device receives metadata for a media content item. The metadata may be received from a server (e.g., Figure 4The video streaming server 401 in receives metadata. In one embodiment, the media content item (e.g., video) is scheduled to be streamed and played according to a predefined schedule. In another embodiment, the media content item is scheduled to be streamed and played according to a playlist or recommendation created for a specific user. In one embodiment, the media content item can be dynamically selected for a specific user in real time. For each media content item, metadata may include a scheduled duration for streaming the corresponding media content item. The scheduled duration may be defined by the scheduled start time and end time for the corresponding media content item. The metadata for each media content item may further include, for example, a video identifier, description, creator or owner, thumbnail representation, duration, statistics, release date, language associated with the corresponding video, genre (e.g., comedy, drama, etc.), user rating data, critic rating data, movie rating, channel associated with the video, one or more keywords and statistics associated with the video. Examples of statistics may include the number of views, the number of likes, the number of dislikes, the number of shares, the number of playlists including the video, and the number of comments.

[0084] At block 520, the processing device displays cells for media content items in an overview area in an EPG in a user interface. The cells in the overview area include a finite set of metadata for the corresponding media content items. For example, the finite set of metadata may include a truncated title and / or a truncated scheduled duration. The processing device may extract metadata items from the metadata and populate a template to display the finite set of metadata for the media content items in the cells in the overview area in the EPG.

[0085] At block 530, the processing device receives input of a selection of one of the media content items via the EPG in the UI. The selected media content item may be one of the videos in the overview area of ​​the EPG or a video in the preview area of ​​the EPG. Figure 6 The preview area is described in more detail. In one example, the input is a selection of a cell of a media item. In another example, the input is a sweep gesture for scrolling the contents of the overview area or preview area. In another example, the input is a selection and drag operation of a cell of a media content item to a focus area in an EPG.

[0086] At block 540, in response to the input selection, the processing device moves a cell having a limited set of metadata for the selected media content item to a focus area in the EPG. At block 550, the processing device determines that the scheduled duration for streaming the selected media content item does not satisfy a condition related to a maximum time interval for the focus area. The processing device may determine the scheduled duration for the selected media content item, for example, by extracting the scheduled duration and / or the scheduled start time and end time for the selected media content item from the received metadata. The processing device may compare the scheduled duration with, for example, the maximum time interval for the focus area stored in the configuration data.

[0087] At block 560, the processing device adjusts the timeline of the focus area based on the scheduled duration for streaming the selected media content item. When the scheduled duration is less than or equal to the maximum time interval of the focus area, the processing device may set the time interval for the timeline to match the scheduled duration for the selected media content item. The processing device may set the start time and the end time for the timeline to match the scheduled start time and the scheduled end time for the selected media content item.

[0088] The processing device may also adjust the width of the cell for the selected media content item in the focus area to match the maximum width parameter or the minimum width parameter of the focus area to enable the display of extended metadata in the cell in the focus area. The width of the focus area may be greater than the width of the cell for the selected media content item in the overview area. The processing device may adjust (e.g., expand) the height of the cell for the selected media content item in the focus area to match the height of the focus area to enable the display of additional metadata in the cell in the focus area. The height of the focus area may be greater than the height of the cell for the selected media content item in the overview area. The processing device may adjust the widths of the remaining cells in the overview area based on the adjusted timeline of the focus area, as described below in conjunction with Figure 7 Described in more detail.

[0089] At block 570, the processing device replaces a subset of the metadata in the cells in the focus area with extended metadata for the selected media content item. For example, the extended metadata may include a full title for the selected media content item. The extended metadata may include additional metadata types such as, but not limited to, descriptions, statistics, user's comments, critic's comments, user's ratings, critic's ratings, publication data, content provider, content owner, genre, thumbnail, cast, etc.

[0090] In one embodiment, the processing device determines whether the selected media content item is currently being streamed based on the schedule. If the selected media content item is currently being streamed, the processing device may play a sample of the selected media content item in a cell in the focus area. The sample may be played within a predefined time period specified in the configuration data. The sample may be played in the focus area as a background image for the display of extended metadata for the selected media content item. If the selected media content item is not currently being streamed, the processing device may display an image of a frame of the selected media content item in the focus area as a background image for the display of extended metadata for the selected media content item. The image may be included in the metadata received from the video streaming server.

[0091] Figure 6 An example of selecting a media content item for a focus area in an EPG in a preview area of ​​the EPG and dynamically adjusting a timeline of the focus area based on the selected media content item is depicted in accordance with one embodiment of the present disclosure. EPG 640A depicts cells in focus area 650A, cells in preview area 655, and cells in overview area 657A when a user selects a media content item (e.g., a video) for focus area 650A from preview area 655. For example, a user may select (e.g., tap) location 601 (or any cell in EPG 640A) and sweep in a horizontal direction (e.g., from right to left) toward focus area 650A. In one embodiment, an EPG component (e.g., Figure 3 The EPG component 315 in the preview area 655 interprets the sweep gesture as a selection of the video (e.g., "The Big Brown Fox") being represented by the cell 654A in the preview area 655. In another embodiment, the input for the selection can be a user selecting a cell 654A in the preview area 655, dragging the selected cell 654A to the focus area 650A, and releasing the dragged cell. In the preview area 655, the cell 654A for the selected "The Big Brown Fox" video displays a portion of a set of extended metadata for the selected video. For example, the extended metadata in the cell 654A includes a portion of the title, the scheduled start time, the scheduled end time, and a description.

[0092] The EPG component may automatically move the selected cell 654A from the preview area 655 to the focus area 650A. EPG 640B is a dynamically adjusted version of EPG 640A and depicts cells in the focus area 650B and cells in the overview area 657B after the user has selected a video (e.g., "The Big Brown Fox") for the focus area 650B from the preview area 655.

[0093] The EPG component may determine whether the scheduled duration for streaming the selected video is less than or equal to the maximum time interval for the focus area, and may create a timeline 603B for the focus area 650B based on the determination. For example, the EPG component may determine that the scheduled duration for streaming the selected video "The Big Brown Fox" (e.g., 8:15pm-8:45pm) is equal to the maximum time interval (e.g., 30 minutes) for the focus area 650B. If the scheduled duration is greater than the maximum time interval, the timeline 503B for the focus area 550B is created to match the maximum time interval. The start of the timeline 603B may match the scheduled start time for the selected video, and the end of the timeline 603B may be determined based on the maximum time interval (e.g., 30 minutes). For example, the EPG component changes the "8:00pm-8:15pm" timeline 603A in the EPG 640A to "8:15pm-8:45pm" in the timeline 603B in the dynamically adjusted EPG 640B.

[0094] In one embodiment, if the height of the selected cell 654A is different from the height of the focus area 650A, the EPG component may adjust the height of the cell 654A to match the default height associated with the focus area 650A. The EPG component may also adjust the width of the selected cell 654A based on the maximum time interval (e.g., 30 minutes) of the focus area 650B. If the scheduled duration for streaming the selected video is greater than or equal to the maximum time interval of the focus area, the width of the cell 654B for the selected video in the focus area 650B is set to the maximum width (e.g., 30 minutes). Figure 5 In this example, the scheduled duration for streaming the selected video "The Big Brown Fox" (e.g., 8:15pm - 8:45pm) is equal to the maximum time interval (e.g., 30 minutes) of the focus region 650B, and the width of the cell 654B for the selected video in the focus region 650B is set to the maximum width.

[0095] With the expanded width and / or height of the focus area 650B, the EPG component can display more extended metadata (e.g., title, scheduled start time, scheduled end time, description) in the cell 654B. For example, in the cell 654B in the focus area 650B, the full title is displayed, the full scheduled start time and the scheduled end time are displayed, the full description is displayed, and the sample 604 is displayed. The sample 604 can be an image (e.g., a thumbnail) or rendering of a short segment of the selected video. The EPG component can determine whether the selected video is currently streaming, for example, by comparing the scheduled duration for the video with the current time. If the selected video is currently streaming, the EPG component can play the portion of the selected video currently being streamed in the focus area as a sample. The EPG component can play the sample as a base for the display of the extended metadata of the selected video. If the selected video is currently streaming, the EPG component can display an image of a frame of the selected video in the focus area 650B as a base for the display of the extended metadata of the selected video in the focus area 650B.

[0096] The EPG component can also adjust the widths of other cells in the overview area 657B based on the adjusted timeline 603B of the focus area 650B (e.g., "8:15pm-8:45pm"). For example, in the EPG 640A, the cell 609A for the video "Mystery Show" has a width 629A that is scaled to the timeline 603A in the focus area 650A (e.g., "8:00pm-8:15pm"). When the timeline 603B is created in the adjusted EPG 640B, the cell 609B for the video "Mystery Show" has an adjusted width 629B that is scaled (e.g., reduced) based on the timeline 603B (e.g., "8:15pm-8:45pm") and the start time in the timeline 603B in the focus area 650B.

[0097] When cell 654A for the selected video "The Big Brown" is moved to focus area 650B, cells for new video representations may be displayed in overview area 657B in EPG 5640B. For example, cells 610, 660, 663, 665, 669 may include representations for videos not previously represented in EPG 640A. The new cells may include a limited set of metadata for the corresponding videos.

[0098] Figure 7An example of a width of a cell in an EPG 740 that is dynamically adjustable according to one embodiment of the present disclosure is illustrated. The width of the cell in the EPG 740 and the timeline 703 of the focus area 750 can be adjusted dynamically. The width of the cell in the overview area 757 can be dynamically defined based on: (i) the time interval of the current timeline 703 of the focus area 750, (ii) the scheduled duration for streaming the corresponding video represented by the corresponding cell in the overview area 757, and (iii) the scheduled start time and the scheduled end time for the video represented in the overview area 757.

[0099] In one embodiment, when (i) the scheduled duration of the video represented by the cell in the overview area 757 is equal to the time interval of the timeline 703 for the focus area 750, and (ii) the scheduled start and end times of the video in the overview area 757 can be mapped to the timeline 703 of the focus area 750, then the width of the cell of the video in the overview area 757 can be dynamically adjusted to match the width 721 of the focus area 750. For example, the timeline 703 is currently a 30 minute interval. The video "Do-it-yourself Program" represented by the cell 711 can have a scheduled duration of 30 minutes (e.g., 8:00 pm-8:30 pm), which is equal to the 30 minute time interval of the timeline 703 for the focus area 750. The scheduled start time "8:00 pm" and the scheduled end time "8:30 pm" can be mapped to the timeline 703 of the focus area 750. Therefore, the width 733 of the cell 711 is adjusted to match the width 721 of the focus area 750 .

[0100] In one embodiment, when (i) the scheduled duration of the video represented by the cell in the overview area 757 is equal to the time interval of the timeline 703 for the focus area 750, and (ii) the scheduled start time and end time of the video in the overview area 757 cannot be mapped to the timeline 703 of the focus area 750, then the width of the cell of the video in the overview area 757 can be dynamically adjusted to be smaller than the width 721 of the focus area 750. For example, the video "The Big Br..." represented by the cell 702 can have a scheduled duration of 30 minutes (e.g., 8:15pm-8:45pm), which is equal to the 30-minute time interval of the timeline 703 for the focus area 750. The scheduled start time "8:15pm" can be mapped to the timeline 703 of the focus area 750. However, the scheduled end time "8:45pm" cannot be mapped to the timeline 703 of the focus area 750. Therefore, the width 724 of the cell 703 is adjusted to be smaller than the width 721 of the focus area 750.

[0101] In one embodiment, when the scheduled duration of the video represented by the cell in the overview area 757 is greater than the time interval of the timeline 703 for the focus area 750, then the width of the cell for the video in the overview area 757 may be dynamically adjusted to match the width 721 of the focus area 750. For example, the video "Medical Show" represented by the cell 708 may have a scheduled duration of one hour (e.g., 8:00 pm-9:00 pm), which is greater than the 30 minute time interval of the timeline 703. The width 727 of the cell 708 is adjusted to match the width 721 of the focus area 750.

[0102] In one embodiment, when (i) the scheduled duration of the video represented by the cell in the overview area 757 is less than the time interval of the timeline 703 for the focus area 750 and the scheduled start time and end time of the video in the overview area 757 can be mapped to the timeline 703 of the focus area 750, then the width of the cell of the video in the overview area 757 can be scaled to correspond to the width 721 of the focus area 750. For example, the video “Short Program” represented by the cell 706 has a scheduled duration of 15 minutes, which is less than the 30-minute time interval of the timeline 703 for the focus area 750. Since the scheduled start time “8:00pm” and end time “8:15pm” for “Short Program” can be mapped to the timeline 703 of the focus area 750, the width 723 can be scaled based on the width 721 of the focus area 750. For example, the width 723 of the cell 706 for the video “Short Program” can be set to half the width 721 of the timeline 703. In another example, the video "Mystery Show" represented by cell 709 has a scheduled duration of 20 minutes, which is less than the 30 minute time interval of the timeline 103 for the focus area 750. Since the scheduled start time "8:00pm" and end time "8:20pm" for "Mystery Show" can be mapped to the timeline 703 of the focus area 750, the width 729 can be scaled based on the width 721 of the focus area 705. For example, the width 729 of the cell 709 for the video "Mystery Show" is set to two-thirds of the width 729 of the timeline 703.

[0103] In one embodiment, when the scheduled duration of a video is less than the time interval of the timeline 703 for the focus area 750 and the scheduled start time and end time of the video cannot be mapped to the timeline 703 of the focus area 750, the width of the cell of the video can be less than the width 721 of the focus area 750. For example, the video "Nature Show" represented by the cell 710 can have a scheduled duration of 20 minutes (e.g., 8:20pm-8:40pm), which is less than the 30-minute time interval of the timeline 703 for the focus area 150A. "Nature Show" can have a scheduled start time of "8:20pm" that can be mapped to the timeline 703 of the focus area 750. However, the scheduled end time of "8:40pm" cannot be mapped to the timeline 703 of the focus area 750. Therefore, the width 731 of the cell 710 for the video "Nature Show" is adjusted to be less than the width 721 of the focus area 750.

[0104] Figure 8 An example of an EPG with multiple overview areas is depicted according to one embodiment of the present disclosure. EPG 840A depicts focus area 850A and overview areas 830A, 860A. In EPG 840A, focus area 850A displays extended metadata for the video "Standup Comedy Show". For example, a title 881, a scheduled start time and a scheduled end time 882, a description 883, and a sample 884 are displayed in focus area 850A.

[0105] When the user selects location 801 and swipes upward in the vertical direction toward focus area 850A, the EPG component automatically moves cell 806A for the selected video to focus area 850A. EPG 840B is a dynamically adjusted version of EPG 840A in response to the user selecting the video "Short Program."

[0106] When cell 806A is moved to the focus area, the EPG component may move cell 805A for "Standup Comedy Show" to overview area 830B. Cell 805B for the video "Standup Comedy Show" in overview area 830B may be reduced in size (reduced in height) and may display a limited set of metadata (e.g., title, scheduled start time, scheduled end time).

[0107] Fig. 9An example of an EPG transition from having one overview area to multiple overview areas is depicted in accordance with one embodiment of the present disclosure. EPG 900A depicts focus area 910A and one overview area 920A. In EPG 900A, focus area 910A displays extended metadata for the video "Funny Movie". Only one overview area 906A may be displayed in EPG 900A based on the videos included in a playlist. For example, a playlist may include a default order of videos, where "Funny Movie" is the first video in the playlist and there are no other videos above "Funny Movie" in the playlist. Therefore, EPG 900A may not display another overview area above focus area 910A. That is, in one embodiment, when the video selected in focus area 910A is the first video in the playlist, only one overview area 920A may be displayed below focus area 910.

[0108] When the user selects location 901 and swipes upward in the vertical direction toward focus area 910A, the EPG component automatically moves cell 906A for the selected video to focus area 910A. EPG 900B is a dynamically adjusted version of EPG 900A in response to the user selecting the video "Standup Comedy Show". In addition, when cell 906A is moved to focus area 910B, the EPG component may move cell 905A for "Funny Movie" to another overview area 930B above focus area 910B. Cell 905B for video "Funny Movie" in overview area 930B may be reduced in size (reduced in height) and may display a limited set of metadata (e.g., title, scheduled start time, scheduled end time). As depicted, the dynamically adjusted EPG 900B includes two overview areas 930B and 920B. Overview area 930B is located above focus area 910B and overview area 920B is located below focus area 910B. Displaying overview area 930B with a video ("Funny Movie") above focus area 910B may provide an indication to the user that there are additional videos above the video ("Standup Comedy Show") currently selected in focus area 910B.

[0109] Fig.10An example of a system architecture 1000 for dynamically adjusting an electronic program guide according to one embodiment of the present disclosure is shown. The system architecture 1000 includes user devices 1010A to 1010Z, one or more networks 1005, one or more data stores 1006, one or more servers 1030, and one or more platforms (e.g., content sharing platform 1020, recommendation platform 1057, advertising platform 1065, mobile platform 1050, social network platform 1060, search platform 1045, content provider platform 1095, and collaboration platform 1055). These platforms can be one or more computing devices (such as rack servers, router computers, server computers, personal computers, mainframe computers, laptop computers, tablet computers, desktop computers, etc.), data stores (e.g., hard disks, memories, and databases), networks, software components, and / or hardware components.

[0110] The one or more networks 1005 may include one or more public networks (e.g., the Internet), one or more private networks (e.g., a local area network (LAN) or one or more wide area networks (WAN)), one or more wired networks (e.g., an Ethernet network), one or more wireless networks (e.g., an 802.11 network or a Wi-Fi network), one or more cellular networks (e.g., a Long Term Evolution (LTE) network), routers, hubs, switches, server computers, and / or combinations thereof. In one embodiment, some components of the architecture 1000 are not directly connected to each other. In one embodiment, the architecture 1000 includes separate networks 1005.

[0111] One or more data stores 1006 may be a memory (e.g., random access memory), a cache, a drive (e.g., a hard drive), a flash drive, a database system, or another type of component or device capable of storing data. One or more data stores 1006 may include multiple storage components (e.g., multiple drives or multiple databases) that may also span multiple computing devices (e.g., multiple server computers). Data store 1006 may be a persistent storage device capable of storing data. The persistent storage device may be a local storage unit or a remote storage unit. The persistent storage device may be a magnetic storage unit, an optical storage unit, a solid-state storage unit, an electronic storage unit (main memory), or a similar storage unit. The persistent storage device may be a distributed monolithic device or device group. As used herein, "group" refers to any positive integer number of items.

[0112] Content items 1021 (media content items) may be stored in one or more data stores 1006. Data stores 1006 may be part of one or more platforms. Examples of content items 1021 may include, but are not limited to, digital videos, digital movies, animated images, digital photos, digital music, digital audio, website content, social media updates, e-books, e-magazines, digital newspapers, digital audiobooks, e-journals, web blogs, Really Simple Syndication (RSS) feeds, electronic comic books, software applications, etc. Content items 1021 are also referred to as media items. For brevity and simplicity, online videos (hereinafter also referred to as videos) are used throughout this document as examples of content items 1021.

[0113] Content item 1021 may be provided by a content provider. The content provider may be a user, a company, an organization, etc. The content provider may provide content item 1021 as a video advertisement. The content provider that provides the video advertisement is referred to as an advertiser hereinafter. For example, content item 1021 may be a video advertisement for a car provided by a car advertiser. For example, when a service provider provides an advertisement on user devices 1010A-1010Z for viewing by a user, the service provider may charge the advertiser.

[0114] User devices 1010A-1010Z may include devices such as smart phones, cellular phones, personal digital assistants (PDAs), portable media players, netbooks, laptops, e-book readers, tablet computers, desktop computers, set-top boxes, game consoles, televisions, etc. User devices 1010A-1010Z may be client devices (e.g., Figure 4 410 in the client device).

[0115] Individual user devices 1010A-1010Z may include a communication application 1015. Content items 1021 may be consumed via the communication application 1015, the Internet, and the like. As used herein, "media," "media items," "online media items," "digital media," "digital media items," "content," and "content items" may include electronic files that may be executed or loaded using software, firmware, or hardware configured to present content items. In one embodiment, the communication application 1015 may be an application that allows a user to compose, send, and receive content items 1021 (e.g., videos) through a platform (e.g., a content sharing platform 1020, a recommendation platform 1057, an advertising platform 1065, a mobile platform 1050, a social networking platform 1060, a search platform 1045, a collaboration platform 1055, and a content provider platform 1095) and / or a combination of platforms and / or networks).

[0116] For example, the communication application 1015 can be a social networking application, a video sharing application, a video streaming application, a video on demand application, a photo sharing application, a chat application, a mobile application of a content provider, or any combination of such applications. The communication application 1015 in the user device can render, display and / or present one or more content items 1021 (e.g., videos) to one or more users. For example, the communication application 1015 can provide one or more user interfaces (e.g., graphical user interfaces) to be rendered in the display of the user device for sending, receiving and / or playing videos.

[0117] In one embodiment, individual user devices 1010A-1010Z include a content viewer 1013 (eg, a video) for rendering, displaying, and / or presenting content items 1021 (eg, a video) to one or more users. Figure 4 In one embodiment, the content viewer 1013 is embedded in an application (e.g., the communication application 1015). In another embodiment, the content viewer 1013 can be a standalone application (e.g., a mobile application, a desktop application, a game console application, a television application, etc.), such as the communication application 1015, which allows a user to consume (e.g., play, display) content items 1021, such as videos, images, documents (e.g., web pages), etc. For example, the content viewer 1013 can be a web browser that can access, retrieve, present and / or navigate content (e.g., web pages such as Hypertext Markup Language (HTML) pages, digital media items, etc.) served by a web server of the platform. In another example, the content viewer 1013 can display an embedded media player (e.g., a video player) embedded in a document (e.g., a web page). player or HTML5 player).

[0118] The content viewer 1013 may be provided to the user devices 1010A-1010Z by the server 1030 and / or the platform. For example, the content viewer 1013 may be an embedded media player embedded in a document (e.g., a web page) provided by the content sharing platform 1020. In another example, the content viewer 1013 may be an application downloaded from a platform (e.g., the content sharing platform 1020, the recommendation platform 1057, the advertising platform 1065, the mobile platform 1050, the social networking platform 1060, the search platform 1045, the collaboration platform 1055, and the content provider platform 1095). In another example, the content viewer 1013 may be a standalone application pre-installed on the user devices 1010A-1010Z.

[0119] In one embodiment, individual user devices 1010A-1010Z include an EPG component 1014 for dynamically adjusting an electronic program guide (e.g., Figure 4 EPG component 415 in).

[0120] The content provider platform 1095 may provide services and the content provider may be a service provider. For example, the content provider may be a video streaming service provider that provides media streaming services via the communication application 1015 so that users can play videos, TV shows, video clips, audio, audio clips, and movies on user devices 1010A-1010Z via the content provider platform 1095.

[0121] The social networking platform 1060 may provide an online social networking service. The social networking platform 1060 may provide a communication application 1015 for users to create profiles and perform activities according to their profiles. Activities may include updating profiles, exchanging messages with other users, posting status updates, photos, videos, etc. to share with other users, evaluating (e.g., liking, commenting, sharing, recommending) status updates, photos, videos, etc., and receiving notifications of other users' activities.

[0122] Mobile platform 1050 can be and / or include one or more computing devices (e.g., servers), data storage, networks (e.g., telephone networks, cellular networks, local area networks, the Internet, and / or a combination of networks), software components, and / or hardware components that can be used to allow users to connect to each other, share information with each other, and / or interact with each other using one or more mobile devices (e.g., phones, tablet computers, laptop computers, wearable computing devices, etc.) and / or any other suitable devices. For example, mobile platform 1050 can enable telephone communications, short message service (SMS) messaging, multimedia messaging service (MMS) messaging, text chat, and / or any other communication between users. Mobile platform 1050 can support user communications via video messaging, video chat, and / or video conferencing.

[0123] The collaboration platform 1055 may enable collaboration services (e.g., between users of devices 1010A-1010Z) such as video chat, video messaging, and audio and / or video conferencing using, for example, streaming video or voice over IP (VoIP) technology, cellular technology, LAN and / or WAN technology, and may be used for personal, entertainment, business, educational, or academic interactions.

[0124] The recommendation platform 1057 may be one or more computing devices (such as rack servers, router computers, server computers, personal computers, mainframe computers, laptop computers, tablet computers, desktop computers, etc.), data storage (e.g., hard disk, memory, database), network, software components, and / or hardware components that can be used to generate and provide content recommendations (e.g., articles, videos, posts, news, games, etc.). The recommendation platform 1057 may include one or more recommendation servers.

[0125] The search platform 1045 can be one or more computing devices (such as rack-mounted servers, router computers, server computers, personal computers, mainframe computers, laptop computers, tablet computers, desktop computers, etc.), data stores (e.g., hard disks, memories, databases), networks, software components, and / or hardware components that can be used to allow a user to query one or more data stores 206 and / or one or more platforms and receive query results.

[0126] The advertising platform 1065 can be one or more computing devices (such as rack-mounted servers, router computers, server computers, personal computers, mainframe computers, laptop computers, tablet computers, desktop computers, etc.), data storage (e.g., hard disk, memory, database), networks, software components and / or hardware components that can be used to provide video advertisements.

[0127] The content sharing platform 1020 may be one or more computing devices (such as rack servers, router computers, server computers, personal computers, mainframe computers, laptop computers, tablet computers, desktop computers, etc.), data storage (e.g., hard disk, memory, database), network, software components, and / or hardware components that can be used to provide one or more users with access to content items 1021 and / or provide content items 1021 to one or more users. For example, the content sharing platform 1020 may allow users to consume, upload, download, and / or search for content items 1021. In another example, the content sharing platform 1020 may allow users to evaluate content items 1021, such as agreeing (“like”), dislike, recommend, share, rate, and / or comment on content items 1021. In another example, the content sharing platform 1020 may allow users to edit content items 1021. The content sharing platform 1020 may also include a website (e.g., one or more web pages) and / or one or more applications (e.g., communication applications 1015) that can be used to provide one or more users with access to content items 1021, such as via user devices 1010A-1010Z. Content sharing platform 1020 may include any type of content delivery network that provides access to content items 1021 .

[0128] The content sharing platform 1020 may include multiple channels (e.g., channel A 1025 to channel Z 1029). A channel may be data content available from a public source or data content with a public topic or theme. The data content may be digital content selected by a user, digital content available by a user, digital content uploaded by a user, digital content selected by a content provider, digital content selected by a broadcaster, etc. For example, channel A 1025 may contain videos Y and Z. A channel may be associated with an owner, who is a user who can perform actions on the channel. The data content may be one or more content items 1021. Although a channel is described as one embodiment of a content sharing platform, embodiments of the present disclosure are not limited to content sharing platforms that provide content items 1021 via a channel model.

[0129] For simplicity of explanation, the method of the present disclosure is depicted and described as a series of behaviors. However, the behavior according to the present disclosure may occur in various orders and / or simultaneously, and other behaviors are not presented and described in this article at the same time. In addition, it may not be required that all illustrated behaviors implement the method according to the disclosed subject matter. In addition, it should be understood and appreciated by those skilled in the art that these methods can be represented as a series of interrelated states via state diagrams or events instead. Additionally, it should be appreciated that the methods disclosed in this specification can be stored on an article of manufacture so that such methods can be transported and transferred to a computing device. The term "article of manufacture" as used herein is intended to include a computer program that can be accessed from any computer-readable device or storage medium.

[0130] Fig.11 A diagram illustrating a machine in the example form of a computer system 1100 within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein may be executed according to one embodiment of the present disclosure. The computer system 1100 may be Figure 4 The client device 401 in the embodiment of the present invention. The machine may operate as a client machine in a client-server network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a cellular phone, a web appliance, a server, a network router, a switch or a bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by the machine. In addition, while only a single machine is illustrated, the term "machine" shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.

[0131] The example computer system 1100 includes a processing device (processor) 1102, a main memory 1104 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM), such as synchronous DRAM (SDRAM), double data rate (DDR SDRAM) or DRAM (RDRAM), etc.), a static memory 1106 (e.g., flash memory, static random access memory (SRAM), etc.), and a data storage device 1118 that communicate with each other via a bus 1130.

[0132] Processor (processing device) 1102 represents one or more general-purpose processing devices such as a microprocessor, a central processing unit, etc. More specifically, processor 1102 may be a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, or a processor that implements other instruction sets or a processor that implements a combination of instruction sets. Processor 1102 may also be one or more special-purpose processing devices such as an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), a network processor, etc. Processor 1102 is configured to execute instructions 1122 in order to perform the operations and steps discussed herein.

[0133] The computer system 1100 may further include a network interface device 1108. The computer system 1100 may also include a video display unit 1110 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), input devices 1112 (e.g., a keyboard and alphanumeric keypad, motion sensing input devices, touch screen), a cursor control device 1114 (e.g., a mouse), and a signal generating device 1116 (e.g., a speaker).

[0134] The data storage device 1118 may include a non-transitory machine-readable storage medium 1128 (also a computer-readable storage medium) on which is stored one or more sets of instructions 1122 (e.g., software) that specifically implement any one or more of the methodologies or functions described herein. The instructions 1122 may also reside completely or at least partially within the main memory 1104 and / or within the processor 1102 during execution thereof by the computer system 1100, the main memory 1104 and the processor 1102 also constituting computer-readable storage media. The instructions 1122 may further be sent or received over the network 1120 via the network interface device 1108.

[0135] In one embodiment, the instructions 1122 include instructions for the electronic program guide component 1105 (e.g., Figure 4The computer-readable storage medium 1128 (machine-readable storage medium) is a software library that includes instructions for executing the electronic program guide component 415 in the computer program guide component and / or a method for calling the electronic program guide component. Although the computer-readable storage medium 1128 (machine-readable storage medium) is shown as a single medium in an exemplary embodiment, the terms "computer-readable storage medium" and "machine-readable storage medium" should be considered to include a single medium or multiple media (e.g., centralized or distributed databases and / or associated caches and servers) that store one or more sets of instructions. The terms "computer-readable storage medium" and "machine-readable storage medium" should also be considered to include any medium that is capable of storing, encoding, or carrying a set of instructions for execution by a machine and causing the machine to perform any one or more of the methodologies of the present disclosure. The terms "computer-readable storage medium" and "machine-readable storage medium" should therefore be considered to include, but are not limited to, solid-state memories, optical media, and magnetic media.

[0136] In the foregoing description, many details are set forth. However, it will be apparent to those of ordinary skill in the art who benefit from the present disclosure that the present disclosure may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form rather than in detail in order to avoid obscuring the present disclosure.

[0137] Some parts of the detailed description have been presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the art of data processing to most effectively convey the essence of their work to other technicians in the field. Algorithms are here and generally imagined as self-consistent sequences of steps that lead to a desired result. These steps are steps that require physical manipulation of physical quantities. Typically, although not necessarily, these quantities take the form of electrical or magnetic signals that can be stored, transferred, combined, compared, and otherwise manipulated. Sometimes it has proven convenient to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, etc. for general reasons.

[0138] It should be borne in mind, however, that all of these and similar terms will be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as will become apparent from the following discussion, it should be appreciated that throughout the description, discussions utilizing terms such as "receiving," "displaying," "moving," "adjusting," "replacing," "determining," "playing," and the like refer to the actions and processes of a computer system or similar electronic computing device that converts data represented as physical (e.g., electronic) quantities within the computer system's registers and memories into physical quantities similarly represented as within the computer system's memories or registers or other such information storage, transmission, or display devices.

[0139] For simplicity of explanation, method is depicted and described as a series of behaviors in this article. However, the behavior according to the present disclosure may occur in various orders and / or simultaneously, and other behaviors are not presented and described in this article at the same time. In addition, it may not be required that all illustrated behaviors implement the method according to the disclosed subject matter. In addition, it should be understood and appreciated by those skilled in the art that these methods can be represented as a series of interrelated states via state diagrams or events instead. Additionally, it should be appreciated that the methods disclosed in this specification can be stored on an article of manufacture so that such methods can be transported and transferred to a computing device. The term article of manufacture as used herein is intended to include a computer program that can be accessed from any computer-readable device or storage medium.

[0140] Certain embodiments of the present disclosure also relate to an apparatus for performing the operations herein. This apparatus may be constructed for a predetermined purpose, or it may include a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer-readable storage medium, such as, but not limited to, any type of disk including a floppy disk, an optical disk, a CD-ROM, and a magneto-optical disk, a read-only memory (ROM), a random access memory (RAM), an EPROM, an EEPROM, a magnetic card or an optical card, or any type of medium suitable for storing electronic instructions.

[0141] References throughout this specification to "one embodiment" or "an embodiment" mean that a particular feature, structure, or characteristic described in conjunction with the embodiment is included in at least one embodiment. Therefore, the phrase "in one embodiment" or "in an embodiment" appearing in various places throughout this specification does not necessarily all refer to the same embodiment. In addition, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or". In addition, the word "example" or "exemplary" is used herein to mean used as an example, instance, or illustration. Any aspect or design described in this article as "exemplary" is not necessarily to be interpreted as being preferred or advantageous over other aspects or designs. On the contrary, the use of the word "example" or "exemplary" is intended to present the concept in a concrete way.

[0142] It should be understood that the above description is intended to be illustrative, rather than restrictive. After reading and understanding the above description, many other embodiments will be apparent to those skilled in the art. Therefore, the scope of the present disclosure should be determined with reference to the attached claims and the full scope of equivalents enjoyed by such claims.

[0143] In situations where the systems discussed herein collect personal information about users or can utilize personal information, users may be provided with the opportunity to control whether a program or feature collects user information (e.g., information about a user's social network, social actions or activities, occupation, user's preferences, or user's current location) or to control whether and / or how to receive content from a content server that may be more relevant to the user. In addition, certain data may be processed in one or more ways before it is stored or used so that personally identifiable information is removed. For example, the identity of a user may be processed so that personally identifiable information is not determinable for the user, or the user's geographic location may be generalized (such as to a city, zip code, or state level) in the case of obtaining location information so that the user's specific location cannot be determined. Therefore, users may control how information is collected about users and used by content servers.

[0144] In situations where the systems discussed herein collect personal information about users or can utilize personal information, users may be provided with the opportunity to control whether a program or feature collects user information (e.g., information about a user's social network, social actions or activities, occupation, user's preferences, or user's current location) or to control whether and / or how to receive content from a content server that may be more relevant to the user. In addition, certain data may be processed in one or more ways before it is stored or used so that personally identifiable information is removed. For example, the identity of a user may be processed so that personally identifiable information is not determinable for the user, or the user's geographic location may be generalized (such as to a city, zip code, or state level) in the case of obtaining location information so that the user's specific location cannot be determined. Therefore, users may control how information is collected about users and used by content servers.

[0145] Also described is an apparatus for dynamically displaying additional metadata for a video in a focus area of ​​an electronic program guide (EPG). In one embodiment, the apparatus includes means for receiving metadata for a plurality of media content items. The metadata includes a scheduled duration for streaming each of the plurality of media content items. The apparatus includes means for displaying a plurality of cells for the plurality of media content items in an overview area in an electronic program guide (EPG) in a user interface. The plurality of cells include a subset of metadata for the corresponding media content items.

[0146] The apparatus includes means for receiving input of a selection of one of the plurality of media content items via the EPG in the user interface and means for moving a cell including a limited set of metadata for the selected media content item from the overview area to a focus area in the EPG. The apparatus includes means for adjusting a timeline of the focus area based on the scheduled duration for streaming the selected media content item via a processing device in response to determining that the scheduled duration for streaming the selected media content item does not satisfy a condition related to a maximum time interval of the focus area. The apparatus includes means for replacing a subset of the metadata in the cell in the focus area with extended metadata for the selected media content item.

[0147] The apparatus includes means for adjusting the width of a cell of a selected media content item based on a maximum time interval of the focus area. The apparatus includes means for determining that the selected media content item is currently streaming and playing a sample of the selected media content item in the focus area. The sample is played as a background for display of extended metadata for the selected media content item.

[0148] The apparatus includes means for displaying an image of a frame of a selected media content item in the focus area as a base for displaying extended metadata for the selected media content item. The apparatus includes means for adjusting the widths of remaining cells of the plurality of cells in the overview area based on the adjusted timeline of the focus area. The apparatus includes means for displaying a preview area adjacent to the focus area in the EPG, the preview area including a cell representing another media content item scheduled to be played immediately after the selected media content item, the cell including at least a portion of additional metadata for the another media content item.

[0149] The apparatus includes means for receiving input of a selection of the cell in the preview area, moving the cell from the preview area to the focus area, in response to determining that the scheduled duration for streaming the other media content item is less than or equal to a maximum time interval of the focus area, adjusting a timeline of the focus area based on the scheduled duration for streaming the other media content item, and in response to determining that the scheduled duration for streaming the other media content item is greater than a maximum time interval of the focus area, adjusting the timeline of the focus area to the maximum time interval. The apparatus includes means for adjusting a width of the cell moved from the preview area to the focus area to match a width of the focus area.

[0150] In one embodiment, the scheduled durations for the plurality of media content items are based on a playlist of media content items created for a particular user.

Claims

1. A method implemented by a computing device, comprising: receiving metadata for a plurality of media content items, wherein the metadata identifies a thumbnail representation of each of the plurality of media content items; displaying the plurality of media content items in an overview area of ​​an electronic program guide (EPG) in a user interface, wherein the overview area is rendered outside of a focus area of ​​the EPG and comprises a plurality of cells aligned in one or more rows, wherein the plurality of cells comprise a subset of the metadata for respective media content items, and wherein the subset of metadata comprises a thumbnail representation of each of the plurality of media content items, wherein the thumbnail representation of each of the plurality of media content items is displayed in the overview area; receiving input of a selection of one of the plurality of media content items displayed at the EPG in the user interface; and In response to receiving the input of the selected media content item, displaying the selected media content item in the focus area in the EPG, wherein the focus area includes a rectangular area located adjacent to the overview area, wherein the focus area includes extended metadata for the selected media content item for presentation in the focus area, wherein the focus area is aligned in another row of the EPG, wherein the selected media content item is the only media content item among the plurality of media content items displayed in the another row of the EPG, and wherein a sample of the selected media content item is played as an underlay for the display of the extended metadata for the selected media content item such that playback of the sample is presented beneath the display of at least some of the extended metadata for the selected media content item.

2. The method according to claim 1, further comprising: The sample of the selected media content item is played in the focus area.

3. The method according to claim 1, further comprising: An image of a frame of the selected media content item in the focus area is displayed in the focus area as an underlay of the display of the extended metadata for the selected media content item such that the frame is presented below the display of at least some of the extended metadata for the selected media content item.

4. The method according to claim 1, wherein: The focus area is located above the overview area, and wherein no other media content items are displayed above the focus area.

5. The method according to claim 1, wherein: The rectangular area of ​​the focus region extends to at least two edges of a display screen of a computing device.

6. A system for dynamically adjusting an electronic program guide (EPG), comprising: Memory; a processing device coupled to the memory to: receiving metadata for a plurality of media content items, wherein the metadata identifies a thumbnail representation of each of the plurality of media content items; displaying the plurality of media content items in an overview area of ​​the EPG in a user interface, wherein the overview area is rendered outside of a focus area of ​​the EPG and comprises a plurality of cells aligned in one or more rows, wherein the plurality of cells comprise a subset of the metadata for respective media content items, and wherein the subset of metadata comprises the thumbnail representation of each of the plurality of media content items, wherein the thumbnail representation of each of the plurality of media content items is displayed in the overview area; receiving, via the EPG in the user interface, input of a selection of one of the plurality of media content items displayed at the EPG in the user interface; and In response to receiving the input of the selected media content item, displaying the selected media content item in the focus area in the EPG, wherein the focus area includes a rectangular area located adjacent to the overview area, wherein the focus area includes extended metadata for the selected media content item for presentation in the focus area, wherein the focus area is aligned in another row of the EPG, wherein the selected media content item is the only media content item among the plurality of media content items displayed in the another row of the EPG, and wherein a sample of the selected media content item is played as an underlay for the display of the extended metadata for the selected media content item such that playback of the sample is presented beneath the display of at least some of the extended metadata for the selected media content item.

7. The system according to claim 6, wherein the processing device is further configured to: The sample of the selected media content item is played in the focus area.

8. The system according to claim 6, wherein the processing device is further configured to: An image of a frame of the selected media content item in the focus area is displayed in the focus area as an underlay of the display of the extended metadata for the selected media content item such that the frame is presented below the display of at least some of the extended metadata for the selected media content item.

9. The system according to claim 6, wherein: The focus area is located above the overview area, and wherein no other media content items are to be displayed above the focus area.

10. The system according to claim 6, wherein: The rectangular area of ​​the focus area will extend to at least two edges of the display screen of the computing device.

11. A non-transitory computer-readable medium comprising instructions that, in response to being executed by a processing device, cause the processing device to perform operations comprising: receiving metadata for a plurality of media content items, wherein the metadata identifies a thumbnail representation of each of the plurality of media content items; displaying the plurality of media content items in an overview area of ​​an electronic program guide (EPG) in a user interface, wherein the overview area is rendered outside of a focus area of ​​the EPG and comprises a plurality of cells aligned in one or more rows, wherein the plurality of cells comprise a subset of the metadata for respective media content items, and wherein the subset of metadata comprises a thumbnail representation of each of the plurality of media content items, wherein the thumbnail representation of each of the plurality of media content items is displayed in the overview area; receiving input of a selection of one of the plurality of media content items displayed at the EPG in the user interface; and In response to receiving the input of the selected media content item, displaying the selected media content item in the focus area in the EPG, wherein the focus area includes a rectangular area located adjacent to the overview area, wherein the focus area includes extended metadata for the selected media content item for presentation in the focus area, wherein the focus area is aligned in another row of the EPG, wherein the selected media content item is the only media content item among the plurality of media content items displayed in the another row of the EPG, and wherein a sample of the selected media content item is played as an underlay for the display of the extended metadata for the selected media content item such that playback of the sample is presented beneath the display of at least some of the extended metadata for the selected media content item.

12. The non-transitory computer readable medium of claim 11, the operations further comprising: The sample of the selected media content item is played in the focus area.

13. The non-transitory computer readable medium of claim 11, the operations further comprising: An image of a frame of the selected media content item in the focus area is displayed in the focus area as an underlay of the display of the extended metadata for the selected media content item such that the frame is presented below the display of at least some of the extended metadata for the selected media content item.

14. The non-transitory computer readable medium of claim 11, wherein: The focus area is located above the overview area, and wherein no other media content items are displayed above the focus area, and wherein the rectangular area of ​​the focus area extends to at least two edges of a display screen of a computing device.

Citation Information

Patent Citations

  • Program guide graphical user interface systems and methods

    US20080046932A1