WO2001082621A1 - Media and information display systems and methods - Google Patents

Media and information display systems and methods Download PDF

Info

Publication number
WO2001082621A1
WO2001082621A1 PCT/US2001/012951 US0112951W WO0182621A1 WO 2001082621 A1 WO2001082621 A1 WO 2001082621A1 US 0112951 W US0112951 W US 0112951W WO 0182621 A1 WO0182621 A1 WO 0182621A1
Authority
WO
WIPO (PCT)
Prior art keywords
audio
streaming
window
display
data
Prior art date
Application number
PCT/US2001/012951
Other languages
French (fr)
Inventor
Michael Latham
Brian Buschmann
Dean Burris
Henry H. Sohn
Original Assignee
Yahoo! Inc.
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
Priority claimed from US09/801,439 external-priority patent/US20020091762A1/en
Application filed by Yahoo! Inc. filed Critical Yahoo! Inc.
Priority to AU2001257149A priority Critical patent/AU2001257149A1/en
Publication of WO2001082621A1 publication Critical patent/WO2001082621A1/en

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • 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

Definitions

  • the present invention relates generally to systems and methods for displaying media content, and more particularly to systems and methods for displaying real-time media content with a simultaneous interactive display of related text and reference information.
  • Streaming audio and video media players capable of displaying real time video and audio content are currently available and allow computer users to view and listen to real time video and audio presentations.
  • the user must either interrupt the media presentation or wait until the presentation is completed to search for the desired information.
  • a user desires to obtain a stock quote or other information about a certain company that is the subject of the media presentation, the user must switch over to a browser and locate a stock quote page, enter a URL if known, or enter search terms to locate the desired information.
  • Such a procedure is generally undesirable as it can be time consuming and impractical to switch to a browser and perform searches.
  • Such a procedure is particularly undesirable in the case of a live video or audio broadcast. For example, if the user does not wish to wait until the end of the broadcast, the user must interrupt and miss part of the broadcast.
  • the present invention provides systems and methods that allow a user to view real time streaming media content and simultaneously view, obtain and interact with online information related, or unrelated, to the real time content.
  • the systems and methods of the present invention allow a user to interact with related online information while simultaneously viewing a video presentation or listening to an audio presentation.
  • a client application executing on a client system processes a streaming data signal and displays an associated real time media presentation, live or archived, on one portion of a display.
  • reference data pushed to the client application in a streaming data signal identifies pages of related information.
  • the client application retrieves the pages, e.g., via HTTP requests, and displays the pages in a data frame on a second portion of the display.
  • the pages can be created in advance of the media presentation, and when retrieved and displayed, include current information related to the subject matter of the media presentation.
  • Information included in the pages can include links to other related information.
  • the link Upon selection of a link by a user, the link is passed to an active browser window displayed on a third portion of the display. The user may interact with information in the browser window and data frame while simultaneously viewing and/or listening to the real time media presentation.
  • the techniques of the present invention are particularly useful for integrating a presentation of real-time data broadcast content with a concurrent display of related information, such as HTML text and references.
  • real-time data broadcast content includes video and/or audio data, live or archived
  • the related information includes related text and graphical data and references such as selectable HTML links pushed to a push client.
  • Specific examples relating to finance news and information content are shown herein.
  • the present invention is applicable to any type of media content and related text and reference information, for example, live sporting event broadcasts with a concurrent display of related text and/or links to related web sites, shopping and auction broadcasts, live or archived, with related information and/or links to related web sites, etc.
  • an application module executing on a client system allows a user to view real time streaming video broadcast channels, or listen to real time streaming audio broadcast channels, and simultaneously view and interact with related information provided on a graphical user interface.
  • the user is able to access and view web pages including information relevant to the current topic of a real time video presentation, wherein the web pages displayed may be updated in real time to correspond with the current topic.
  • the user is able to conduct online trades, information searches, etc. with an active browser, and view and interact with a personal online portfolio, while concurrently viewing the real time streaming media broadcast channel.
  • a client application executing on a client device communicably coupled to the Internet is provided.
  • the client device typically includes a processing unit and a display.
  • the application typically includes instructions for controlling the client device to simultaneously display a media display window and a browser window on the display, to display a list of one or more streaming audio channels in the browser window in response to a user selection of a channel list indicator, to communicate with a first streaming data server associated with a first streaming audio channel over the Internet in response to a user selection of the first streaming audio channel from the displayed list, to receive streaming data from the first streaming data server, the streaming data associated with a streaming audio presentation, and to display the streaming audio presentation.
  • a client application executing on a client device communicably coupled to the Internet is provided.
  • the client device typically includes a processing unit and a display.
  • the application typically includes instructions for controlling the client device to simultaneously display a media display window, an active browser window, and a playlist window on the display, wherein the playlist window includes a list of one or more audio presentations, and to display a first one of the audio presentations in response to a user selection of the first audio presentation from the list.
  • a computer-implemented method of displaying audio presentations is provided.
  • the method typically includes simultaneously displaying a media display window and a browser window on a display, displaying a list of one or more streaming audio channels in the browser window in response to a user selection of a channel list indicator, communicating with a first streaming data server associated with a first streaming audio channel over the Internet in response to a user selection of the first streaming audio channel from the displayed list, receiving streaming data from the first streaming data server, the streaming data associated with a streaming audio presentation, and displaying the streaming audio presentation.
  • a computer-implemented method of displaying audio presentations is provided.
  • the method typically includes simultaneously displaying a media display window, an active browser window, and a playlist window on a display, wherein the playlist window includes a list of one or more audio presentations, and displaying a first one of the audio presentations in response to a user selection of the first audio presentation from the list.
  • Figure 1 illustrates a general overview of an information retrieval and communication system according to an embodiment of the present invention
  • FIG. 2 illustrates an information retrieval and communication network for communicating media content according to an embodiment of the invention
  • Figure 3 illustrates an example of a graphical user interface (GUI) display created by the client application according to an embodiment of the present invention
  • Figure 4 illustrates another example of a GUI display created by the client application according to an embodiment of the present invention
  • Figure 5 is a block diagram of encoder system 170 according to an embodiment of the present invention.
  • FIG. 6 illustrates an expanded view of server system 160 according to an embodiment of the present invention.
  • FIG. 7 illustrates another example of a graphical user interface (GUI) display created by the client application according to an embodiment of the present invention.
  • GUI graphical user interface
  • FIG. 1 illustrates a general overview of an information retrieval and communication network 10 including a client system 20 according to an embodiment of the present invention.
  • client system 20 is coupled through the Internet 40, or other communication network, e.g., over any LAN or WAN connection, to server systems 50 ⁇ to 50 N .
  • client system 20 is configured according to the present invention to communicate with any of server systems 50 ⁇ to 50 ⁇ . e.g., to access, receive, retrieve and display media content and other information such as web pages.
  • client system 20 could include a desktop personal computer, workstation, laptop, PDA, cell phone, or any WAP-enabled device or any other computing device capable of interfacing directly or indirectly to the Internet.
  • client system 20 typically runs a browsing program, such as Microsoft's Internet Explorer, Netscape Navigator, Opera, or a WAP enabled browser in the case of a cell phone, PDA or other wireless device, or the like, allowing a user of client system 20 to access, process and view information and pages available to it from server systems 50 ⁇ to 50 N over Internet 40.
  • a browsing program such as Microsoft's Internet Explorer, Netscape Navigator, Opera, or a WAP enabled browser in the case of a cell phone, PDA or other wireless device, or the like, allowing a user of client system 20 to access, process and view information and pages available to it from server systems 50 ⁇ to 50 N over Internet 40.
  • Client system 20 also typically includes one or more user interface devices 22, such as a keyboard, a mouse, touchscreen, pen or the like, for interacting with a graphical user interface (GUI) provided by the browser on a display (e.g., monitor screen, LCD display, etc.), in conjunction with pages, forms and other information provided by server systems 50] to 50 N or other servers.
  • GUI graphical user interface
  • the present invention is suitable for use with the Internet, which refers to a specific global Internetwork of networks. However, it should be understood that other networks can be used instead of the Internet, such as an intranet, an extranet, a virtual private network (VPN), a non-TCP/IP based network, any LAN or WAN or the like.
  • VPN virtual private network
  • client system 20 and all of its components are operator configurable using an application including computer code run using a central processing unit such as an Intel Pentium processor or the like.
  • Computer code for operating and configuring client system 20 to process media content as described herein is preferably downloaded and stored on a hard disk, but the entire program code, or portions thereof, may also be stored in any other volatile or non-volatile memory medium or device as is well known, such as a ROM or RAM, or provided on any media capable of storing program code, such as a compact disk (CD) medium, digital video disk (DVD) medium, a floppy disk, and the like.
  • CD compact disk
  • DVD digital video disk
  • floppy disk floppy disk
  • program code may be transmitted and downloaded from a software source, e.g., from one of server systems 50] to 50 N to client system 20 over the Internet as is well known, or transmitted over any other conventional network connection as is well known (e.g., extranet, VPN, LAN, etc.) using any communication medium and protocols (e.g., TCP/IP, HTTP, HTTPS, Ethernet, etc.) as are well known.
  • a software source e.g., from one of server systems 50] to 50 N to client system 20 over the Internet as is well known, or transmitted over any other conventional network connection as is well known (e.g., extranet, VPN, LAN, etc.) using any communication medium and protocols (e.g., TCP/IP, HTTP, HTTPS, Ethernet, etc.) as are well known.
  • computer code for implementing the present invention can be implemented in HTML, Java, JavaScript, or any scripting language, such as VBScript, that can be executed on a client system.
  • FIG. 2 illustrates another information retrieval and communication network 110 for communicating media content according to an embodiment of the invention.
  • network 110 includes client system 120, server system 150, server system 160, media encoder system 170 and data creation and insertion system 180 ("data system 180").
  • client system 120 is communicably coupled through Internet 140 or other communication network to server systems 150 and 160.
  • client system 120 and its components are configured to communicate with server systems 150 and 160 and other server systems over the Internet 140 or other communication networks.
  • a client application (represented as module 125) executing on client system 120 includes instructions for controlling client system 120 and its components to communicate with server systems 150 and 160 and to process data content received therefrom as is described herein.
  • Client application 125 is preferably transmitted and downloaded to client system 120 from a software source such as a remote server system (e.g., server system 150, server system 160 or other remote server system), although client application module 125 can be provided on any software storage medium such as a floppy disk, CD, DVD, etc. as discussed above.
  • client application module 125 is provided to client system 120 in an HTML wrapper including embedded Active X controls for rendering the various objects frames and windows as will be described later.
  • client application module 125 loads Active X controls on the fly.
  • client application module 125 includes various software modules for processing data and media content, such as a media player module 126 for processing streaming media signals and a browser module 127 for rendering text and data frames and active browser windows.
  • browser module 127 may include the same browser as the default browser configured on client system 120 or it may be different.
  • a client application module 125 can be downloaded from Yahoo! Inc. at the FinanceVision site, which is located at the URL: http://financevision.yahoo.com/.
  • Another example of a client application module 125 according to one embodiment is the YahoolPlayer, which can be downloaded at the URL: http://player.yahoo.com.
  • server system 160 is configured to provide streaming data and media content to client system 120
  • server system 150 is configured to provide data and media content such as web pages to client system 120.
  • server system 160 in one embodiment provides streaming data associated with real time media presentations, such as real time video and/or audio presentations. Such presentations may be live or archived.
  • Server system 150 and server system 160 each includes at least one server, and preferably includes multiple servers, and although shown as a single block, may be geographically distributed. For example, all servers of server system 160 may be located in close proximity to one another (e.g.
  • Encoder system 170 is configured to receive a real time video signal 172 and/or a real time audio signal 174 and encode the real time signals into a streaming data format. In one embodiment for example, a standard Windows Media Player encoder is used to encode the real time data.
  • Network connection 165 preferably includes a dedicated connection such as a TI line, although any direct or indirect connection may be used, including the Internet. Examples of alternate or additional connection mediums include dedicated T2 or T3 lines, OC3 - OC256 fiber optic cable lines, etc. Additionally, encoder system 170 may be physically located locally or remotely in relation to server system 160.
  • encoder system 170 is configured to receive and process signals from computing system 190, which in one embodiment includes a database of AVI files.
  • encoder system 170 includes a software switch configured to switch between a live feed (e.g., audio signals 174 and video signals 172) and other signals, such as signals associated with commercials, advertisements and other media content stored on computer system 190.
  • a live feed e.g., audio signals 174 and video signals 172
  • other signals such as signals associated with commercials, advertisements and other media content stored on computer system 190.
  • real time commercials and advertisements can be stored on computer system 190 as AVI files.
  • the AVI files are preferably encoded at a low bit rate, e.g., using MPEG-4 or other encoding standard, and decoded prior to being provided to encoder system 170 in a frame accurate manner.
  • signals associated with advertisements and commercials can be provided over line 195 from another source, such as an advertisement server (not shown).
  • An advertisement GUI is also provided in one embodiment to allow an operator to control when commercials, advertisements or other content is provided to encoder system 170, and to control encoder system 170 to switch over to the data provided on line 195 from the live feed.
  • the GUI is provisioned locally, e.g., on data system 180, although any computer system connected over the Internet or over another network connection to encoder system 170 may be used.
  • a user interface provided on data system 180 provides an operator with control of both the data creation and insertion tools of data system 180 as will be described below as well as control of encoder system 170 and computer system 190.
  • the ad GUI is implemented in Java Script, although any other language or scripting language may be used.
  • the computer system executing the ad GUI communicates with an advertisement server to determine advertisements and commercials to be displayed during a media presentation or between media presentations.
  • One such ad server is located at the URL http://www.broadcast.com.
  • Data system 180 is provided for creating pages related to streaming media presentations and for pushing the pages to client system 120 at the appropriate time to coincide with the streaming media presentation.
  • data creation and insertion system 180 includes data creation module 182 and data insertion module 184.
  • Data creation module 182 allows a user to create pages of related information.
  • Data insertion module 184 provides data to encoder system 170 for insertion into the data stream sent over line 165.
  • Data creation and insertion system 180 is implemented in a PC or other computing device and is communicably coupled to server system 150 and encoder system 170 over either a direct connection or an indirect connection such as Internet 140, and may be physically located proximal server system 150 or encoder system 170 or both.
  • data creation module 182 provides a user with a publishing tool for creating pages of information related to real time media presentations using templates, e.g., HTML layout template.
  • the data creation module 182 allows the user to select from a number of pre-defined web pages (data windows) or create a web page dynamically.
  • the user selects a pre-made template, or creates a new template and provides the desired data, URLs/links, etc. into the fields presented by the template.
  • the user is able to preview the created page, and if satisfied, the user commits the page.
  • Information and data included in the pages can include graphs, stock quote ticker symbols, URLs and hyperlinks, and other graphical and text information as desired.
  • server system 150 After a page is committed, data system 180 transmits the page to server system 150.
  • Server system 150 returns an IP address, e.g., URL, for the location of the stored page either immediately or when requested later by data system 180.
  • Data insertion module 184 communicates with encoder system 170 and provides data to be inserted into the data stream created by encoder system 170.
  • data insertion module 184 provides reference data, typically including a URL or IP address, identifying a specific page stored on server system 150 to encoder system 170 for insertion into a data stream. If data system 180 does not already have the reference data identifying the specific page, data system 180 requests (e.g., HTTP request) the reference data from server system 150.
  • server system 150 is configured to send the reference data, e.g., URL, directly to encoder system 170.
  • server system 150 may be configured to execute a Visual Basic script that calls a COM object resident on communications module 177 of encoder system 170 and sends the URL to the encoder system 170.
  • the reference data is inserted into the data stream by encoder system 170, and when ultimately received by client application 125, client application 125 automatically performs an HTTP data request using the received reference data to obtain the web page from server system 150 for simultaneous display with the real time media presentation.
  • Data insertion module 184 may operate automatically to send the reference data to encoder system 170 at the appropriate time, or data insertion module 184 may be user-controlled to send the reference data at the appropriate time.
  • Pages may be created well in advance of a related media presentation.
  • a producer when designing a media broadcast or a "rundown" of shows, may create various pages for various show segments and send the finished templates to server system 150.
  • data system 180 requests the reference data, e.g., URL or IP address, identifying the desired page from server system 150.
  • Server system 150 returns the reference data for the requested page, and data system 180 provides the reference data to encoder system 170 for insertion into the data stream for the real time media presentation.
  • client system 120 (module 125) displays the real time media presentation on one portion of a display and automatically requests and displays the page from server system 150 using the received reference data.
  • each page may be created well in advance, e.g., days weeks, months, of a related real time media presentation, yet each page will include fresh current data when actually requested and displayed by client system 120.
  • a reference e.g., URL or IP address
  • HTML hypertext markup language
  • SGML Standard Generalized Markup Language
  • FIG. 3 illustrates an example of a graphical user interface (GUI) display 200 created by application 125 according to an embodiment of the present invention.
  • GUI 200 includes various subwindows or frames for displaying various data and media content.
  • GUI 200 in one embodiment includes a real time media presentation frame 210 ("media frame 210") and a data frame 220.
  • a "full view” mode are optionally provided active browser window 230, portfolio window 240 and channel bar 250.
  • Other viewable modes and window arrangements are possible. For example, according to one embodiment, in an "expanded view” mode, all windows and frames except browser window 230 are displayed, and in a "compact view” mode, only media frame 210 and channel bar 250 are displayed.
  • Figure 4 illustrates an example of a different arrangement of windows and frames.
  • Media frame 210 is provided for displaying a video presentation or in the case of an audio presentation, a related graphical or video display.
  • Figure 4 shows an audio presentation with a graphical display in media frame 210.
  • media frame 210 is reduced in size relative to the entire viewable display to allow for other media objects and windows to be presented. Additionally, because the frame size is reduced, the necessary bandwidth required to send and display the real time media presentation is reduced.
  • a 320x200 pixel video frame can be displayed using bandwidths of 100K (e.g., 128K ISDN connection) and 300K (e.g., DSL, cable modem, TITS LAN connections, etc.), and a 176x132 pixel video frame can be displayed using a 56K stream (e.g., 56K dial-up modem connection).
  • 100K e.g., 128K ISDN connection
  • 300K e.g., DSL, cable modem, TITS LAN connections, etc.
  • a 176x132 pixel video frame can be displayed using a 56K stream (e.g., 56K dial-up modem connection).
  • the user is given the option to play the audio portion only.
  • media frame 210 is approximately 330x300 pixels with the control bar and borders.
  • the size of media frame 210 may be fixed or it may be resizable, e.g., using ASX parameters embedded in the data stream.
  • Data frame 220 displays data and pages pushed to client application 125 in the real time media presentation data stream. For example, when a URL is passed to client application 125 in the data stream as described above, client application 125 sends an HTTP request to server system 150 using the URL and displays the resulting HTML page received from server system 150 in data frame 220. As shown, data frame 220 has a size of 208x300 pixels. Data frame 220 is preferably resizable, either manually or automatically, e.g., using ASX controls embedded in the data stream. Also as shown, the page displayed in data frame 220 includes one or more hyperlinks.
  • Browser window 230 Upon selection of a hyperlink by a user, e.g., using a mouse or other pointing device, the link is passed to browser window 230, an HTTP request is sent to the IP address associated with the hyperlink and the resulting HTML is displayed in the browser window 230. If browser window 230 is not open, selection of a link in data frame 220 causes active browser window 230 to open and display the received media content identified by the selected link.
  • Browser window 230 is preferably a scaled down version of Internet Explorer 5.0 or higher, although any browser may be used, e.g., Netscape Navigator, Opera or the like. Additionally as shown, browser window 230 can be scrolled. Browser window 230 includes an editable address bar, scroll bars and control icons as are well known.
  • Portfolio window 240 displays additional information retrieved from a remote source such as server system 150 or another server system.
  • client application 125 is configured to retrieve user configured data content from the My Yahoo! server system, which is located at the URL http://my.yahoo.com, if a portfolio has been created and the user's cookie is still valid.
  • An example of such a system for creating, maintaining and processing user configured data is provided in U.S. Patent No. 5,983,227, entitled “Dynamic Page Generator," and assigned to Yahoo! Inc., the contents of which are herein incorporated by reference in its entirety.
  • the data content for portfolio window 240 is formatted to fit within a 167x300 pixel area. If the data content is longer than 167 pixels, horizontal and vertical scroll bars are displayed.
  • Portfolio window 240 may also include links, which when selected are passed to the browser window as above.
  • Channel bar 250 includes one or more links, e.g., displayed as icons, identifying the live and archived media broadcast content available to a user.
  • a channel link for archived content the user is presented with a list of archived content available, e.g., in a pop-up dialog box.
  • the user selects a particular archived broadcast, and an HTTP request is sent to server system 160, which responds by sending the data stream for the desired media broadcast to client system 120 for display in media frame 210.
  • server system 160 Upon selection of a live channel, the identified live broadcast is similarly displayed.
  • the icon is highlighted, or otherwise made more prominent, while it is active.
  • a main channel "FinanceVision" as shown, is set as a default channel upon startup.
  • FinanceVision refers to a live video broadcast produced by Yahoo! Inc. discussing financial news and events. Additionally, after completion of an archived presentation segment, the main default channel loads again and resumes playing.
  • the main channel in this case FinanceVision, is presented more prominently, e.g., taller, and does not scroll if the channel bar is made to scroll.
  • the channel bar is preferably scrollable if the number of channels available do not fit within the defined channel bar area. If displayed, the scroll bars are disabled unless enough channels are present to enable scrolling.
  • channel bar 250 is a fixed size of 80x300 pixels, but may be resizable.
  • Figure 4 illustrates another example of a GUI display 200 created by application 125 according to an embodiment of the present invention.
  • browser window 230 is expanded to cover the entire bottom portion of the display, and data frame 220 is reduced in size to share space with portfolio window 240.
  • the pages of data content retrieved from server system 150 and displayed in data frame 220, including links to other content, are preferably tied to the subject matter of the current video shot displayed in media frame 210 (or in the case of audio only, the data content is preferably tied to the subject matter of the current topic of discussion).
  • the displayed hosts of the video presentation may be discussing news related to Yahoo! Inc. Displayed concurrently in data frame 220 is a page of related information regarding Yahoo!
  • the hosts may be discussing a story related to Dell Computer Corporation, and a page of related data content including links is displayed in data frame 220.
  • Other data content related to media broadcasts includes information on the speaker/host, a link to the speaker's web site, etc.
  • the speaker's name is displayed in data frame 220 along with selectable HTML links to further information on that speaker or the topic.
  • the new speaker's name may be displayed along with links or other related content.
  • information such as a picture of the item(s) being auctioned, the current bid price, time of last bid, etc., may be displayed in data frame 220.
  • a commercial or advertisement is displayed in media frame 210, e.g., during a break in a live broadcast, page(s) of information related to the commercial or advertisement may be created and displayed in data frame 220 as above.
  • a page presented in data frame 220 allows the user of client system 120 to submit a question or comment to the current host or speaker of a live broadcast.
  • a hyperlink identifying a question form on a remote computer system e.g., data system 180 or server system 150, is included in the page.
  • the remote computer system Upon selection of this hyperlink, the remote computer system sends the question form to client system 120.
  • the user fills in a question or comment in the field(s) provided and submits the form, e.g., by selecting a "finished” icon, or selecting "enter".
  • the form is then sent back to the remote computer system or to another remote computer system for viewing by a producer of the live broadcast.
  • the producer if satisfied with the question/comment, provides the question/comment to the host, e.g., via a video teleprompter, for a live response. Additionally, the producer may, in real time, also create and upload using data creation and insertion system 180, another web page, e.g., a "question page", including the question/comment to server system 150 so that the question may be presented to all viewers of the live broadcast during the live response.
  • server system 150 returns the reference data, e.g., URL, for the question page to data system 180, which then sends the reference data to encoder system 170 for insertion into the current live broadcast data stream.
  • client system 120 retrieves the web page including the question/comment from server system 150 using the received reference data and displays the question page in data frame 220 concurrently with the live response.
  • Client application 125 is controlled from a remote location according to one embodiment.
  • client application 125 is configured to instruct client system 120 to periodically poll one or more predetermined URLs to obtain updates for data frame 220 and other elements in the display.
  • client system 120 may poll server system 150 to obtain updates to the page displayed in data frame 220 using the reference data passed in the data stream from server system 160, and client system 120 may periodically poll server system 150 or another server system to obtain updates to the graphical elements provided in the GUI produced by client application 125.
  • client system 120 may periodically poll the My Yahoo! server to obtain updates to the portfolio page. In this manner, pages displayed in data frame 220 can be automatically refreshed.
  • the page displayed in data frame 220 includes a stock quote (real time or delayed) the quote is automatically updated each time the page is refreshed.
  • data displayed in portfolio window 240 may be refreshed periodically.
  • data displayed in portfolio window 240 and browser window 230 can be manually refreshed , e.g., by selecting a refresh icon.
  • FIG. 5 is a block diagram of encoder system 170 according to an embodiment of the present invention.
  • encoder system 170 is implemented as hardware and software in a computer system such as a PC or a server.
  • encoder system 170 includes encoder module 171, video driver module 173, audio driver module 175, switch module 176, and communication module 177.
  • Encoder module 171 in one embodiment includes a standard Microsoft Windows media encoder, although any other encoder such as a Real Networks encoder or a QuickTime encoder may be used.
  • Encoder module 171 encodes the streaming signals received from switch 176 and transmits the encoded signals over line 165 to server system 160.
  • Encoder 171 in one embodiment, is capable of inserting a data event, such as a URL, into a data stream.
  • Video module 173 includes a video capture card and associated software drivers for receiving and processing video signals received over line 172.
  • an Osprey 100 video card is used although any video card capable of processing real time video signals may be used.
  • audio module 175 includes an audio capture card such as an Antex LX-44 card and associated software drivers for receiving and processing audio signal received over line 174.
  • Alternatives audio capture cards include SoundBlaster cards, etc.
  • Switch 176 emulates a capture card driver and functions to switch the signals provided to encoder module 171 between AVI signals received over line 195, e.g., from computer system 190 or an ad server, and audio and video signals received from audio module 175 and video module 173, respectively.
  • Switch module 176 allows for operator control of which signals are provided to encoder module 171 when encoder module 171 requests data from a capture card. For example, using a GUI as displayed on data system 180, or other computer system, as described above, an operator is able to control switch module 176 and thus the overall media presentation. In this manner, switch module 176 provides an operator with control to switch between a live feed, e.g., real time audio and video signals on lines 172 and 174, and signals for on demand AVI files or other on demand media files, over line 195.
  • Communication module 177 provides a communication link with encoder module 171. Communication module 177 is used in one embodiment to provide control, remote or otherwise, of encoder 171.
  • data system 180 communicates with encoder 171 via communication module 177 to provide data, such as the URL of a web page related to the content of the data stream, for insertion into the data stream to be provided to server system 160.
  • the URL is preferably inserted into the stream in realtime, as the video signal is being encoded.
  • communication module 177 preferably includes a cgi script to facilitate remote communication.
  • communication module 177 includes a direct interface to allow a user operating the computer system embodying the encoder system to control encoder module 171.
  • an operator is able to change the pages displayed in data frame 220 of client system 120 and other client systems by "flicking a switch" (e.g., selecting a pre-created page on a GUI) to cause a new URL to be inserted into the data stream.
  • a producer of a live broadcast can change pages displayed on the data frames 220 of viewers systems 120 in real time by selecting a pre-created page(s) and sending the associated reference data to encoder system 170 at the appropriate time.
  • the producer can direct the related pages pushed to client systems 120 to change in real time.
  • FIG. 6 illustrates an expanded view of server system 160 according to an embodiment of the present invention.
  • server system 160 includes a playlist server 162, a plurality of streaming data servers 164 1 -164 N and a content management system 166.
  • Servers 164 are preferably distributed locally, e.g., as a server farm, but they may be geographically remotely distributed.
  • Playlist server 162 interfaces with client systems to determine a particular server 164 associated with a particular broadcast, live or archived. For example, in one embodiment, when a user of client system 120 selects a channel in channel bar 250, an HTTP request is sent to playlist server 162.
  • Playlist server 162 resolves the request to a particular server 164 and sends back an IP address or URL identifying the particular server 164 to client system 120.
  • Client system 120 then communicates with the particular identified server 164 to receive a data stream (e.g., live or archived, video or audio) associated with the selected channel.
  • a load table is maintained that lists all of the streaming data servers 164 and which files (data streams) are loaded on which servers 164.
  • the streaming data servers 164 are preferably identified through their IP addresses, and the table lists which IP addresses hold which files (data streams).
  • the playlist server 162 performs a lookup on the load table and sends back the IP address to which the requesting client system 120 should link to get the desired file. In this manner, the load on the network is distributed so that no single streaming server 164 is overloaded when streaming to many clients for a given file (data stream).
  • the load table is stored on content management system 166, but may additionally, or alternatively, be stored on playlist server 162.
  • Content management system 166 is provided for streaming data among servers 164 and to allow an operator to control the weightings of each of servers 164, e.g., based on the weight of activity of each server. For example, in one embodiment, each server 164 reports activity to management system 166 on a periodic basis, e.g., every 15 seconds. Management system 166 compiles the activity reports and presents an activity report to an operator via a GUI. The operator may manually change the weighting of each individual server 164 to redistribute the load on the servers 164 accordingly. Alternately, management system 166 is configured to automatically change the weightings of servers 164 based on a predetermined algorithm, e.g., a monte carlo algorithm.
  • a predetermined algorithm e.g., a monte carlo algorithm.
  • an operator is able to edit the (now stored) broadcast to create an archived broadcast for later presentation on client systems 120.
  • a producer of a broadcast show can select certain portions and segments to store as an archived broadcast.
  • Reference data e.g., URLs and IP addresses, identifying the pages of related information associated with the selected portions and segments of the broadcast are also stored.
  • the stock quote will be updated to reflect the current value and not the value as of the time of the original live broadcast.
  • FIG. 7 illustrates another example of a graphical user interface (GUI) display 300 created by application 125 according to an embodiment of the present invention.
  • GUI 300 includes various subwindows or frames for displaying various data and media content.
  • GUI 300 in one embodiment includes a real time media presentation frame 310 ("media frame 310") and a data frame 320 ("playlist window 320").
  • active browser window 330 Also shown in Figure 7 is optionally provided active browser window 330.
  • Other viewable modes and window arrangements are possible. For example, in one mode all windows and frames except browser window 230 are displayed, in another mode all windows and frames except playlist window 320 are displayed, and in yet another mode, only media frame 310 is displayed.
  • selectable button 312 allows the user to selectively activate or deactivate browser window 330
  • selectable button 314 allows the user to selectively activate or deactivate playlist window 320.
  • Another button allows the user to selectively contract media frame 310 into a toolbar and to expand it back to its original size.
  • GUI 300 is particularly suited for displaying information related to real-time radio broadcasts as well as information related to real-time media presentations stored in a local memory, e.g., hard drive coupled to client 120, or on a CD or DVD inserted into a local media drive.
  • a local memory e.g., hard drive coupled to client 120, or on a CD or DVD inserted into a local media drive.
  • media frame 310 is provided for displaying various graphical elements related to audio presentations.
  • Such graphical elements include a volume level control 316, a channel bar 350, and a text region 315 for displaying text and other information related to a current audio presentation, such as the artist and title of a musical selection, and the total time and time remaining for the musical presentation.
  • media frame 310 is reduced in size relative to the entire viewable display to allow for other media objects and windows to be presented.
  • the size of media frame 310 may be fixed or resizable by the user, e.g., using a selectable "expand" button as is well known, or it may be resizable, e.g., using ASX parameters embedded in a data stream.
  • Playlist window 320 in one embodiment displays data and selectable objects related to a plurality of real time media presentations of different types.
  • Such real time presentation types include presentations available online, e.g., streaming audio channels, presentations stored on a local hard drive in various formats, e.g., .mp3, .wma, .wav, and other file types, and presentations available through a media drive, e.g., CD and DVD drives.
  • Data and objects relating to the presentations include song titles, presentation titles, station (e.g., radio stations offering streaming audio) names, etc.
  • client application 125 retrieves identification information from the CD and client application 125 sends an HTTP request to a server including a CDDB (CD database), or to server system 150 to communicate with such a server, to retrieve related information associated with the CD from the CDDB.
  • Client application 125 displays the related information received in playlist window 320.
  • Such related information retrieved from the CDDB includes the titles and durations of the presentations stored on the CD.
  • the information retrieved from the CDDB is stored locally in one embodiment, such that the next time that CD is inserted, the information is retrieved locally and displayed in playlist window 320 without contacting the CDDB.
  • the user is able select any of the items/objects displayed in playlist window 320, and the application causes the associated media presentation to display. For example, if the user selects a song from a CD, the application interfaces with the CD player to present the selected song over the speaker system, and if the user selects a streaming audio channel, the application contacts the appropriate streaming audio server and presents the selected channel over the speaker system. The application also concurrently displays information related to the current presentation in the text region 315 of media display window 310.
  • browser window 330 If browser window 330 is activated, the application also displays related information therein.
  • Related information displayed in browser window 330 includes selectable links (e.g., HTML hyperlinks) to web pages of related subject matter, picture objects (e.g., picture of album cover of CD from which a song is playing), the web page associated with the streaming media presentation (e.g., a web page associated with the broadcast station offering the streaming media broadcast).
  • Information displayed in browser 330 in one embodiment, also includes links to media content streaming media channels, stored MP3 and WMA files, etc. Selection of such a link causes application 125 to access the selected file/channel and display the media content in media display 310. For example, selection of "find stations" button 318 causes the application to display available streaming audio channels in browser window 330.
  • the available channels are grouped by genre. Selection of a particular genre causes the application to display a list of links to available channels presenting music in that genre such that selection of a link causes the application to connect with a server providing the selected streaming audio channel and to play the channel and display related information.
  • selection of an object activates a hyperlink to a web page that is associated with the subject matter of the CD and which is retrieved and displayed in browser window 330.
  • the hyperlink is retrieved from the CDDB or from a search using information about the CD.
  • Selection of a streaming audio channel similarly, activates a hyperlink pointing to a web page associated with the streaming audio provider (e.g., radio station).
  • selection of an object in playlist window 320 causes active browser window 330 to open and display the received media content associated with the current audio display. Alternatively, or if no audio presentation is being presented, a default web page is accessed.
  • Playlist window 320 is preferably resizable, either manually or automatically, e.g., using embedded ASX controls.
  • Browser window 330 is preferably a scaled down version of Internet Explorer 5.0 or higher, although any browser may be used, e.g., Netscape Navigator, Opera or the like. Additionally as shown, browser window 330 can be scrolled. Browser window 330 also includes an editable address bar, scroll bars and control icons as are well known. In Figure 7, widow 333 illustrates an example of the display of browser 330 after it has been scrolled down.
  • Channel bar 350 includes one or more channel preset buttons or icons, identifying streaming audio broadcast content available to a user.
  • the channel preset buttons shown in Figure 7 are configured to be changed based on theme or any other user defined criteria. For example, when a user desires to create a group of only country western music channels, the user may set each channel to identify a different country western streaming audio broadcast channel. The user is able to select an indicator, e.g. the "memory" button on the media frame 310, and the user-preset stations related to country music and other themes become selectable by the user. In other embodiments, stations are grouped or pre-grouped and classified automatically.
  • Upon selection of a channel link for archived content the user is presented with a list of archived content available, e.g., in a pop-up dialog box. The user selects a particular archived broadcast, and an HTTP request is sent to server system 160, which responds by sending the data stream for the desired media broadcast to client system 120 for display in media frame 310. Upon selection of a live channel, the identified live broadcast is similarly displayed.
  • the pages of data content retrieved from server system 150 or another server system, and displayed in browser 330, including links to other content, are preferably tied to the subject matter of the current audio presentation.

Abstract

Systems and methods for displaying real time media broadcasts with pages of related information. The systems and methods allow a user to interact with the information while simultaneously viewing a video presentation (250) or listening to an audio presentation. A client application executing on the client system (20) processes a streaming data signal and displays an associated real time media presentation (210), live or archived, on a portion of the display. In one embodiment, reference data pushed to the client application (125) in a streaming data signal identifies the related information. The client application retrieves the pages, e.g., via HTTP requests, and displays the pages in a data frame (220) on a second portion of the display. The pages can be created in advance of the media presentation, and when retrieved and displayed, include the current information related to the subject matter of the media presentation. Upon selection of a link by a user, the link is passed to an active browser window (230) displayes on a third portion of the display, the user may interact with information in the browser window and data frame while simultaneously viewing and/or listening to the real time media presentation.

Description

MEDIA AND INFORMATION DISPLAY SYSTEMS AND METHODS
CROSS-REFERENCES TO RELATED APPLICATIONS
This application is a continuation-in-part of U.S. Patent Application Serial No. 09/801,439, filed March 7, 2001, entitled "INFORMATION DISPLAY SYSTEMS AND METHODS," and is related to, and claims priority from, U.S. Provisional Patent Application Serial No. 60/198,713 (Atty. Docket No. 017887-005000), filed April 20, 2000, entitled "MEDIA AND INFORMATION DISPLAY SYSTEMS AND METHODS,'" the disclosures of which are each hereby incorporated by reference in its entirety.
BACKGROUND OF THE INVENTION
The present invention relates generally to systems and methods for displaying media content, and more particularly to systems and methods for displaying real-time media content with a simultaneous interactive display of related text and reference information. Streaming audio and video media players capable of displaying real time video and audio content are currently available and allow computer users to view and listen to real time video and audio presentations. Typically, however, if a user desires to obtain online information related to the real time media presentation, the user must either interrupt the media presentation or wait until the presentation is completed to search for the desired information. For example, if a user desires to obtain a stock quote or other information about a certain company that is the subject of the media presentation, the user must switch over to a browser and locate a stock quote page, enter a URL if known, or enter search terms to locate the desired information. Such a procedure is generally undesirable as it can be time consuming and impractical to switch to a browser and perform searches. Such a procedure is particularly undesirable in the case of a live video or audio broadcast. For example, if the user does not wish to wait until the end of the broadcast, the user must interrupt and miss part of the broadcast.
Accordingly it is desirable to provide a system that allows a user to view a real time media content and simultaneously view, obtain and interact with online information that is related, or unrelated, to the media content. SUMMARY OF THE INVENTION
The present invention provides systems and methods that allow a user to view real time streaming media content and simultaneously view, obtain and interact with online information related, or unrelated, to the real time content. The systems and methods of the present invention allow a user to interact with related online information while simultaneously viewing a video presentation or listening to an audio presentation. A client application executing on a client system processes a streaming data signal and displays an associated real time media presentation, live or archived, on one portion of a display. In one embodiment, reference data pushed to the client application in a streaming data signal identifies pages of related information. The client application retrieves the pages, e.g., via HTTP requests, and displays the pages in a data frame on a second portion of the display. The pages can be created in advance of the media presentation, and when retrieved and displayed, include current information related to the subject matter of the media presentation. Information included in the pages can include links to other related information. Upon selection of a link by a user, the link is passed to an active browser window displayed on a third portion of the display. The user may interact with information in the browser window and data frame while simultaneously viewing and/or listening to the real time media presentation.
The techniques of the present invention are particularly useful for integrating a presentation of real-time data broadcast content with a concurrent display of related information, such as HTML text and references. In preferred aspects, such real-time data broadcast content includes video and/or audio data, live or archived, and the related information includes related text and graphical data and references such as selectable HTML links pushed to a push client. Specific examples relating to finance news and information content are shown herein. However, it should be apparent that the present invention is applicable to any type of media content and related text and reference information, for example, live sporting event broadcasts with a concurrent display of related text and/or links to related web sites, shopping and auction broadcasts, live or archived, with related information and/or links to related web sites, etc.
According to the invention, an application module executing on a client system allows a user to view real time streaming video broadcast channels, or listen to real time streaming audio broadcast channels, and simultaneously view and interact with related information provided on a graphical user interface. For example, the user is able to access and view web pages including information relevant to the current topic of a real time video presentation, wherein the web pages displayed may be updated in real time to correspond with the current topic. Additionally, the user is able to conduct online trades, information searches, etc. with an active browser, and view and interact with a personal online portfolio, while concurrently viewing the real time streaming media broadcast channel.
According to one aspect of the invention, a client application executing on a client device communicably coupled to the Internet is provided. The client device typically includes a processing unit and a display. The application typically includes instructions for controlling the client device to simultaneously display a media display window and a browser window on the display, to display a list of one or more streaming audio channels in the browser window in response to a user selection of a channel list indicator, to communicate with a first streaming data server associated with a first streaming audio channel over the Internet in response to a user selection of the first streaming audio channel from the displayed list, to receive streaming data from the first streaming data server, the streaming data associated with a streaming audio presentation, and to display the streaming audio presentation.
According to another aspect of the invention, a client application executing on a client device communicably coupled to the Internet is provided. The client device typically includes a processing unit and a display. The application typically includes instructions for controlling the client device to simultaneously display a media display window, an active browser window, and a playlist window on the display, wherein the playlist window includes a list of one or more audio presentations, and to display a first one of the audio presentations in response to a user selection of the first audio presentation from the list. According to yet another aspect of the invention, a computer-implemented method of displaying audio presentations is provided. The method typically includes simultaneously displaying a media display window and a browser window on a display, displaying a list of one or more streaming audio channels in the browser window in response to a user selection of a channel list indicator, communicating with a first streaming data server associated with a first streaming audio channel over the Internet in response to a user selection of the first streaming audio channel from the displayed list, receiving streaming data from the first streaming data server, the streaming data associated with a streaming audio presentation, and displaying the streaming audio presentation. According to a further aspect of the invention, a computer-implemented method of displaying audio presentations is provided. The method typically includes simultaneously displaying a media display window, an active browser window, and a playlist window on a display, wherein the playlist window includes a list of one or more audio presentations, and displaying a first one of the audio presentations in response to a user selection of the first audio presentation from the list.
Reference to the remaining portions of the specification, including the drawings and claims, will realize other features and advantages of the present invention. Further features and advantages of the present invention, as well as the structure and operation of various embodiments of the present invention, are described in detail below with respect to the accompanying drawings. In the drawings, like reference numbers indicate identical or functionally similar elements.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 illustrates a general overview of an information retrieval and communication system according to an embodiment of the present invention;
Figure 2 illustrates an information retrieval and communication network for communicating media content according to an embodiment of the invention; Figure 3 illustrates an example of a graphical user interface (GUI) display created by the client application according to an embodiment of the present invention;
Figure 4 illustrates another example of a GUI display created by the client application according to an embodiment of the present invention;
Figure 5 is a block diagram of encoder system 170 according to an embodiment of the present invention;
Figure 6 illustrates an expanded view of server system 160 according to an embodiment of the present invention; and
Figure 7 illustrates another example of a graphical user interface (GUI) display created by the client application according to an embodiment of the present invention. DESCRIPTION OF THE SPECIFIC EMBODIMENTS
Figure 1 illustrates a general overview of an information retrieval and communication network 10 including a client system 20 according to an embodiment of the present invention. In computer network 10, client system 20 is coupled through the Internet 40, or other communication network, e.g., over any LAN or WAN connection, to server systems 50ι to 50N. As will be described herein, client system 20 is configured according to the present invention to communicate with any of server systems 50ι to 50κ. e.g., to access, receive, retrieve and display media content and other information such as web pages.
Several elements in the system shown in Figure 1 include conventional, well- known elements that need not be explained in detail here. For example, client system 20 could include a desktop personal computer, workstation, laptop, PDA, cell phone, or any WAP-enabled device or any other computing device capable of interfacing directly or indirectly to the Internet. Client system 20 typically runs a browsing program, such as Microsoft's Internet Explorer, Netscape Navigator, Opera, or a WAP enabled browser in the case of a cell phone, PDA or other wireless device, or the like, allowing a user of client system 20 to access, process and view information and pages available to it from server systems 50ι to 50N over Internet 40. Client system 20 also typically includes one or more user interface devices 22, such as a keyboard, a mouse, touchscreen, pen or the like, for interacting with a graphical user interface (GUI) provided by the browser on a display (e.g., monitor screen, LCD display, etc.), in conjunction with pages, forms and other information provided by server systems 50] to 50N or other servers. The present invention is suitable for use with the Internet, which refers to a specific global Internetwork of networks. However, it should be understood that other networks can be used instead of the Internet, such as an intranet, an extranet, a virtual private network (VPN), a non-TCP/IP based network, any LAN or WAN or the like.
According to one embodiment, client system 20 and all of its components are operator configurable using an application including computer code run using a central processing unit such as an Intel Pentium processor or the like. Computer code for operating and configuring client system 20 to process media content as described herein is preferably downloaded and stored on a hard disk, but the entire program code, or portions thereof, may also be stored in any other volatile or non-volatile memory medium or device as is well known, such as a ROM or RAM, or provided on any media capable of storing program code, such as a compact disk (CD) medium, digital video disk (DVD) medium, a floppy disk, and the like. Additionally, the entire program code, or portions thereof, may be transmitted and downloaded from a software source, e.g., from one of server systems 50] to 50N to client system 20 over the Internet as is well known, or transmitted over any other conventional network connection as is well known (e.g., extranet, VPN, LAN, etc.) using any communication medium and protocols (e.g., TCP/IP, HTTP, HTTPS, Ethernet, etc.) as are well known. It will also be appreciated that computer code for implementing the present invention can be implemented in HTML, Java, JavaScript, or any scripting language, such as VBScript, that can be executed on a client system.
Figure 2 illustrates another information retrieval and communication network 110 for communicating media content according to an embodiment of the invention. As shown, network 110 includes client system 120, server system 150, server system 160, media encoder system 170 and data creation and insertion system 180 ("data system 180"). In network 110, client system 120 is communicably coupled through Internet 140 or other communication network to server systems 150 and 160. As discussed above, client system 120 and its components are configured to communicate with server systems 150 and 160 and other server systems over the Internet 140 or other communication networks.
According to one embodiment, a client application (represented as module 125) executing on client system 120 includes instructions for controlling client system 120 and its components to communicate with server systems 150 and 160 and to process data content received therefrom as is described herein. Client application 125 is preferably transmitted and downloaded to client system 120 from a software source such as a remote server system (e.g., server system 150, server system 160 or other remote server system), although client application module 125 can be provided on any software storage medium such as a floppy disk, CD, DVD, etc. as discussed above. In one embodiment, client application module 125 is provided to client system 120 in an HTML wrapper including embedded Active X controls for rendering the various objects frames and windows as will be described later. In another embodiment, the web page(s) accessed by client application module 125 loads Active X controls on the fly. Additionally, client application module 125 includes various software modules for processing data and media content, such as a media player module 126 for processing streaming media signals and a browser module 127 for rendering text and data frames and active browser windows. Further, browser module 127 may include the same browser as the default browser configured on client system 120 or it may be different. As one example, a client application module 125 according to one embodiment can be downloaded from Yahoo! Inc. at the FinanceVision site, which is located at the URL: http://financevision.yahoo.com/. Another example of a client application module 125 according to one embodiment is the YahoolPlayer, which can be downloaded at the URL: http://player.yahoo.com.
Referring to Figure 2, according to one embodiment, server system 160 is configured to provide streaming data and media content to client system 120, and server system 150 is configured to provide data and media content such as web pages to client system 120. As will be described in more detail below, server system 160 in one embodiment provides streaming data associated with real time media presentations, such as real time video and/or audio presentations. Such presentations may be live or archived. Server system 150 and server system 160 each includes at least one server, and preferably includes multiple servers, and although shown as a single block, may be geographically distributed. For example, all servers of server system 160 may be located in close proximity to one another (e.g. in a server farm located in a single building or campus), or they may be distributed at locations remote from one another (e.g., one or more servers located in city A and one or more servers located in city B). As used herein, the term "server system" will typically include one or more logically and/or physically connected servers distributed locally or across one or more geographic locations. Additionally, the term "server" will typically include a computer system and an associated storage system and database application as is well known in the art. Encoder system 170, according to one embodiment, is configured to receive a real time video signal 172 and/or a real time audio signal 174 and encode the real time signals into a streaming data format. In one embodiment for example, a standard Windows Media Player encoder is used to encode the real time data. The encoded data is then provided over network connection 165 to server system 160. Network connection 165 preferably includes a dedicated connection such as a TI line, although any direct or indirect connection may be used, including the Internet. Examples of alternate or additional connection mediums include dedicated T2 or T3 lines, OC3 - OC256 fiber optic cable lines, etc. Additionally, encoder system 170 may be physically located locally or remotely in relation to server system 160.
Additionally, encoder system 170 is configured to receive and process signals from computing system 190, which in one embodiment includes a database of AVI files. As will be described in more detail below with reference to Figure 5, encoder system 170 includes a software switch configured to switch between a live feed (e.g., audio signals 174 and video signals 172) and other signals, such as signals associated with commercials, advertisements and other media content stored on computer system 190. For example, in one embodiment, real time commercials and advertisements can be stored on computer system 190 as AVI files. In this embodiment, the AVI files are preferably encoded at a low bit rate, e.g., using MPEG-4 or other encoding standard, and decoded prior to being provided to encoder system 170 in a frame accurate manner. Additionally, signals associated with advertisements and commercials can be provided over line 195 from another source, such as an advertisement server (not shown).
An advertisement GUI is also provided in one embodiment to allow an operator to control when commercials, advertisements or other content is provided to encoder system 170, and to control encoder system 170 to switch over to the data provided on line 195 from the live feed. In this embodiment, the GUI is provisioned locally, e.g., on data system 180, although any computer system connected over the Internet or over another network connection to encoder system 170 may be used. For example, a user interface provided on data system 180 provides an operator with control of both the data creation and insertion tools of data system 180 as will be described below as well as control of encoder system 170 and computer system 190. In one embodiment, the ad GUI is implemented in Java Script, although any other language or scripting language may be used. In one embodiment, the computer system executing the ad GUI communicates with an advertisement server to determine advertisements and commercials to be displayed during a media presentation or between media presentations. One such ad server is located at the URL http://www.broadcast.com.
Data system 180 is provided for creating pages related to streaming media presentations and for pushing the pages to client system 120 at the appropriate time to coincide with the streaming media presentation. In one embodiment, as shown, data creation and insertion system 180 includes data creation module 182 and data insertion module 184. Data creation module 182 allows a user to create pages of related information. Data insertion module 184 provides data to encoder system 170 for insertion into the data stream sent over line 165. Data creation and insertion system 180 is implemented in a PC or other computing device and is communicably coupled to server system 150 and encoder system 170 over either a direct connection or an indirect connection such as Internet 140, and may be physically located proximal server system 150 or encoder system 170 or both.
In one embodiment, data creation module 182 provides a user with a publishing tool for creating pages of information related to real time media presentations using templates, e.g., HTML layout template. The data creation module 182 allows the user to select from a number of pre-defined web pages (data windows) or create a web page dynamically. In one embodiment, the user selects a pre-made template, or creates a new template and provides the desired data, URLs/links, etc. into the fields presented by the template. When finished entering information, the user is able to preview the created page, and if satisfied, the user commits the page. Information and data included in the pages can include graphs, stock quote ticker symbols, URLs and hyperlinks, and other graphical and text information as desired. After a page is committed, data system 180 transmits the page to server system 150. Server system 150 returns an IP address, e.g., URL, for the location of the stored page either immediately or when requested later by data system 180.
Data insertion module 184 communicates with encoder system 170 and provides data to be inserted into the data stream created by encoder system 170. For example, in one embodiment, data insertion module 184 provides reference data, typically including a URL or IP address, identifying a specific page stored on server system 150 to encoder system 170 for insertion into a data stream. If data system 180 does not already have the reference data identifying the specific page, data system 180 requests (e.g., HTTP request) the reference data from server system 150. Alternatively, server system 150 is configured to send the reference data, e.g., URL, directly to encoder system 170. For example, in this embodiment, with reference to Figures 2 and 5, server system 150 may be configured to execute a Visual Basic script that calls a COM object resident on communications module 177 of encoder system 170 and sends the URL to the encoder system 170. The reference data is inserted into the data stream by encoder system 170, and when ultimately received by client application 125, client application 125 automatically performs an HTTP data request using the received reference data to obtain the web page from server system 150 for simultaneous display with the real time media presentation. Data insertion module 184 may operate automatically to send the reference data to encoder system 170 at the appropriate time, or data insertion module 184 may be user-controlled to send the reference data at the appropriate time.
Pages may be created well in advance of a related media presentation. For example, a producer, when designing a media broadcast or a "rundown" of shows, may create various pages for various show segments and send the finished templates to server system 150. When it is desired that a page be pushed to client system 120, data system 180 requests the reference data, e.g., URL or IP address, identifying the desired page from server system 150. Server system 150 returns the reference data for the requested page, and data system 180 provides the reference data to encoder system 170 for insertion into the data stream for the real time media presentation. Upon receiving the data stream from server system 160, client system 120 (module 125) displays the real time media presentation on one portion of a display and automatically requests and displays the page from server system 150 using the received reference data. In this manner, each page may be created well in advance, e.g., days weeks, months, of a related real time media presentation, yet each page will include fresh current data when actually requested and displayed by client system 120. In general, it is preferable to send a reference, e.g., URL or IP address, of a page rather than the page itself to conserve bandwidth and so that the data in the page is fresh when retrieved and displayed by client system 120.
In this description it is assumed that a web page is formatted using hypertext markup language (HTML) commands, although the present invention is also equally applicable to processing web pages formatted using any markup language including any instance of the Standard Generalized Markup Language (SGML), such as XML, WML, HDML (for hand-held devices), DHTML and others.
Figure 3 illustrates an example of a graphical user interface (GUI) display 200 created by application 125 according to an embodiment of the present invention. As shown, GUI 200 includes various subwindows or frames for displaying various data and media content. GUI 200 in one embodiment includes a real time media presentation frame 210 ("media frame 210") and a data frame 220. Also shown in Figure 3 in a "full view" mode are optionally provided active browser window 230, portfolio window 240 and channel bar 250. Other viewable modes and window arrangements are possible. For example, according to one embodiment, in an "expanded view" mode, all windows and frames except browser window 230 are displayed, and in a "compact view" mode, only media frame 210 and channel bar 250 are displayed. Additionally, Figure 4 illustrates an example of a different arrangement of windows and frames. Media frame 210 is provided for displaying a video presentation or in the case of an audio presentation, a related graphical or video display. For example, Figure 4 shows an audio presentation with a graphical display in media frame 210. As shown in the Figures, media frame 210 is reduced in size relative to the entire viewable display to allow for other media objects and windows to be presented. Additionally, because the frame size is reduced, the necessary bandwidth required to send and display the real time media presentation is reduced. For example, for video, a 320x200 pixel video frame can be displayed using bandwidths of 100K (e.g., 128K ISDN connection) and 300K (e.g., DSL, cable modem, TITS LAN connections, etc.), and a 176x132 pixel video frame can be displayed using a 56K stream (e.g., 56K dial-up modem connection). To conserve bandwidth, for video broadcasts, the user is given the option to play the audio portion only. As shown, media frame 210 is approximately 330x300 pixels with the control bar and borders. The size of media frame 210 may be fixed or it may be resizable, e.g., using ASX parameters embedded in the data stream. Data frame 220 displays data and pages pushed to client application 125 in the real time media presentation data stream. For example, when a URL is passed to client application 125 in the data stream as described above, client application 125 sends an HTTP request to server system 150 using the URL and displays the resulting HTML page received from server system 150 in data frame 220. As shown, data frame 220 has a size of 208x300 pixels. Data frame 220 is preferably resizable, either manually or automatically, e.g., using ASX controls embedded in the data stream. Also as shown, the page displayed in data frame 220 includes one or more hyperlinks. Upon selection of a hyperlink by a user, e.g., using a mouse or other pointing device, the link is passed to browser window 230, an HTTP request is sent to the IP address associated with the hyperlink and the resulting HTML is displayed in the browser window 230. If browser window 230 is not open, selection of a link in data frame 220 causes active browser window 230 to open and display the received media content identified by the selected link. Browser window 230 is preferably a scaled down version of Internet Explorer 5.0 or higher, although any browser may be used, e.g., Netscape Navigator, Opera or the like. Additionally as shown, browser window 230 can be scrolled. Browser window 230 includes an editable address bar, scroll bars and control icons as are well known. Portfolio window 240 displays additional information retrieved from a remote source such as server system 150 or another server system. According to one embodiment, for example, client application 125 is configured to retrieve user configured data content from the My Yahoo! server system, which is located at the URL http://my.yahoo.com, if a portfolio has been created and the user's cookie is still valid. An example of such a system for creating, maintaining and processing user configured data is provided in U.S. Patent No. 5,983,227, entitled "Dynamic Page Generator," and assigned to Yahoo! Inc., the contents of which are herein incorporated by reference in its entirety. As shown in Figure 3, the data content for portfolio window 240 is formatted to fit within a 167x300 pixel area. If the data content is longer than 167 pixels, horizontal and vertical scroll bars are displayed. Portfolio window 240 may also include links, which when selected are passed to the browser window as above.
Channel bar 250 includes one or more links, e.g., displayed as icons, identifying the live and archived media broadcast content available to a user. Upon selection of a channel link for archived content, the user is presented with a list of archived content available, e.g., in a pop-up dialog box. The user selects a particular archived broadcast, and an HTTP request is sent to server system 160, which responds by sending the data stream for the desired media broadcast to client system 120 for display in media frame 210. Upon selection of a live channel, the identified live broadcast is similarly displayed. When a channel is selected, the icon is highlighted, or otherwise made more prominent, while it is active. In one embodiment, a main channel, "FinanceVision" as shown, is set as a default channel upon startup. FinanceVision refers to a live video broadcast produced by Yahoo! Inc. discussing financial news and events. Additionally, after completion of an archived presentation segment, the main default channel loads again and resumes playing. In one embodiment, the main channel, in this case FinanceVision, is presented more prominently, e.g., taller, and does not scroll if the channel bar is made to scroll. The channel bar is preferably scrollable if the number of channels available do not fit within the defined channel bar area. If displayed, the scroll bars are disabled unless enough channels are present to enable scrolling. As shown, channel bar 250 is a fixed size of 80x300 pixels, but may be resizable.
Figure 4 illustrates another example of a GUI display 200 created by application 125 according to an embodiment of the present invention. As shown, browser window 230 is expanded to cover the entire bottom portion of the display, and data frame 220 is reduced in size to share space with portfolio window 240. In Figures 3 and 4, the pages of data content retrieved from server system 150 and displayed in data frame 220, including links to other content, are preferably tied to the subject matter of the current video shot displayed in media frame 210 (or in the case of audio only, the data content is preferably tied to the subject matter of the current topic of discussion). For example, in Figure 3, the displayed hosts of the video presentation may be discussing news related to Yahoo! Inc. Displayed concurrently in data frame 220 is a page of related information regarding Yahoo! Inc, such as a stock quote (real time or delayed) a graph of stock price v. time and links to related news stories. Similarly, in Figure 4, the hosts may be discussing a story related to Dell Computer Corporation, and a page of related data content including links is displayed in data frame 220. Other data content related to media broadcasts that may be displayed includes information on the speaker/host, a link to the speaker's web site, etc. For example, in the context of a news broadcast (audio or video), as one speaker in the news program begins to speak, the speaker's name is displayed in data frame 220 along with selectable HTML links to further information on that speaker or the topic. As the subject of the media presentation changes or a new speaker is interviewed, the new speaker's name may be displayed along with links or other related content. In the context of auctions, for example, information such as a picture of the item(s) being auctioned, the current bid price, time of last bid, etc., may be displayed in data frame 220. If a commercial or advertisement is displayed in media frame 210, e.g., during a break in a live broadcast, page(s) of information related to the commercial or advertisement may be created and displayed in data frame 220 as above.
In one embodiment, a page presented in data frame 220 allows the user of client system 120 to submit a question or comment to the current host or speaker of a live broadcast. For example, in one embodiment, a hyperlink identifying a question form on a remote computer system, e.g., data system 180 or server system 150, is included in the page. Upon selection of this hyperlink, the remote computer system sends the question form to client system 120. The user fills in a question or comment in the field(s) provided and submits the form, e.g., by selecting a "finished" icon, or selecting "enter". The form is then sent back to the remote computer system or to another remote computer system for viewing by a producer of the live broadcast. The producer, if satisfied with the question/comment, provides the question/comment to the host, e.g., via a video teleprompter, for a live response. Additionally, the producer may, in real time, also create and upload using data creation and insertion system 180, another web page, e.g., a "question page", including the question/comment to server system 150 so that the question may be presented to all viewers of the live broadcast during the live response. As above, server system 150 returns the reference data, e.g., URL, for the question page to data system 180, which then sends the reference data to encoder system 170 for insertion into the current live broadcast data stream. When received, client system 120 retrieves the web page including the question/comment from server system 150 using the received reference data and displays the question page in data frame 220 concurrently with the live response.
Client application 125 is controlled from a remote location according to one embodiment. In this embodiment, client application 125 is configured to instruct client system 120 to periodically poll one or more predetermined URLs to obtain updates for data frame 220 and other elements in the display. For example, client system 120 may poll server system 150 to obtain updates to the page displayed in data frame 220 using the reference data passed in the data stream from server system 160, and client system 120 may periodically poll server system 150 or another server system to obtain updates to the graphical elements provided in the GUI produced by client application 125. Additionally, client system 120 may periodically poll the My Yahoo! server to obtain updates to the portfolio page. In this manner, pages displayed in data frame 220 can be automatically refreshed. For example, if as shown in Figure 3, the page displayed in data frame 220 includes a stock quote (real time or delayed) the quote is automatically updated each time the page is refreshed. Similarly, data displayed in portfolio window 240 may be refreshed periodically. Additionally, data displayed in portfolio window 240 and browser window 230 can be manually refreshed , e.g., by selecting a refresh icon.
Figure 5 is a block diagram of encoder system 170 according to an embodiment of the present invention. In preferred aspects encoder system 170 is implemented as hardware and software in a computer system such as a PC or a server. As shown, encoder system 170 includes encoder module 171, video driver module 173, audio driver module 175, switch module 176, and communication module 177. Encoder module 171 in one embodiment includes a standard Microsoft Windows media encoder, although any other encoder such as a Real Networks encoder or a QuickTime encoder may be used. Encoder module 171 encodes the streaming signals received from switch 176 and transmits the encoded signals over line 165 to server system 160. Encoder 171 in one embodiment, is capable of inserting a data event, such as a URL, into a data stream.
Video module 173 includes a video capture card and associated software drivers for receiving and processing video signals received over line 172. In one embodiment, an Osprey 100 video card is used although any video card capable of processing real time video signals may be used. Similarly, audio module 175 includes an audio capture card such as an Antex LX-44 card and associated software drivers for receiving and processing audio signal received over line 174. Alternatives audio capture cards include SoundBlaster cards, etc. Switch 176 emulates a capture card driver and functions to switch the signals provided to encoder module 171 between AVI signals received over line 195, e.g., from computer system 190 or an ad server, and audio and video signals received from audio module 175 and video module 173, respectively. Switch module 176 allows for operator control of which signals are provided to encoder module 171 when encoder module 171 requests data from a capture card. For example, using a GUI as displayed on data system 180, or other computer system, as described above, an operator is able to control switch module 176 and thus the overall media presentation. In this manner, switch module 176 provides an operator with control to switch between a live feed, e.g., real time audio and video signals on lines 172 and 174, and signals for on demand AVI files or other on demand media files, over line 195. Communication module 177 provides a communication link with encoder module 171. Communication module 177 is used in one embodiment to provide control, remote or otherwise, of encoder 171. For example, in one embodiment, data system 180 communicates with encoder 171 via communication module 177 to provide data, such as the URL of a web page related to the content of the data stream, for insertion into the data stream to be provided to server system 160. The URL is preferably inserted into the stream in realtime, as the video signal is being encoded. In one embodiment, communication module 177 preferably includes a cgi script to facilitate remote communication. Alternatively, communication module 177 includes a direct interface to allow a user operating the computer system embodying the encoder system to control encoder module 171. Thus, an operator is able to change the pages displayed in data frame 220 of client system 120 and other client systems by "flicking a switch" (e.g., selecting a pre-created page on a GUI) to cause a new URL to be inserted into the data stream. For example, in one embodiment, a producer of a live broadcast can change pages displayed on the data frames 220 of viewers systems 120 in real time by selecting a pre-created page(s) and sending the associated reference data to encoder system 170 at the appropriate time. Thus, during the course of a live broadcast, as the topic changes, the producer can direct the related pages pushed to client systems 120 to change in real time.
Figure 6 illustrates an expanded view of server system 160 according to an embodiment of the present invention. As shown, server system 160 includes a playlist server 162, a plurality of streaming data servers 1641-164N and a content management system 166. Servers 164 are preferably distributed locally, e.g., as a server farm, but they may be geographically remotely distributed. Playlist server 162 interfaces with client systems to determine a particular server 164 associated with a particular broadcast, live or archived. For example, in one embodiment, when a user of client system 120 selects a channel in channel bar 250, an HTTP request is sent to playlist server 162. Playlist server 162 resolves the request to a particular server 164 and sends back an IP address or URL identifying the particular server 164 to client system 120. Client system 120 then communicates with the particular identified server 164 to receive a data stream (e.g., live or archived, video or audio) associated with the selected channel. In one embodiment, a load table is maintained that lists all of the streaming data servers 164 and which files (data streams) are loaded on which servers 164. The streaming data servers 164 are preferably identified through their IP addresses, and the table lists which IP addresses hold which files (data streams). When a request to play a specific file is received, the playlist server 162 performs a lookup on the load table and sends back the IP address to which the requesting client system 120 should link to get the desired file. In this manner, the load on the network is distributed so that no single streaming server 164 is overloaded when streaming to many clients for a given file (data stream). The load table is stored on content management system 166, but may additionally, or alternatively, be stored on playlist server 162.
Content management system 166 is provided for streaming data among servers 164 and to allow an operator to control the weightings of each of servers 164, e.g., based on the weight of activity of each server. For example, in one embodiment, each server 164 reports activity to management system 166 on a periodic basis, e.g., every 15 seconds. Management system 166 compiles the activity reports and presents an activity report to an operator via a GUI. The operator may manually change the weighting of each individual server 164 to redistribute the load on the servers 164 accordingly. Alternately, management system 166 is configured to automatically change the weightings of servers 164 based on a predetermined algorithm, e.g., a monte carlo algorithm.
After a live broadcast is completed and uploaded to server system 160, an operator is able to edit the (now stored) broadcast to create an archived broadcast for later presentation on client systems 120. For example, using a GUI on data system 180, or other computer system, a producer of a broadcast show can select certain portions and segments to store as an archived broadcast. Reference data, e.g., URLs and IP addresses, identifying the pages of related information associated with the selected portions and segments of the broadcast are also stored. In this manner, when a user of a client system 120 views an archived broadcast, they are also presented with fresh current data in data frame 220. In the case of a page including a stock quote, for example, the stock quote will be updated to reflect the current value and not the value as of the time of the original live broadcast.
Figure 7 illustrates another example of a graphical user interface (GUI) display 300 created by application 125 according to an embodiment of the present invention. As shown, GUI 300 includes various subwindows or frames for displaying various data and media content. GUI 300 in one embodiment includes a real time media presentation frame 310 ("media frame 310") and a data frame 320 ("playlist window 320"). Also shown in Figure 7 is optionally provided active browser window 330. Other viewable modes and window arrangements are possible. For example, in one mode all windows and frames except browser window 230 are displayed, in another mode all windows and frames except playlist window 320 are displayed, and in yet another mode, only media frame 310 is displayed. In one embodiment, selectable button 312 allows the user to selectively activate or deactivate browser window 330, and selectable button 314 allows the user to selectively activate or deactivate playlist window 320. Another button allows the user to selectively contract media frame 310 into a toolbar and to expand it back to its original size.
GUI 300 is particularly suited for displaying information related to real-time radio broadcasts as well as information related to real-time media presentations stored in a local memory, e.g., hard drive coupled to client 120, or on a CD or DVD inserted into a local media drive.
In the present embodiment, media frame 310 is provided for displaying various graphical elements related to audio presentations. Such graphical elements include a volume level control 316, a channel bar 350, and a text region 315 for displaying text and other information related to a current audio presentation, such as the artist and title of a musical selection, and the total time and time remaining for the musical presentation. As shown, media frame 310 is reduced in size relative to the entire viewable display to allow for other media objects and windows to be presented. The size of media frame 310 may be fixed or resizable by the user, e.g., using a selectable "expand" button as is well known, or it may be resizable, e.g., using ASX parameters embedded in a data stream.
Playlist window 320, in one embodiment displays data and selectable objects related to a plurality of real time media presentations of different types. Such real time presentation types include presentations available online, e.g., streaming audio channels, presentations stored on a local hard drive in various formats, e.g., .mp3, .wma, .wav, and other file types, and presentations available through a media drive, e.g., CD and DVD drives. Data and objects relating to the presentations include song titles, presentation titles, station (e.g., radio stations offering streaming audio) names, etc.
In one embodiment, when a CD is inserted in a CD drive coupled to the client system, client application 125 retrieves identification information from the CD and client application 125 sends an HTTP request to a server including a CDDB (CD database), or to server system 150 to communicate with such a server, to retrieve related information associated with the CD from the CDDB. Client application 125 then displays the related information received in playlist window 320. Such related information retrieved from the CDDB includes the titles and durations of the presentations stored on the CD. The information retrieved from the CDDB is stored locally in one embodiment, such that the next time that CD is inserted, the information is retrieved locally and displayed in playlist window 320 without contacting the CDDB. It should be apparent that these techniques are applicable to other media storage types and associated databases, e.g., DVD and any other music or media content storage mediums. In one embodiment, the user is able select any of the items/objects displayed in playlist window 320, and the application causes the associated media presentation to display. For example, if the user selects a song from a CD, the application interfaces with the CD player to present the selected song over the speaker system, and if the user selects a streaming audio channel, the application contacts the appropriate streaming audio server and presents the selected channel over the speaker system. The application also concurrently displays information related to the current presentation in the text region 315 of media display window 310.
If browser window 330 is activated, the application also displays related information therein. Related information displayed in browser window 330 includes selectable links (e.g., HTML hyperlinks) to web pages of related subject matter, picture objects (e.g., picture of album cover of CD from which a song is playing), the web page associated with the streaming media presentation (e.g., a web page associated with the broadcast station offering the streaming media broadcast). Information displayed in browser 330, in one embodiment, also includes links to media content streaming media channels, stored MP3 and WMA files, etc. Selection of such a link causes application 125 to access the selected file/channel and display the media content in media display 310. For example, selection of "find stations" button 318 causes the application to display available streaming audio channels in browser window 330. In one embodiment, the available channels are grouped by genre. Selection of a particular genre causes the application to display a list of links to available channels presenting music in that genre such that selection of a link causes the application to connect with a server providing the selected streaming audio channel and to play the channel and display related information.
In one embodiment, selection of an object, e.g., song title, activates a hyperlink to a web page that is associated with the subject matter of the CD and which is retrieved and displayed in browser window 330. The hyperlink is retrieved from the CDDB or from a search using information about the CD. Selection of a streaming audio channel, similarly, activates a hyperlink pointing to a web page associated with the streaming audio provider (e.g., radio station). In one embodiment, if browser window 330 is not open, selection of an object in playlist window 320 causes active browser window 330 to open and display the received media content associated with the current audio display. Alternatively, or if no audio presentation is being presented, a default web page is accessed.
Playlist window 320 is preferably resizable, either manually or automatically, e.g., using embedded ASX controls. Browser window 330 is preferably a scaled down version of Internet Explorer 5.0 or higher, although any browser may be used, e.g., Netscape Navigator, Opera or the like. Additionally as shown, browser window 330 can be scrolled. Browser window 330 also includes an editable address bar, scroll bars and control icons as are well known. In Figure 7, widow 333 illustrates an example of the display of browser 330 after it has been scrolled down.
Channel bar 350 includes one or more channel preset buttons or icons, identifying streaming audio broadcast content available to a user. The channel preset buttons shown in Figure 7 are configured to be changed based on theme or any other user defined criteria. For example, when a user desires to create a group of only country western music channels, the user may set each channel to identify a different country western streaming audio broadcast channel. The user is able to select an indicator, e.g. the "memory" button on the media frame 310, and the user-preset stations related to country music and other themes become selectable by the user. In other embodiments, stations are grouped or pre-grouped and classified automatically. Upon selection of a channel link for archived content, the user is presented with a list of archived content available, e.g., in a pop-up dialog box. The user selects a particular archived broadcast, and an HTTP request is sent to server system 160, which responds by sending the data stream for the desired media broadcast to client system 120 for display in media frame 310. Upon selection of a live channel, the identified live broadcast is similarly displayed.
In Figure 7, the pages of data content retrieved from server system 150 or another server system, and displayed in browser 330, including links to other content, are preferably tied to the subject matter of the current audio presentation.
While the invention has been described by way of example and in terms of the specific embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. To the contrary, it is intended to cover various modifications and similar arrangements as would be apparent to those skilled in the art. Therefore, the scope of the appended claims should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements.

Claims

WHAT IS CLAIMED IS: 1. A client application executing on a client device communicably coupled to the Internet, the client device including a processing unit and a display, the application comprising instructions for controlling the client device to: simultaneously display a media display window and a browser window on the display; display a list of one or more streaming audio channels in the browser window in response to a user selection of a channel list indicator; connect with a first streaming data server associated with a first streaming audio channel over the Internet in response to a user selection of the first streaming audio channel from the displayed list; receive streaming data from the first streaming data server, the streaming data associated with a streaming audio presentation; and display the streaming audio presentation.
2. The client application of claim 1, wherein the channel list indicator is a link displayed in the browser window.
3. The client application of claim 1, wherein the channel list indicator is a button displayed in the media display window.
4. The client application of claim 1, wherein the streaming audio presentation includes audio data and related information data, wherein the instructions to display the streaming audio presentation include instructions to play the audio data over speakers coupled to the client device and to display the related information in the media display window.
5. The client application of claim 4, wherein the related information includes at least one of a title of the audio presentation, a duration of the audio presentation, and a name of the streaming audio presentation provider.
6. The client application of claim 1, wherein the application further includes instructions to display a playlist window simultaneously with the media display window and the browser window, the playlist window including a list of one or more audio presentations.
7. The client application of claim 6, wherein the list one or more audio presentations includes at least one audio presentation stored on a storage medium accessible by the client device.
8. The client application of claim 7, wherein the storage medium is one of a CD and a DVD inserted into a media drive coupled to the client device.
9. The client application of claim 7, wherein the storage medium is a hard drive coupled to the client device.
10. The client application of claim 1, wherein the application further includes instructions for: displaying a playlist window simultaneously with the media display window and the browser window; upon insertion of a CD into a media drive coupled to the client device, reading an identifier from the CD; automatically retrieving information about the CD from a CD database server using the identifier, the retrieved CD information including the titles of one or more audio presentations stored on the CD; and displaying at least one of the titles in the playlist window.
11. The client application of claim 10, further including instructions to store the retrieved CD information in a storage unit coupled to the client device.
12. The client application of claim 10, further including instructions to display a first one of the audio presentations stored on the CD in response to a user selection of the title of the first audio presentation displayed in the playlist window.
13. A client application executing on a client device communicably coupled to the Internet, the client device including a processing unit and a display, the application comprising instructions for controlling the client device to: simultaneously display a media display window, an active browser window, and a playlist window on the display, wherein the playlist window includes a list of one or more audio presentations; and display a first one of the audio presentations in response to a user selection of the first audio presentation from the list.
14. The client application of claim 13, wherein the instructions to display the first audio presentation include sending audio data to a speaker system coupled to the client device and to display related information data in the media display window.
15. The client application of claim 14, wherein the related information includes at least one of a title of the first audio presentation, a duration of the first audio presentation, and a name of the first audio presentation provider.
16. The client application of claim 14, wherein the first audio presentation is a first streaming audio channel, further including instructions to: connect with a first streaming data server associated with the first streaming audio channel over the Internet; and receive streaming data from the first streaming data server, the streaming data associated with the first streaming audio presentation.
17. The client application of claim 13, wherein the list of audio presentations includes at least one streaming audio channel and at least one audio presentation stored on a storage medium coupled to the client device.
18. The client application of claim 17, wherein the storage medium is one of a CD and a DVD inserted into a media drive coupled to the client device.
19. A computer-implemented method of displaying audio presentations, the method comprising: simultaneously displaying a media display window and a browser window on a display; displaying a list of one or more streaming audio channels in the browser window in response to a user selection of a channel list indicator; connecting with a first streaming data server associated with a first streaming audio channel over the Internet in response to a user selection of the first streaming audio channel from the displayed list; receiving streaming data from the first streaming data server, the streaming data associated with a streaming audio presentation; and displaying the streaming audio presentation.
20. The method of claim 19, wherein the channel list indicator is one of a selectable link displayed in the browser window and a selectable button displayed in the media display window.
21. The method of claim 19, wherein the streaming audio presentation includes audio data and related information data, wherein displaying the streaming audio presentation includes playing the audio data over speakers coupled to the client device and displaying the related information in the media display window.
22. The method of claim 21 , wherein the related information includes at least one of a title of the audio presentation, a duration of the audio presentation, and a name of the streaming audio presentation provider.
23. The method of claim 19, further including displaying a playlist window simultaneously with the media display window and the browser window, the playlist window including a list of one or more audio presentations.
24. The method of claim 23, wherein the list one or more audio presentations includes at least one audio presentation stored on one of a CD and a DVD inserted into a media drive coupled to the client device.
25. The method of claim 19, further including: displaying a playlist window simultaneously with the media display window and the browser window; upon insertion of a CD into a media drive coupled to the client device, reading an identifier from the CD; automatically retrieving information about the CD from a CD database server using the identifier, the retrieved CD information including the titles of one or more audio presentations stored on the CD; and displaying at least one of the titles in the playlist window.
26. The method of claim 25, further including storing the retrieved CD information in a storage unit coupled to the client device.
27. The method of claim 25, further including displaying a first one of the audio presentations stored on the CD in response to a user selection of the title of the first audio presentation displayed in the playlist window.
28. A computer-implemented method of displaying audio presentations, the method comprising: simultaneously displaying a media display window, an active browser window, and a playlist window on a display, wherein the playlist window includes a list of one or more audio presentations; and displaying a first one of the audio presentations in response to a user selection of the first audio presentation from the list.
29. The method of claim 28, wherein displaying the first audio presentation includes sending audio data to a speaker system coupled to the client device and to display related information data in the media display window.
30. The method of claim 29, wherein the related information includes at least one of a title of the first audio presentation, a duration of the first audio presentation, and a name of the first audio presentation provider.
31. The method of claim 29, wherein the first audio presentation is a first streaming audio channel, further including: communicating with a first streaming data server associated with the first streaming audio channel over the Internet; and receiving streaming data from the first streaming data server, the streaming data associated with the first streaming audio presentation.
32. The method of claim 28, wherein the list of audio presentations includes at least one streaming audio channel and at least one audio presentation stored on a storage medium coupled to the client device.
33. The method of claim 32, wherein the storage medium is one of a CD and a DVD inserted into a media drive coupled to the client device.
PCT/US2001/012951 2000-04-20 2001-04-20 Media and information display systems and methods WO2001082621A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001257149A AU2001257149A1 (en) 2000-04-20 2001-04-20 Media and information display systems and methods

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US19871300P 2000-04-20 2000-04-20
US60/198,713 2000-04-20
US09/801,439 2001-03-07
US09/801,439 US20020091762A1 (en) 2000-03-07 2001-03-07 Information display system and methods
US83979901A 2001-04-19 2001-04-19
US09/839,799 2001-04-19

Publications (1)

Publication Number Publication Date
WO2001082621A1 true WO2001082621A1 (en) 2001-11-01

Family

ID=27393919

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/012951 WO2001082621A1 (en) 2000-04-20 2001-04-20 Media and information display systems and methods

Country Status (2)

Country Link
AU (1) AU2001257149A1 (en)
WO (1) WO2001082621A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2366128A (en) * 2000-05-12 2002-02-27 Nec Corp Bi-directional broadcasting and interaction system
GB2374508A (en) * 2001-04-02 2002-10-16 Cedemo Ltd Integrated display of information on a screen
WO2010097026A1 (en) * 2009-02-25 2010-09-02 腾讯科技(深圳)有限公司 Playing method and processing device for internet video in multi-page browser
US8135801B2 (en) 2002-06-18 2012-03-13 Wireless Ink Corporation Method, apparatus and system for management of information content for enhanced accessibility over wireless communication networks
US8347104B2 (en) 2001-12-26 2013-01-01 Research In Motion Limited Security interface for a mobile device
CN103914327A (en) * 2014-04-25 2014-07-09 广东威创视讯科技股份有限公司 Plug-in loading method and plug-in loading module
US9357153B2 (en) 2004-06-30 2016-05-31 Koninklijke Philips N.V. Method and apparatus for intelligent channel zapping
US9584835B2 (en) 2012-09-06 2017-02-28 Decision-Plus M.C. Inc. System and method for broadcasting interactive content

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0803826A2 (en) * 1996-04-22 1997-10-29 Sun Microsystems, Inc. Video on demand applet method and apparatus for inclusion of motion video in multimedia documents
WO1998033320A1 (en) * 1997-01-29 1998-07-30 West-Walker, Francis, Nigel Method of transferring media files over a communications network
US5793980A (en) * 1994-11-30 1998-08-11 Realnetworks, Inc. Audio-on-demand communication system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793980A (en) * 1994-11-30 1998-08-11 Realnetworks, Inc. Audio-on-demand communication system
US6151634A (en) * 1994-11-30 2000-11-21 Realnetworks, Inc. Audio-on-demand communication system
EP0803826A2 (en) * 1996-04-22 1997-10-29 Sun Microsystems, Inc. Video on demand applet method and apparatus for inclusion of motion video in multimedia documents
WO1998033320A1 (en) * 1997-01-29 1998-07-30 West-Walker, Francis, Nigel Method of transferring media files over a communications network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Macromedia debuts flash 4 for distinctive, full-screen web experiences", 24 March 1999 (1999-03-24), XP002941828 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2366128B (en) * 2000-05-12 2002-08-28 Nec Corp Bi-directional broadcasting and interaction system
GB2366128A (en) * 2000-05-12 2002-02-27 Nec Corp Bi-directional broadcasting and interaction system
GB2374508A (en) * 2001-04-02 2002-10-16 Cedemo Ltd Integrated display of information on a screen
US8347104B2 (en) 2001-12-26 2013-01-01 Research In Motion Limited Security interface for a mobile device
US9743278B2 (en) 2001-12-26 2017-08-22 Blackberry Limited Security interface for a mobile device
US8825801B2 (en) 2002-06-18 2014-09-02 Wireless Ink Corporation Method, apparatus and system for management of information content for enhanced accessibility over wireless communication networks
US8793336B2 (en) 2002-06-18 2014-07-29 Wireless Ink Corporation Method, apparatus and system for management of information content for enhanced accessibility over wireless communication networks
US8135801B2 (en) 2002-06-18 2012-03-13 Wireless Ink Corporation Method, apparatus and system for management of information content for enhanced accessibility over wireless communication networks
US9032039B2 (en) 2002-06-18 2015-05-12 Wireless Ink Corporation Method, apparatus and system for management of information content for enhanced accessibility over wireless communication networks
US9619578B2 (en) 2002-06-18 2017-04-11 Engagelogic Corporation Method, apparatus and system for management of information content for enhanced accessibility over wireless communication networks
US9922348B2 (en) 2002-06-18 2018-03-20 Engagelogic Corporation Method, apparatus and system for management of information content for enhanced accessibility over wireless communication networks
US10839427B2 (en) 2002-06-18 2020-11-17 Engagelogic Corporation Method, apparatus and system for management of information content for enhanced accessibility over wireless communication networks
US11526911B2 (en) 2002-06-18 2022-12-13 Mobile Data Technologies Llc Method, apparatus and system for management of information content for enhanced accessibility over wireless communication networks
US9357153B2 (en) 2004-06-30 2016-05-31 Koninklijke Philips N.V. Method and apparatus for intelligent channel zapping
WO2010097026A1 (en) * 2009-02-25 2010-09-02 腾讯科技(深圳)有限公司 Playing method and processing device for internet video in multi-page browser
US9584835B2 (en) 2012-09-06 2017-02-28 Decision-Plus M.C. Inc. System and method for broadcasting interactive content
CN103914327A (en) * 2014-04-25 2014-07-09 广东威创视讯科技股份有限公司 Plug-in loading method and plug-in loading module

Also Published As

Publication number Publication date
AU2001257149A1 (en) 2001-11-07

Similar Documents

Publication Publication Date Title
US20020091762A1 (en) Information display system and methods
US9338520B2 (en) System and method for applying a database to video multimedia
US6486892B1 (en) System and method for accessing, manipulating and viewing internet and non-internet related information and for controlling networked devices
US8856826B2 (en) System and method for effectively presenting multimedia information materials
US7152203B2 (en) Independent update and assembly of web page elements
US7996791B2 (en) Streaming video programming guide system selecting video files from multiple websites and automatically generating selectable thumbnails
US6278449B1 (en) Apparatus and method for designating information to be retrieved over a computer network
CA2327632C (en) Methods for creating and playing a customized program of a variety of sources
KR20010023562A (en) Automated content scheduler and displayer
US20060010111A1 (en) Methods to adapt search results provided by an integrated network-based media/search engine based on user lifestyle
US20070294621A1 (en) System and Method for Displaying Information
WO2001082621A1 (en) Media and information display systems and methods
US20070061326A1 (en) Receiving display station on a communication network for accessing and displaying network documents associated with a television program display in which the text stream of the TV program on the display station provides user selectable links to predetermined network source sites
US20030200550A1 (en) Internet video recording system and method
WO2001098911A1 (en) System and method for communicating a variety of multi-media works over a computer network based on user selection
EP1116091A1 (en) System for providing a user with active and passive access to cached content
WO2006008719A2 (en) Systems and methods to provide internet search/play media services
MXPA00002208A (en) Automated content scheduler and displayer

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP