US20130024895A1 - Interface for Watching a Stream of Videos - Google Patents

Interface for Watching a Stream of Videos Download PDF

Info

Publication number
US20130024895A1
US20130024895A1 US13/620,269 US201213620269A US2013024895A1 US 20130024895 A1 US20130024895 A1 US 20130024895A1 US 201213620269 A US201213620269 A US 201213620269A US 2013024895 A1 US2013024895 A1 US 2013024895A1
Authority
US
United States
Prior art keywords
video
channel
videos
previews
preview
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US13/620,269
Other versions
US8473982B2 (en
Inventor
Kuan Loong Yong
Ramesh Sarukkai
Simon Ratner
Julian Frumar
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Priority to US13/620,269 priority Critical patent/US8473982B2/en
Publication of US20130024895A1 publication Critical patent/US20130024895A1/en
Assigned to GOOGLE INC. reassignment GOOGLE INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: YONG, KUAN LOONG, SARUKKAI, RAMESH, FRUMAR, JULIAN, RATNER, SIMON
Priority to US13/903,882 priority patent/US8990857B2/en
Application granted granted Critical
Publication of US8473982B2 publication Critical patent/US8473982B2/en
Priority to US14/624,451 priority patent/US9407965B2/en
Assigned to GOOGLE LLC reassignment GOOGLE LLC CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: GOOGLE INC.
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4782Web browsing, e.g. WebTV
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • H04N21/2743Video hosting of uploaded data from client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • H04N21/4221Dedicated function buttons, e.g. for the control of an EPG, subtitles, aspect ratio, picture-in-picture or teletext
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • H04N21/42212Specific keyboard arrangements
    • H04N21/42213Specific keyboard arrangements for facilitating data entry
    • H04N21/42216Specific keyboard arrangements for facilitating data entry for quick navigation, e.g. through an EPG
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4823End-user interface for program selection using a channel name
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4825End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4828End-user interface for program selection for searching program descriptors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2200/00Indexing scheme relating to G06F1/04 - G06F1/32
    • G06F2200/16Indexing scheme relating to G06F1/16 - G06F1/18
    • G06F2200/163Indexing scheme relating to constructional details of the computer
    • G06F2200/1637Sensing arrangement for detection of housing movement or orientation, e.g. for controlling scrolling or cursor movement on the display of an handheld computer

Definitions

  • the present disclosure generally relates to video browsing, and specifically to browsing sets of videos and continuously playing a set of videos.
  • the user interface includes a video display window where a currently selected video is presented, along with various means by which one or more other videos may be selected for viewing.
  • the user can select another video by selecting a hyperlink or a thumbnail image that is displayed in a sidebar or by entering a keyword search for a new video.
  • these user interfaces are designed to be used by a user of a conventional computer having input devices such as a mouse, which allows the user to easily move a cursor to any point on the display device, and keyboard, which allows for direct alphanumeric input.
  • input devices such as a mouse
  • keyboard which allows for direct alphanumeric input.
  • these user interfaces become difficult to navigate when applied to televisions or other devices where the user input device provide very limited input controls.
  • many televisions are controlled with a simple directional input device that has only up, down, left, and right buttons or keys, such as a directional pad (“D-pad”) or the “arrow keys” on a keyboard
  • D-pad directional pad
  • Such devices do not provide for full, arbitrary placement control over a cursor, but instead only allow for limited vertical and horizontal movements.
  • the present disclosure relates to computer-implemented methods, systems and computer program products for browsing of videos from a video hosting server using a directional control input device, such as a D-pad or the arrows keys on a keyboard, and selecting a video for playback.
  • a video is displayed to a user in a user interface of a client video player (“the current video”).
  • the current video In response to a user selection of an input control on the input device, a set of navigation controls are displayed overlaid on the current video, which is displayed full screen in the background behind the overlaid navigation controls.
  • the navigation controls are designed for compatibility with the directional control input device.
  • the client player enables the user to navigate through multiple levels of controls, using the up and down inputs of the direction control input device, where each level of control provides a specific type of access functionality of accessing videos and controlling playback.
  • the levels may include a search level, a playback control level, a playback level, a video level and a channel level.
  • the channel level displays a plurality of different channels (equivalently categories) of video content.
  • the video level displays a plurality of videos available within a given channel.
  • the playback level displays the current full screen video without overlaid controls.
  • the playback control level displays a set of controls for controlling the playback of the current video.
  • the search level provides an interface by which the user input a search query for searching for videos.
  • the levels are linearly arranged so that the user intuitively knows the order of the levels and how to navigate between them using just the directional controls of the input device.
  • each level there are a number of options for viewing and controlling videos.
  • the left and right directional controls allow the user to navigate the options at each of the various user interface levels.
  • the horizontal navigation controls are effective to focus one of a plurality of video previews that is displayed. Focusing on a video preview causes the display of accompanying metadata providing additional information to the user. The user can then choose to play a focused video with a select input. The user can similarly browse through other options such as previews of channels, playback controls, or text entered in a search box.
  • FIG. 1 is a block diagram of the system architecture in accordance with one embodiment.
  • FIG. 2 illustrates a chart of the levels of control and the response to user input for each level in accordance with one embodiment.
  • FIG. 2A illustrates a schematic view of a video browsing interface in accordance with one embodiment.
  • FIG. 3 illustrates a welcome screen that is displayed on startup in accordance with one embodiment.
  • FIG. 4 illustrates the video level of the user interface in accordance with one embodiment.
  • FIG. 5 illustrates the channel level of the user interface in accordance with one embodiment.
  • FIG. 6 illustrates the playback control level of the user interface in accordance with one embodiment.
  • FIG. 7 illustrates the search level of the user interface in accordance with one embodiment.
  • FIG. 8 illustrates search results displayed as a channel in accordance with one embodiment.
  • FIG. 9 illustrates a user sign in prompt displayed as a channel in accordance with one embodiment.
  • FIG. 10 illustrates channels with type indicators in accordance with one embodiment.
  • FIG. 1 illustrates an exemplary system architecture of a video hosting system in accordance with one embodiment.
  • the system includes clients 123 that communicate with a video hosting server 100 via a network 121 .
  • the video hosting server 100 is responsible for hosting uploaded media items for display to users of the clients 123 .
  • the video hosting server 100 is specifically responsible for generating and providing to a video player in a client device instructions and data from which the video player can display a user interface as described herein.
  • the video player in the client can be responsible for generating the user interface.
  • videos are just one example of media items, and in other embodiments, the principles described herein are applicable to any type of media items (e.g., pictures, music, etc).
  • the video hosting server 100 comprises a front end interface 101 , an ingest module 103 , a video search module 105 , a video serving module 107 , a video set module 109 , a video controls module 111 , a video access log 115 , a user database 117 , and a video database 119 .
  • Many conventional features, such as firewalls, load balancers, application servers, failover servers, site management tools and so forth are not shown so as not to obscure the features of the system.
  • the video hosting server 100 can be accessed through various means.
  • a suitable website for implementation of the video hosting server 100 is the YOUTUBETM website, found at www.youtube.com; other video hosting sites are known as well, and can be adapted to operate according to the teaching disclosed herein.
  • the term “website” represents any computer system adapted to serve content using any internetworking protocols, and is not intended to be limited to content uploaded or downloaded via the Internet or the HTTP protocol.
  • functions described in one embodiment as being performed on the server 100 side can also be performed on the client 123 side in other embodiments if appropriate.
  • the functionality attributed to a particular component can be performed by different or multiple components operating together.
  • the server 100 can also be accessed as a service provided to other systems or devices through appropriate application programming interfaces, and thus is not limited to use in websites only.
  • the video hosting server 100 is implemented as server program executing on server-class computer comprising a CPU, memory, network interface, peripheral interfaces, and other well known components.
  • the computers themselves run an operating system such as LINUX, Microsoft Windows, or Mac OS, have generally high performance CPUs, 2G or more of memory, and 1TB or more of disk storage.
  • LINUX operating system
  • Microsoft Windows or Mac OS
  • the functionality implemented by any of the elements can be provided from computer program products (e.g., as computer executable instructions) that are stored in tangible computer-readable storage mediums (e.g., RAM, hard disk, or optical/magnetic media).
  • a client 123 executes a video player 125 and can connect to the video hosting server 100 to view media content, herein referred to as a “video,” “video content” or “video items” via a network 121 .
  • Network 121 is typically the internet, but can also be any network, including but not limited to any combination of a LAN, a MAN, a WAN, a mobile, wired or wireless network, a private network, or a virtual private network. While only a two clients 123 and video players 125 are shown, it is understood that very large numbers (e.g., millions) of clients are supported and can be in communication with the video hosting server 100 at any time.
  • the client 123 may include a variety of different computing devices, some examples of which are televisions, set top boxes, video game consoles, personal computers, digital assistants, personal digital assistants, cellular phones, mobile phones, smart phones, tablet computers and laptop computers.
  • the client 123 may be adapted to work with various input devices, such examples of which are a mouse, keyboard, touch-screen, or remote control.
  • the client 123 has a directional control type input device that is generally limited, in regards to controlling cursor (or “focus”) movement, to directional inputs (e.g., up, down, left, right) and selection inputs (select or enter).
  • cursor or “focus”
  • selection inputs selection or enter
  • other types of non-cursor inputs may be available on such a device (e.g., menu, context, programming, etc.).
  • the video player 125 includes any application that is adapted for playing and browsing videos stored on the video hosting server 100 .
  • the player can be adapted to play videos in various formats, such as Adobe FlashTM, WebM, H.264, DivX, FFMPEG, and the like.
  • the video player 125 may be a standalone program that is specifically dedicated for video playback (e.g., a dedicated program in a set top box).
  • the video player 125 is a plug-in or add on to a web browser that allows users of client 123 to access web pages on the World Wide Web. Suitable applications are Microsoft Internet Explorer, Netscape Navigator, Mozilla Firefox, Apple Safari or any application adapted to allow access to web pages on the World Wide Web.
  • the video player 125 allows the user of client 123 to search for and browse through videos hosted by the video hosting server 100 via a user interface provided by the front end interface 101 , and loaded into the video player 125 .
  • a user interface By loading the user interface in the video player 125 , a user can find and play a video.
  • the user can select other videos for playback by browsing through different sets of videos that are related to the current video.
  • the user interface can be native to the video player 125 , and then populated with its content in the manner as described below.
  • Users of the client devices 123 can also search for videos on the user interface based on keywords, tags or other metadata.
  • these requests are received as queries in the user interface provided by the front end interface 101 and are provided to the video search module 105 , which searches the video database 119 for videos that satisfy the queries.
  • the video search module 105 supports searching on any fielded data for video content, including its title, description, tags, author, category, comment, and so forth.
  • the video serving module 107 retrieves videos selected by the video search module 105 from the video database 119 , which is formatted into a file and transmitted to the client 123 for playback in the user interface.
  • the video player 125 also allows users to upload videos to the video hosting server 100 via the user interface provided by the front end interface 101 .
  • the uploaded videos provided by users are processed by an ingest module 103 at the video hosting server 100 .
  • the ingest module 103 processes the video for storage in the video database 119 .
  • the processing can include appropriate transformations for the video content.
  • video processing can include format conversion (transcoding), compression, metadata tagging, and other data processing.
  • the uploaded videos can include, for example, video, audio or a combination of video and audio.
  • the ingest module 103 processes the videos in order to standardize content for playback to users of client 123 .
  • the ingest module 109 stores the video into the database 119 .
  • An uploaded video is associated with the content publisher (i.e., the user that uploaded the video) and the content publisher's account record is updated in the user database 117 as needed.
  • the video database 119 is used to store videos.
  • the video database 119 stores videos and associated metadata provided by their respective content owner who provided the videos.
  • Each stored video is assigned a video identifier (ID) when it is processed by the ingest module 109 .
  • the videos have metadata associated with each video such as a video ID, artist, video title, label, genre, time length, and optionally geo-restrictions that can be used for data collection or content blocking on a geographic basis.
  • the user database 117 stores a record of all users viewing videos provided by the video hosting server 100 .
  • the user database 117 stores a record of all users who have registered an account with the video hosting server 100 .
  • Each registered account includes at least a user name and e-mail address associated with the account.
  • a registered account may also include information about the user associated with the account such as their name, hobbies, uploaded videos, favorite videos, and/or playlists of videos created by the users.
  • the video access log 115 tracks the user's interactions with videos, from which relationships between videos can be determined.
  • Each entry in the video access log 160 identifies a video being accessed, a time of access, a user ID if available, data identifying the type of interaction with the video.
  • Interaction types can include any user interaction, such as playing, saving, rating, sharing, pausing, rewinding, and forwarding a video.
  • the video access log may also maintain information on videos users choose to watch as measured by click thru rates between videos and/or percentage of a video watched. For example, the click thru rate between a first and second video may be the rate at which users choose (e.g., via a user input selection, such as a click) to view the second video, when presented with the first video.
  • a click thru rate can be computed as the number of times users choose to view the second video divided by the number of times the users are presented with the option of playing the second video while the first video is being played.
  • the click thru rate may be simply computed as the number of times a video is selected for display divided by the number of times the video is presented as available for displaying (e.g., a thumbnail or a link). This information as well as other types of information may be used to determine what videos are presented to a user.
  • the video set module 109 accesses the video access log 115 , the user database 117 and/or video database 119 to identify sets of videos or channels that have related videos.
  • a set of videos refers to any grouping of videos from the video database 119 .
  • a set of videos may include:
  • videos sharing common metadata e.g., artist, genre, title, etc.
  • the video controls module 111 manages the generation and display of contextual browsing controls for browsing of videos sets.
  • the video controls module 111 receives from the client 123 user inputs with respect to the browsing controls, and updates the labels on the controls, and the video set that is presented in conjunction with the controls, and provides the updated information to front end interface 101 for presentation to the client 123 .
  • a hierarchy of control levels is used to allow a user to interact with the video server 100 and choose videos to play.
  • the levels may include a search level, a playback control level, a playback level, a video level, and a channel level displaying previews of videos within a channel.
  • the search level provides an interface by which the user input a search query for searching for videos.
  • the playback level displays the full screen video without overlaid controls.
  • the playback control level displays a set of controls for controlling the playback of the current video.
  • the video level displays a plurality of videos available within a given channel.
  • the channel level displays a plurality of different channels (equivalently categories) of video content.
  • the browsing controls allow a user to move the cursor (or focus) between control levels, and to select items or controls within each level, such as sets of videos for playback from the channel level, or a specific video within a set of videos from the video level.
  • the video controls module 111 receives user inputs from the client 123 via the front end interface 101 for switching between sets of videos, browsing within a set of videos, or selecting a video for playback.
  • the user inputs are generally originated from a directional controller type of device, such as a D-pad controller, arrow keys on a keyboard, or the like, which have the semantics of “up,” “down,” “left”, “right”, and “select,” though of course they can be transmitted as coded input signals.
  • the video controls module 111 updates the user interface displayed and the video set that is presented in conjunction with the controls in accordance with the user input.
  • the contextual controls displayed on the screen change. That is, for example, if a user is navigating the video control level, the contextual menu for the video control level is displayed.
  • the contextual menu of the video control level is removed from the display (e.g., disappears) and is replaced by the contextual control menu of the channel control level.
  • the functionality of the video controls module 111 may be implemented in the client 123 instead of the server 100 .
  • a full screen video is constantly played on the client 123 .
  • Visual controls e.g., playback controls, that are in use by the user can be displayed on top of the full screen video (i.e., as a screen overlay).
  • the controls can be displayed semi-transparently or opaquely on top of the full screen video.
  • the contextual controls allow for a simple and intuitive method of selecting an additional video to watch. Also, because a user can interact with the controls with a simple set of inputs (e.g., up, down, left, right, select), the interface is particularly beneficial when used in conjunction with devices that have constrained inputs.
  • a simple set of inputs e.g., up, down, left, right, select
  • FIG. 2 illustrates a chart of the levels of control and the response to device input for each level in accordance with one embodiment.
  • Column 201 of the chart lists the levels of control available to a user of client 123 .
  • the levels of control include search, playback control, playback, videos and channels.
  • the levels of control listed are merely exemplary and different or additional levels may be used in their place.
  • the search level 211 provides search functionality by which the user can enter a search query in order to select a certain channel or video.
  • the playback control level 212 provides playback controls for controlling the currently display video, which may include play, pause, fast forward and various other controls.
  • the playback level 213 plays the current video in full screen without any overlaid controls.
  • the video level 214 provides access to a plurality of videos that are a part of the channel (or set) associated with the current video.
  • the channel level 215 provides access to a plurality of channels for the user to choose from. Activation of each level via an input control results in the display of specific control features associated with the activated level, while the control features from the previous level may be removed, or displayed in a subdued format, to provide context for the currently active level.
  • the user switches (equivalently, moves the focus) between the various levels by utilizing the up and down inputs (generally, vertical inputs) of a directional input device. For example, if currently at the playback level 212 , an up input would result in switching to the search level 211 , while a down input would result in switching to the playback level 213 . In a similar manner, a user can switch between all of the levels listed in column 1 201 through use of up and down inputs.
  • Column 202 lists the actions that occur at a given control level when a left or right input (generally, horizontal input) is received from the directional input device.
  • column 203 lists the actions that occur at a given level when a select input is received from the directional input device.
  • a user can input a string into an input field for a search query.
  • the left and right inputs of the input device result in a cursor moving 216 left or right in the input field, such that the user can edit the input.
  • a select input begins 221 the search query and requests search results from the server 100 to display to the user.
  • a horizontal input alters 217 the control that is currently selected by the user.
  • a select input executes 222 the currently selected control.
  • a left input causes to the video player to immediately play the previous video in the current channel, while a right input causes the video player 125 to immediately play the next video that is scheduled to play in the current channel.
  • reception of a select input while at the playback level 213 causes the client 125 to display playback controls as if an up input was received to switch to playback control level 212 .
  • Entering the video level 214 displays a plurality of videos that are a part of the current channel from which the currently playing video originated.
  • a left or right input changes which of the plurality of videos has the focus, respectively the previous or next video.
  • providing the focus to a video causes the player to display metadata for the video, including author, date of submission and title.
  • a select input causes the video player 125 to play 224 the focused video.
  • the channel level 215 may also be displayed concurrently therewith, with the current channel being graphically indicated.
  • Entering channel level 215 causes a plurality of channels to be displayed.
  • Left and right inputs allow the user to focus 220 a channel, respectively the previous or next channel.
  • the video player 125 displays in the video level 214 previews or thumbnails of videos that are a part of the currently focused channel.
  • a select input from the directional controller selects 225 the focused channel and begins playback of a first video from the channel. In one embodiment, at the conclusion of the first video, additional videos from the selected channel will play continuously.
  • FIG. 2A illustrates a schematic view of a video browsing interface in accordance with one embodiment.
  • a current video 205 would play in the background of the user interface 200 . While five levels of the user interface are shown in the schematic, a subset of the levels may be shown to the user at any given time. Generally, the levels are organized along the vertical axis 240 for ease of navigation and options within each of the levels are organized along the horizontal axis 242 .
  • a search bar 230 allows entry of a search query at the search level 211 .
  • a playback control bar 232 allows control of the current video 205 while at the playback control level 212 . At the playback level, the current video 205 is displayed with all or most user interface controls hidden.
  • a row of video previews 234 is displayed along the bottom portion of the screen at the video level 214 and the channel level 215 .
  • a row of channel previews 236 is displayed along the bottom portion of the screen at the video level 214 and the channel level 215 .
  • Focus on a channel preview and/or video preview may be indicated by the user interface, e.g., by highlighting, change of color, luminance, shape etc.
  • a preview for channel k 252 may be focused to indicate which channel the videos in the row of video previews 234 belong to.
  • a preview for video m+1 254 may be focused to indicate a focused video during browsing. An indication of focus can designate which video will play when a select input is received at the video level 214 .
  • FIG. 3 illustrates a welcome screen that is displayed on startup by the video player in accordance with one embodiment.
  • the welcome screen is displayed to help familiarize the user with the user interface.
  • the system could begin displaying full screen video without any welcome screen or other overlay.
  • the user is prompted to begin typing to enter a search query or press down to begin watching full screen video.
  • FIG. 4 illustrates the video level 214 in accordance with one embodiment.
  • Full screen video 400 is displayed in a significant portion of the screen. Hence, the user can navigate the video level while still being able to view the video that is currently playing.
  • the current video set or channel 402 is displayed near the bottom of the screen in a row of channels (here, “Your Feed,” “Music,” “In Theaters,” “Autos & Vehicles,” “Comedy,” and “Education”). These channels are shown in a subdued format, here both grayed out, and small icons.
  • the display of the additional channels in conjunction with the video channel provides the user with a general context of the available content at two different levels simultaneously.
  • the additional channels displayed along the bottom of the screen can be accessed by entering the channel level in response to a down input from the direction controller. Above the row of channels, the videos that are in the current channel are displayed across the screen.
  • the user navigates the videos and focuses on individual videos with the left and right controls of the directional controller.
  • the user is not limited to the videos that are initially displayed. Navigating in one direction to the edge of the window causes the row of videos to scroll in the opposite direction, and new videos to move into the viewable area.
  • One focused video 404 is selected in the row of videos and can be chosen for playback by a selection input from the directional controller.
  • Metadata is displayed in an information box 406 associated with the focused video 404 .
  • the metadata may include title, author, submission date, video length, and number of views.
  • an additional video from the same channel as the current video may begin to play automatically in order to provide continuous playback to the user.
  • the row of videos is displayed when the additional video begins and the information box 406 is displayed containing metadata for the additional video to provide additional context to the user. In another embodiment, only information box 406 is displayed when the additional video begins to provide metadata related to the additional video to the user.
  • FIG. 5 illustrates the channel level in accordance with one embodiment.
  • the channel level can be accessed in response to a down input from the directional controller while at the video level.
  • Full screen video 400 is again displayed in a significant portion of the screen.
  • the current channel is the focused channel 502 in the row of channels near the bottom of the screen.
  • the video player navigates through a plurality of channels, moving the focus between channels.
  • a preview row of videos 504 associated with the focused channel is displayed above the focused channel 502 , again providing two level of context simultaneously.
  • a select input is received from the directional controller, a video from the focused channel 502 begins to play and additional videos from the focused channel are queued for playback.
  • an up input from the directional controller enters video level 214 of the currently focused channel.
  • an up input from the directional controller enters video level 214 of the channel from which the full screen video 400 originated regardless of the currently focused video 502 .
  • FIG. 6 illustrates the playback control level in accordance with one embodiment.
  • the playback control level is accessed through an up input from the directional controller while at the playback level, or by a down input from the directional controller while at the search level.
  • Full screen video 440 is displayed in a significant portion of the screen.
  • a control bar 602 is overlaid on the full screen video 400 .
  • the control bar 602 contains icons allowing the user to control playback of the video including a previous video button 604 , a play/pause button 606 , and a next video button 608 .
  • the control bar 602 also includes a time icon 610 indicating the current position in and the total length of the current video.
  • FIG. 7 illustrates the search level in accordance with one embodiment.
  • the search level is generally accessed by an up input from the directional controller while at the playback control level.
  • the search level is accessed in response to user search input (e.g., text inputs) at any other level.
  • the video player displays a search bar 702 overlaid on full screen video 400 .
  • the user can enter a search query into the search bar 702 .
  • the player 125 transmits the query to the video hosting system 100 , which executes a search for relevant videos or channels.
  • Text input can be accomplished through well known methods including a traditional keyboard, a virtual keyboard, or on screen character selection with a directional controller.
  • FIG. 8 illustrates how the video player displays search results as a channel in accordance with one embodiment.
  • the search results are displayed as the videos contained in a channel.
  • a search channel 802 is generated containing the video search results of the search query entered by the user. After entering the search query, the system enters the video level allowing the user to browse videos in the row of video previews 804 . Metadata displayed in information box 806 aids the user in selecting a video.
  • FIG. 9 illustrates a user sign in prompt displayed by the video player as a channel in accordance with one embodiment.
  • a user sign in prompt 902 is displayed as a channel while at the channel level and/or the video level.
  • the video player displays sign in window into which the user can input their logon credentials (e.g., user name and password) to sign in to their account.
  • logon credentials e.g., user name and password
  • the user interface can be customized for the user.
  • the videos displayed in the row of video previews 904 are those associated with the user's account.
  • a feed channel is automatically displayed to the user in the row of channel previews, and includes videos that are determined to be relevant to the user, based on the user's interest (either express or derived from the user's historical viewing behavior), social network, and/or previous search queries by the user, or the like.
  • the feed channel may contain videos from channels that the user has subscribed to (an example of relevance based on an expressed interest), videos that have been shared or recommended by friends of the user (an example of relevance based on the user's social network), and/or videos related to other videos that the user has previously watched (an example of relevance based on historical viewing behavior).
  • the feed channel if the user is already logged in, upon startup of the video player 125 , the feed channel automatically begins playing as full screen video at the playback level 213 . The customized nature of the feed increases the likelihood of interest from the user.
  • FIG. 10 illustrates channels with type indicators in accordance with one embodiment.
  • channel icons displayed along the bottom of the screen at the video level or channel level include type indicators.
  • search indicators 1002 and 1004 are displayed on channels that were generated due to a search query.
  • a feed indicator 1006 indicates that a channel is a feed based on user preferences.
  • a playlist indicator 1008 identifies channels that are playlists created by a user of the video hosting server 100 .
  • the above described user interfaces are generally displayed by the video player in response to commands and data provided by the video hosting service 100 .
  • the service 100 generally provides the underlying video content, metadata, labels, previews, and other dynamic elements.
  • the player uses this data in conjunction with internal programming logic that implements the functional operations described above in response to the inputs received from the directional controller.
  • the apparatus described above for performing the described operations may be specially constructed for the required purposes, or it may comprise a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer.
  • a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, application specific integrated circuits (ASICs), or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus.
  • the computers referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
  • any reference to “one embodiment” or “an embodiment” means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment.
  • the appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
  • the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having” or any other variation thereof, are intended to cover a non-exclusive inclusion.
  • a process, method, article, or apparatus that comprises a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus.
  • “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by any one of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present).
  • first and second are generally used herein to allow clear referencing of different elements of a same class (e.g., a “first label” as simply distinguished from “a second label”), rather than designating an ordering, ranking, or placement of the first item relative to the second item.

Abstract

A computing device provides a display of a plurality of channel previews for a plurality of channels in a channel control area in a user interface, the display distinguishing a first channel preview of the plurality of channel previews that pertains to a first channel of the plurality of channels. The computing device further provides a display of a first set of video previews for a first set of videos in a video control area in the user interface, the first set of video previews being associated with the first channel preview. Responsive to the computing device receiving an input identifying a second channel preview of the plurality of channel previews that pertains to a second channel of the plurality of channels, the computing device replaces the first set of video previews in the video control area with a second set of video previews associated with the second channel preview.

Description

    RELATED APPLICATIONS
  • This application is a continuation application of U.S. patent application Ser. No. 13/287,336, Filed Nov. 2, 2011, which claims priority to U.S. Provisional Patent Application No. 61/488,682, entitled INTERFACE FOR WATCHING A STREAM OF VIDEOS, filed on May 20, 2011.
  • TECHNICAL FIELD
  • The present disclosure generally relates to video browsing, and specifically to browsing sets of videos and continuously playing a set of videos.
  • BACKGROUND
  • For current video hosting websites, such as YOUTUBE, the user interface includes a video display window where a currently selected video is presented, along with various means by which one or more other videos may be selected for viewing. In interfaces that are designed for display on a computer screen, the user can select another video by selecting a hyperlink or a thumbnail image that is displayed in a sidebar or by entering a keyword search for a new video.
  • However, the arrangement, appearance, and behavior of these user interfaces are designed to be used by a user of a conventional computer having input devices such as a mouse, which allows the user to easily move a cursor to any point on the display device, and keyboard, which allows for direct alphanumeric input. As such, these user interfaces become difficult to navigate when applied to televisions or other devices where the user input device provide very limited input controls. For instance, many televisions are controlled with a simple directional input device that has only up, down, left, and right buttons or keys, such as a directional pad (“D-pad”) or the “arrow keys” on a keyboard Such devices do not provide for full, arbitrary placement control over a cursor, but instead only allow for limited vertical and horizontal movements.
  • The problem is compounded as the number of available videos increases. Many video hosting websites host millions of videos, thereby making it all the more important to provide a user interface by which the user can easily browse and search for content of interest. Additionally, many users can now very easily view video content from video hosting sites on televisions and other display systems operated by D-pad type controllers, rather than with a computer mouse and keyboard. Users continue to expect to have the ease of use they are familiar with from their computer experiences in the different system environment of a television or similar display device.
  • SUMMARY
  • The present disclosure relates to computer-implemented methods, systems and computer program products for browsing of videos from a video hosting server using a directional control input device, such as a D-pad or the arrows keys on a keyboard, and selecting a video for playback. In one embodiment, a video is displayed to a user in a user interface of a client video player (“the current video”). In response to a user selection of an input control on the input device, a set of navigation controls are displayed overlaid on the current video, which is displayed full screen in the background behind the overlaid navigation controls. The navigation controls are designed for compatibility with the directional control input device.
  • The client player enables the user to navigate through multiple levels of controls, using the up and down inputs of the direction control input device, where each level of control provides a specific type of access functionality of accessing videos and controlling playback. For example, the levels may include a search level, a playback control level, a playback level, a video level and a channel level. The channel level displays a plurality of different channels (equivalently categories) of video content. The video level displays a plurality of videos available within a given channel. The playback level displays the current full screen video without overlaid controls. The playback control level displays a set of controls for controlling the playback of the current video. The search level provides an interface by which the user input a search query for searching for videos. The levels are linearly arranged so that the user intuitively knows the order of the levels and how to navigate between them using just the directional controls of the input device.
  • Within each level there are a number of options for viewing and controlling videos. The left and right directional controls allow the user to navigate the options at each of the various user interface levels. For example, at the video level, the horizontal navigation controls are effective to focus one of a plurality of video previews that is displayed. Focusing on a video preview causes the display of accompanying metadata providing additional information to the user. The user can then choose to play a focused video with a select input. The user can similarly browse through other options such as previews of channels, playback controls, or text entered in a search box.
  • The features and advantages described in this summary and the following detailed description are not all inclusive. Many additional features and advantages will be apparent to one of ordinary skill in the art in view of the drawings, specification and claims hereof.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Figure (FIG.) 1 is a block diagram of the system architecture in accordance with one embodiment.
  • FIG. 2 illustrates a chart of the levels of control and the response to user input for each level in accordance with one embodiment.
  • FIG. 2A illustrates a schematic view of a video browsing interface in accordance with one embodiment.
  • FIG. 3 illustrates a welcome screen that is displayed on startup in accordance with one embodiment.
  • FIG. 4 illustrates the video level of the user interface in accordance with one embodiment.
  • FIG. 5 illustrates the channel level of the user interface in accordance with one embodiment.
  • FIG. 6 illustrates the playback control level of the user interface in accordance with one embodiment.
  • FIG. 7 illustrates the search level of the user interface in accordance with one embodiment.
  • FIG. 8 illustrates search results displayed as a channel in accordance with one embodiment.
  • FIG. 9 illustrates a user sign in prompt displayed as a channel in accordance with one embodiment.
  • FIG. 10 illustrates channels with type indicators in accordance with one embodiment.
  • The figures depict a preferred embodiment of the present disclosure for purposes of illustration only. One skilled in the art will readily recognize from the following discussion that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein.
  • DETAILED DESCRIPTION
  • FIG. 1 illustrates an exemplary system architecture of a video hosting system in accordance with one embodiment. The system includes clients 123 that communicate with a video hosting server 100 via a network 121. Generally, the video hosting server 100 is responsible for hosting uploaded media items for display to users of the clients 123. In the context of the system, the video hosting server 100 is specifically responsible for generating and providing to a video player in a client device instructions and data from which the video player can display a user interface as described herein. Alternatively, in other embodiments, the video player in the client can be responsible for generating the user interface. It should be noted that videos are just one example of media items, and in other embodiments, the principles described herein are applicable to any type of media items (e.g., pictures, music, etc).
  • As shown in FIG. 1, the video hosting server 100 comprises a front end interface 101, an ingest module 103, a video search module 105, a video serving module 107, a video set module 109, a video controls module 111, a video access log 115, a user database 117, and a video database 119. Many conventional features, such as firewalls, load balancers, application servers, failover servers, site management tools and so forth are not shown so as not to obscure the features of the system.
  • The video hosting server 100 can be accessed through various means. A suitable website for implementation of the video hosting server 100 is the YOUTUBE™ website, found at www.youtube.com; other video hosting sites are known as well, and can be adapted to operate according to the teaching disclosed herein. It will be understood that the term “website” represents any computer system adapted to serve content using any internetworking protocols, and is not intended to be limited to content uploaded or downloaded via the Internet or the HTTP protocol. In general, functions described in one embodiment as being performed on the server 100 side can also be performed on the client 123 side in other embodiments if appropriate. In addition, the functionality attributed to a particular component can be performed by different or multiple components operating together. The server 100 can also be accessed as a service provided to other systems or devices through appropriate application programming interfaces, and thus is not limited to use in websites only.
  • The video hosting server 100 is implemented as server program executing on server-class computer comprising a CPU, memory, network interface, peripheral interfaces, and other well known components. The computers themselves run an operating system such as LINUX, Microsoft Windows, or Mac OS, have generally high performance CPUs, 2G or more of memory, and 1TB or more of disk storage. Of course, other types of computers can be used, and it is expected that as more powerful computers are developed in the future, they can be configured in accordance with the teachings here. The functionality implemented by any of the elements can be provided from computer program products (e.g., as computer executable instructions) that are stored in tangible computer-readable storage mediums (e.g., RAM, hard disk, or optical/magnetic media).
  • In one embodiment a client 123 executes a video player 125 and can connect to the video hosting server 100 to view media content, herein referred to as a “video,” “video content” or “video items” via a network 121. Network 121 is typically the internet, but can also be any network, including but not limited to any combination of a LAN, a MAN, a WAN, a mobile, wired or wireless network, a private network, or a virtual private network. While only a two clients 123 and video players 125 are shown, it is understood that very large numbers (e.g., millions) of clients are supported and can be in communication with the video hosting server 100 at any time.
  • In one embodiment, the client 123 may include a variety of different computing devices, some examples of which are televisions, set top boxes, video game consoles, personal computers, digital assistants, personal digital assistants, cellular phones, mobile phones, smart phones, tablet computers and laptop computers. The client 123 may be adapted to work with various input devices, such examples of which are a mouse, keyboard, touch-screen, or remote control. In the various embodiments discussed here, the client 123 has a directional control type input device that is generally limited, in regards to controlling cursor (or “focus”) movement, to directional inputs (e.g., up, down, left, right) and selection inputs (select or enter). Of course, other types of non-cursor inputs may be available on such a device (e.g., menu, context, programming, etc.).
  • The video player 125 includes any application that is adapted for playing and browsing videos stored on the video hosting server 100. The player can be adapted to play videos in various formats, such as Adobe Flash™, WebM, H.264, DivX, FFMPEG, and the like. In one embodiment, the video player 125 may be a standalone program that is specifically dedicated for video playback (e.g., a dedicated program in a set top box). In other embodiments, the video player 125 is a plug-in or add on to a web browser that allows users of client 123 to access web pages on the World Wide Web. Suitable applications are Microsoft Internet Explorer, Netscape Navigator, Mozilla Firefox, Apple Safari or any application adapted to allow access to web pages on the World Wide Web.
  • The video player 125 allows the user of client 123 to search for and browse through videos hosted by the video hosting server 100 via a user interface provided by the front end interface 101, and loaded into the video player 125. By loading the user interface in the video player 125, a user can find and play a video. The user can select other videos for playback by browsing through different sets of videos that are related to the current video. Alternatively, the user interface can be native to the video player 125, and then populated with its content in the manner as described below.
  • Users of the client devices 123 can also search for videos on the user interface based on keywords, tags or other metadata. In one embodiment, these requests are received as queries in the user interface provided by the front end interface 101 and are provided to the video search module 105, which searches the video database 119 for videos that satisfy the queries. The video search module 105 supports searching on any fielded data for video content, including its title, description, tags, author, category, comment, and so forth. The video serving module 107 retrieves videos selected by the video search module 105 from the video database 119, which is formatted into a file and transmitted to the client 123 for playback in the user interface.
  • In some embodiments, the video player 125 also allows users to upload videos to the video hosting server 100 via the user interface provided by the front end interface 101. In one embodiment, the uploaded videos provided by users are processed by an ingest module 103 at the video hosting server 100. The ingest module 103 processes the video for storage in the video database 119. The processing can include appropriate transformations for the video content. For example, video processing can include format conversion (transcoding), compression, metadata tagging, and other data processing. The uploaded videos can include, for example, video, audio or a combination of video and audio. The ingest module 103 processes the videos in order to standardize content for playback to users of client 123. Once uploaded videos have been formatted, the ingest module 109 stores the video into the database 119. An uploaded video is associated with the content publisher (i.e., the user that uploaded the video) and the content publisher's account record is updated in the user database 117 as needed.
  • The video database 119 is used to store videos. The video database 119 stores videos and associated metadata provided by their respective content owner who provided the videos. Each stored video is assigned a video identifier (ID) when it is processed by the ingest module 109. The videos have metadata associated with each video such as a video ID, artist, video title, label, genre, time length, and optionally geo-restrictions that can be used for data collection or content blocking on a geographic basis.
  • The user database 117 stores a record of all users viewing videos provided by the video hosting server 100. In one embodiment, the user database 117 stores a record of all users who have registered an account with the video hosting server 100. Each registered account includes at least a user name and e-mail address associated with the account. A registered account may also include information about the user associated with the account such as their name, hobbies, uploaded videos, favorite videos, and/or playlists of videos created by the users.
  • For each user, the video access log 115 tracks the user's interactions with videos, from which relationships between videos can be determined. Each entry in the video access log 160 identifies a video being accessed, a time of access, a user ID if available, data identifying the type of interaction with the video. Interaction types can include any user interaction, such as playing, saving, rating, sharing, pausing, rewinding, and forwarding a video. The video access log may also maintain information on videos users choose to watch as measured by click thru rates between videos and/or percentage of a video watched. For example, the click thru rate between a first and second video may be the rate at which users choose (e.g., via a user input selection, such as a click) to view the second video, when presented with the first video. For example, a click thru rate can be computed as the number of times users choose to view the second video divided by the number of times the users are presented with the option of playing the second video while the first video is being played. Alternatively, the click thru rate may be simply computed as the number of times a video is selected for display divided by the number of times the video is presented as available for displaying (e.g., a thumbnail or a link). This information as well as other types of information may be used to determine what videos are presented to a user.
  • The video set module 109 accesses the video access log 115, the user database 117 and/or video database 119 to identify sets of videos or channels that have related videos. A set of videos refers to any grouping of videos from the video database 119. For example, a set of videos may include:
  • (1) videos sharing common metadata (e.g., artist, genre, title, etc.);
  • (2) videos uploaded by the same user;
  • (3) videos in a user-created playlist;
  • The video controls module 111 manages the generation and display of contextual browsing controls for browsing of videos sets. The video controls module 111 receives from the client 123 user inputs with respect to the browsing controls, and updates the labels on the controls, and the video set that is presented in conjunction with the controls, and provides the updated information to front end interface 101 for presentation to the client 123.
  • In one embodiment, a hierarchy of control levels is used to allow a user to interact with the video server 100 and choose videos to play. For example, the levels may include a search level, a playback control level, a playback level, a video level, and a channel level displaying previews of videos within a channel. The search level provides an interface by which the user input a search query for searching for videos. The playback level displays the full screen video without overlaid controls. The playback control level displays a set of controls for controlling the playback of the current video. The video level displays a plurality of videos available within a given channel. The channel level displays a plurality of different channels (equivalently categories) of video content.
  • The browsing controls allow a user to move the cursor (or focus) between control levels, and to select items or controls within each level, such as sets of videos for playback from the channel level, or a specific video within a set of videos from the video level. Generally, the video controls module 111 receives user inputs from the client 123 via the front end interface 101 for switching between sets of videos, browsing within a set of videos, or selecting a video for playback. The user inputs are generally originated from a directional controller type of device, such as a D-pad controller, arrow keys on a keyboard, or the like, which have the semantics of “up,” “down,” “left”, “right”, and “select,” though of course they can be transmitted as coded input signals.
  • In response, the video controls module 111 updates the user interface displayed and the video set that is presented in conjunction with the controls in accordance with the user input. In accordance with an embodiment, as the user changes control levels (e.g., by pressing “up” or “down” on the input device) the contextual controls displayed on the screen change. That is, for example, if a user is navigating the video control level, the contextual menu for the video control level is displayed. In response to receiving an “down” input, the contextual menu of the video control level is removed from the display (e.g., disappears) and is replaced by the contextual control menu of the channel control level.
  • In some embodiments, the functionality of the video controls module 111 may be implemented in the client 123 instead of the server 100. In one embodiment, a full screen video is constantly played on the client 123. Visual controls, e.g., playback controls, that are in use by the user can be displayed on top of the full screen video (i.e., as a screen overlay). The controls can be displayed semi-transparently or opaquely on top of the full screen video.
  • The contextual controls allow for a simple and intuitive method of selecting an additional video to watch. Also, because a user can interact with the controls with a simple set of inputs (e.g., up, down, left, right, select), the interface is particularly beneficial when used in conjunction with devices that have constrained inputs.
  • FIG. 2 illustrates a chart of the levels of control and the response to device input for each level in accordance with one embodiment. Column 201 of the chart lists the levels of control available to a user of client 123. In one embodiment, the levels of control include search, playback control, playback, videos and channels. The levels of control listed are merely exemplary and different or additional levels may be used in their place. The search level 211 provides search functionality by which the user can enter a search query in order to select a certain channel or video. The playback control level 212 provides playback controls for controlling the currently display video, which may include play, pause, fast forward and various other controls. The playback level 213 plays the current video in full screen without any overlaid controls. The video level 214 provides access to a plurality of videos that are a part of the channel (or set) associated with the current video. The channel level 215 provides access to a plurality of channels for the user to choose from. Activation of each level via an input control results in the display of specific control features associated with the activated level, while the control features from the previous level may be removed, or displayed in a subdued format, to provide context for the currently active level.
  • The user switches (equivalently, moves the focus) between the various levels by utilizing the up and down inputs (generally, vertical inputs) of a directional input device. For example, if currently at the playback level 212, an up input would result in switching to the search level 211, while a down input would result in switching to the playback level 213. In a similar manner, a user can switch between all of the levels listed in column 1 201 through use of up and down inputs.
  • Column 202 lists the actions that occur at a given control level when a left or right input (generally, horizontal input) is received from the directional input device. Similarly, column 203 lists the actions that occur at a given level when a select input is received from the directional input device. For example, while at search level 211, a user can input a string into an input field for a search query. At this level, the left and right inputs of the input device result in a cursor moving 216 left or right in the input field, such that the user can edit the input. Additionally, a select input begins 221 the search query and requests search results from the server 100 to display to the user. While in the playback control level 212, a horizontal input alters 217 the control that is currently selected by the user. A select input executes 222 the currently selected control.
  • At the playback level 213, a left input causes to the video player to immediately play the previous video in the current channel, while a right input causes the video player 125 to immediately play the next video that is scheduled to play in the current channel. In one embodiment, reception of a select input while at the playback level 213 causes the client 125 to display playback controls as if an up input was received to switch to playback control level 212.
  • Entering the video level 214 displays a plurality of videos that are a part of the current channel from which the currently playing video originated. A left or right input changes which of the plurality of videos has the focus, respectively the previous or next video. In one embodiment, providing the focus to a video causes the player to display metadata for the video, including author, date of submission and title. In addition, a select input causes the video player 125 to play 224 the focused video. When the video level 214 is entered, the channel level 215 may also be displayed concurrently therewith, with the current channel being graphically indicated.
  • Entering channel level 215 causes a plurality of channels to be displayed. Left and right inputs allow the user to focus 220 a channel, respectively the previous or next channel. As the user moves the focus from one channel to the next, the video player 125 displays in the video level 214 previews or thumbnails of videos that are a part of the currently focused channel. A select input from the directional controller selects 225 the focused channel and begins playback of a first video from the channel. In one embodiment, at the conclusion of the first video, additional videos from the selected channel will play continuously.
  • FIG. 2A illustrates a schematic view of a video browsing interface in accordance with one embodiment. As shown, a current video 205 would play in the background of the user interface 200. While five levels of the user interface are shown in the schematic, a subset of the levels may be shown to the user at any given time. Generally, the levels are organized along the vertical axis 240 for ease of navigation and options within each of the levels are organized along the horizontal axis 242. A search bar 230 allows entry of a search query at the search level 211. A playback control bar 232 allows control of the current video 205 while at the playback control level 212. At the playback level, the current video 205 is displayed with all or most user interface controls hidden. A row of video previews 234 is displayed along the bottom portion of the screen at the video level 214 and the channel level 215. Similarly, a row of channel previews 236 is displayed along the bottom portion of the screen at the video level 214 and the channel level 215. Focus on a channel preview and/or video preview may be indicated by the user interface, e.g., by highlighting, change of color, luminance, shape etc. As illustrated, at the video level, a preview for channel k 252 may be focused to indicate which channel the videos in the row of video previews 234 belong to. Additionally, a preview for video m+1 254 may be focused to indicate a focused video during browsing. An indication of focus can designate which video will play when a select input is received at the video level 214.
  • FIG. 3 illustrates a welcome screen that is displayed on startup by the video player in accordance with one embodiment. The welcome screen is displayed to help familiarize the user with the user interface. Alternatively, on startup the system could begin displaying full screen video without any welcome screen or other overlay. As illustrated, the user is prompted to begin typing to enter a search query or press down to begin watching full screen video.
  • FIG. 4 illustrates the video level 214 in accordance with one embodiment. Full screen video 400 is displayed in a significant portion of the screen. Hence, the user can navigate the video level while still being able to view the video that is currently playing. The current video set or channel 402 is displayed near the bottom of the screen in a row of channels (here, “Your Feed,” “Music,” “In Theaters,” “Autos & Vehicles,” “Comedy,” and “Education”). These channels are shown in a subdued format, here both grayed out, and small icons. The display of the additional channels in conjunction with the video channel provides the user with a general context of the available content at two different levels simultaneously. The additional channels displayed along the bottom of the screen can be accessed by entering the channel level in response to a down input from the direction controller. Above the row of channels, the videos that are in the current channel are displayed across the screen.
  • In the video level, the user navigates the videos and focuses on individual videos with the left and right controls of the directional controller. The user is not limited to the videos that are initially displayed. Navigating in one direction to the edge of the window causes the row of videos to scroll in the opposite direction, and new videos to move into the viewable area. One focused video 404 is selected in the row of videos and can be chosen for playback by a selection input from the directional controller. Metadata is displayed in an information box 406 associated with the focused video 404. The metadata may include title, author, submission date, video length, and number of views. As previously mentioned, at the conclusion of a current video, an additional video from the same channel as the current video may begin to play automatically in order to provide continuous playback to the user. In one embodiment, the row of videos is displayed when the additional video begins and the information box 406 is displayed containing metadata for the additional video to provide additional context to the user. In another embodiment, only information box 406 is displayed when the additional video begins to provide metadata related to the additional video to the user.
  • FIG. 5 illustrates the channel level in accordance with one embodiment. The channel level can be accessed in response to a down input from the directional controller while at the video level. Full screen video 400 is again displayed in a significant portion of the screen. Initially, the current channel is the focused channel 502 in the row of channels near the bottom of the screen. In response to left and right inputs from the directional controller, the video player navigates through a plurality of channels, moving the focus between channels. A preview row of videos 504 associated with the focused channel is displayed above the focused channel 502, again providing two level of context simultaneously. If a select input is received from the directional controller, a video from the focused channel 502 begins to play and additional videos from the focused channel are queued for playback. In one embodiment, an up input from the directional controller enters video level 214 of the currently focused channel. Alternatively, an up input from the directional controller enters video level 214 of the channel from which the full screen video 400 originated regardless of the currently focused video 502.
  • FIG. 6 illustrates the playback control level in accordance with one embodiment. The playback control level is accessed through an up input from the directional controller while at the playback level, or by a down input from the directional controller while at the search level. Full screen video 440 is displayed in a significant portion of the screen. A control bar 602 is overlaid on the full screen video 400. The control bar 602 contains icons allowing the user to control playback of the video including a previous video button 604, a play/pause button 606, and a next video button 608. As illustrated, the control bar 602 also includes a time icon 610 indicating the current position in and the total length of the current video.
  • FIG. 7 illustrates the search level in accordance with one embodiment. The search level is generally accessed by an up input from the directional controller while at the playback control level. In one embodiment, the search level is accessed in response to user search input (e.g., text inputs) at any other level. The video player displays a search bar 702 overlaid on full screen video 400. The user can enter a search query into the search bar 702. In response to the query, the player 125 transmits the query to the video hosting system 100, which executes a search for relevant videos or channels. Text input can be accomplished through well known methods including a traditional keyboard, a virtual keyboard, or on screen character selection with a directional controller.
  • FIG. 8 illustrates how the video player displays search results as a channel in accordance with one embodiment. Here, the search results are displayed as the videos contained in a channel. A search channel 802 is generated containing the video search results of the search query entered by the user. After entering the search query, the system enters the video level allowing the user to browse videos in the row of video previews 804. Metadata displayed in information box 806 aids the user in selecting a video.
  • FIG. 9 illustrates a user sign in prompt displayed by the video player as a channel in accordance with one embodiment. In one embodiment, a user sign in prompt 902 is displayed as a channel while at the channel level and/or the video level. In response to receiving the focus on this prompt and then receiving a selection from the directional controller, the video player displays sign in window into which the user can input their logon credentials (e.g., user name and password) to sign in to their account. After signing in, the user interface can be customized for the user. For example, the videos displayed in the row of video previews 904 are those associated with the user's account.
  • In one embodiment, after signing in, a feed channel is automatically displayed to the user in the row of channel previews, and includes videos that are determined to be relevant to the user, based on the user's interest (either express or derived from the user's historical viewing behavior), social network, and/or previous search queries by the user, or the like. For example, the feed channel may contain videos from channels that the user has subscribed to (an example of relevance based on an expressed interest), videos that have been shared or recommended by friends of the user (an example of relevance based on the user's social network), and/or videos related to other videos that the user has previously watched (an example of relevance based on historical viewing behavior). In one embodiment, if the user is already logged in, upon startup of the video player 125, the feed channel automatically begins playing as full screen video at the playback level 213. The customized nature of the feed increases the likelihood of interest from the user.
  • FIG. 10 illustrates channels with type indicators in accordance with one embodiment. In this embodiment, channel icons displayed along the bottom of the screen at the video level or channel level include type indicators. For example, search indicators 1002 and 1004 are displayed on channels that were generated due to a search query. A feed indicator 1006 indicates that a channel is a feed based on user preferences. Additionally, a playlist indicator 1008 identifies channels that are playlists created by a user of the video hosting server 100.
  • The above described user interfaces are generally displayed by the video player in response to commands and data provided by the video hosting service 100. The service 100 generally provides the underlying video content, metadata, labels, previews, and other dynamic elements. The player uses this data in conjunction with internal programming logic that implements the functional operations described above in response to the inputs received from the directional controller.
  • The apparatus described above for performing the described operations may be specially constructed for the required purposes, or it may comprise 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 is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, application specific integrated circuits (ASICs), or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus. Furthermore, the computers referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
  • Some portions of above description describe the embodiments in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are commonly used by those skilled in the data processing arts to convey the substance of their work effectively to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be embodied in software, firmware, hardware, or any combinations thereof.
  • As used herein any reference to “one embodiment” or “an embodiment” means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
  • As used herein, the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having” or any other variation thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, article, or apparatus that comprises a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Further, unless expressly stated to the contrary, “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by any one of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present).
  • In addition, use of the “a” or “an” are employed to describe elements and components of the embodiments herein. This is done merely for convenience and to give a general sense of the disclosed embodiments. This description should be read to include one or at least one and the singular also includes the plural unless it is obvious that it is meant otherwise. Similarly, the terms “first” and “second” are generally used herein to allow clear referencing of different elements of a same class (e.g., a “first label” as simply distinguished from “a second label”), rather than designating an ordering, ranking, or placement of the first item relative to the second item.
  • Upon reading this disclosure, those of skill in the art will appreciate still additional alternative structural and functional designs for a system and a process for browsing video sets through the disclosed principles herein. Thus, while particular embodiments and applications have been illustrated and described, it is to be understood that the disclosed embodiments are not limited to the precise construction and components disclosed herein. Various modifications, changes and variations, which will be apparent to those skilled in the art, may be made in the arrangement, operation and details of the method and apparatus disclosed herein without departing from the spirit and scope defined in the appended claims.

Claims (30)

1. A method comprising:
providing, by a computing device, a display of a plurality of channel previews for a plurality of channels in a channel control area in a user interface, the display distinguishing a first channel preview of the plurality of channel previews that pertains to a first channel of the plurality of channels;
providing, by the computing device, a display of a first set of video previews for a first set of videos in a video control area in the user interface, wherein the first set of video previews is associated with the first channel preview; and
responsive to the computing device receiving an input identifying a second channel preview of the plurality of channel previews that pertains to a second channel of the plurality of channels, replacing the first set of video previews in the video control area with a second set of video previews associated with the second channel preview.
2. The method of claim 1, further comprising:
providing a display of first contextual video controls in the user interface, wherein the first contextual video controls are associated with a first level of control for controlling video playback;
responsive to a first input from the directional controller along a first axis of the directional controller, providing a display of second contextual video controls that are associated with a second level of control for controlling the video playback, wherein the display of the second contextual video controls replaces the display of the first contextual video controls; and
responsive to a second input from the directional controller along a second axis of the directional controller, distinguishing a specific contextual video control in the display of the second contextual video controls.
3. The method of claim 2, wherein the first level of control comprises a playback level of control, and wherein the contextual video controls associated with the playback level of control comprise a play control, a pause control, a fast forward control and a rewind control, the method further comprising:
while the playback level of control is active, playing a previous video in a current channel of the plurality of channels responsive to a left input along the second axis of the directional controller and playing a next video in the current channel responsive to a right input along the second axis of the directional controller.
4. The method of claim 1, wherein the channel control area includes a search result displayed as a search result channel.
5. The method of claim 1, wherein the second set of videos are displayed sequentially without interaction from a user.
6. The method of claim 1, wherein displays of the channel control area and the video control area are overlaid on one or more of the second set of videos.
7. The method of claim 1, further comprising:
responsive to additional input identifying a first video preview of the second set of video previews, displaying metadata associated with the first video preview in the user interface.
8. The method of claim 1, further comprising:
responsive to selection of the second channel preview, playing a video associated with one of the second set of video previews.
9. The method of claim 1, wherein the computing device executes at least one of a video player or a video host.
10. The method of claim 1, further comprising:
while the video control area is active:
distinguishing a previous video preview of the second set of video previews associated with the second channel preview responsive to a first input along a first axis of the directional controller;
distinguishing a next video preview of the second set of video previews associated with the second channel preview responsive to a second input along the first axis of the directional controller; and
playing a video associated with a distinguished video preview responsive to receiving a select input.
11. A method comprising:
determining, by a computing device, a plurality of videos that satisfy one or more criteria;
generating, by the computing device, a channel for the plurality of videos;
providing, by the computing device, a display of a channel preview for the generated channel in a channel control area in a user interface; and
responsive to an input identifying the channel preview, providing a display of a plurality of video previews associated with the plurality of videos in a video control area of the user interface.
12. The method of claim 11, wherein the generated channel is a search channel, wherein the one or more criteria comprise a user input search term, and wherein the plurality of videos comprise search results based on the user input search term.
13. The method of claim 11, wherein the generated channel is a feed channel, and wherein the one or more criteria comprise user relevancy criteria based on at least one of user interest, videos shared by friends of the user, videos recommended by friends of the user, or videos related to other videos previously watched by the user.
14. The method of claim 13, further comprising:
responsive to a video player being loaded, automatically selecting the feed channel and beginning playback of a first video in the feed channel.
15. The method of claim 11, further comprising:
receiving an additional input selecting the channel preview; and
playing a first video of the plurality of videos responsive to receiving the additional input.
16. A computer readable storage medium having instructions that, when executed by a computing device, cause the computing device to perform a method comprising:
providing, by the computing device, a display of a plurality of channel previews for a plurality of channels in a channel control area in a user interface, the display distinguishing a first channel preview of the plurality of channel previews that pertains to a first channel of the plurality of channels;
providing, by the computing device, a display of a first set of video previews for a first set of videos in a video control area in the user interface, wherein the first set of video previews is associated with the first channel preview; and
responsive to the computing device receiving an input identifying a second channel preview of the plurality of channel previews that pertains to a second channel of the plurality of channels, replacing the first set of video previews in the video control area with a second set of video previews associated with the second channel preview.
17. The computer readable storage medium of claim 16, the method further comprising:
providing a display of first contextual video controls in the user interface, wherein the first contextual video controls are associated with a first level of control for controlling video playback;
responsive to a first input from the directional controller along a first axis of the directional controller, providing a display of second contextual video controls that are associated with a second level of control for controlling the video playback, wherein the display of the second contextual video controls replaces the display of the first contextual video controls; and
responsive to a second input from the directional controller along a second axis of the directional controller, distinguishing a specific contextual video control in the display of the second contextual video controls.
18. The computer readable storage medium of claim 16, wherein displays of the channel control area and the video control area are overlaid on one or more of the second set of videos.
19. The computer readable storage medium of claim 16, the method further comprising:
responsive to additional input identifying a first video preview of the second set of video previews, displaying metadata associated with the first video preview in the user interface.
20. The computer readable storage medium of claim 16, the method further comprising:
responsive to selection of the second channel preview, playing a video associated with one of the second set of video previews.
21. The computer readable storage medium of claim 16, the method further comprising:
while the video control area is active:
distinguishing a previous video preview of the second set of video previews associated with the second channel preview responsive to a first input along a first axis of the directional controller;
distinguishing a next video preview of the second set of video previews associated with the second channel preview responsive to a second input along the first axis of the directional controller; and
playing a video associated with a distinguished video preview responsive to receiving a select input.
22. The computer readable medium of claim 16, the method further comprising:
determining a plurality of videos that satisfy one or more criteria;
generating a channel for the plurality of videos; and
including a channel preview for the generated channel in the display of the plurality of channel previews.
23. The computer readable storage medium of claim 22, wherein the generated channel is a search channel, wherein the one or more criteria comprise a user input search term, and wherein the plurality of videos comprise search results based on the user input search term.
24. The computer readable storage medium of claim 22, wherein the generated channel is a feed channel, and wherein the one or more criteria comprise user relevancy criteria based on at least one of user interest, videos shared by friends of the user, videos recommended by friends of the user, or videos related to other videos previously watched by the user.
25. A computing device comprising:
a memory; and
a processor coupled to the memory, wherein the processor is configured to:
provide a display of a plurality of channel previews for a plurality of channels in a channel control area in a user interface, the display distinguishing a first channel preview of the plurality of channel previews that pertains to a first channel of the plurality of channels;
provide a display of a first set of video previews for a first set of videos in a video control area in the user interface, wherein the first set of video previews is associated with the first channel preview; and
responsive to the computing device receiving an input identifying a second channel preview of the plurality of channel previews that pertains to a second channel of the plurality of channels, replace the first set of video previews in the video control area with a second set of video previews associated with the second channel preview.
26. The computing device of claim 25, wherein the processor is further configured to:
provide a display of first contextual video controls in the user interface, wherein the first contextual video controls are associated with a first level of control for controlling video playback;
responsive to a first input from the directional controller along a first axis of the directional controller, provide a display of second contextual video controls that are associated with a second level of control for controlling the video playback, wherein the display of the second contextual video controls replaces the display of the first contextual video controls; and
responsive to a second input from the directional controller along a second axis of the directional controller, distinguish a specific contextual video control in the display of the second contextual video controls.
27. The computing device of claim 25, wherein the processor is further configured to:
responsive to additional input identifying a first video preview of the second set of video previews, display metadata associated with the first video preview in the user interface.
28. The computing device of claim 25, wherein the processor is further configured to:
responsive to selection of the second channel preview, play a video associated with one of the second set of video previews.
29. The computing device of claim 25, wherein the processor is further configured to:
determine a plurality of videos that satisfy one or more criteria;
generate a channel for the plurality of videos; and
include a channel preview for the generated channel in the display of the plurality of channel previews.
30. The computing device of claim 29, wherein the generated channel is a search channel, wherein the one or more criteria comprise a user input search term, and wherein the plurality of videos comprise search results based on the user input search term.
US13/620,269 2011-05-20 2012-09-14 Interface for watching a stream of videos Active US8473982B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/620,269 US8473982B2 (en) 2011-05-20 2012-09-14 Interface for watching a stream of videos
US13/903,882 US8990857B2 (en) 2011-05-20 2013-05-28 Interface for watching a stream of videos
US14/624,451 US9407965B2 (en) 2011-05-20 2015-02-17 Interface for watching a stream of videos

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161488682P 2011-05-20 2011-05-20
US13/287,336 US8291452B1 (en) 2011-05-20 2011-11-02 Interface for watching a stream of videos
US13/620,269 US8473982B2 (en) 2011-05-20 2012-09-14 Interface for watching a stream of videos

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US13/287,336 Continuation US8291452B1 (en) 2010-05-20 2011-11-02 Interface for watching a stream of videos

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/903,882 Continuation US8990857B2 (en) 2011-05-20 2013-05-28 Interface for watching a stream of videos

Publications (2)

Publication Number Publication Date
US20130024895A1 true US20130024895A1 (en) 2013-01-24
US8473982B2 US8473982B2 (en) 2013-06-25

Family

ID=45615023

Family Applications (4)

Application Number Title Priority Date Filing Date
US13/287,336 Active US8291452B1 (en) 2010-05-20 2011-11-02 Interface for watching a stream of videos
US13/620,269 Active US8473982B2 (en) 2011-05-20 2012-09-14 Interface for watching a stream of videos
US13/903,882 Active 2032-02-17 US8990857B2 (en) 2011-05-20 2013-05-28 Interface for watching a stream of videos
US14/624,451 Active US9407965B2 (en) 2011-05-20 2015-02-17 Interface for watching a stream of videos

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US13/287,336 Active US8291452B1 (en) 2010-05-20 2011-11-02 Interface for watching a stream of videos

Family Applications After (2)

Application Number Title Priority Date Filing Date
US13/903,882 Active 2032-02-17 US8990857B2 (en) 2011-05-20 2013-05-28 Interface for watching a stream of videos
US14/624,451 Active US9407965B2 (en) 2011-05-20 2015-02-17 Interface for watching a stream of videos

Country Status (5)

Country Link
US (4) US8291452B1 (en)
AU (2) AU2012100055A4 (en)
DE (1) DE202012007839U1 (en)
NL (1) NL2008148C2 (en)
WO (1) WO2012162177A2 (en)

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140013356A1 (en) * 2012-07-09 2014-01-09 Wistron Corp. Method and system for providing channel information, and computer readable storage medium
US20140223306A1 (en) * 2013-02-05 2014-08-07 Redux, Inc. Generation of layout of videos
US20140380164A1 (en) * 2013-06-24 2014-12-25 Thinktank Holdings Llc Systems and methods for displaying website content
US9031927B2 (en) * 2012-04-13 2015-05-12 Ebay Inc. Method and system to provide video-based search results
US20150293681A1 (en) * 2014-04-09 2015-10-15 Google Inc. Methods, systems, and media for providing a media interface with multiple control interfaces
WO2016048310A1 (en) * 2014-09-24 2016-03-31 Fortulabs Technologies Llc Management of the channel bar
WO2016048308A1 (en) * 2014-09-24 2016-03-31 Fortulabs Technologies Llc Management of the channel bar
US9402050B1 (en) 2015-05-07 2016-07-26 SnipMe, Inc. Media content creation application
US9774917B1 (en) 2012-12-10 2017-09-26 Apple Inc. Channel bar user interface
US11057682B2 (en) 2019-03-24 2021-07-06 Apple Inc. User interfaces including selectable representations of content items
CN113170232A (en) * 2019-01-04 2021-07-23 格雷斯诺特公司 Generating media station previews using a reference database
US11126343B2 (en) 2013-12-26 2021-09-21 Saturn Licensing Llc Information processing apparatus, information processing method, and program
US11194546B2 (en) 2012-12-31 2021-12-07 Apple Inc. Multi-user TV user interface
US11245967B2 (en) 2012-12-13 2022-02-08 Apple Inc. TV side bar user interface
US11290762B2 (en) 2012-11-27 2022-03-29 Apple Inc. Agnostic media delivery system
US11297392B2 (en) 2012-12-18 2022-04-05 Apple Inc. Devices and method for providing remote control hints on a display
US11461397B2 (en) 2014-06-24 2022-10-04 Apple Inc. Column interface for navigating in a user interface
US11467726B2 (en) 2019-03-24 2022-10-11 Apple Inc. User interfaces for viewing and accessing content on an electronic device
US11520858B2 (en) 2016-06-12 2022-12-06 Apple Inc. Device-level authorization for viewing content
US11543938B2 (en) 2016-06-12 2023-01-03 Apple Inc. Identifying applications on which content is available
US11609678B2 (en) 2016-10-26 2023-03-21 Apple Inc. User interfaces for browsing content from multiple content applications on an electronic device
US11683565B2 (en) 2019-03-24 2023-06-20 Apple Inc. User interfaces for interacting with channels that provide content that plays in a media browsing application
US11720229B2 (en) 2020-12-07 2023-08-08 Apple Inc. User interfaces for browsing and presenting content
US11797606B2 (en) 2019-05-31 2023-10-24 Apple Inc. User interfaces for a podcast browsing and playback application
US11843838B2 (en) 2020-03-24 2023-12-12 Apple Inc. User interfaces for accessing episodes of a content series
US11863837B2 (en) 2019-05-31 2024-01-02 Apple Inc. Notification of augmented reality content on an electronic device
US11899895B2 (en) 2020-06-21 2024-02-13 Apple Inc. User interfaces for setting up an electronic device
EP4202615A4 (en) * 2020-10-15 2024-02-28 Lemon Inc Video distribution system and method, computing device, and user equipment
US11934640B2 (en) 2021-01-29 2024-03-19 Apple Inc. User interfaces for record labels
US11962836B2 (en) 2019-03-24 2024-04-16 Apple Inc. User interfaces for a media browsing application
US11966560B2 (en) 2017-09-28 2024-04-23 Apple Inc. User interfaces for browsing content from multiple content applications on an electronic device

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7320025B1 (en) 2002-03-18 2008-01-15 Music Choice Systems and methods for providing a broadcast entertainment service and an on-demand entertainment service
US8291452B1 (en) 2011-05-20 2012-10-16 Google Inc. Interface for watching a stream of videos
WO2012075295A2 (en) * 2010-12-02 2012-06-07 Webshoz, Inc. Systems, devices and methods for streaming multiple different media content in a digital container
US9197937B1 (en) 2012-04-26 2015-11-24 Music Choice Automatic on-demand navigation based on meta-data broadcast with media content
US9423925B1 (en) * 2012-07-11 2016-08-23 Google Inc. Adaptive content control and display for internet media
KR101899819B1 (en) * 2012-08-03 2018-09-20 엘지전자 주식회사 Mobile terminal and method for controlling thereof
US10198152B2 (en) * 2012-08-10 2019-02-05 Oath Inc. Systems and methods for providing and updating live-streaming online content in an interactive web platform
USD755222S1 (en) * 2012-08-20 2016-05-03 Yokogawa Electric Corporation Display screen with graphical user interface
US20140258816A1 (en) * 2013-03-08 2014-09-11 True Xiong Methodology to dynamically rearrange web content for consumer devices
KR102040611B1 (en) * 2013-05-31 2019-11-05 엘지전자 주식회사 Mobile terminal and controlling method thereof
KR102111406B1 (en) * 2013-11-20 2020-05-15 엘지전자 주식회사 Image display apparatus and method for operating the same
CN103631526A (en) * 2013-11-27 2014-03-12 乐视网信息技术(北京)股份有限公司 Device and method for displaying search information
CN111078110B (en) 2014-06-24 2023-10-24 苹果公司 Input device and user interface interactions
US10219027B1 (en) 2014-10-24 2019-02-26 Music Choice System for providing music content to a user
US10057204B2 (en) 2015-03-31 2018-08-21 Facebook, Inc. Multi-user media presentation system
DE102015105590A1 (en) * 2015-04-13 2016-10-13 Jörg Helmholz A method of transmitting a string of a plurality of video sequences
WO2016168893A1 (en) 2015-04-20 2016-10-27 Tiltsta Pty Ltd Interactive media system and method
US10212481B2 (en) * 2015-09-04 2019-02-19 Samsung Electronics Co., Ltd. Home menu interface for displaying content viewing options
US9877055B2 (en) 2015-12-18 2018-01-23 Google Llc Computer system and method for streaming video with dynamic user features
US9992539B2 (en) * 2016-04-05 2018-06-05 Google Llc Identifying viewing characteristics of an audience of a content channel
US10681105B2 (en) 2016-12-30 2020-06-09 Facebook, Inc. Decision engine for dynamically selecting media streams
US10271074B2 (en) 2016-12-30 2019-04-23 Facebook, Inc. Live to video on demand normalization
US10237581B2 (en) * 2016-12-30 2019-03-19 Facebook, Inc. Presentation of composite streams to users
US10448063B2 (en) * 2017-02-22 2019-10-15 International Business Machines Corporation System and method for perspective switching during video access
DK201870354A1 (en) 2018-06-03 2019-12-20 Apple Inc. Setup procedures for an electronic device
CN111859208A (en) * 2019-04-25 2020-10-30 北京小米移动软件有限公司 Display method, display device and storage medium
CN111010619A (en) * 2019-12-05 2020-04-14 北京奇艺世纪科技有限公司 Method, apparatus, computer device and storage medium for processing short video data

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5926230A (en) * 1995-02-06 1999-07-20 Sony Corporation Electrical program guide system and method

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6421067B1 (en) * 2000-01-16 2002-07-16 Isurftv Electronic programming guide
US20060294545A1 (en) * 2005-06-23 2006-12-28 Microsoft Corporation Dynamic media guide listings
WO2008030565A2 (en) * 2006-09-07 2008-03-13 Opentv, Inc. Method and system to navigate viewable content
JP4690376B2 (en) * 2007-10-18 2011-06-01 株式会社ナナオ Remote control device, remote control system and electrical equipment
CN101662615B (en) * 2008-08-28 2011-11-09 鸿富锦精密工业(深圳)有限公司 Electronic picture frame and method for previewing and quickly playing favorite channel
US9241136B2 (en) * 2009-06-29 2016-01-19 Verizon Patent And Licensing Inc. Method and apparatus for creating a personalized programming guide
WO2011019155A2 (en) * 2009-08-14 2011-02-17 Lg Electronics Inc. Remote control device and remote control method using the same
BR112012006469A2 (en) * 2009-09-24 2017-02-21 Ringguides Inc computer-implemented methods for enabling user-defined asset collection creation and sharing, and for forcing hierarchically arranged asset collections and links and program guide for video content, computer program extensible product, and web hosting service. media.
US8291452B1 (en) 2011-05-20 2012-10-16 Google Inc. Interface for watching a stream of videos
US8375208B2 (en) * 2010-05-20 2013-02-12 Verizon Patent And Licensing Inc. Method and apparatus for providing content aggregation in support of virtual channels
US8713592B2 (en) * 2010-06-29 2014-04-29 Google Inc. Self-service channel marketplace

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5926230A (en) * 1995-02-06 1999-07-20 Sony Corporation Electrical program guide system and method

Cited By (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10791375B2 (en) 2012-04-13 2020-09-29 Ebay Inc. Method and system to provide video-based search results
US9031927B2 (en) * 2012-04-13 2015-05-12 Ebay Inc. Method and system to provide video-based search results
US8789097B2 (en) * 2012-07-09 2014-07-22 Wistron Corp. Method and system for providing channel information, and computer readable storage medium
US20140013356A1 (en) * 2012-07-09 2014-01-09 Wistron Corp. Method and system for providing channel information, and computer readable storage medium
US11290762B2 (en) 2012-11-27 2022-03-29 Apple Inc. Agnostic media delivery system
US9774917B1 (en) 2012-12-10 2017-09-26 Apple Inc. Channel bar user interface
US11070889B2 (en) 2012-12-10 2021-07-20 Apple Inc. Channel bar user interface
US10091558B2 (en) 2012-12-10 2018-10-02 Apple Inc. Channel bar user interface
US11245967B2 (en) 2012-12-13 2022-02-08 Apple Inc. TV side bar user interface
US11317161B2 (en) 2012-12-13 2022-04-26 Apple Inc. TV side bar user interface
US11297392B2 (en) 2012-12-18 2022-04-05 Apple Inc. Devices and method for providing remote control hints on a display
US11822858B2 (en) 2012-12-31 2023-11-21 Apple Inc. Multi-user TV user interface
US11194546B2 (en) 2012-12-31 2021-12-07 Apple Inc. Multi-user TV user interface
US9589594B2 (en) * 2013-02-05 2017-03-07 Alc Holdings, Inc. Generation of layout of videos
US9767845B2 (en) 2013-02-05 2017-09-19 Alc Holdings, Inc. Activating a video based on location in screen
US9530452B2 (en) 2013-02-05 2016-12-27 Alc Holdings, Inc. Video preview creation with link
US9852762B2 (en) 2013-02-05 2017-12-26 Alc Holdings, Inc. User interface for video preview creation
US9881646B2 (en) 2013-02-05 2018-01-30 Alc Holdings, Inc. Video preview creation with audio
US9349413B2 (en) 2013-02-05 2016-05-24 Alc Holdings, Inc. User interface for video preview creation
US10373646B2 (en) 2013-02-05 2019-08-06 Alc Holdings, Inc. Generation of layout of videos
US10643660B2 (en) 2013-02-05 2020-05-05 Alc Holdings, Inc. Video preview creation with audio
US20140223306A1 (en) * 2013-02-05 2014-08-07 Redux, Inc. Generation of layout of videos
WO2014209847A1 (en) * 2013-06-24 2014-12-31 Thinktank Holdings Llc Systems and methods for displaying website content
US20140380164A1 (en) * 2013-06-24 2014-12-25 Thinktank Holdings Llc Systems and methods for displaying website content
US11126343B2 (en) 2013-12-26 2021-09-21 Saturn Licensing Llc Information processing apparatus, information processing method, and program
US20150293681A1 (en) * 2014-04-09 2015-10-15 Google Inc. Methods, systems, and media for providing a media interface with multiple control interfaces
US11461397B2 (en) 2014-06-24 2022-10-04 Apple Inc. Column interface for navigating in a user interface
US10205985B2 (en) 2014-09-24 2019-02-12 Apple Inc. Management of the channel bar
WO2016048308A1 (en) * 2014-09-24 2016-03-31 Fortulabs Technologies Llc Management of the channel bar
WO2016048310A1 (en) * 2014-09-24 2016-03-31 Fortulabs Technologies Llc Management of the channel bar
US9402050B1 (en) 2015-05-07 2016-07-26 SnipMe, Inc. Media content creation application
US11520858B2 (en) 2016-06-12 2022-12-06 Apple Inc. Device-level authorization for viewing content
US11543938B2 (en) 2016-06-12 2023-01-03 Apple Inc. Identifying applications on which content is available
US11609678B2 (en) 2016-10-26 2023-03-21 Apple Inc. User interfaces for browsing content from multiple content applications on an electronic device
US11966560B2 (en) 2017-09-28 2024-04-23 Apple Inc. User interfaces for browsing content from multiple content applications on an electronic device
CN113170232A (en) * 2019-01-04 2021-07-23 格雷斯诺特公司 Generating media station previews using a reference database
US11812102B2 (en) * 2019-01-04 2023-11-07 Gracenote, Inc. Generation of media station previews using a reference database
US11683565B2 (en) 2019-03-24 2023-06-20 Apple Inc. User interfaces for interacting with channels that provide content that plays in a media browsing application
US11750888B2 (en) 2019-03-24 2023-09-05 Apple Inc. User interfaces including selectable representations of content items
US11467726B2 (en) 2019-03-24 2022-10-11 Apple Inc. User interfaces for viewing and accessing content on an electronic device
US11445263B2 (en) 2019-03-24 2022-09-13 Apple Inc. User interfaces including selectable representations of content items
US11962836B2 (en) 2019-03-24 2024-04-16 Apple Inc. User interfaces for a media browsing application
US11057682B2 (en) 2019-03-24 2021-07-06 Apple Inc. User interfaces including selectable representations of content items
US11797606B2 (en) 2019-05-31 2023-10-24 Apple Inc. User interfaces for a podcast browsing and playback application
US11863837B2 (en) 2019-05-31 2024-01-02 Apple Inc. Notification of augmented reality content on an electronic device
US11843838B2 (en) 2020-03-24 2023-12-12 Apple Inc. User interfaces for accessing episodes of a content series
US11899895B2 (en) 2020-06-21 2024-02-13 Apple Inc. User interfaces for setting up an electronic device
EP4202615A4 (en) * 2020-10-15 2024-02-28 Lemon Inc Video distribution system and method, computing device, and user equipment
US11720229B2 (en) 2020-12-07 2023-08-08 Apple Inc. User interfaces for browsing and presenting content
US11934640B2 (en) 2021-01-29 2024-03-19 Apple Inc. User interfaces for record labels

Also Published As

Publication number Publication date
WO2012162177A2 (en) 2012-11-29
US8990857B2 (en) 2015-03-24
NL2008148C2 (en) 2013-11-20
AU2012100054A4 (en) 2012-02-16
DE202012007839U1 (en) 2012-12-03
US9407965B2 (en) 2016-08-02
US20130332960A1 (en) 2013-12-12
US8291452B1 (en) 2012-10-16
US20150163551A1 (en) 2015-06-11
NL2008148A (en) 2012-11-21
WO2012162177A3 (en) 2013-03-28
AU2012100055A4 (en) 2012-02-16
US8473982B2 (en) 2013-06-25

Similar Documents

Publication Publication Date Title
US9407965B2 (en) Interface for watching a stream of videos
US10165332B2 (en) Contextual video browsing
US20120079429A1 (en) Systems and methods for touch-based media guidance
WO2020000973A1 (en) Information access method, client, information access apparatus, terminal, server, and storage medium
KR101967036B1 (en) Methods, systems, and media for searching for video content
US9990394B2 (en) Visual search and recommendation user interface and apparatus
US20170366780A1 (en) Devices, methods and computer program products for playback of digital media objects using a single control input
CN110709835B (en) Video preview providing search results
US20150301693A1 (en) Methods, systems, and media for presenting related content
TW201436543A (en) Method and system for content discovery
KR102499652B1 (en) A method and apparatus for search query formulation
US20230033230A1 (en) Methods, systems, and media for navigating a user interface with a toolbar
US20150301699A1 (en) Methods, systems, and media for media guidance

Legal Events

Date Code Title Description
AS Assignment

Owner name: GOOGLE INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:YONG, KUAN LOONG;SARUKKAI, RAMESH;RATNER, SIMON;AND OTHERS;SIGNING DATES FROM 20111010 TO 20111026;REEL/FRAME:029799/0410

STCF Information on status: patent grant

Free format text: PATENTED CASE

CC Certificate of correction
FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: GOOGLE LLC, CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:GOOGLE INC.;REEL/FRAME:044101/0299

Effective date: 20170929

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8