US20140157195A1 - Media play of selected portions of an event - Google Patents
Media play of selected portions of an event Download PDFInfo
- Publication number
- US20140157195A1 US20140157195A1 US14/090,742 US201314090742A US2014157195A1 US 20140157195 A1 US20140157195 A1 US 20140157195A1 US 201314090742 A US201314090742 A US 201314090742A US 2014157195 A1 US2014157195 A1 US 2014157195A1
- Authority
- US
- United States
- Prior art keywords
- event
- sub
- media data
- events
- media
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
Definitions
- the present invention is related generally to the presentation of sub-events that characterize an event. More specifically, the present invention relates to the media play of user selectable sub-events that characterize an event.
- the Internet is a wide area network that connects hundreds of thousands of computers and smaller sub-networks world-wide. Businesses, government bodies and entities, educational organizations, and individuals publish information or data organized in the form of websites.
- a website may comprise multiple web pages that display a specific set of information and may contain links to other web pages with related or additional information. Some web pages include multiple web pages that are displayed together in a single user interface window. Each web page is identified by a Uniform Resource Locator (URL) that includes the location or Web address of the computer that contains the resource to be accessed in addition to the location of the resource on that computer.
- URL Uniform Resource Locator
- An Internet or Web address generally is composed of four parts: a protocol name, the location of a web server that provides the website information, a name identifying the organization or individual that maintains the web server, and a suffix that identifies the type of organization. For example, “.com” identifies a commercial organization, “.edu” identifies an educational institution, and “.gov” identifies a government organization.
- the protocol name specifies the protocol that defines the set of rules and standards to be applied when exchanging information between the web server that communicates the website information and a client computer that receives and displays the website information.
- the URL includes the Internet address and the resource location on the web server. The resource defines the web page presentation.
- Streaming refers to the ability to play media streams such as audio and video streams in a continuous way while those streams are being transmitted to the client computer over a network such as the Internet.
- Applications that can be built on top of streaming services, can be classified into live information delivery and on-demand applications.
- Live information delivery applications include the live delivery of radio and television programs.
- On-demand information delivery applications include music, news-on-demand, and sports-on-demand applications.
- the Multimedia Messaging Service (MMS), e-mail, and the Short Messaging Service (SMS) for example, transmit messages to and from devices in a store-and-forward manner and allow the transmission of a combination of text, sounds, images, and video.
- MMS Multimedia Messaging Service
- SMS Short Messaging Service
- IP Internet Protocol
- DNS Domain Name System
- RTSP Real Time Streaming Protocol
- UDP User Datagram Protocol
- TCP Transmission Control Protocol
- RTP Real-Time Transport Protocol
- UDP is a transport layer protocol used in the Internet that does not establish a connection or provide reliable data transfer.
- Multicast UDP supports one to many message transmission using UDP.
- a computer In multicast UDP, a computer must join the multicast group to send and/or to receive data for the multicast group.
- TCP is a transport layer protocol used in the Internet that establishes a connection between the computers and provides reliable data transfer.
- RTSP is used in the streaming of continuous media to provide session set-up and to control the individual media streams.
- RTSP is a text-based protocol.
- RTSP is intentionally similar in syntax and operation to HTTP/ 1 . 1 so that extension mechanisms to HTTP can in most cases also be added to RTSP.
- An RTSP session typically consists of a client computer defining a transport mechanism for the continuous media stream and then starting the stream. The stream may be paused temporarily.
- RTSP controls the stream, that may be sent via a separate protocol, independent of the control channel. For example, RTSP control may occur on a TCP connection while the streaming data flows using UDP.
- RTP enables the controlled delivery of real-time data, such as audio, video, or simulation data.
- Sources of the data can include both live and on-demand content.
- RTP provides end-to-end network transport functions for applications transmitting real-time data over multicast or unicast network services.
- RTP supports content identification, sequence numbering, timing reconstruction, and delivery monitoring to the real-time applications.
- RTSP is designed to work with established protocols such as RTP and HTTP.
- On-demand streaming media data can be accessed by a client computer using the Internet and streaming protocols.
- On-demand streaming media data may be associated with a variety of different events including, but not limited to, sporting events, concerts, news events, etc.
- the event may be divided into a set of specific sub-events that together describe and summarize the key characteristics of the event.
- the types of characterizing sub-events may depend on the type of event. For example, a baseball box score has been used by baseball fans since the early 1800's to summarize a baseball game using a set of data associated with each player and each pitcher.
- An embodiment of the invention relates to a method of selectively presenting a portion of an event to a user.
- the method includes, but is not limited to, displaying a plurality of sub-events that characterize an event at a first device whereby a user selects a sub-event from the plurality of sub-events, sending a request from the first device to a second device, the request comprising information associated with the selected sub-event, selecting media data at the second device that represents the selected sub-event from a database accessible by the second device using the information, sending the selected media data from the second device to the first device, and presenting the selected media data at the first device.
- the information may include, but is not limited to, an event identifier, a sub-event code, and a sub-event performer.
- Selecting the media data may comprise identifying a media file using the event identifier and identifying a media play time window within the identified media file using the sub-event code.
- selecting the media data may comprise identifying a media file using the event identifier and identifying a media play time window within the identified media file using the sub-event code and the sub-event performer.
- the plurality of sub-events may include, but is not limited to, statistics from a sporting event, a baseball box score, and a golf scorecard.
- the sporting event may include, but is not limited to, a golf tournament, a baseball game, a football game, a basketball game, a soccer match, a softball game, and a hockey game.
- the sub-event may be selected from the group consisting of an at bat, a run, a hit, a run batted in, a base on balls, a strikeout, a left on base, an earned run, a single, a double, a triple, an error, and a home run.
- Sending the selected media data may comprise, but is not limited to, streaming the media data and/or using a service that includes, but is not limited to, a multimedia messaging service, a short messaging service, and an e-mail service without limitation.
- the computer program product includes, but is not limited to, computer code configured to display a plurality of sub-events that characterize an event, to receive an input from a user whereby the user selects a sub-event from the plurality of sub-events, to send a request to a device, the request comprising information associated with the selected sub-event, to receive media data from the device whereby the media data represents the selected sub-event, and to present the received media data.
- the computer program product includes, but is not limited to, computer code configured to receive a request from a device, wherein the request comprises information associated with a sub-event selected by a user from a plurality of sub-events that characterize an event, to select media data that represents the selected sub-event from a database using the information, and to send the selected media data to the device.
- Still another embodiment of the invention relates to a device for selectively presenting a portion of an event to a user.
- the device includes, but is not limited to, an application, a communication interface, a memory, and a processor.
- the application includes, but is not limited to, computer code configured to display a plurality of sub-events that characterize an event, to receive an input from a user whereby the user selects a sub-event from the plurality of sub-events, to send a request to a second device, the request comprising information associated with the selected sub-event, to receive media data from the second device whereby the media data represents the selected sub-event, and to present the received media data.
- the communication interface is configured to provide an interface between the application and the second device.
- the memory is configured to store the application.
- the processor couples to the memory and is configured to execute the application.
- Still another embodiment of the invention relates to a device for sending a portion of an event to a user.
- the device includes, but is not limited to, an application, a communication interface, a memory, and a processor.
- the application comprises computer code configured to receive a request from a second device, wherein the request comprises information associated with a sub-event selected by a user from a plurality of sub-events that characterize an event, to select media data that represents the selected sub-event from a database using the information, and to send the selected media data to the second device.
- the communication interface is configured to provide an interface between the application and the second device.
- the memory is configured to store the application.
- the processor couples to the memory and is configured to execute the application.
- Still another embodiment of the invention relates to a system for selectively presenting a portion of an event to a user.
- the system includes, but is not limited to, a first device, a second device, and a network.
- the first device includes, but is not limited to, a first application, a first communication interface, a first memory, and a first processor.
- the first application comprises computer code configured to display a plurality of sub-events that characterize an event, to receive an input from a user whereby the user selects a sub-event from the plurality of sub-events, to send a request to the second device, the request comprising information associated with the selected sub-event, to receive media data from the second device whereby the media data represents the selected sub-event, and to present the received media data.
- the first communication interface is configured to provide an interface between the first application and the second device.
- the first memory is configured to store the first application.
- the first processor couples to the first memory and is configured to execute the first application.
- the second device includes, but is not limited to, a second application, a second communication interface, a second memory, and a second processor.
- the second application comprises computer code configured to receive the request from the first device, to select media data that represents the selected sub-event from a database using the information, and to send the selected media data to the first device.
- the second communication interface is configured to provide an interface between the second application and the first device.
- the second memory is configured to store the second application.
- the second processor couples to the second memory and is configured to execute the second application.
- the network is configured to allow communication between the first communication interface and the second communication interface.
- FIG. 1 is a diagram of a system in accordance with an example embodiment.
- FIG. 2 is a block diagram of a client device for use in the system of FIG. 1 in accordance with an example embodiment.
- FIG. 3 is a block diagram of a server device for use in the system of FIG. 1 in accordance with an example embodiment.
- FIG. 4 is a block diagram of a process for using the system of FIG. 1 in accordance with an example embodiment of the present invention.
- FIG. 5 depicts an example user interface for display on the device of FIG. 2 , wherein the example user interface includes a sub-event table.
- FIG. 6 depicts a second example user interface for display on the device of FIG. 2 , wherein the second example user interface includes a first set of sub-events and a media player.
- FIG. 7 depicts the second example user interface of FIG. 6 showing media data on the media player.
- FIG. 8 depicts the second example user interface of FIG. 6 showing a second set of sub-events.
- FIG. 9 is a flow diagram of a sub-event presentation using a browser application.
- FIG. 10 is a flow diagram of sending media data associated with a selected sub-event using a web server application.
- the system 10 is comprised of multiple devices that can communicate through a network.
- the system 10 may comprise any combination of wired or wireless networks including, but not limited to, a cellular telephone network 12 , a wireless Local Area Network (LAN), a Bluetooth personal area network, an Ethernet LAN, a token ring LAN, a wide area network, the Internet 14 , etc.
- the system 10 may include both wired and wireless devices.
- the system 10 shown in FIG. 1 includes the cellular telephone network 12 and the Internet 14 .
- Connectivity to the Internet 14 may include, but is not limited to, long range wireless connections, short range wireless connections, and various wired connections including, but not limited to, telephone lines, cable lines, power lines, digital cable, Video on Demand (VOD), etc.
- VOD Video on Demand
- the cellular telephone network 12 includes, but is not limited to, one or more devices, a base station 16 , and a network server 18 .
- the devices may send and receive signals through the base station 16 .
- the network server 18 allows communication between the devices and another network.
- the network server 18 may connect the devices with other devices through the Internet 14 .
- the devices may include, but are not limited to, a desktop computer 20 , a notebook computer 22 , a Messaging Device (MD) 24 , a Personal Digital Assistant (PDA) 26 , and/or a cellular telephone 28 .
- the system 10 may include additional devices and devices of different types as well as any combination of these devices.
- FIG. 2 shows a block diagram of an example device that may be included in system 10 .
- the client device 30 includes a display 32 , a communication interface 34 , an input interface 36 , a memory 38 , a processor 40 , and a browser application 42 .
- the term “device” should be understood to include, without limitation, cellular telephones, PDAs, MDs, computers of all form factors, etc.
- the client device 30 may or may not be mobile. Different and additional components may be incorporated into the client device 30 .
- the client device 30 allows a user to connect to a network, such as the Internet 14 , and to view and/or to hear media data using a variety of formats.
- the components of client device 30 may each be internal or external to the client device 30 .
- the components may connect to each other using a number of different methods as known to those skilled in the art. Connections between the components of client device 30 may be other than or in addition to those shown in FIG. 2 .
- the display 32 presents information to the user of the client device 30 including, but not limited to, information from the browser application 42 .
- the display may be, but is not limited to, a thin film transistor (TFT) display, a light emitting diode (LED) display, a Liquid Crystal Display (LCD), a Cathode Ray Tube (CRT) display, etc.
- TFT thin film transistor
- LED light emitting diode
- LCD Liquid Crystal Display
- CRT Cathode Ray Tube
- the communication interface 34 provides an interface for receiving and transmitting calls, messages, and/or any other information communicated across a network including, but not limited to, streaming media and multimedia messages.
- Communications between the client device 30 and the network may be through one or more of the following connection methods, without limitation: an infrared communications link, a wireless communications link, a cellular network link, a physical serial connection, a physical parallel connection, a link established according to the Transmission Control Protocol/Internet Protocol (TCP/IP), etc.
- Communications between the client device 30 and the network may use one or more of the following communication protocols, without limitation: HTTP, TCP/IP, RTSP, RTP, UDP, multicast UDP, etc. Transferring content to and from the client device 30 may use one or more of these connection methods and communication protocols or any others known to those skilled in the art or to be developed in the future.
- the input interface 36 provides an interface for receiving information from the user for entry into the client device 30 .
- the input interface 36 may use various input technologies including, but not limited to, a keyboard, a pen and touch screen, a mouse, a track ball, a touch screen, a keypad, one or more buttons, etc. to allow the user to enter information into the client device 30 or to make selections from the client device 30 .
- the input interface 36 may provide both an input and an output interface. For example, a touch screen display allows the user to make selections and presents information to the user.
- the memory 38 provides an electronic holding place for an operating system of the client device 30 , the browser application 42 , and/or other applications.
- the client device 30 may have a plurality of memory devices 38 that use the same or different memory technologies.
- Example memory technologies include, but are not limited to, Random Access Memory (RAM), Read Only Memory (ROM), flash memory, etc.
- RAM Random Access Memory
- ROM Read Only Memory
- Flash memory is a type of constantly-powered non-volatile memory that can be erased and reprogrammed in units of memory called blocks.
- a variety of different storage media may be used for each memory technology. For example, a Compact Disk (CD), a Digital Video Disk (DVD), and a hard disk are all ROM storage media types.
- the processor 40 executes instructions that cause the client device 30 to perform various functions.
- the instructions may be written using one or more programming languages, scripting languages, assembly languages, etc. Additionally, the instructions may be carried out by a special purpose computer, logic circuits, or hardware circuits. Thus, the processor 40 may be implemented in hardware, firmware, software, or any combination of these methods.
- execution refers to the process of running an application or program or the carrying out of the operation called for by an instruction.
- the processor 40 executes an application meaning that it performs the operations called for by that application in the form of a series of instructions.
- the processor 40 may retrieve an application from a non-volatile memory that is generally some form of ROM or flash memory and may copy the instructions in an executable form to a temporary memory that is generally some form of RAM.
- the processor 40 may execute instructions embodied in the browser application 42 .
- the client device 30 may include one or more processors 40 .
- the browser application 42 may communicate with one or more web servers.
- the browser application 42 may respond to HTTP commands, may interpret HTML and other Internet programming languages including, but not limited to, JavaTM and Perl, and may present a web page for viewing by the user.
- the browser application 42 may display or otherwise process media data or media streams.
- the streams may be for on-demand use or for live information delivery.
- the browser application 42 may additionally support MMS message formats. Processing a stream refers to the ability of an application to play media streams such as audio and video streams or simulation data streams in a continuous way while those streams are being transmitted to the device over the network.
- a streaming session generally may be paused and resumed.
- An on demand streaming media session also may be indexed forward and backward.
- FIG. 3 shows a block diagram of a server device 50 that includes a display 52 , a communication interface 54 , an input interface 56 , a memory 58 , a processor 60 , a web server application 62 , and a database 64 .
- Different and additional components may be incorporated into the server device 50 .
- the server device 50 communicates website information to the client device 30 .
- the components of server device 50 may each be internal or external to the server device 50 .
- the components may connect using a number of different methods as known to those skilled in the art. Connections may be other than or in addition to those shown in FIG. 3 .
- the display 52 presents information to the user of the server device 50 including, but not limited to, information from the web server application 62 .
- the display may be, but is not limited to, a TFT display, an LED display, an LCD display, a CRT display, etc.
- the display 52 is optional.
- the communication interface 54 provides an interface for receiving and transmitting calls, messages, and/or any other information communicated across a network including streaming media and multimedia messages.
- Communications between the server device 50 and the network may be through one or more of the following connection methods, without limitation: an infrared communications link, a wireless communications link, a cellular network link, a physical serial connection, a physical parallel connection, a link established according to the TCP/IP Standards, etc.
- Communications between the server device 50 and the network may use one or more of the following communication protocols, without limitation: HTTP, TCP/IP, RTSP, RTP, UDP, multicast UDP, etc. Transferring content to and from the server device 50 may use one or more of these connection methods and communication protocols or any others known to those skilled in the art or to be developed in the future.
- the input interface 56 may provide an interface for receiving information from the user for entry into the server device 50 .
- the input interface 56 may use various input technologies including, but not limited to, a keyboard, a pen and touch screen, a mouse, a track ball, a touch screen, a keypad, one or more buttons, etc. to allow the user to enter information into the server device 50 or to make selections from the server device 50 .
- the input interface 56 may provide both an input and an output interface. For example, a touch screen display allows the user to make selections and presents information to the user.
- the input interface 56 is optional.
- the memory 58 provides an electronic holding place for an operating system of the server device 50 , the web server application 42 , the database 64 , and/or other applications so that the information can be reached quickly by the processor 60 .
- the server device 50 may have a plurality of memory devices 58 that may use different memory technologies including, but not limited to, RAM, ROM, flash memory, etc.
- the processor 60 executes instructions that cause the server device 50 to perform various functions.
- the instructions may be written using one or more programming languages, scripting languages, assembly languages, etc. Additionally, the instructions may be carried out by a special purpose computer, logic circuits, or hardware circuits. Thus, the processor 60 may be implemented in hardware, firmware, software, or any combination of these methods.
- the processor 60 executes an application meaning that it performs the operations called for by that application in the form of a series of instructions.
- the processor 60 may retrieve an application from a non-volatile memory that is generally some form of ROM or flash memory and may copy the instructions in an executable form to a temporary memory that is generally some form of RAM.
- the processor 60 may execute instructions embodied in the web server application 62 .
- the server device 50 may include one or more processors 60 .
- the web server application 62 may communicate with the browser application 42 at the client device 30 .
- the web server application 62 may respond to HTTP commands and may transmit one or more web pages to the client device 30 based on the user selection at the client device 30 .
- the web server application 62 may transmit or otherwise process media data or media streams.
- the streams may be for on-demand use or for live information delivery.
- the web server application 62 may additionally transmit messages using for example, MMS, SMS, e-mail, etc.
- the database 64 may store web pages and information associated with the web pages including media data.
- the web server application 62 interfaces with the database 64 .
- the database may utilize various database technologies as known to those skilled in the art including a simple file system and/or a system of tables.
- the database 64 also may use a variety of different formats as known to those skilled in the art.
- the server device 50 may include a plurality of databases 64 .
- the database 64 also may be used to synchronize event and sub-event timing information at certain intervals or in real time using industry standard database technology.
- An event 70 occurs that, for example, may be a sporting event, a concert, a news event, etc.
- a media recorder 72 captures and records media data 73 of the event 70 .
- the media recorder 72 may be one or more cameras, microphones, and/or other media recording devices.
- the media data 73 may be recorded in a variety of file formats as known to those skilled in the art both now and in the future.
- the media data 73 recorded by the media recorder 72 is stored in the database 64 .
- the database 64 may be located at the event location or may be remote from the event location. Storing the media data 73 to the database 64 may utilize a network connection, and the media data 73 may be recorded to the database 64 during the event 70 .
- a sub-event recorder 74 records the specific sub-events that characterize the event 70 .
- the sub-events may be captured by an observer listening to or viewing the event 70 either at the event location or remote from the event location. The observer may capture the sub-events either during or at the completion of the event 70 .
- Each sub-event may be identified using a code predefined based on the type of sub-event. Each sub-event may be recorded using the code that corresponds to the type of sub-event thereby creating coded sub-event data 75 that is associated with the event 70 .
- the types of sub-events defined may depend on the type of event 70 . Additionally, the individual performing the sub-event may be recorded with the sub-event code.
- the sub-event types may include, but are not limited to, an at bat, a hit, a base on balls, a strikeout, a single, a double, a triple, a homerun, a run batted in, a run, a left on base, an error, an earned run, etc.
- the sub-event codes that correspond to the sub-event types may be numerical or textual in format. The name of the baseball player performing the sub-event may be recorded with the sub-event code as the sub-event performer.
- the sub-event types may include, but are not limited to, a tackle, a fumble, a touchdown, an interception, a field goal, a point after kick, a kick-off, a punt, a reception, a sack, etc.
- the name of the football player performing the sub-event may be recorded with the sub-event type code as the sub-event performer.
- the sub-event types may include, but are not limited to, an eagle, a birdie, a par, a bogie, a double bogie, a hole in one, etc.
- the name of the golfer performing the sub-event may be recorded with the sub-event type code as the sub-event performer. Additionally, a hole number may be recorded with the golfer name and/or the sub-event type code.
- the sub-event types may be descriptors or sequential numbers defined by the sub-event recorder 74 that may include an individual or a group associated with performance of the sub-event.
- the sub-event types may include, but are not limited to, a 3-point shot, a foul shot, a 2-point shot, a foul, a rebound, an assist, a blocked-shot, etc.
- the name of the basketball player performing the sub-event may be recorded with the sub-event type code as the sub-event performer.
- the coded sub-event data 75 may be stored in the database 64 or in memory prior to or instead of in the database 64 . Storing the coded sub-event data 75 to the database 64 may utilize a network connection.
- the coded sub-event data 75 may be stored in a variety of formats as known to those skilled in the art. For example, the coded sub-event data 75 may be recorded as a set of tables.
- the sub-event recorder 74 may be embodied in any device.
- a sub-event timing recorder 76 may record the timing of the sub-events of the event 70 .
- the timing of the sub-events may be captured by an observer listening to or viewing the event 70 .
- Each sub-event may be recorded using the same code used by the sub-event recorder 74 thereby creating coded sub-event timing data 77 that is associated with the event 70 .
- the same or a different observer may capture the coded sub-event timing data 77 and the coded sub-event data 75 .
- the timing data for each sub-event may be measured relative to a number of different time references and in a variety of formats. For example, the timing data may be measured relative to the beginning of the event 70 , relative to Greenwich Mean Time, relative to a local time, etc.
- the timing data may include the date of the event or the date may be maintained separately.
- the event 70 may be sub divided into distinct sections that include one or more sub-events.
- a distinct section of a baseball game may be, but is not limited to, an at bat, a half inning, and/or an inning.
- a distinct section of a football game may be, but is not limited to, a single down, a team's possession of the football, and/or a quarter. Under some circumstances, the occurrence of a sub-event during an event 70 may be missed or otherwise not recorded.
- the timing of the sub-event may be designated using different methods, but generally defines a time window.
- the sub-event time window during which the sub-event occurs may be captured using a start time and a stop time for the sub-event.
- the sub-event time window during which the sub-event occurs may be captured using a start time and a sub-event time duration.
- the start time may indicate the time relative to the beginning of the media data 73 that the selected sub-event occurs.
- the sub-event duration may indicate the duration of the media data associated with the selected sub-event.
- the time window defines the time during which the media data contains the sub-event or sub-events.
- the device used to record the coded sub-event timing data 77 may be the same or different from the device used to record the coded sub-event data 75 .
- the coded sub-event timing data 77 may be stored in the database 64 . Storing the coded sub-event timing data 77 to the database 64 may utilize a network connection.
- the coded sub-event timing data 77 may be stored in a variety of formats as known to those skilled in the art.
- the sub-event timing recorder 76 may be embodied in any device.
- the sub-event timing recorder 76 and the sub-event recorder 74 may be combined in the same device.
- the coded sub-event data 75 may be merged with the coded sub-event timing data 77 to create a single table or record of data associated with the event 70 .
- the coded sub-event timing data 77 and the coded sub-event data 75 may have been recorded initially in the single table of data.
- the table of data may include a cross reference to the name of the file that holds the media data 73 .
- the coded sub-event timing data 77 may be adjusted to include additional time before and/or after the occurrence of the sub-event. For example, if the sub-event starts at 1 : 10 : 00 and ends at 1 : 20 : 00 , a thirty second roll-in and roll-out time period may be added to the coded sub-event timing data 77 so that the recorded media “plays” from 1:09:30 to 1:20:30.
- the roll-in and roll-out time periods may be shorter or longer than thirty seconds and may depend upon the event 70 .
- the web server application 62 executes at the server device 50 and provides web pages to the browser application 42 executing at the client device 30 using a network that may include the Internet 14 .
- FIG. 5 shows an example web page that may be provided by the web server application 62 and displayed to a user at the client device 30 on the display 32 using the browser application 42 .
- User interface window 90 created by the browser application 42 displays a web page 92 and includes, but is not limited to, a vertical scroll bar 94 and a horizontal scroll bar 95 .
- the web page 92 includes, but is not limited to, a game identifier 91 , a game date 93 , a first sub-event table 96 , and a second sub-event table 98 .
- the plurality of sub-events included in the sub-event table may be included in different forms. For example, a list of sub-events may be displayed or a series of golf scorecards may be displayed.
- the sub-event tables 96 , 98 characterize the event identified by the game identifier 91 which, in the example shown in FIG. 7 , is a baseball game between the New York Yankees and the Anaheim Angels.
- the game date 93 defines the date that the event occurred. In the example shown, the event date 93 is May 20, 2004.
- the web page 92 may include additional sub-event tables.
- the additional sub-event tables may be similar to sub-event tables 96 , 98 or different from sub-event tables 96 , 98 .
- the organization of the sub-event table may vary depending on the type of event.
- the sub-event tables 96 , 98 for example, include a list of players 100 for each team that are the performers of each sub-event. Baseball fans may recognize the sub-event tables 96 , 98 as resembling baseball box scores.
- the sub-event table includes sub-event codes 102 that characterize the performance of each player during the baseball game.
- the sub-event codes 102 shown in the sub-event tables 96 , 98 include, but are not limited to, AB (at bat), R (run), H (hit), RBI (run batted in), BB (base on balls), SO (strikeout), and LOB (left on base).
- the sub-event codes may be other than AB, R, H, RBI, BB, SO, and LOB.
- the sub-event codes may be numerical code or may be different textual codes.
- the user at the client device 30 may select a table entry 104 from the sub-event tables 96 , 98 defined by the list of players 100 and the sub-event codes 102 using the input interface 36 of the client device 30 .
- the table entry 104 may comprise a hyperlink.
- a hyperlink is an HTML command that is embedded in a web page. When selected, the hyperlink may cause the display to shift to another location on the same web page, to shift to a new web page, to shift to an image, a sound, a video, a database, etc. that may or may not be provided by the same web server application 62 .
- the hyperlink may be delineated from the surrounding text, for example, using a different color of text, using a line under the text, and/or changing a symbol displayed when a pointer moves across the hyperlink.
- the browser application 42 executed by processor 40 sends a request 79 to the web server application 62 through communication interface 34 identifying the table entry 104 selected by the user.
- the request 79 includes information related to the table entry 104 selected.
- the request 79 may include the sub-event code, the sub-event performer, and an event identifier.
- the event identifier may include, but is not limited to, the year, the month, the day, and the name of the home team.
- the user requests media data relative to the four “at bats” of baseball player David Eckstein that occurred during the game between the New York Yankees and the Anaheim Angels on May 20, 2004.
- the web server application 62 receives the request 79 from the browser application 42 through communication interface 54 .
- the web server application 62 sends a query 81 to the database 64 that includes the request information related to the table entry 104 selected by the user.
- the query 81 may include the sub-event code, the sub-event performer, and the event identifier.
- the database 64 matches the player name (David Eckstein), the event identifier (New York Yankees, May 20, 2004), and the sub-event code (AB) to find a database record containing information associated with the sub-event or sub-events.
- the database record found may contain a file name and a location of the media data 73 recorded of the game identified by the event identifier.
- the database record found may further contain one or more time windows.
- a plurality of time windows indicates that more than one occurrence of the selected sub-event occurred during the event 70 . For example, if the user selects the table entry 104 shown in FIG. 5 , four sub-events of the “at bat” type occurred that were performed by “Eckstein” during the game played May 20, 2004 between the New York Yankees baseball team and the Anaheim Angels baseball team.
- the database record may contain four time windows for the four “at bats” performed by David Eckstein.
- the database 64 returns the record data 83 to the web server application 62 .
- the web server application 62 sends one or more HTTP commands to the browser application 42 .
- the HTTP commands may include a resource that is a Java Server Page (JSP).
- JSP Java Server Page
- a JSP resource is interpreted using a scripting language based on JavaTM that is used to develop dynamic Web pages.
- JSP Standard Tag Library (JSTL) encapsulates as simple tags the core functionality common to many Web server applications. JSTL has support for common, structural tasks such as iteration and conditionals, tags for manipulating XML documents, internationalization tags, and Structured Query Language (SQL) tags.
- Other web page development tools including, but not limited to, Perl CGI, ColdFusion, etc. may be used in alternative embodiments.
- the JSP resource may command the browser application 42 to create a new web browser interface window that includes a media player and a sub-event table interface window.
- FIG. 6 shows a web browser frame window 110 that includes a media player 112 and a sub-event table interface window 114 created in response to selection of the table entry 104 from the web page 92 .
- the sub-event table interface window 114 contains a web page 116 . From the web page 116 , the user may select table entries for display by the media player 112 .
- the web server application 62 accesses the media data 73 recorded of the game identified by the event identifier and included in the record data 83 .
- the web server application 62 sends the media data 73 associated with the sub-events using the time windows of record data 83 to the browser application 42 .
- the browser application 42 may direct the media data to the media player 112 in the form of a media stream.
- Implementation details of the media player 112 vary as known to those skilled in the art.
- the MicrosoftTM Windows Media Player may use an “.asx” metafile that can redirect streaming media content away from a browser and to the Windows Media Player and may contain eXtensible Markup Language (XML) scripts that include a sequential playlist of media to be played in succession.
- XML eXtensible Markup Language
- the browser application 42 interprets the “.asx” file sent by the web server application 62 , the browser application 42 accesses the streaming media file or files specified in the “.asx” file. For example, as shown in FIG. 7 , the media player 112 displays the video captured and recorded for each “at bat” by David Eckstein.
- FIG. 8 shows a third sub-event table 120 and a fourth sub-event table 122 that are displayed in web page 116 by scrolling down the web page 116 using a scroll bar 118 .
- Alternative embodiments may include a media player in the user interface window 90 .
- Another alternative embodiment may not include the sub-event table interface window 114 with the media player 112 in the web browser frame window 110 .
- a user executes the browser application 42 and selects a website provided by a web server.
- the website may have information associated with an event of interest to the user.
- the browser application 42 responds by connecting to the web server having the event information.
- the browser application 42 displays a web page having a sub-event table, for example, as described with reference to FIG. 5 .
- the user selects a sub-event from the plurality of sub-events in the sub-event table.
- the browser application 42 at operation 134 , receives the user selection of the sub-event from the sub-event table.
- the browser application 42 sends a request for presentation of the selected sub-event to the web server at operation 136 .
- the request comprises sub-event information associated with the selected sub-event.
- the sub-event information may include, but is not limited to, the sub-event code, the sub-event performer, and the event identifier.
- the browser application 42 receives media data that represents the selected sub-event from the web server.
- the selected sub-event may include multiple sub-events having the same sub-event characteristics, for example, the same sub-event code and the same sub-event performer.
- the media data may include multiple media clips sent successively from the web server or may include a sequential playlist of media to be played in succession.
- Sending the media data may include, but is not limited to, streaming the media data to the browser and/or sending the media data using messages.
- the browser application 42 presents the received media data to the user.
- the media data may be presented in the media player 112 .
- the media data may include audio, video, and/or any other media data related to presentation of the selected sub-event.
- the user may select another sub-event for presentation from the same or a different sub-event table displayed in the same or a different web page maintained by the web server.
- the user may choose to disconnect from the web server. If the user does not disconnect from the web server at operation 146 , the browser application 42 waits for the user to select another sub-event at operation 142 until the user chooses to disconnect at operation 144 .
- the web server In response to the user executing the browser application 42 and selecting a website provided by a web server, the web server sends a web page with a sub-event table to the user at operation 150 referenced in FIG. 10 .
- the web server application 62 executing at the web server, at operation 152 , receives a request for presentation of a selected sub-event from the browser application 42 .
- the request comprises sub-event information associated with the selected sub-event.
- the sub-event information may include, but is not limited to, the sub-event code, the sub-event performer, and the event identifier.
- the web server application 62 queries a database for media data recorded of the selected sub-event at operation 154 .
- the query may include, but is not limited to, the sub-event code, the sub-event performer, and the event identifier.
- the web server application 62 identifies a media file or media files recorded of the event at operation 156 . Also through the query, the web server application 62 , at operation 158 , identifies a number of time windows in which media associated with the selected sub-event is contained in the media file or files. The decision at operation 160 determines if another time window of the selected sub-event exists. If no additional time windows exist, the web server application 62 waits at operation 162 for another selection by the user. If another time window of the selected sub-event exists, the web server application 62 identifies a media play time window at operation 164 . The web server application 62 sends the media data corresponding to the media play time window to the browser application 42 at operation 166 . Processing continues at operation 160 until all of the time windows associated with the selected sub-event have been sent.
- the media data may be maintained in a single media file for the event with the media data selected from the media file relative to a selected sub-event using time window data associated with the sub-event in the database.
- time window data associated with the sub-event in the database.
- alternative embodiments exist. For example, at the conclusion of the event, individual media clips may be extracted from the media data of the entire event using the time window data.
- the database may comprise a list of media clips that correspond to the selected sub-event instead of a list of time windows.
- the media data may be recorded in a set of media files based, for example, on a particular camera view of the event.
- the functionality described above for playing media data relative to sub-events of an event may be distributable using a CD or DVD instead of accessing the information using the browser application 42 .
- system and methods of the present invention may be advantageously operated on different platforms using different operating systems including but not limited to the Macintosh® operating system, LINUX based operating systems, or UNIX® based operating systems. Additionally, the functionality described may be distributed among modules that differ in number and distribution of functionality from those described herein without deviating from the spirit of the invention. Additionally, the order of execution of the modules may be changed without deviating from the spirit of the invention. Thus, the description of the preferred embodiments is for purposes of illustration and not limitation.
Abstract
A system is provided for selectively presenting a portion of an event to a user. The system includes a first device, a second device, and a network allowing communication between the first and the second device. An application at the first device displays a plurality of sub-events that characterize an event; receives an input from a user whereby the user selects a sub-event from the plurality of sub-events; sends a request to a second device, the request comprising information associated with the selected sub-event; receives media data from the second device whereby the media data represents the selected sub-event; and presents the received media data. An application at the second device receives the request from the first device, selects the media data that represents the selected sub-event from a database using the information associated with the selected sub-event, and sends the selected media data to the first device.
Description
- This application is a Continuation of U.S. patent application Ser. No. 10/911,993 (U.S. Pat. No. 8,601,089), filed on Aug. 5, 2004, the contents of which are hereby incorporated by reference in their entirety into the present disclosure.
- The present invention is related generally to the presentation of sub-events that characterize an event. More specifically, the present invention relates to the media play of user selectable sub-events that characterize an event.
- The Internet is a wide area network that connects hundreds of thousands of computers and smaller sub-networks world-wide. Businesses, government bodies and entities, educational organizations, and individuals publish information or data organized in the form of websites. A website may comprise multiple web pages that display a specific set of information and may contain links to other web pages with related or additional information. Some web pages include multiple web pages that are displayed together in a single user interface window. Each web page is identified by a Uniform Resource Locator (URL) that includes the location or Web address of the computer that contains the resource to be accessed in addition to the location of the resource on that computer.
- An Internet or Web address, generally is composed of four parts: a protocol name, the location of a web server that provides the website information, a name identifying the organization or individual that maintains the web server, and a suffix that identifies the type of organization. For example, “.com” identifies a commercial organization, “.edu” identifies an educational institution, and “.gov” identifies a government organization. The protocol name specifies the protocol that defines the set of rules and standards to be applied when exchanging information between the web server that communicates the website information and a client computer that receives and displays the website information. The URL includes the Internet address and the resource location on the web server. The resource defines the web page presentation.
- Streaming refers to the ability to play media streams such as audio and video streams in a continuous way while those streams are being transmitted to the client computer over a network such as the Internet. Applications, that can be built on top of streaming services, can be classified into live information delivery and on-demand applications. Live information delivery applications include the live delivery of radio and television programs. On-demand information delivery applications include music, news-on-demand, and sports-on-demand applications. Conversely, the Multimedia Messaging Service (MMS), e-mail, and the Short Messaging Service (SMS), for example, transmit messages to and from devices in a store-and-forward manner and allow the transmission of a combination of text, sounds, images, and video.
- The Packet-switched Streaming Service (PSS) provides a framework for Internet Protocol (IP) based streaming applications over networks. IP is a communications protocol that supports the creation of large, geographically-diverse networks of computers using a variety of physical communication linkage technologies. An IP address is the numerical address that defines a location of a computer on the Internet. Using the Domain Name System (DNS), the numerical IP address maps to the location of the web server contained in the URL. Computers on the Internet use IP addresses to route traffic and to establish connections among themselves.
- The Real Time Streaming Protocol (RTSP) is an industry standard streaming multimedia application layer protocol. RTSP provides an extensible framework to enable controlled, on-demand delivery of real-time data, such as audio and video data. Sources of data can include both live data feeds and stored clips (on-demand). The protocol is intended to control multiple data delivery sessions, to provide a means for choosing delivery channels such as User Datagram Protocol (UDP), multicast UDP, and Transmission Control Protocol (TCP), and to provide a means for choosing delivery mechanisms based upon the Real-Time Transport Protocol (RTP).
- UDP is a transport layer protocol used in the Internet that does not establish a connection or provide reliable data transfer. Multicast UDP supports one to many message transmission using UDP. In multicast UDP, a computer must join the multicast group to send and/or to receive data for the multicast group. In contrast, TCP is a transport layer protocol used in the Internet that establishes a connection between the computers and provides reliable data transfer.
- In PSS, RTSP is used in the streaming of continuous media to provide session set-up and to control the individual media streams. RTSP is a text-based protocol. RTSP is intentionally similar in syntax and operation to HTTP/1.1 so that extension mechanisms to HTTP can in most cases also be added to RTSP. An RTSP session typically consists of a client computer defining a transport mechanism for the continuous media stream and then starting the stream. The stream may be paused temporarily. RTSP controls the stream, that may be sent via a separate protocol, independent of the control channel. For example, RTSP control may occur on a TCP connection while the streaming data flows using UDP.
- RTP enables the controlled delivery of real-time data, such as audio, video, or simulation data. Sources of the data can include both live and on-demand content. RTP provides end-to-end network transport functions for applications transmitting real-time data over multicast or unicast network services. RTP supports content identification, sequence numbering, timing reconstruction, and delivery monitoring to the real-time applications. RTSP is designed to work with established protocols such as RTP and HTTP.
- Both on-demand and live streaming media data can be accessed by a client computer using the Internet and streaming protocols. On-demand streaming media data may be associated with a variety of different events including, but not limited to, sporting events, concerts, news events, etc. After the event completion, the event may be divided into a set of specific sub-events that together describe and summarize the key characteristics of the event. The types of characterizing sub-events may depend on the type of event. For example, a baseball box score has been used by baseball fans since the early 1800's to summarize a baseball game using a set of data associated with each player and each pitcher. However, while an individual may not have the time necessary to view and/or to listen to a recording of the entire event, reviewing a set of numbers that summarize a sporting event or brief text that describes a news event does not allow the individual to sufficiently experience the event. What is needed, therefore, is a system that permits an individual to experience the characterizing sub-events associated with the event instead of looking at, for example, numbers or summary text or being required to view a recording of the entire event. What is further needed is a system that automatically links the characterizing sub-events with a recording of the entire event to reduce the time and the cost associated with implementing the system.
- An embodiment of the invention relates to a method of selectively presenting a portion of an event to a user. The method includes, but is not limited to, displaying a plurality of sub-events that characterize an event at a first device whereby a user selects a sub-event from the plurality of sub-events, sending a request from the first device to a second device, the request comprising information associated with the selected sub-event, selecting media data at the second device that represents the selected sub-event from a database accessible by the second device using the information, sending the selected media data from the second device to the first device, and presenting the selected media data at the first device.
- The information may include, but is not limited to, an event identifier, a sub-event code, and a sub-event performer. Selecting the media data may comprise identifying a media file using the event identifier and identifying a media play time window within the identified media file using the sub-event code. In an alternative embodiment, selecting the media data may comprise identifying a media file using the event identifier and identifying a media play time window within the identified media file using the sub-event code and the sub-event performer.
- The plurality of sub-events may include, but is not limited to, statistics from a sporting event, a baseball box score, and a golf scorecard. The sporting event may include, but is not limited to, a golf tournament, a baseball game, a football game, a basketball game, a soccer match, a softball game, and a hockey game. The sub-event may be selected from the group consisting of an at bat, a run, a hit, a run batted in, a base on balls, a strikeout, a left on base, an earned run, a single, a double, a triple, an error, and a home run. Sending the selected media data may comprise, but is not limited to, streaming the media data and/or using a service that includes, but is not limited to, a multimedia messaging service, a short messaging service, and an e-mail service without limitation.
- Another embodiment of the invention relates to a computer program product for selectively presenting a portion of an event to a user. The computer program product includes, but is not limited to, computer code configured to display a plurality of sub-events that characterize an event, to receive an input from a user whereby the user selects a sub-event from the plurality of sub-events, to send a request to a device, the request comprising information associated with the selected sub-event, to receive media data from the device whereby the media data represents the selected sub-event, and to present the received media data.
- Another embodiment of the invention relates to a computer program product for sending a portion of an event to a user. The computer program product includes, but is not limited to, computer code configured to receive a request from a device, wherein the request comprises information associated with a sub-event selected by a user from a plurality of sub-events that characterize an event, to select media data that represents the selected sub-event from a database using the information, and to send the selected media data to the device.
- Still another embodiment of the invention relates to a device for selectively presenting a portion of an event to a user. The device includes, but is not limited to, an application, a communication interface, a memory, and a processor. The application includes, but is not limited to, computer code configured to display a plurality of sub-events that characterize an event, to receive an input from a user whereby the user selects a sub-event from the plurality of sub-events, to send a request to a second device, the request comprising information associated with the selected sub-event, to receive media data from the second device whereby the media data represents the selected sub-event, and to present the received media data. The communication interface is configured to provide an interface between the application and the second device. The memory is configured to store the application. The processor couples to the memory and is configured to execute the application.
- Still another embodiment of the invention relates to a device for sending a portion of an event to a user. The device includes, but is not limited to, an application, a communication interface, a memory, and a processor. The application comprises computer code configured to receive a request from a second device, wherein the request comprises information associated with a sub-event selected by a user from a plurality of sub-events that characterize an event, to select media data that represents the selected sub-event from a database using the information, and to send the selected media data to the second device. The communication interface is configured to provide an interface between the application and the second device. The memory is configured to store the application. The processor couples to the memory and is configured to execute the application.
- Still another embodiment of the invention relates to a system for selectively presenting a portion of an event to a user. The system includes, but is not limited to, a first device, a second device, and a network. The first device includes, but is not limited to, a first application, a first communication interface, a first memory, and a first processor. The first application comprises computer code configured to display a plurality of sub-events that characterize an event, to receive an input from a user whereby the user selects a sub-event from the plurality of sub-events, to send a request to the second device, the request comprising information associated with the selected sub-event, to receive media data from the second device whereby the media data represents the selected sub-event, and to present the received media data. The first communication interface is configured to provide an interface between the first application and the second device. The first memory is configured to store the first application. The first processor couples to the first memory and is configured to execute the first application.
- The second device includes, but is not limited to, a second application, a second communication interface, a second memory, and a second processor. The second application comprises computer code configured to receive the request from the first device, to select media data that represents the selected sub-event from a database using the information, and to send the selected media data to the first device. The second communication interface is configured to provide an interface between the second application and the first device. The second memory is configured to store the second application. The second processor couples to the second memory and is configured to execute the second application. The network is configured to allow communication between the first communication interface and the second communication interface.
- Other principal features and advantages of the invention will become apparent to those skilled in the art upon review of the following drawings, the detailed description, and the appended claims.
- The preferred embodiments will hereafter be described with reference to the accompanying drawings, wherein like numerals will denote like elements.
-
FIG. 1 is a diagram of a system in accordance with an example embodiment. -
FIG. 2 is a block diagram of a client device for use in the system ofFIG. 1 in accordance with an example embodiment. -
FIG. 3 is a block diagram of a server device for use in the system ofFIG. 1 in accordance with an example embodiment. -
FIG. 4 is a block diagram of a process for using the system ofFIG. 1 in accordance with an example embodiment of the present invention. -
FIG. 5 depicts an example user interface for display on the device ofFIG. 2 , wherein the example user interface includes a sub-event table. -
FIG. 6 depicts a second example user interface for display on the device ofFIG. 2 , wherein the second example user interface includes a first set of sub-events and a media player. -
FIG. 7 depicts the second example user interface ofFIG. 6 showing media data on the media player. -
FIG. 8 depicts the second example user interface ofFIG. 6 showing a second set of sub-events. -
FIG. 9 is a flow diagram of a sub-event presentation using a browser application. -
FIG. 10 is a flow diagram of sending media data associated with a selected sub-event using a web server application. - With reference to
FIG. 1 , thesystem 10 is comprised of multiple devices that can communicate through a network. Thesystem 10 may comprise any combination of wired or wireless networks including, but not limited to, acellular telephone network 12, a wireless Local Area Network (LAN), a Bluetooth personal area network, an Ethernet LAN, a token ring LAN, a wide area network, theInternet 14, etc. Thesystem 10 may include both wired and wireless devices. For exemplification, thesystem 10 shown inFIG. 1 includes thecellular telephone network 12 and theInternet 14. Connectivity to theInternet 14 may include, but is not limited to, long range wireless connections, short range wireless connections, and various wired connections including, but not limited to, telephone lines, cable lines, power lines, digital cable, Video on Demand (VOD), etc. - The
cellular telephone network 12 includes, but is not limited to, one or more devices, abase station 16, and anetwork server 18. In thecellular telephone network 12, the devices may send and receive signals through thebase station 16. Thenetwork server 18 allows communication between the devices and another network. For example, thenetwork server 18 may connect the devices with other devices through theInternet 14. The devices may include, but are not limited to, adesktop computer 20, anotebook computer 22, a Messaging Device (MD) 24, a Personal Digital Assistant (PDA) 26, and/or acellular telephone 28. Thesystem 10 may include additional devices and devices of different types as well as any combination of these devices. - For exemplification,
FIG. 2 shows a block diagram of an example device that may be included insystem 10. Theclient device 30 includes adisplay 32, acommunication interface 34, aninput interface 36, amemory 38, aprocessor 40, and abrowser application 42. The term “device” should be understood to include, without limitation, cellular telephones, PDAs, MDs, computers of all form factors, etc. Theclient device 30 may or may not be mobile. Different and additional components may be incorporated into theclient device 30. Theclient device 30 allows a user to connect to a network, such as theInternet 14, and to view and/or to hear media data using a variety of formats. The components ofclient device 30 may each be internal or external to theclient device 30. The components may connect to each other using a number of different methods as known to those skilled in the art. Connections between the components ofclient device 30 may be other than or in addition to those shown inFIG. 2 . - The
display 32 presents information to the user of theclient device 30 including, but not limited to, information from thebrowser application 42. The display may be, but is not limited to, a thin film transistor (TFT) display, a light emitting diode (LED) display, a Liquid Crystal Display (LCD), a Cathode Ray Tube (CRT) display, etc. - The
communication interface 34 provides an interface for receiving and transmitting calls, messages, and/or any other information communicated across a network including, but not limited to, streaming media and multimedia messages. Communications between theclient device 30 and the network may be through one or more of the following connection methods, without limitation: an infrared communications link, a wireless communications link, a cellular network link, a physical serial connection, a physical parallel connection, a link established according to the Transmission Control Protocol/Internet Protocol (TCP/IP), etc. Communications between theclient device 30 and the network may use one or more of the following communication protocols, without limitation: HTTP, TCP/IP, RTSP, RTP, UDP, multicast UDP, etc. Transferring content to and from theclient device 30 may use one or more of these connection methods and communication protocols or any others known to those skilled in the art or to be developed in the future. - The
input interface 36 provides an interface for receiving information from the user for entry into theclient device 30. Theinput interface 36 may use various input technologies including, but not limited to, a keyboard, a pen and touch screen, a mouse, a track ball, a touch screen, a keypad, one or more buttons, etc. to allow the user to enter information into theclient device 30 or to make selections from theclient device 30. Theinput interface 36 may provide both an input and an output interface. For example, a touch screen display allows the user to make selections and presents information to the user. - The
memory 38 provides an electronic holding place for an operating system of theclient device 30, thebrowser application 42, and/or other applications. Theclient device 30 may have a plurality ofmemory devices 38 that use the same or different memory technologies. Example memory technologies include, but are not limited to, Random Access Memory (RAM), Read Only Memory (ROM), flash memory, etc. Data in RAM is volatile meaning that it remains only as long as theclient device 30 is turned on. When theclient device 30 is turned off, RAM loses its data. The values stored in ROM are always there, whether theclient device 30 is on or not. For this reason, it is called non-volatile memory. Flash memory is a type of constantly-powered non-volatile memory that can be erased and reprogrammed in units of memory called blocks. A variety of different storage media may be used for each memory technology. For example, a Compact Disk (CD), a Digital Video Disk (DVD), and a hard disk are all ROM storage media types. - The
processor 40 executes instructions that cause theclient device 30 to perform various functions. The instructions may be written using one or more programming languages, scripting languages, assembly languages, etc. Additionally, the instructions may be carried out by a special purpose computer, logic circuits, or hardware circuits. Thus, theprocessor 40 may be implemented in hardware, firmware, software, or any combination of these methods. The term “execution” refers to the process of running an application or program or the carrying out of the operation called for by an instruction. Theprocessor 40 executes an application meaning that it performs the operations called for by that application in the form of a series of instructions. Theprocessor 40 may retrieve an application from a non-volatile memory that is generally some form of ROM or flash memory and may copy the instructions in an executable form to a temporary memory that is generally some form of RAM. Theprocessor 40 may execute instructions embodied in thebrowser application 42. Theclient device 30 may include one ormore processors 40. - The
browser application 42 may communicate with one or more web servers. Thebrowser application 42 may respond to HTTP commands, may interpret HTML and other Internet programming languages including, but not limited to, Java™ and Perl, and may present a web page for viewing by the user. Thebrowser application 42 may display or otherwise process media data or media streams. The streams may be for on-demand use or for live information delivery. Thebrowser application 42 may additionally support MMS message formats. Processing a stream refers to the ability of an application to play media streams such as audio and video streams or simulation data streams in a continuous way while those streams are being transmitted to the device over the network. A streaming session generally may be paused and resumed. An on demand streaming media session also may be indexed forward and backward. - For exemplification,
FIG. 3 shows a block diagram of aserver device 50 that includes adisplay 52, acommunication interface 54, aninput interface 56, amemory 58, aprocessor 60, aweb server application 62, and adatabase 64. Different and additional components may be incorporated into theserver device 50. Theserver device 50 communicates website information to theclient device 30. The components ofserver device 50 may each be internal or external to theserver device 50. The components may connect using a number of different methods as known to those skilled in the art. Connections may be other than or in addition to those shown inFIG. 3 . - The
display 52 presents information to the user of theserver device 50 including, but not limited to, information from theweb server application 62. The display may be, but is not limited to, a TFT display, an LED display, an LCD display, a CRT display, etc. Thedisplay 52 is optional. - The
communication interface 54 provides an interface for receiving and transmitting calls, messages, and/or any other information communicated across a network including streaming media and multimedia messages. Communications between theserver device 50 and the network may be through one or more of the following connection methods, without limitation: an infrared communications link, a wireless communications link, a cellular network link, a physical serial connection, a physical parallel connection, a link established according to the TCP/IP Standards, etc. Communications between theserver device 50 and the network may use one or more of the following communication protocols, without limitation: HTTP, TCP/IP, RTSP, RTP, UDP, multicast UDP, etc. Transferring content to and from theserver device 50 may use one or more of these connection methods and communication protocols or any others known to those skilled in the art or to be developed in the future. - The
input interface 56 may provide an interface for receiving information from the user for entry into theserver device 50. Theinput interface 56 may use various input technologies including, but not limited to, a keyboard, a pen and touch screen, a mouse, a track ball, a touch screen, a keypad, one or more buttons, etc. to allow the user to enter information into theserver device 50 or to make selections from theserver device 50. Theinput interface 56 may provide both an input and an output interface. For example, a touch screen display allows the user to make selections and presents information to the user. Theinput interface 56 is optional. - The
memory 58 provides an electronic holding place for an operating system of theserver device 50, theweb server application 42, thedatabase 64, and/or other applications so that the information can be reached quickly by theprocessor 60. Theserver device 50 may have a plurality ofmemory devices 58 that may use different memory technologies including, but not limited to, RAM, ROM, flash memory, etc. - The
processor 60 executes instructions that cause theserver device 50 to perform various functions. The instructions may be written using one or more programming languages, scripting languages, assembly languages, etc. Additionally, the instructions may be carried out by a special purpose computer, logic circuits, or hardware circuits. Thus, theprocessor 60 may be implemented in hardware, firmware, software, or any combination of these methods. Theprocessor 60 executes an application meaning that it performs the operations called for by that application in the form of a series of instructions. Theprocessor 60 may retrieve an application from a non-volatile memory that is generally some form of ROM or flash memory and may copy the instructions in an executable form to a temporary memory that is generally some form of RAM. Theprocessor 60 may execute instructions embodied in theweb server application 62. Theserver device 50 may include one ormore processors 60. - The
web server application 62 may communicate with thebrowser application 42 at theclient device 30. Theweb server application 62 may respond to HTTP commands and may transmit one or more web pages to theclient device 30 based on the user selection at theclient device 30. Theweb server application 62 may transmit or otherwise process media data or media streams. The streams may be for on-demand use or for live information delivery. Theweb server application 62 may additionally transmit messages using for example, MMS, SMS, e-mail, etc. - The
database 64 may store web pages and information associated with the web pages including media data. Theweb server application 62 interfaces with thedatabase 64. The database may utilize various database technologies as known to those skilled in the art including a simple file system and/or a system of tables. Thedatabase 64 also may use a variety of different formats as known to those skilled in the art. Theserver device 50 may include a plurality ofdatabases 64. Thedatabase 64 also may be used to synchronize event and sub-event timing information at certain intervals or in real time using industry standard database technology. - The block diagram of
FIG. 4 shows a functional diagram ofprocess 68. Anevent 70 occurs that, for example, may be a sporting event, a concert, a news event, etc. Amedia recorder 72 captures and records media data 73 of theevent 70. Themedia recorder 72 may be one or more cameras, microphones, and/or other media recording devices. The media data 73 may be recorded in a variety of file formats as known to those skilled in the art both now and in the future. During or at the completion of theevent 70, the media data 73 recorded by themedia recorder 72 is stored in thedatabase 64. Thedatabase 64 may be located at the event location or may be remote from the event location. Storing the media data 73 to thedatabase 64 may utilize a network connection, and the media data 73 may be recorded to thedatabase 64 during theevent 70. - A
sub-event recorder 74 records the specific sub-events that characterize theevent 70. The sub-events may be captured by an observer listening to or viewing theevent 70 either at the event location or remote from the event location. The observer may capture the sub-events either during or at the completion of theevent 70. - Each sub-event may be identified using a code predefined based on the type of sub-event. Each sub-event may be recorded using the code that corresponds to the type of sub-event thereby creating coded sub-event data 75 that is associated with the
event 70. The types of sub-events defined may depend on the type ofevent 70. Additionally, the individual performing the sub-event may be recorded with the sub-event code. For example, if the event is a baseball game, the sub-event types may include, but are not limited to, an at bat, a hit, a base on balls, a strikeout, a single, a double, a triple, a homerun, a run batted in, a run, a left on base, an error, an earned run, etc. The sub-event codes that correspond to the sub-event types, for example, may be numerical or textual in format. The name of the baseball player performing the sub-event may be recorded with the sub-event code as the sub-event performer. - As another example, if the event is a football game, the sub-event types may include, but are not limited to, a tackle, a fumble, a touchdown, an interception, a field goal, a point after kick, a kick-off, a punt, a reception, a sack, etc. The name of the football player performing the sub-event may be recorded with the sub-event type code as the sub-event performer.
- As yet another example, if the event is a golf match, the sub-event types may include, but are not limited to, an eagle, a birdie, a par, a bogie, a double bogie, a hole in one, etc. The name of the golfer performing the sub-event may be recorded with the sub-event type code as the sub-event performer. Additionally, a hole number may be recorded with the golfer name and/or the sub-event type code. As yet another example, if the event is a news event, the sub-event types may be descriptors or sequential numbers defined by the
sub-event recorder 74 that may include an individual or a group associated with performance of the sub-event. - As another example, if the event is a basketball game, the sub-event types may include, but are not limited to, a 3-point shot, a foul shot, a 2-point shot, a foul, a rebound, an assist, a blocked-shot, etc. The name of the basketball player performing the sub-event may be recorded with the sub-event type code as the sub-event performer.
- During or at the completion of the
event 70, the coded sub-event data 75 may be stored in thedatabase 64 or in memory prior to or instead of in thedatabase 64. Storing the coded sub-event data 75 to thedatabase 64 may utilize a network connection. The coded sub-event data 75 may be stored in a variety of formats as known to those skilled in the art. For example, the coded sub-event data 75 may be recorded as a set of tables. Thesub-event recorder 74 may be embodied in any device. - A
sub-event timing recorder 76 may record the timing of the sub-events of theevent 70. The timing of the sub-events may be captured by an observer listening to or viewing theevent 70. Each sub-event may be recorded using the same code used by thesub-event recorder 74 thereby creating codedsub-event timing data 77 that is associated with theevent 70. The same or a different observer may capture the codedsub-event timing data 77 and the coded sub-event data 75. The timing data for each sub-event may be measured relative to a number of different time references and in a variety of formats. For example, the timing data may be measured relative to the beginning of theevent 70, relative to Greenwich Mean Time, relative to a local time, etc. The timing data may include the date of the event or the date may be maintained separately. - The
event 70 may be sub divided into distinct sections that include one or more sub-events. For example, a distinct section of a baseball game may be, but is not limited to, an at bat, a half inning, and/or an inning. As another example, a distinct section of a football game may be, but is not limited to, a single down, a team's possession of the football, and/or a quarter. Under some circumstances, the occurrence of a sub-event during anevent 70 may be missed or otherwise not recorded. By counting sub-events relative to a distinct section, whenever thesub-event timing recorder 76 orsub-event recorder 74 misses a sub-event, recording of the sub-events re-starts at the beginning of the next distinct section so that thesub-event timing recorder 76 andsub-event recorder 74 remain synchronized. Thus, only sub-events included in a distinct section that are common to both thesub-event timing recorder 76 and thesub-event recorder 74 are included with theevent 70 to avoid matching a sub-event with the wrong time. - The timing of the sub-event may be designated using different methods, but generally defines a time window. For example, the sub-event time window during which the sub-event occurs may be captured using a start time and a stop time for the sub-event. Alternatively, the sub-event time window during which the sub-event occurs may be captured using a start time and a sub-event time duration. The start time may indicate the time relative to the beginning of the media data 73 that the selected sub-event occurs. The sub-event duration may indicate the duration of the media data associated with the selected sub-event. The time window defines the time during which the media data contains the sub-event or sub-events.
- The device used to record the coded
sub-event timing data 77 may be the same or different from the device used to record the coded sub-event data 75. During or at the completion of theevent 70, the codedsub-event timing data 77 may be stored in thedatabase 64. Storing the codedsub-event timing data 77 to thedatabase 64 may utilize a network connection. The codedsub-event timing data 77 may be stored in a variety of formats as known to those skilled in the art. Thesub-event timing recorder 76 may be embodied in any device. Thesub-event timing recorder 76 and thesub-event recorder 74 may be combined in the same device. - At the conclusion of the
event 70, or during theevent 70 when the sub-event data and the sub-event timing data are both available, the coded sub-event data 75 may be merged with the codedsub-event timing data 77 to create a single table or record of data associated with theevent 70. Alternatively, the codedsub-event timing data 77 and the coded sub-event data 75 may have been recorded initially in the single table of data. The table of data may include a cross reference to the name of the file that holds the media data 73. So that a viewer of the recorded media subsequent to theevent 70 understands the context of a selected sub-event, the codedsub-event timing data 77 may be adjusted to include additional time before and/or after the occurrence of the sub-event. For example, if the sub-event starts at 1:10:00 and ends at 1:20:00, a thirty second roll-in and roll-out time period may be added to the codedsub-event timing data 77 so that the recorded media “plays” from 1:09:30 to 1:20:30. The roll-in and roll-out time periods may be shorter or longer than thirty seconds and may depend upon theevent 70. - The
web server application 62 executes at theserver device 50 and provides web pages to thebrowser application 42 executing at theclient device 30 using a network that may include theInternet 14. For example,FIG. 5 shows an example web page that may be provided by theweb server application 62 and displayed to a user at theclient device 30 on thedisplay 32 using thebrowser application 42.User interface window 90 created by thebrowser application 42 displays aweb page 92 and includes, but is not limited to, avertical scroll bar 94 and ahorizontal scroll bar 95. Theweb page 92 includes, but is not limited to, agame identifier 91, agame date 93, a first sub-event table 96, and a second sub-event table 98. The plurality of sub-events included in the sub-event table may be included in different forms. For example, a list of sub-events may be displayed or a series of golf scorecards may be displayed. The sub-event tables 96, 98 characterize the event identified by thegame identifier 91 which, in the example shown inFIG. 7 , is a baseball game between the New York Yankees and the Anaheim Angels. Thegame date 93 defines the date that the event occurred. In the example shown, theevent date 93 is May 20, 2004. - The
web page 92 may include additional sub-event tables. The additional sub-event tables may be similar to sub-event tables 96, 98 or different from sub-event tables 96, 98. The organization of the sub-event table may vary depending on the type of event. The sub-event tables 96, 98, for example, include a list ofplayers 100 for each team that are the performers of each sub-event. Baseball fans may recognize the sub-event tables 96, 98 as resembling baseball box scores. For each player in the list ofplayers 100, the sub-event table includessub-event codes 102 that characterize the performance of each player during the baseball game. Thesub-event codes 102 shown in the sub-event tables 96, 98 include, but are not limited to, AB (at bat), R (run), H (hit), RBI (run batted in), BB (base on balls), SO (strikeout), and LOB (left on base). The sub-event codes may be other than AB, R, H, RBI, BB, SO, and LOB. For example, the sub-event codes may be numerical code or may be different textual codes. - The user at the
client device 30 may select atable entry 104 from the sub-event tables 96, 98 defined by the list ofplayers 100 and thesub-event codes 102 using theinput interface 36 of theclient device 30. Thetable entry 104 may comprise a hyperlink. A hyperlink is an HTML command that is embedded in a web page. When selected, the hyperlink may cause the display to shift to another location on the same web page, to shift to a new web page, to shift to an image, a sound, a video, a database, etc. that may or may not be provided by the sameweb server application 62. Where atable entry 104 includes a hyperlink, the hyperlink may be delineated from the surrounding text, for example, using a different color of text, using a line under the text, and/or changing a symbol displayed when a pointer moves across the hyperlink. - When the user selects the
table entry 104, thebrowser application 42 executed byprocessor 40 sends arequest 79 to theweb server application 62 throughcommunication interface 34 identifying thetable entry 104 selected by the user. Therequest 79 includes information related to thetable entry 104 selected. For example, therequest 79 may include the sub-event code, the sub-event performer, and an event identifier. The event identifier, for example, may include, but is not limited to, the year, the month, the day, and the name of the home team. Thus, by selectingtable entry 104, the user requests media data relative to the four “at bats” of baseball player David Eckstein that occurred during the game between the New York Yankees and the Anaheim Angels on May 20, 2004. - The
web server application 62 receives therequest 79 from thebrowser application 42 throughcommunication interface 54. Theweb server application 62 sends aquery 81 to thedatabase 64 that includes the request information related to thetable entry 104 selected by the user. As known to those skilled in the art, a number of methods may be used to store and to access data in a database. Thequery 81 may include the sub-event code, the sub-event performer, and the event identifier. In the example of selectingtable entry 104, thedatabase 64 matches the player name (David Eckstein), the event identifier (New York Yankees, May 20, 2004), and the sub-event code (AB) to find a database record containing information associated with the sub-event or sub-events. - The database record found may contain a file name and a location of the media data 73 recorded of the game identified by the event identifier. The database record found may further contain one or more time windows. A plurality of time windows indicates that more than one occurrence of the selected sub-event occurred during the
event 70. For example, if the user selects thetable entry 104 shown inFIG. 5 , four sub-events of the “at bat” type occurred that were performed by “Eckstein” during the game played May 20, 2004 between the New York Yankees baseball team and the Anaheim Angels baseball team. Thus, the database record may contain four time windows for the four “at bats” performed by David Eckstein. - The
database 64 returns therecord data 83 to theweb server application 62. Theweb server application 62 sends one or more HTTP commands to thebrowser application 42. The HTTP commands may include a resource that is a Java Server Page (JSP). A JSP resource is interpreted using a scripting language based on Java™ that is used to develop dynamic Web pages. The JSP Standard Tag Library (JSTL) encapsulates as simple tags the core functionality common to many Web server applications. JSTL has support for common, structural tasks such as iteration and conditionals, tags for manipulating XML documents, internationalization tags, and Structured Query Language (SQL) tags. Other web page development tools including, but not limited to, Perl CGI, ColdFusion, etc. may be used in alternative embodiments. - The JSP resource may command the
browser application 42 to create a new web browser interface window that includes a media player and a sub-event table interface window. For example, continuing from the example shown inFIG. 5 ,FIG. 6 shows a webbrowser frame window 110 that includes amedia player 112 and a sub-eventtable interface window 114 created in response to selection of thetable entry 104 from theweb page 92. The sub-eventtable interface window 114 contains aweb page 116. From theweb page 116, the user may select table entries for display by themedia player 112. - The
web server application 62 accesses the media data 73 recorded of the game identified by the event identifier and included in therecord data 83. Theweb server application 62 sends the media data 73 associated with the sub-events using the time windows ofrecord data 83 to thebrowser application 42. Thebrowser application 42 may direct the media data to themedia player 112 in the form of a media stream. Implementation details of themedia player 112 vary as known to those skilled in the art. For example, the Microsoft™ Windows Media Player may use an “.asx” metafile that can redirect streaming media content away from a browser and to the Windows Media Player and may contain eXtensible Markup Language (XML) scripts that include a sequential playlist of media to be played in succession. When thebrowser application 42 interprets the “.asx” file sent by theweb server application 62, thebrowser application 42 accesses the streaming media file or files specified in the “.asx” file. For example, as shown inFIG. 7 , themedia player 112 displays the video captured and recorded for each “at bat” by David Eckstein. -
FIG. 8 shows a third sub-event table 120 and a fourth sub-event table 122 that are displayed inweb page 116 by scrolling down theweb page 116 using ascroll bar 118. Alternative embodiments may include a media player in theuser interface window 90. Another alternative embodiment may not include the sub-eventtable interface window 114 with themedia player 112 in the webbrowser frame window 110. - A user executes the
browser application 42 and selects a website provided by a web server. The website may have information associated with an event of interest to the user. With reference toFIG. 9 , thebrowser application 42, at operation 130, responds by connecting to the web server having the event information. Atoperation 132, thebrowser application 42 displays a web page having a sub-event table, for example, as described with reference toFIG. 5 . The user selects a sub-event from the plurality of sub-events in the sub-event table. Thebrowser application 42, at operation 134, receives the user selection of the sub-event from the sub-event table. Thebrowser application 42 sends a request for presentation of the selected sub-event to the web server atoperation 136. The request comprises sub-event information associated with the selected sub-event. For example, the sub-event information may include, but is not limited to, the sub-event code, the sub-event performer, and the event identifier. - At
operation 138, thebrowser application 42 receives media data that represents the selected sub-event from the web server. The selected sub-event may include multiple sub-events having the same sub-event characteristics, for example, the same sub-event code and the same sub-event performer. The media data, for example, may include multiple media clips sent successively from the web server or may include a sequential playlist of media to be played in succession. Sending the media data may include, but is not limited to, streaming the media data to the browser and/or sending the media data using messages. - At
operation 140, thebrowser application 42 presents the received media data to the user. As described with reference toFIG. 6 , the media data may be presented in themedia player 112. The media data may include audio, video, and/or any other media data related to presentation of the selected sub-event. Atoperation 142, the user may select another sub-event for presentation from the same or a different sub-event table displayed in the same or a different web page maintained by the web server. Alternatively, atoperation 144, the user may choose to disconnect from the web server. If the user does not disconnect from the web server atoperation 146, thebrowser application 42 waits for the user to select another sub-event atoperation 142 until the user chooses to disconnect atoperation 144. - In response to the user executing the
browser application 42 and selecting a website provided by a web server, the web server sends a web page with a sub-event table to the user atoperation 150 referenced inFIG. 10 . Theweb server application 62 executing at the web server, atoperation 152, receives a request for presentation of a selected sub-event from thebrowser application 42. The request comprises sub-event information associated with the selected sub-event. The sub-event information may include, but is not limited to, the sub-event code, the sub-event performer, and the event identifier. Using the sub-event information, theweb server application 62 queries a database for media data recorded of the selected sub-event atoperation 154. The query may include, but is not limited to, the sub-event code, the sub-event performer, and the event identifier. - Through the query, the
web server application 62 identifies a media file or media files recorded of the event atoperation 156. Also through the query, theweb server application 62, atoperation 158, identifies a number of time windows in which media associated with the selected sub-event is contained in the media file or files. The decision atoperation 160 determines if another time window of the selected sub-event exists. If no additional time windows exist, theweb server application 62 waits atoperation 162 for another selection by the user. If another time window of the selected sub-event exists, theweb server application 62 identifies a media play time window atoperation 164. Theweb server application 62 sends the media data corresponding to the media play time window to thebrowser application 42 atoperation 166. Processing continues atoperation 160 until all of the time windows associated with the selected sub-event have been sent. - The media data may be maintained in a single media file for the event with the media data selected from the media file relative to a selected sub-event using time window data associated with the sub-event in the database. As known to those skilled in the art, alternative embodiments exist. For example, at the conclusion of the event, individual media clips may be extracted from the media data of the entire event using the time window data. Using this alternative, the database may comprise a list of media clips that correspond to the selected sub-event instead of a list of time windows. Additionally, the media data may be recorded in a set of media files based, for example, on a particular camera view of the event.
- In an alternative embodiment, the functionality described above for playing media data relative to sub-events of an event may be distributable using a CD or DVD instead of accessing the information using the
browser application 42. - It is understood that the invention is not confined to the particular embodiments set forth herein as illustrative, but embraces all such modifications, combinations, and permutations as come within the scope of the following claims. The description above focused on a preferred embodiment of the invention designed to provide media data associated with a baseball box score. The present invention, however, is not limited to a particular application. The description above also focused on a preferred embodiment of the invention designed to operate on a computer system executing a Microsoft® Windows based operating system. The present invention, however, is not limited to a particular operating environment. Those skilled in the art will recognize that the system and methods of the present invention may be advantageously operated on different platforms using different operating systems including but not limited to the Macintosh® operating system, LINUX based operating systems, or UNIX® based operating systems. Additionally, the functionality described may be distributed among modules that differ in number and distribution of functionality from those described herein without deviating from the spirit of the invention. Additionally, the order of execution of the modules may be changed without deviating from the spirit of the invention. Thus, the description of the preferred embodiments is for purposes of illustration and not limitation.
Claims (18)
1. A method of selectively presenting a portion of an event to a user, the method comprising:
displaying a plurality of sub-events that characterize an event at a first device whereby a user selects a sub-event from the plurality of sub-events;
sending a request from the first device to a second device, the request comprising information associated with the selected sub-event;
selecting media data at the second device that represents the selected sub-event from a database accessible by the second device using the information;
sending the selected media data from the second device to the first device; and
presenting the selected media data at the first device.
2. The method of claim 1 , wherein the information comprises an event identifier.
3. The method of claim 2 , wherein the information comprises a sub-event code.
4. The method of claim 3 , wherein the information comprises a sub-event performer.
5. The method of claim 3 , wherein selecting the media data comprises:
identifying a media file using the event identifier; and
identifying a media play time window within the identified media file using the sub-event code.
6. The method of claim 4 , wherein selecting the media data comprises:
identifying a media file using the event identifier; and
identifying a media play time window within the identified media file using the sub-event code and the sub-event performer.
7. The method of claim 1 , wherein the plurality of sub-events comprise sub-events of a sporting event.
8. The method of claim 7 , wherein the sporting event is selected from the group consisting of a golf tournament, a baseball game, a football game, a basketball game, a soccer match, a softball game, and a hockey game.
9. The method of claim 1 , wherein the plurality of sub-events comprise the sub-events of a baseball box score.
10. The method of claim 1 , wherein the plurality of sub-events comprise the sub-events of a golf scorecard.
11. The method of claim 1 , wherein the sub-event is selected from the group consisting of an at bat, a run, a hit, a run batted in, a base on balls, a strikeout, a left on base, an earned run, a single, a double, a triple, an error, and a home run.
12. The method of claim 1 , wherein sending the selected media data comprises streaming the media data.
13. The method of claim 1 , wherein sending the selected media data uses a service selected from the group consisting of a multimedia messaging service, a short messaging service, and an e-mail service.
14. A computer program product for selectively presenting a portion of an even a user, the computer program product comprising:
computer code configured to:
display a plurality of sub-events that characterize an event;
receive an input from a user whereby the user selects a sub-event from the plurality of sub-events;
send a request to a device, the request comprising information associated with the selected sub-event;
receive media data from the device whereby the media data represents the selected sub-event; and
present the received media data.
15. (canceled)
16. A device for selectively presenting a portion of an event to a user, the device comprising:
an application, the application comprising computer code configured to:
display a plurality of sub-events that characterize an event;
receive an input from a user whereby the user selects a sub-event from the plurality of sub-events;
send a request to a second device, the request comprising information associated with the selected sub-event;
receive media data from the second device whereby the media data represents the selected sub-event; and
present the received media data;
a communication interface, the communication interface configured to provide an interface between the application and the second device;
a memory, the memory configured to store the application; and
a processor, the processor coupled to the memory and configured to execute the application.
17. (canceled)
18. (canceled)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/090,742 US20140157195A1 (en) | 2004-08-05 | 2013-11-26 | Media play of selected portions of an event |
US15/629,571 US10949063B2 (en) | 2004-08-05 | 2017-06-21 | Media play of selected portions of an event |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/911,993 US8601089B2 (en) | 2004-08-05 | 2004-08-05 | Media play of selected portions of an event |
US14/090,742 US20140157195A1 (en) | 2004-08-05 | 2013-11-26 | Media play of selected portions of an event |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/911,993 Continuation US8601089B2 (en) | 2004-08-05 | 2004-08-05 | Media play of selected portions of an event |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/629,571 Continuation US10949063B2 (en) | 2004-08-05 | 2017-06-21 | Media play of selected portions of an event |
Publications (1)
Publication Number | Publication Date |
---|---|
US20140157195A1 true US20140157195A1 (en) | 2014-06-05 |
Family
ID=35944717
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/911,993 Active 2028-06-21 US8601089B2 (en) | 2004-08-05 | 2004-08-05 | Media play of selected portions of an event |
US14/090,742 Abandoned US20140157195A1 (en) | 2004-08-05 | 2013-11-26 | Media play of selected portions of an event |
US15/629,571 Active US10949063B2 (en) | 2004-08-05 | 2017-06-21 | Media play of selected portions of an event |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/911,993 Active 2028-06-21 US8601089B2 (en) | 2004-08-05 | 2004-08-05 | Media play of selected portions of an event |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/629,571 Active US10949063B2 (en) | 2004-08-05 | 2017-06-21 | Media play of selected portions of an event |
Country Status (1)
Country | Link |
---|---|
US (3) | US8601089B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100306709A1 (en) * | 2009-05-29 | 2010-12-02 | International Business Machines Corporation | Event monitoring for complex event processing |
US10300376B2 (en) * | 2016-03-25 | 2019-05-28 | JVC Kenwood Corporation | Display device, display method, and non-transitory storage medium |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7630721B2 (en) | 2000-06-27 | 2009-12-08 | Ortiz & Associates Consulting, Llc | Systems, methods and apparatuses for brokering data between wireless devices and data rendering devices |
US7812856B2 (en) | 2000-10-26 | 2010-10-12 | Front Row Technologies, Llc | Providing multiple perspectives of a venue activity to electronic wireless hand held devices |
US7945688B1 (en) | 2001-06-12 | 2011-05-17 | Netapp, Inc. | Methods and apparatus for reducing streaming media data traffic bursts |
US7657644B1 (en) | 2002-05-10 | 2010-02-02 | Netapp, Inc. | Methods and apparatus for streaming media multicast |
US7991905B1 (en) | 2003-02-12 | 2011-08-02 | Netapp, Inc. | Adaptively selecting timeouts for streaming media |
US20050159220A1 (en) * | 2003-12-15 | 2005-07-21 | Gordon Wilson | Method and interface system for facilitating access to fantasy sports leagues |
US7752325B1 (en) * | 2004-10-26 | 2010-07-06 | Netapp, Inc. | Method and apparatus to efficiently transmit streaming media |
US7496678B2 (en) * | 2005-05-11 | 2009-02-24 | Netapp, Inc. | Method and system for unified caching of media content |
KR100774933B1 (en) * | 2005-10-28 | 2007-11-09 | 엘지전자 주식회사 | Mobile Communication Terminal and Link Management Method |
JP2008017245A (en) * | 2006-07-07 | 2008-01-24 | Fujitsu Ltd | Radio base station device |
US8117283B2 (en) * | 2008-02-04 | 2012-02-14 | Echostar Technologies L.L.C. | Providing remote access to segments of a transmitted program |
US8893210B2 (en) * | 2010-08-20 | 2014-11-18 | Sony Corporation | Server load balancing for interactive television |
US8918801B2 (en) | 2010-08-30 | 2014-12-23 | Sony Corporation | Transmission apparatus, transmission method, reception apparatus, reception method, program, and broadcasting system |
US20130227416A1 (en) * | 2011-01-06 | 2013-08-29 | Edward Massena | Device for logging, editing and production of video programs for activities of local interest |
US9201571B2 (en) | 2011-01-06 | 2015-12-01 | It's Relevant, LLC | Logging, editing and production system for activities of local interest and related video |
US10325287B2 (en) * | 2012-11-19 | 2019-06-18 | Facebook, Inc. | Advertising based on user trends in an online system |
US20140143058A1 (en) * | 2012-11-19 | 2014-05-22 | Sam Lessin | Sponsoring venues for targeting a social networking system |
US9912743B2 (en) | 2014-02-28 | 2018-03-06 | Skycapital Investors, Llc | Real-time collection and distribution of information for an event organized according to sub-events |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020107073A1 (en) * | 2000-11-27 | 2002-08-08 | Binney Mark Stephen | Interactive game system and method |
US20030177503A1 (en) * | 2000-07-24 | 2003-09-18 | Sanghoon Sull | Method and apparatus for fast metadata generation, delivery and access for live broadcast program |
US20030189589A1 (en) * | 2002-03-15 | 2003-10-09 | Air-Grid Networks, Inc. | Systems and methods for enhancing event quality |
US20040040041A1 (en) * | 2002-08-22 | 2004-02-26 | Microsoft Corporation | Interactive applications for stored video playback |
US20040055017A1 (en) * | 2002-09-13 | 2004-03-18 | Alain Delpuch | Method and system to generate and transmit authoring data associated with distributed content, for inclusion within authored content |
US20040083273A1 (en) * | 2001-01-18 | 2004-04-29 | Madison Justin Paul | Method and system for managing digital content, including streaming media |
US20040197088A1 (en) * | 2003-03-31 | 2004-10-07 | Ferman Ahmet Mufit | System for presenting audio-video content |
US20040215718A1 (en) * | 2001-01-18 | 2004-10-28 | Kazmi Syed Noman | Method and system for managing digital content, including streaming media |
US20050005308A1 (en) * | 2002-01-29 | 2005-01-06 | Gotuit Video, Inc. | Methods and apparatus for recording and replaying sports broadcasts |
US20050015803A1 (en) * | 2002-11-18 | 2005-01-20 | Macrae Douglas B. | Systems and methods for providing real-time services in an interactive television program guide application |
US20050193010A1 (en) * | 2004-02-27 | 2005-09-01 | Deshan Jay B. | Method and system for managing digital content including streaming media |
US7699701B2 (en) * | 2001-07-05 | 2010-04-20 | Dbs Limited Partnership | Method and system for providing real time sports betting information |
US8702504B1 (en) * | 2001-11-05 | 2014-04-22 | Rovi Technologies Corporation | Fantasy sports contest highlight segments systems and methods |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1992000654A1 (en) * | 1990-06-25 | 1992-01-09 | Barstow David R | A method for encoding and broadcasting information about live events using computer simulation and pattern matching techniques |
US5568205A (en) * | 1993-07-26 | 1996-10-22 | Telex Communications, Inc. | Camera mounted wireless audio/video transmitter system |
US5796426A (en) * | 1994-05-27 | 1998-08-18 | Warp, Ltd. | Wide-angle image dewarping method and apparatus |
US6118493A (en) * | 1997-04-01 | 2000-09-12 | Ati Technologies, Inc. | Method and apparatus for selecting a channel from a multiple channel display |
US20040070594A1 (en) * | 1997-07-12 | 2004-04-15 | Burke Trevor John | Method and apparatus for programme generation and classification |
US20050039177A1 (en) * | 1997-07-12 | 2005-02-17 | Trevor Burke Technology Limited | Method and apparatus for programme generation and presentation |
US6681398B1 (en) * | 1998-01-12 | 2004-01-20 | Scanz Communications, Inc. | Systems, devices and methods for reviewing selected signal segments |
US6492997B1 (en) * | 1998-02-04 | 2002-12-10 | Corporate Media Partners | Method and system for providing selectable programming in a multi-screen mode |
US6154771A (en) * | 1998-06-01 | 2000-11-28 | Mediastra, Inc. | Real-time receipt, decompression and play of compressed streaming video/hypervideo; with thumbnail display of past scenes and with replay, hyperlinking and/or recording permissively intiated retrospectively |
US6144375A (en) * | 1998-08-14 | 2000-11-07 | Praja Inc. | Multi-perspective viewer for content-based interactivity |
US6578203B1 (en) * | 1999-03-08 | 2003-06-10 | Tazwell L. Anderson, Jr. | Audio/video signal distribution system for head mounted displays |
US6795638B1 (en) * | 1999-09-30 | 2004-09-21 | New Jersey Devils, Llc | System and method for recording and preparing statistics concerning live performances |
US7010492B1 (en) * | 1999-09-30 | 2006-03-07 | International Business Machines Corporation | Method and apparatus for dynamic distribution of controlled and additional selective overlays in a streaming media |
US20020010697A1 (en) * | 1999-12-06 | 2002-01-24 | Marshall Robert S. | On-line sports information entry and retrieval system |
US6389467B1 (en) * | 2000-01-24 | 2002-05-14 | Friskit, Inc. | Streaming media search and continuous playback system of media resources located by multiple network addresses |
US6505169B1 (en) * | 2000-01-26 | 2003-01-07 | At&T Corp. | Method for adaptive ad insertion in streaming multimedia content |
US7823066B1 (en) * | 2000-03-03 | 2010-10-26 | Tibco Software Inc. | Intelligent console for content-based interactivity |
US7812856B2 (en) * | 2000-10-26 | 2010-10-12 | Front Row Technologies, Llc | Providing multiple perspectives of a venue activity to electronic wireless hand held devices |
US6810397B1 (en) * | 2000-06-29 | 2004-10-26 | Intel Corporation | Collecting event data and describing events |
US20040125877A1 (en) * | 2000-07-17 | 2004-07-01 | Shin-Fu Chang | Method and system for indexing and content-based adaptive streaming of digital video content |
US7925967B2 (en) * | 2000-11-21 | 2011-04-12 | Aol Inc. | Metadata quality improvement |
US20020115488A1 (en) * | 2001-02-22 | 2002-08-22 | Nicholas Berry | System and method for conducting an online competition |
US20020166123A1 (en) * | 2001-03-02 | 2002-11-07 | Microsoft Corporation | Enhanced television services for digital video recording and playback |
US20020157099A1 (en) * | 2001-03-02 | 2002-10-24 | Schrader Joseph A. | Enhanced television service |
KR100563198B1 (en) * | 2001-12-14 | 2006-03-21 | 에스케이 텔레콤주식회사 | Apparatus for Offering Event Image Mail Service using Multimedia Messaging Service and the Method Thereof |
US7739584B2 (en) * | 2002-08-08 | 2010-06-15 | Zane Vella | Electronic messaging synchronized to media presentation |
US8538563B1 (en) * | 2002-08-30 | 2013-09-17 | United Video Properties, Inc. | Systems and methods for providing fantasy sports contests with wagering opportunities |
US8028315B1 (en) * | 2002-08-30 | 2011-09-27 | United Video Properties, Inc. | Systems and methods for using an interactive television program guide to access fantasy sports contests |
US7548242B1 (en) * | 2002-08-30 | 2009-06-16 | Interactive Sports Holdings, Inc. | Systems and methods for integrating graphic animation technologies in fantasy sports contest applications |
US20040073437A1 (en) * | 2002-10-15 | 2004-04-15 | Halgas Joseph F. | Methods and systems for providing enhanced access to televised sporting events |
JP2004246858A (en) * | 2002-12-19 | 2004-09-02 | Neotech Co Ltd | System and method for golf score management |
US20040158638A1 (en) * | 2003-02-06 | 2004-08-12 | Peters Jay R. St. | Providing static and dynamic event data |
US20040254844A1 (en) * | 2003-06-12 | 2004-12-16 | International Business Machines Corporation | Online viewing cart |
US7458093B2 (en) * | 2003-08-29 | 2008-11-25 | Yahoo! Inc. | System and method for presenting fantasy sports content with broadcast content |
US20050125838A1 (en) * | 2003-12-04 | 2005-06-09 | Meng Wang | Control mechanisms for enhanced features for streaming video on demand systems |
US8949895B2 (en) * | 2006-08-18 | 2015-02-03 | The Directv Group, Inc. | Mosaic channel video stream with personalized interactive services |
-
2004
- 2004-08-05 US US10/911,993 patent/US8601089B2/en active Active
-
2013
- 2013-11-26 US US14/090,742 patent/US20140157195A1/en not_active Abandoned
-
2017
- 2017-06-21 US US15/629,571 patent/US10949063B2/en active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030177503A1 (en) * | 2000-07-24 | 2003-09-18 | Sanghoon Sull | Method and apparatus for fast metadata generation, delivery and access for live broadcast program |
US20020107073A1 (en) * | 2000-11-27 | 2002-08-08 | Binney Mark Stephen | Interactive game system and method |
US20040083273A1 (en) * | 2001-01-18 | 2004-04-29 | Madison Justin Paul | Method and system for managing digital content, including streaming media |
US20040215718A1 (en) * | 2001-01-18 | 2004-10-28 | Kazmi Syed Noman | Method and system for managing digital content, including streaming media |
US7699701B2 (en) * | 2001-07-05 | 2010-04-20 | Dbs Limited Partnership | Method and system for providing real time sports betting information |
US8702504B1 (en) * | 2001-11-05 | 2014-04-22 | Rovi Technologies Corporation | Fantasy sports contest highlight segments systems and methods |
US20050005308A1 (en) * | 2002-01-29 | 2005-01-06 | Gotuit Video, Inc. | Methods and apparatus for recording and replaying sports broadcasts |
US20030189589A1 (en) * | 2002-03-15 | 2003-10-09 | Air-Grid Networks, Inc. | Systems and methods for enhancing event quality |
US20040040041A1 (en) * | 2002-08-22 | 2004-02-26 | Microsoft Corporation | Interactive applications for stored video playback |
US20040055017A1 (en) * | 2002-09-13 | 2004-03-18 | Alain Delpuch | Method and system to generate and transmit authoring data associated with distributed content, for inclusion within authored content |
US20050015803A1 (en) * | 2002-11-18 | 2005-01-20 | Macrae Douglas B. | Systems and methods for providing real-time services in an interactive television program guide application |
US20040197088A1 (en) * | 2003-03-31 | 2004-10-07 | Ferman Ahmet Mufit | System for presenting audio-video content |
US20050193010A1 (en) * | 2004-02-27 | 2005-09-01 | Deshan Jay B. | Method and system for managing digital content including streaming media |
Non-Patent Citations (1)
Title |
---|
Major Leage Baseball Index, published by Freeservers.com, Internet WayBack archive February 2003. 2 pages. * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100306709A1 (en) * | 2009-05-29 | 2010-12-02 | International Business Machines Corporation | Event monitoring for complex event processing |
US9396234B2 (en) * | 2009-05-29 | 2016-07-19 | International Business Machines Corporation | Event monitoring for complex event processing |
US10300376B2 (en) * | 2016-03-25 | 2019-05-28 | JVC Kenwood Corporation | Display device, display method, and non-transitory storage medium |
Also Published As
Publication number | Publication date |
---|---|
US20060047774A1 (en) | 2006-03-02 |
US10949063B2 (en) | 2021-03-16 |
US8601089B2 (en) | 2013-12-03 |
US20180081506A1 (en) | 2018-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10949063B2 (en) | Media play of selected portions of an event | |
CN104429093B (en) | HTTP dynamic self-adapting streaming media clients and its session management implementation | |
JP2021177653A (en) | Server and program | |
US9015206B2 (en) | Method and apparatus for organizing and playing data | |
US9794617B2 (en) | Inserting ad elements | |
US8769565B2 (en) | Inserting branding elements | |
JP5917508B2 (en) | Method and apparatus for synchronizing paused playback across platforms | |
US8463848B2 (en) | System and method of transmitting data over a computer network including for presentations over multiple channels in parallel | |
US20100162164A1 (en) | Method and apparatus for providing search service during program broadcasting | |
US20120185482A1 (en) | Methods, systems, and computer readable media for dynamically searching and presenting factually tagged media clips | |
US20110145726A1 (en) | Method and apparatus for navigating a media program via a histogram of popular segments | |
JP5833114B2 (en) | Method and apparatus for providing streaming media programs and targeted advertisements to be compatible with HTTP live streaming | |
US8892681B2 (en) | Peer to peer metadata distribution | |
US20110258295A1 (en) | Information processing terminal and method thereof | |
US20100107082A1 (en) | Comment delivery system, terminal device, comment delivery method, and recording medium storing program therefor | |
CN108476329A (en) | It is similar to introduce caching mechanism | |
JP2003203035A (en) | Information delivery method and information delivery system, information delivery program, editing program and computer-readable storage medium | |
WO2007058192A1 (en) | Video viewing system, computer terminal, and program | |
US20120246240A1 (en) | Providing Context Information Relating To Media Content That Is Being Presented | |
US8965870B2 (en) | Method and apparatus for exchanging media service queries | |
JP2004007371A (en) | Personal digest downloading system and its method | |
KR20090079563A (en) | System and Method for Managing Movie Meta Information and Recording Medium | |
US8234158B1 (en) | Analyzing text streams for cue points of advertisements in a media stream | |
US20110252156A1 (en) | System and Method for Providing Information to Users of a Communication Network | |
KR101664472B1 (en) | Method for Processing Movie Marking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: BAMTECH, LLC, NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MLB ADVANCED MEDIA, L.P.;REEL/FRAME:039800/0350 Effective date: 20160912 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE |