1. Field of the Invention
The present invention relates generally to the provision of broadcast network services. Broadcast networks are systems for providing content to end users such as viewers from one or more dissemination points over a communication network such as a network linking computers. Broadcast network services provide the tools and facilities used to create, upload, and disseminate rich-media content.
2. Description of the Background Art
Broadcast network service facilities include application tools, storage devices, and streaming technologies. Broadcast network service facilities have traditionally been custom creations in which a broadcaster who desired to broadcast content to a group of end users would acquire and implement the application tools, storage devices, and streaming technologies, as needed, from among the resources available at the time. Thus, application tools, storage devices and streaming technologies were customarily purchased separately by a broadcaster, who integrated and maintained them. Such a broadcast network is herein denominated an Internet Broadcast Network (IBN). Such custom-built IBNs require a significant amount of time to develop and deploy.
Although storage devices and streaming technologies have recently become available on a time-share or bundled basis from various providers, an integrated, unified solution has heretofore not been available. A content provider, for example, might own the application tools but lease storage devices and streaming technologies from service providers. In addition, considerable fixed costs are entailed in developing application tools to work with storage devices and streaming technologies. A broadcaster who desires to broadcast over a network would thus face the task of assembling the required tools and facilities from a disparate mix of available tools, integrating them so they functioned smoothly and efficiently together as a system, debugging the system, and keeping the system up and operating throughout the broadcast. Building an IBN from a diverse assemblage of technologies, and designing a system wherein the technologies function together in a smooth and efficient manner can be a difficult task, as one of skill in the art will be aware. Although technologies like software and hardware are ostensibly built to standards that ensure reliable collective functioning, porting software to specific hardware, for example, often poses unforeseen problems, and may require significant testing, debugging and re-work. And even if the software works with the respective hardware, it may not work as efficiently as a standardized and tested system that was built with collective functionality in mind. Also, the choice of the particular format in which the content is to be broadcast will have a significant impact on the viewers' experience. Such issues as which data compression techniques to use, how to allocate bandwidth between, for example, data and streaming video, and how to encapsulate and deliver the content must all be resolved before an IBN begins to function. And broadcast network service facilities built and maintained by broadcasters often lack significant functionality in the areas of security, content programming, media management, user management, monetization, and reporting. The broadcaster is thus not likely to end up with the best solution for its broadcast needs. Furthermore, the personal attributes that lead one to become a broadcaster of content are not necessarily coincident with the technical expertise and inclination to develop and support a broadcast network. Broadcasters who are not accustomed to synergizing diverse technical platforms, broadcast formats, and production facilities into a broadcast network often end up with a sub-optimum offering. Such sub-optimum offerings create dissatisfaction and frustration on the part of the viewers, the advertisers, and even the broadcasters themselves who desire to access the broadcast network. A viewer who experiences dissatisfaction and frustration when attempting to access a broadcast from a particular provider will be less likely to try to view a broadcast from that provider again. Losing viewers leads to losses of business and advertising revenue. Providers of financial support such as venture capital frown on broadcasters who have difficulties attracting and retaining customers. Thus, a broadcaster who neglects the technical aspects of a broadcast, even while providing a high level of substantive content, is likely to experience difficulties meeting its business goals. In addition, there are significant logistical and economic advantages to be gained by integrating standardized application tools, storage devices and streaming technologies and providing them to broadcasters on a bundled basis so the costs of their development and acquisition can be spread across several broadcasters' activities. Thus there exists a need in the art for an improved service capability to be provided to network broadcasters on a bundled basis.
Techniques are provided for providing broadcast network services from a server by providing a broadcaster with access to a bundled collection of application tools, storage devices, and streaming media tools so the broadcaster can create, upload and/or store program files using the application tools, transmit the program file to its members for viewing as streaming media programming, and also allow the member to download auxiliary files associated with the program file, rate the content of the program file, and/or send communications to the broadcaster related to the program file.
One aspect of the invention involves providing broadcast network services from at least one server comprising the steps of a) providing a broadcaster with at least one application tool on said server, b) providing the broadcaster with a least one storage device accessible from the server, c) providing the broadcaster with at least one streaming media tool on the server, d) creating at least one program file with the application tool, e) uploading the program file to the server, f) storing the program file on the storage device, g) registering a prospective viewer as a member, h) allowing the member to create a member page on the server, i) providing the member with at least one downlink channel to view, j) associating the program file with the downlink channel, k) providing the member with a channel pass to browse the program files associated with the downlink channel, l) allowing the member to add at least one of the downlink channels to a favorites list on the member page, m) providing the member with a program pass to view at least one of the program files associated with the downlink channel, n) transmitting the program file to the member as streaming media with the streaming media tool, o) allowing the member to download auxiliary files associated with the program file, p) receiving the member's rating of the program file, q) allowing the member to add one of the program files to the favorites list on the member page, r) allowing the member to email the broadcaster of one of the programs.
Another aspect of the invention is a general broadcast network service provision apparatus to be provided to a broadcaster on a bundled basis, composed of a server with an operating system installed on the server, a database accessible to the server which is compatible with the operating system, an application tool installed on the server which is also compatible with the operating system, a streaming media tool installed on the server which is compatible with the operating system, a downlink channel from the server to a member, an uplink channel from the member to the server, and a plurality of program files stored in the database, associated with the downlink channel, wherein the broadcaster broadcasts a program file by i) creating at least one program file with the application tool, ii) uploading the program file to the server, iii) storing the program file in the database, iv) associating the program file with the downlink channel, and v) transmitting the program file to a member with the streaming media software; and wherein the member transmits a request to receive a program file to the server over the uplink channel by i) selecting a program file, ii) transmitting a request to view the selected program file over the uplink, and iii) viewing the selected program file; and wherein the server transmits the selected program file to the member over the downlink channel as streaming media by i) receiving a request to view the selected program file from the member, ii) retrieving the selected program file from the database, and iii) broadcasting the selected program file to the member as streaming media.
The above and other features and advantages of the present invention will be further understood from the following description of the preferred embodiments thereof, taken in conjunction with the accompanying drawings.
The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings, in which like reference numerals refer to similar elements, and in which:
The member may be able to add at least one guest member when creating or updating their member page 32b. The member can browse programs associated with the downlink channel 35a by entering search terms to search the data base and viewing the results that are returned. The member's account is debited when the member is provided with a channel pass to browse the program files 35a. The member's account would also be debited when the member is provided with a program pass to view the program files 35c.
In
In
In
The member interface shown in
Members 71 are able to personalize the tools they use to access the site. They can store a favorite program file 77b or downlink channel 76b for later reference on a favorites list 74a, send a link to a particular program file 77b or downlink channel 76b to a friend, or send an email to the broadcaster of the program file 77b over an uplink channel. When adding or editing a favorite program file 77b or downlink channel 76b, the member is also given the option of receiving email updates when a program file 77b or downlink channel 76b is updated by the broadcaster. Members can rate and review program files 77b and downlink channels 76b. Members may also communicate with broadcasters directly over the uplink channel to provide valuable feedback. Members can choose to reveal as little or as much of their identity and activities to other members or broadcasters as they wish. For a broadcaster site where community viewing is encouraged, members may maintain member pages 74 where they can display favorites, reviews and ratings, etc. More private members can keep their identities and biographical information visible to the application tool only.
The broadcaster interface is shown in
The application tool shown in
The application tool features interactive reports 95 presented to broadcasters online. A broadcaster sees information tailored for their downlink channels and program files 90. Reporting intervals are: month, week, and inter-day. Data for the monthly and weekly reports is updated daily except for the final monthly balance report, which is calculated at the month closing date. The inter-day reports collect up-to-the minute data for the current day. The application tool also supports multiple levels of broadcast administrators. Various privileges, such as the ability to add other broadcast administrators, can be restricted so that administrative roles map to roles within a broadcaster's organization.
The various services that make up domain administration are concerned with editorial control over a particular broadcast site. Using these services, a broadcaster can perform tasks such as select program files 90 for featured status, update copy that appears throughout the site, or edit system emails. User administration services allow the system administrator to manage users and their privileges within the application tool.
The application tool is built to function in an Application Service Provider (ASP) environment offering online services to large communities of broadcasters and partners.
There are two elements of the application tool—the Software Platform and Application Architecture. Streaming files are served by streaming servers directly from the file system. The application tool is highly configurable to work in an ASP environment and meet a wide range of broadcaster requirements. Configuration settings mostly affect the presentation tier (e.g. JHTML pages) and specially designed handlers, which are components sitting between the presentation and business logic tiers. The handlers decide which components to call to perform requested services based on the configuration parameters of a particular broadcaster. In addition to this, the handlers provide a security layer—if a broadcaster site is configured to exclude some features the corresponding services will not be called even if requested. The deployed application tool is partitioned into domains to accommodate new broadcasters. Different domains are completely independent even though they are hosted in the same application tool on the same servers using the same database. Rigid security is implemented to prevent content from one domain from being seen on another domain. Partitioning is used on the database and presentation tiers. On the database level there is logical data separation, where data for each domain is keyed by this domain code, thus preventing access by queries from other domains. On the presentation tier each broadcaster has a separate directory with custom pages. If a custom page does not exist then a corresponding common page will be served. In other words, besides configuring a feature set, a broadcaster has the option to customize a site by replacing some common pages with custom ones while using common pages for the rest of the site. In either case, requests from other domains will be rejected by the security system.
The application tool logic does not depend on what media formats are used (Real, Microsoft, QuickTime, etc.) and how the streams are delivered to members. The application tool has several components, which work as adapters for various formats and delivery methods. An adapter's task is simply to generate a proper link to a requested media file. The adapter components are lightweight; new components may be added quickly for new formats or delivery methods.
Security methods are implemented in all services dealing with sensitive information or rights management. The database uses encryption for all sensitive data. Sensitive data is never stored in open text form. Access to media files is protected by URL hiding so the location of a media file cannot be discovered by an end-user.
Broadcasters can select those services that are relevant to their particular streaming goals. For example, a broadcaster who wants to use streaming only for marketing purposes may not want the monetization service. If the broadcaster subsequently changes his mind and decides to charge for their content monetization can be added to their service.
The broadcaster can configure individual features within a service. For example, the monetization service could be configured to only allow subscriptions, or allow only certain payment methods.
Embodiments of the invention having been thus described, it will be apparent to those skilled in the art that the same may be varied in many ways without departing from the spirit and scope of the inventions. All such modifications are intended to be encompassed.
Computer system 1000 may be coupled via bus 1002 to a display 1012, such as a cathode ray tube (CRT), for displaying information to a computer user. An input device 1014, including alphanumeric and other keys, is coupled to bus 1002 for communicating information and command selections to processor 1004. Another type of user input device is cursor control 1016, such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 1004 and for controlling cursor movement on display 1012. This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane.
The invention is related to the use of computer system 1000 for implementing the techniques described herein. According to one embodiment of the invention, those techniques are performed by computer system 1000 in response to processor 1004 executing one or more sequences of one or more instructions contained in main memory 1006. Such instructions may be read into main memory 1006 from another computer-readable medium, such as storage device 1010. Execution of the sequences of instructions contained in main memory 1006 causes processor 1004 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
The term “computer-readable medium” as used herein refers to any medium that participates in providing instructions to processor 1004 for execution. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 1010. Volatile media includes dynamic memory, such as main memory 1006. Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 1002. Transmission media can also take the form of acoustic or light waves, such as those generated during radio-wave and infra-red data communications.
Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punchcards, papertape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.
Various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to processor 1004 for execution. For example, the instructions may initially be carried on a magnetic disk of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 1000 can receive the data on the telephone line and use an infra-red transmitter to convert the data to an infra-red signal. An infra-red detector can receive the data carried in the infra-red signal and appropriate circuitry can place the data on bus 1002. Bus 1002 carries the data to main memory 1006, from which processor 1004 retrieves and executes the instructions. The instructions received by main memory 1006 may optionally be stored on storage device 1010 either before or after execution by processor 1004.
Computer system 1000 also includes a communication interface 1018 coupled to bus 1002. Communication interface 1018 provides a two-way data communication coupling to a network link 1020 that is connected to a local network 1022. For example, communication interface 1018 may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, communication interface 1018 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, communication interface 1018 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
Network link 1020 typically provides data communication through one or more networks to other data devices. For example, network link 1020 may provide a connection through local network 1022 to a host computer 1024 or to data equipment operated by an Internet Service Provider (ISP) 1026. ISP 1026 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the “Internet” 1028. Local network 1022 and Internet 1028 both use electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on network link 1020 and through communication interface 1018, which carry the digital data to and from computer system 1000, are exemplary forms of carrier waves transporting the information.
Computer system 1000 can send messages and receive data, including program code, through the network(s), network link 1020 and communication interface 1018. In the Internet example, a server 1030 might transmit a requested code for an application program through Internet 1028, ISP 1026, local network 1022 and communication interface 1018.
The received code may be executed by processor 1004 as it is received, and/or stored in storage device 1010, or other non-volatile storage for later execution. In this manner, computer system 1000 may obtain application code in the form of a carrier wave.
In the foregoing specification, the invention has been described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.
This application claims the benefit of the filing date of provisional application Ser. No. 60/220,827, filed Jul. 26, 2000, the entire disclosure of which is hereby incorporated.
Number | Date | Country | |
---|---|---|---|
60220827 | Jul 2000 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09916138 | Jul 2001 | US |
Child | 11601119 | Nov 2006 | US |