Sign up to receive free email alerts when patent applications with chosen keywords are publishedSIGN UP

Abstract:

A method of searching for media content in a metadata database is
provided. Searching may include matching keywords in search criteria or
using predefined search criteria for browsing of static or dynamic
listings of media content. The method includes receiving a search request
including search criteria, and searching the metadata database for a
physical media article matching the search criteria and a digital media
selection matching the search criteria. The method also includes
determining availabilities of the matching media article and the matching
media selection. A search result set with the matching media articles and
matching media selections is provided, based on their availabilities. The
search result set may also include media articles and media selections
that are indirectly associated with the search criteria. An associated
content provider may be linked to the customer based on a subscription.
The media selection may be accessed by an audio/visual display interface.

Claims:

1. A method of searching for media content in a metadata database
connected to a processor, the metadata database comprising metadata of a
media article for being available at an article dispensing machine and
metadata of a media selection for being available at an associated
content provider, the method comprising: receiving a search request, the
search request comprising search criteria; searching the metadata
database for the media article matching the search criteria and the media
selection matching the search criteria, in response to the search
request; determining an availability of the matching media article for
distribution from the article dispensing machine; identifying the
associated content provider; determining an availability of the matching
media selection at the associated content provider; and providing a
search result set comprising the matching media article and the matching
media selection, based on the determined availabilities of the matching
media article and the matching media selection.

2. The method of claim 1, wherein searching the metadata database
comprises: matching the search criteria to the metadata of the matching
media article in the metadata database; and utilizing a mapping of the
metadata of the matching media article to the metadata of the matching
media selection in the metadata database to select the matching media
selection, and wherein the selected matching media selection comprises at
least one of the matching media article in digital format, an indirectly
matching media article in digital format, or an indirectly matching media
selection.

3. The method of claim 1, wherein searching the metadata database
comprises: matching the search criteria to the metadata of the matching
media selection in the metadata database; and utilizing a mapping of the
metadata of the matching media selection to the metadata of the matching
media article in the metadata database to select the matching media
article, and wherein the selected matching media article comprises at
least one of the matching media selection in physical format, an
indirectly matching media selection in physical format, or an indirectly
matching media article.

4. The method of claim 1, wherein: receiving the search request comprises
receiving predefined search criteria in response to a browsing request,
the predefined search criteria for browsing of static or dynamic listings
of the media content; and searching the metadata database comprises
searching the metadata database for the media article and the media
selection matching the predefined search criteria.

5. The method of claim 1, further comprising an inventory database
connected to the processor, and wherein: receiving the search request
comprises receiving the search request from a first location; determining
the availability of the matching media article comprises: determining a
second location of the article dispensing machine closest to the first
location; and querying the inventory database to determine whether the
matching media article is available at the second location of the article
dispensing machine; and providing the search result set comprises
providing the matching media article at the second location of the
article dispensing machine in the search result set, if the matching
media article is available at the second location of the article
dispensing machine.

6. The method of claim 1, further comprising an inventory database
connected to the processor, and wherein: receiving the search request
comprises receiving the search request from a third location; determining
the availability of the matching media article comprises: determining
locations of a plurality of article dispensing machines closest to the
third location; and querying the inventory database to determine whether
the matching media article is available at the locations of the plurality
of the article dispensing machines; and providing the search result set
comprises providing the matching media article at at least one of the
locations of the plurality of the article dispensing machines in the
search result set, if the matching media article is available at at least
one of the locations of the plurality of the article dispensing machines.

7. The method of claim 6, wherein providing the matching media article
comprises ranking the locations of the plurality of the article
dispensing machines in order of distance from the third location.

8. The method of claim 1, wherein the metadata of the media article and
the metadata of the media selection each comprises at least one of a
title, a release date, a running time, chapter information, technical
details, a format, a peripheral device requirement, number of players,
online capability, an actor, a voice actor, a director, a studio, a
publisher, a developer, a platform, availability of downloadable content,
episode information, a genre, a critic rating, an individualized rating,
a parental rating, a description, related content, media artwork, a media
still, or a proprietary identification code.

9. The method of claim 1, wherein identifying the associated content
provider comprises associating a unique customer identifier with a
customer subscription at the associated content provider, wherein the
customer subscription is stored in a customer profile database connected
to the processor.

10. The method of claim 9, wherein determining the availability of the
matching media selection comprises determining the availability of the
matching media selection based on an access permission for the matching
media selection in the customer subscription.

11. The method of claim 1, further comprising receiving a transaction
request to access at least one of the matching media article or the
matching media selection in the search result set.

12. The method of claim 11, wherein the transaction request comprises a
reservation request to reserve the matching media article in the search
result set at the article dispensing machine for pickup.

13. The method of claim 11, wherein the transaction request comprises a
pre-reservation request to pre-reserve the matching media article in the
search result set for pickup at the article dispensing machine when the
matching media article is released.

14. The method of claim 11, wherein the transaction request comprises a
viewing request to view the matching media selection in the search result
set at the associated content provider.

15. The method of claim 11, further comprising receiving a payment for
the at least one of the matching media article or the matching media
selection in the search result set, wherein the payment comprises at
least one of a charge for the matching media article, a charge for the
matching media selection, a discounted charge for the matching media
selection, a charge to the associated content provider for the matching
media selection, a redemption of a promotion code, a redemption of a
credit code, or an upgrade to a premium customer subscription at the
associated content provider.

16. The method of claim 1, wherein: the media article comprises at least
one of a digital video disc, a Blu-Ray disc, or a video game; and the
media selection comprises at least one of a video on demand, a streaming
video, a downloadable video, a streaming video game, or a downloadable
video game.

17. The method of claim 1, wherein providing the search result set
comprises ordering the matching media article and the matching media
selection based on one or more criteria comprising a price, a version,
video quality, audio quality, a title, a release date, a running time,
chapter information, technical details, a format, a peripheral device
requirement, number of players, online capability, an actor, a voice
actor, a director, a studio, a publisher, a developer, a platform,
availability of downloadable content, episode information, a genre, a
critic rating, an individualized rating, a parental rating, a
description, related content, media artwork, a media still, or a
proprietary identification code.

18. The method of claim 1, wherein receiving the search request comprises
receiving the search request from one or more of a website in
communication with the processor, an audio/visual display interface in
communication with the processor, or the article dispensing machine.

19. The method of claim 1: further comprising determining a device
applicability of the matching media selection based on an audio/visual
display interface for displaying the matching media selection and
technical details of the matching media selection; and wherein providing
the search result set is further based on the determined device
applicability of the matching media selection.

20. The method of claim 19, wherein providing the search result set
comprises removing the matching media selection from the search result
set if the technical details of the matching media selection are not
supported by the audio/visual display interface.

21. The method of claim 1, further comprising: receiving a queuing
request for the matching media selection; and saving the matching media
selection in a saved programs queue, in response to the queuing request.

22. The method of claim 21, further comprising receiving a viewing
request to view the matching media selection in the saved programs queue.

23. A method of searching for media content in a metadata database and an
inventory database connected to a processor, the metadata database
comprising metadata of a plurality of media articles and metadata of a
plurality of media selections, the inventory database comprising
availability of the plurality of media articles at a plurality of article
dispensing machines, the method comprising: receiving a search request,
the search request comprising a search keyword; selecting at least one
media article having metadata matching the search keyword from the
metadata database; selecting at least one media selection having metadata
matching the metadata of the selected media article from the metadata
database by utilizing a mapping of the metadata of the selected media
article to the metadata of the plurality of media selections; identifying
an associated content provider; determining an availability of the
selected media selection for distribution from the associated content
provider; determining an availability of the selected media article at
the plurality of article dispensing machines using the inventory
database; and providing a search result set comprising the selected media
selection, the associated content provider where the selected media
selection is available, the selected media article, and locations of the
plurality of the article dispensing machines where the selected media
article is available.

24. The method of claim 23, wherein: receiving the search request
comprises receiving a predefined search keyword in response to a browsing
request, the predefined search keyword for browsing of static or dynamic
listings of the media content; and selecting the at least one media
article comprises selecting the at least one media article having
metadata matching the predefined search keyword.

25. The method of claim 23, wherein: receiving the search request
comprises receiving the search request from a first location; and the
locations of the plurality of the article dispensing machines the
selected media article is available comprises the locations of the
plurality of the article dispensing machines closest to the first
location.

26. The method of claim 23, wherein: receiving the search request
comprises receiving the search request from a third location; and the
locations of the article dispensing machines the selected media article
is available comprises a single location of the article dispensing
machine closest to the third location.

27. The method of claim 23, wherein the metadata of the plurality of
media articles and the metadata of the plurality of media selections each
comprises at least one of a title, a release date, a running time,
chapter information, technical details, a format, a peripheral device
requirement, number of players, online capability, an actor, a voice
actor, a director, a studio, a publisher, a developer, a platform,
availability of downloadable content, episode information, a genre, a
critic rating, an individualized rating, a parental rating, a
description, related content, media artwork, a media still, or a
proprietary identification code.

28. The method of claim 23, wherein identifying the associated content
provider comprises associating a unique customer identifier with a
customer subscription at the associated content provider, wherein the
customer subscription is stored in a customer profile database connected
to the processor.

29. The method of claim 28, wherein determining the availability of the
selected media selection comprises determining the availability of the
selected media selection based on an access permission for the selected
media selection in the customer subscription.

30. The method of claim 23, wherein providing the search result set
comprises ordering the selected media article and the selected media
selection based on one or more criteria comprising a price, a version,
video quality, audio quality, a title, a release date, a running time,
chapter information, technical details, a format, a peripheral device
requirement, number of players, online capability, an actor, a voice
actor, a director, a studio, a publisher, a developer, a platform,
availability of downloadable content, episode information, a genre, a
critic rating, an individualized rating, a parental rating, a
description, related content, media artwork, a media still, or a
proprietary identification code.

31. The method of claim 23: further comprising determining a device
applicability of the selected media selection based on an audio/visual
display interface for displaying the selected media selection and
technical details of the selected media selection; and wherein providing
the search result set is further based on the determined device
applicability of the selected media selection.

32. The method of claim 31, wherein providing the search result set
comprises removing the selected media selection from the search result
set if the technical details of the selected media selection are not
supported by the audio/visual display interface.

33. The method of claim 23, further comprising: receiving a queuing
request for the matching media selection; and saving the matching media
selection in a saved programs queue, in response to the queuing request.

34. The method of claim 33, further comprising receiving a viewing
request to view the matching media selection in the saved programs queue.

35. A network of article dispensing machines comprising: an article
dispensing machine; a central memory remote from the article dispensing
machine and containing a customer profile database, a metadata database,
and an inventory database, the customer profile database containing a
customer subscription with an associated content provider based on a
unique customer identifier, the metadata database comprising metadata of
a plurality of media articles and metadata of a plurality of media
selections, and the inventory database comprising availability of the
plurality of media articles at the network of article dispensing
machines; and a central processor in communication with the article
dispensing machine and the central memory, the central processor
comprising a search engine, the central processor for: searching the
metadata database for the media article matching search criteria and the
media selection matching the search criteria using the search engine, in
response to receiving the search criteria; determining an availability of
the matching media article at the article dispensing machine in the
inventory database; identifying the associated content provider in the
customer profile database; determining an availability of the matching
media selection for distribution from the associated content provider
based on the customer subscription with the associated content provider;
and providing a search result set comprising the matching media article
and the matching media selection, based on the determined availabilities
of the matching media article and the matching media selection.

36. The network of article dispensing machines of claim 35, wherein the
metadata database comprises at least one of a title, a release date, a
running time, chapter information, technical details, a format, a
peripheral device requirement, number of players, online capability, an
actor, a voice actor, a director, a studio, a publisher, a developer, a
platform, availability of downloadable content, episode information, a
genre, a critic rating, an individualized rating, a parental rating, a
description, related content, media artwork, a media still, or a
proprietary identification code of the plurality of media articles and
the plurality of media selections.

Description:

CROSS-REFERENCE TO RELATED APPLICATION

[0001] This application claims priority to U.S. Patent Application No.
61/502297, filed on Jun. 28, 2011, entitled "SYSTEM AND METHOD FOR
SEARCHING AND BROWSING MEDIA CONTENT", and is incorporated herein by
reference in its entirety.

TECHNICAL FIELD

[0002] This invention relates to a system and method for searching and
browsing media content. More particularly, the present invention provides
a system and method for searching and browsing for physical media
articles at an article dispensing machine and digital media selections at
a content provider based on search criteria.

BACKGROUND AND SUMMARY OF THE INVENTION

[0003] While the present invention is often described herein with
reference to a digital video disc, Blu-Ray disc, and video game
distribution system, an application to which the present invention is
advantageously suited, it will be readily apparent that the present
invention is not limited to that application and can be employed in
article dispensing systems used to distribute a wide variety of
dispensable articles.

[0004] The digital video disc (DVD) player has been one of the most
successful consumer electronics product launches in history. The market
for DVD movie video, Blu-Ray movie video, and video game rentals is
enormous and growing. Millions of households have acquired DVDs since
they were introduced in 1997. In the first quarter of 2003 alone, it was
estimated that well over three million DVD players were shipped to U.S.
retailers.

[0005] In 2003, brick-and-mortar stores dominated the movie video and
video game rental landscape in the U.S. Statistics showed that two
brick-and-mortar companies controlled nearly sixty-five percent of the
home video rental business. One element repeatedly cited for success of
certain brick-and mortar store video rental franchises was perceived high
availability of new video releases. Consumers want entertainment on
demand, and through stocking multiple units of each new release,
successful brick-and-mortar companies meet this consumer demand.

[0006] The foregoing indicates that there is a significant market
potential for aligning regular routines of consumers (e.g., shopping,
getting coffee or gas or going to a convenience store) with their DVD,
Blu-Ray, and video game rental activities.

[0007] One improved article dispensing machine is disclosed in commonly
owned U.S. Pat. No. 7,234,609, which is herein incorporated by reference
in its entirety. The invention of the U.S. Pat. No. 7,234,609 and the
present invention can function as an article dispensing machine-based
distribution system that will typically have multiple units of each new
release per article dispensing machine. The dispensing machines of the
U.S. Pat. No. 7,234,609 and the present invention can stock up to two
thousand DVDs, Blu-Ray, video games, or other discs (movies, games or
other entertainment content), making the system competitive with existing
brick-and-mortar video rental superstores.

[0008] The dispensing machine and system of the U.S. Pat. No. 7,234,609
and the present invention distinguishes itself from such stores by
offering major benefits not conventionally offered by such stores,
including additional cross-marketing programs (e.g., promotional rentals
for a certain amount of dollars spent at the retail location) and
convenience (e.g., open always).

[0009] The dispensing machine of the U.S. Pat. No. 7,234,609 and the
present invention yields a competitive advantage in the DVD, Blu-Ray
disc, and video game rental marketplace by offering consumers
cross-marketing/promotional programs, convenience of selection (e.g.,
computer-based searches for movies and recommendations based on consumer
profiles), and potentially extended hours. The present invention employs
a more cost-effective, convenient platform than brick-and-mortar stores.
In addition, with the present invention, dispensing machines can be
situated in retail locations having high foot traffic, such as at a
popular grocery store, restaurant, drug store, and/or other popular
retail location.

[0010] The dispensing machine of the U.S. Pat. No. 7,234,609 and the
present invention can be operated at a substantial savings over the costs
associated with traditional brick-and-mortar video rental stores. For
example, the present invention does not require hourly employees manning
the dispensing machines or restocking them with inventories, due to the
ability of the article transport storage units to be delivered to/picked
up from retail locations by third-party delivery services, such as
traditional or contracted courier services.

[0011] Unlike brick-and-mortar stores, the dispensing machine of the U.S.
Pat. No. 7,234,609 and the present invention does not require an on-site
store manager because all operational decisions can be made at a
centralized location by a management team officed remote from the retail
locations. Unlike brick-and-mortar stores, the dispensing machine of the
U.S. Pat. No. 7,234,609 and the present invention does not require
significant physical space. Unlike brick-and-mortar stores, the
dispensing machine of the U.S. Pat. No. 7,234,609 and the present
invention has low operating costs because no heating or air conditioning
is required for the dispensing machines and they consume a relatively low
level of electrical energy. In addition, the dispensing machine of the
U.S. Pat. No. 7,234,609 has low maintenance costs and downtime.

[0012] The dispensing machine of the U.S. Pat. No. 7,234,609 and the
present invention addresses the shortcomings of traditional
brick-and-mortar stores in a convenient and cost-effective delivery
vehicle having the added bonus of serving as an effective promotional
platform that drives incremental sales to retail locations. In addition,
the dispensing machine of the U.S. Pat. No. 7,234,609 and the present
invention overcomes these disadvantages by at least offering more new
releases and older selections for any given time period, and lower cost
per viewing with significantly more convenience than Internet-based and
pay-per-view services.

[0013] The dispensing machine of the U.S. Pat. No. 7,234,609 and the
present invention is a fully automated, integrated DVD, Blu-Ray, and
video game rental and/or purchase systems. It preferably incorporates
robust, secure, scalable software that provides a fully personalized user
experience and real-time feedback to retail locations and advertisers,
scalable hardware that leverages existing technologies such as touch
screen, focused audio speakers and video monitors, technology utilizing
the Internet through a system website or mobile/consumer electronics
device application, and an article transport storage unit that
facilitates the exchange of new discs for old discs in each machine with
virtually no need for human intervention. These technologies and others
fill long-felt needs in the art and give advantages over conventional
video distribution options. The dispensing machine of the U.S. Pat. No.
7,234,609 and the present invention functions as much as a promotional
platform as it does a rental kiosk.

[0014] By utilizing the dispensing machines and the fully-interactive,
real-time, linked Internet website or mobile/consumer electronics device
applications, consumers can rent one or more DVDs, Blu-Ray discs, video
games, or other entertainment content directly from dispensing machines
as well as indirectly by making a rental reservation through the website
or application for later pickup at a conveniently located machine. These
dispensing machines are preferably networked with each other, with the
inventory control and/or supply office and with the system website or
application by phone-line, DSL, wireless network, or other Internet
connection at each retail location. Through this linked network, the
rental experience for each consumer can be customized based on a profile
for each consumer, such as via personalized home pages and rental
screens.

[0015] Existing media content search engines provide search results that
include only digital media available at digital media content providers.
Other existing media content search engines provide search results that
only include physical media articles, such as DVDs, Blu-Ray discs, and
video games. A user of existing media content search engines cannot view
search results that include an aggregation of digital media and physical
media articles. Some users may wish to rent or obtain a physical media
article rather than access a digital media selection for cost, video
quality, convenience, or other reasons, but these users must access a
specific search engine to obtain results related to the physical media
articles. In addition, the search results from existing media content
search engines may include results that are based directly on the search
criteria, while some users may be interested in additional media content
that is indirectly associated with the search criteria. Furthermore, the
search results from existing media content search engines may include
media selections that are only available to customers with certain
subscription packages. In this case, a user may become frustrated when
they attempt to view a particular media selection only to find that their
subscription package does not allow access.

[0016] The present invention permits a user to search for media content
including physical media articles and digital media. Physical media
articles may include, for example, DVDs, Blu-Ray discs, and video game
discs, while digital media may include, for example, streaming videos,
videos-on-demand, downloadable videos, streaming video games, and
downloadable video games. Searching for media content may include
matching keywords in search criteria or using predefined search criteria
for browsing of static or dynamic listings of media content. By returning
search results that aggregate both physical and digital media content,
the present invention allows users to have convenient access to all of
their media content options. Moreover, content providers for the digital
media selections and providers of the physical media articles receive
exposure to potential customers by allowing users to see the breadth and
availability of multiple types of media content in a single search result
set. The present invention overcomes disadvantages of existing media
content search engines by showing search results that include media
articles and media selections corresponding to search criteria received
in a search request. The availability of the media articles and media
selections is also provided, such as information related to inventory and
subscription access. A metadata database is searched for the metadata of
a media article matching search criteria and the metadata of a media
selection matching the search criteria, in response to receiving a search
request with the search criteria. An availability of the matching media
article at an article dispensing machine is determined, an associated
content provider is identified, and an availability of the matching media
selection at the associated content provider is determined. A search
result set based on the determined availabilities of the matching media
article and the matching media selection is provided. A customer
subscription for the associated content provider is accessed so that the
matching media selection is returned in the search result set if the
customer subscription allows access to the matching media selection.
Other features and advantages are provided by the following description
and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0017] FIG. 1 is an illustration of a system for communicating and
processing information in a network of article dispensing machines and
dispensing apparatus.

[0018] FIG. 2 is a perspective view of an article dispensing machine
constructed in accordance with the principles of the present invention.

[0019]FIG. 3 is a high-level block diagram illustrating a networked media
content system and connections including an article dispensing machine, a
system backend, a content provider backend, and an A/V display interface.

[0020] FIG. 4 is a block diagram illustrating the system backend.

[0021] FIG. 5 is a block diagram illustrating connections between the
system backend and the content provider backend.

[0022] FIG. 6 is a block diagram illustrating connections between the
system backend, the content provider backend, and the A/V display
interface.

[0023] FIG. 7 is a flowchart illustrating operations for searching for
media content in a metadata database.

[0024]FIG. 8 is a flowchart illustrating an embodiment of operations for
searching a metadata database in response to a search request in the
search operation of FIG. 7.

[0025]FIG. 9 is a flowchart illustrating an alternate embodiment of
operations for searching a metadata database in response to a search
request in the search operation of FIG. 7.

[0026] FIG. 10 is a flowchart illustrating operations for determining an
availability of a matching media article in the search operation of FIG.
7.

[0027] FIG. 11 is a flowchart illustrating operations for identifying an
associated content provider in the search operation of FIG. 7.

[0028] FIG. 12 is a flowchart illustrating operations for determining an
availability of a matching media selection in the search operation of
FIG. 7.

[0029] FIG. 13 is a flowchart illustrating operations for receiving a
transaction request in the search operation of FIG. 7.

DETAILED DESCRIPTION OF THE INVENTION

[0030] While this invention is susceptible of embodiments in many
different forms, there is shown in the drawings and will herein be
described in detail preferred embodiments of the invention with the
understanding that the present disclosure is to be considered as an
exemplification of the principles of the invention and is not intended to
limit the broad aspect of the invention to the embodiments illustrated.

[0031] FIGS. 1-2 illustrate an article dispensing machine designated 230.
Article dispensing machine 230 is one of a plurality of article
dispensing machines included within an article distribution system having
a plurality of such machines situated at a plurality of retail locations.
The article dispensing machines of a particular article distribution
system preferably form a network. As such, those machines are preferably
in electrical communication with each other and with a central server or
central controller.

[0032] As shown in FIG. 1, each article dispensing machine 230 includes a
dispensing machine processor 300, also referred to herein as a vending
controller, which is connected to a first sensor 270 and a second sensor
370, a first motor 251 and a second motor 262 and a user interface
control system 234, collectively referred to as "the peripheral devices."
The processor is capable of executing various programs to provide input
to and/or receive outputs from the peripheral devices. Suitable
processors for such use are known to those of skill in the art. In
addition, the processor is operably connected to at least one memory
storage device 281, such as a hard-drive or flash-drive or other suitable
memory storage device.

[0034] The article dispensing machines 230 preferably comprise a network
of machines in communication with one another. As shown in FIG. 1, in the
preferred configuration, the article dispensing machines 230 are
networked with one another via a central server or central controller 302
in a hub-and-spoke system. However, optionally, the article dispensing
machines may be connected and communicate directly with one another,
and/or subsets of article dispensing machines may communicate with one
another directly as well as with the central server 302.

[0035] Generally, in terms of hardware architecture, the central server
302 and the content provider backend 308 shown in FIG. 3 include a
central processor and/or controller, central memory, and one or more
input and/or output (I/O) devices (or peripherals) that are
communicatively coupled via a local interface. The architecture of the
central server 302 is set forth in greater detail in U.S. Pat. No.
7,234,609, the contents of which are incorporated herein by reference.
Numerous variations of the architecture of the central server 302 and the
content provider backend 308 would be understood by one of skill in the
art and are encompassed within the scope of the present invention.

[0036] The processor/controller is a hardware device for executing
software, particularly software stored in memory. The processor can be
any custom made or commercially available processor, a central processing
unit (CPU), an auxiliary processor among several processors associated
with the server 302, a semiconductor based microprocessor (in the form of
a microchip or chip set), a macroprocessor, or generally any device for
executing software instructions. Examples of suitable commercially
available microprocessors are as follows: a PA-RISC series microprocessor
from Hewlett-Packard Company, an 80×86 or Pentium series
microprocessor from Intel Corporation, a PowerPC microprocessor from IBM,
a Sparc microprocessor from Sun Microsystems, Inc., or a 68xxx series
microprocessor from Motorola Corporation. The processor may also
represent a distributed processing architecture such as, but not limited
to, SQL, Smalltalk, APL, KLisp, Snobol, Developer 200, MUMPS/Magic.

[0037] The software in memory may include one or more separate programs.
The separate programs comprise ordered listings of executable
instructions for implementing logical functions. The software in memory
includes a suitable operating system (O/S). A non-exhaustive list of
examples of suitable commercially available operating systems is as
follows: (a) a Windows operating system available from Microsoft
Corporation; (b) a Netware operating system available from Novell, Inc.;
(c) a Macintosh operating system available from Apple Inc.; (d) a UNIX
operating system, which is available for purchase from many vendors, such
as the Hewlett-Packard Company, Sun Microsystems, Inc., and AT&T
Corporation; (e) a LINUX operating system, which is freeware that is
readily available on the Internet; (f) a run time Vxworks operating
system from WindRiver Systems, Inc.; or (g) an appliance-based operating
system, such as that implemented in handheld computers, smartphones, or
personal digital assistants (PDAs) (e.g., PalmOS available from Palm
Computing, Inc., Windows CE or Windows Phone available from Microsoft
Corporation, iOS available from Apple Inc, Android available from Google
Inc., BlackBerry OS available from Research in Motion Limited, Symbian
available from Nokia Corp.). The operating system essentially controls
the execution of other computer programs and provides scheduling,
input-output control, file and data management, memory management, and
communication control and related services.

[0038] Steps and/or elements, and/or portions thereof of the present
invention may be implemented using a source program, executable program
(object code), script, or any other entity comprising a set of
instructions to be performed. When a source program, the program needs to
be translated via a compiler, assembler, interpreter, or the like, which
may or may not be included within the memory, so as to operate properly
in connection with the operating system (O/S). Furthermore, the software
embodying the present invention can be written as (a) an object oriented
programming language, which has classes of data and methods, or (b) a
procedural programming language, which has routines, subroutines, and/or
functions, for example but not limited to, C, C++, Pascal, Basic,
Fortran, Cobol, Perl, Java, Ada, and Lua.

[0039] When article dispensing machine 230 is in operation, the article
dispensing machine processor is configured to execute software stored
within article dispensing machine memory, to communicate data to and from
the dispensing machine memory, and to generally control operations of
article dispensing machine pursuant to the software. The software aspects
of the present invention and the O/S, in whole or in part, but typically
the latter, are read by processor, perhaps buffered within the processor,
and then executed.

[0040] When the present invention or aspects thereof are implemented in
software, it should be noted that the software can be stored on any
computer readable medium for use by or in connection with any computer
related system or method. In the context of this document, a computer
readable medium is an electronic, magnetic, optical, or other physical
device or means that can contain or store a computer program for use by
or in connection with a computer related system or method. The present
invention can be embodied in any computer-readable medium for use by or
in connection with an instruction execution system, apparatus, or device,
such as a computer-based system, processor-containing system, or other
system that can fetch the instructions from the instruction execution
system, apparatus, or device and execute the instructions. In the context
of this document, a "computer-readable medium" can be any means that can
store, communicate, propagate, or transport the program for use by or in
connection with the instruction execution system, apparatus, or device.
The computer readable medium can be for example, but not limited to, an
electronic, magnetic, optical, electromagnetic, infrared, or
semiconductor system, apparatus, device, or propagation medium. More
specific examples (a non-exhaustive list) of the computer-readable medium
would include the following: an electrical connection (electronic) having
one or more wires, a portable computer diskette (magnetic), a random
access memory (RAM) (electronic), a read-only memory (ROM) (electronic),
an erasable programmable read-only memory (EPROM, EEPROM, or Flash
memory) (electronic), an optical fiber (optical), and a portable compact
disc read-only memory (CDROM) (optical). Note that the computer-readable
medium could even be paper or another suitable medium upon which the
program is printed, as the program can be electronically captured, via,
for instance, optical scanning of the paper or other medium, then
compiled, interpreted or otherwise processed in a suitable manner if
necessary, and then stored in a computer memory.

[0041] For communication with the central server 302, article dispensing
machine 230 is equipped with network communication equipment and
circuitry. In a preferred embodiment, the network communication equipment
includes a network card such as an Ethernet card. In a preferred network
environment, each of the plurality of article dispensing machines 230 on
the network is configured to use the TCP/IP protocol to communicate via
the network 301. It will be understood, however, that a variety of
network protocols could also be employed, such as IPX/SPX, Netware, PPP
and others. It will also be understood that while a preferred embodiment
of the present invention is for article dispensing machine 230 to have a
"broadband" connection to the network 301, the principles of the present
invention are also practicable with a dialup connection using a standard
modem. Wireless network connections are also contemplated, such as
wireless Ethernet, satellite, infrared, radio frequency, Bluetooth, near
field communication, and cellular networks.

[0042] The central controller 302 communicates with the article dispensing
machine controllers 300 via the network 301. The central controller 302
is preferably located at a central station or office that is remote from
the plurality of article dispensing machines 230. The central controller
302 can operate as the server for communicating over the network 301
between the plurality of article dispensing machines 230. The central
controller 302 receives communications and information from the article
dispensing machines 230, and also transmits communications and
information to the machines 230. For example, when a rental transaction
is performed at the article dispensing machine 230, transaction data such
as the rented title is then transmitted from the machine 230 to the
central controller 302 via the network 301. It will be understood that
central servers in general, such as the central controller 302, are often
distributed. A plurality of central servers/controllers 302 may
optionally be arranged in "load balanced" architecture to improve the
speed and efficiency of the network. To accomplish the implementation of
multiple controllers 302, the controllers 302 may be in communication
with a router/distributor 303.

[0043] The central controller 302 is also in communication with a central
database 304. The central database 304 stores information regarding the
transaction network. For example, the central database 304 stores data
regarding the vending inventory at each of the plurality of article
dispensing machines 230. The central database 304 also stores sales
information regarding the sales quantities of the vending merchandise
stored in the machines 230. For example, the central database 304 stores
information regarding the sales totals for each title and for each
machine 230 vending location. Central database 304 also stores user
information and rental transaction information, such as user IDs, the
date on which discs are due to be returned, the date on which discs were
rented from the machines 230 and a list of valid coupon codes and
restrictions associated with those codes. In certain embodiments, central
database 304 also may be configured to store user PINs. Some of this
information is also preferably stored in article dispensing machine
database 282.

[0044] Central database 304 and databases in the content provider backend
308, such as the content provider customer profile database 502 and other
databases, are preferably relational databases, although other types of
database architectures may be used without departing from the principles
of the present invention. For example, the databases 304 and 502 may be a
SQL database, an Access database or an Oracle database, and in any such
embodiment have the functionality stored herein. Central database 304 is
also preferably capable of being shared, as illustrated, between a
plurality of central controllers 302 and its information is also
preferably capable of being transmitted via network 301. It will be
understood that a variety of methods exist for serving the information
stored in central database 304 and database 502. In one embodiment, .net
and Microsoft Reporting Services are employed, however, other
technologies such as ODBC, MySQL, CFML and the like may be used.

[0045] The central controller 302, central database 304, and components of
the content provider backend 308 are also accessible by an electronic
device 306, which may include a personal computer 102, mobile device 104
(e.g., smartphone, personal digital assistant, etc.), tablet computer
106, video game console 108, television 110, and Blu-Ray player 112. The
electronic device 306 may be in direct or indirect communication with the
central controller 302, central database 304, and/or the content provider
backend 308 through a wired and/or wireless network connection, such as
Ethernet, Wi-Fi, cellular (3G, 4G, etc.), or other type of connection. As
a personal computer 102, the electronic device 306 will be understood as
comprising hardware and software consistent with marketable personal and
laptop computers, such as a display monitor, a keyboard, and a
microprocessor. The electronic device 306 may also comprise Internet
browser software such as Firefox, Internet Explorer, Chrome, or Safari.
Using the browser software, a user of the electronic device 306 can
access a web interface through the central controller 302. An application
may also execute on the electronic device 306 that accesses the central
controller 302. To that end, central controller 302 preferably comprises
web server software such as IIS or Apache. It will be understood that a
variety of web server software and web browser software exists to
implement the principles of the present invention without departing
therefrom. Through the web browser software or application, the
electronic device 306 communicates with the central controller 302 and
allows the user to login to a central command functionality of the
central controller 302 and to view and modify data stored in the central
database 304. The browser interface or application also allows the user
to perform certain system functions, which will affect the inventory and
behavior of the article dispensing machines 230. The electronic device
306 may communicate with the central controller 302, central database
304, and components of the content provider backend 308 using rules and
specifications of an application programming interface (API).

[0046] In a preferred embodiment, a financial server 305 is also in
communication with the network 301. It will be understood that a variety
of financial services exist for processing financial information via the
Internet and other networks 301. Those services allow for the processing
of credit card and debit card information, so that users of the services
do not have to interface directly with credit and debit card companies.
In FIG. 1, the financial server 305 is illustrated as a single server,
although the financial server 305 may comprise an entire sub-network of
financial servers 305 responsible for processing financial information.

[0047] As shown in FIG. 2, article dispensing machine 230 includes a
machine housing 232 with front, rear, top, bottom and side panels. The
machine housing 232 is preferably a combination molded fiberglass and
sheet metal cabinet. However, those skilled in the art will appreciate
that the housing can be constructed from a variety of other suitable
materials and with a variety of other suitable manufacturing techniques.

[0048] As shown most clearly in FIG. 2, a user interface portion 234 of
housing 232 includes a card reader 240, a keypad and/or touch screen 242
and an article transfer opening 244. The card reader 240 is preferably
designed in known fashion to read magnetically encoded membership and/or
credit/debit cards for authorizing the distribution of articles of
inventory through the article transfer opening 244. Keypad and/or touch
screen 242 permits consumers and/or inventory stocking personnel to
communicate with the dispensing machine 230 and/or a central office
linked in electrical communication with the dispensing machine. Keypad
and/or touch screen 242 also permits consumers and/or inventory stocking
personnel to enter appropriate commands directed to carrying out specific
machine tasks. It will be appreciated that the optional touch screen
includes a monitor made with known technologies making it capable of
being utilized as a user interface for entry of commands designed to
carry out machine tasks. The touch screen 242 may also be capable of
displaying a QR (Quick Response) code to a customer. The customer may
read the QR code with a camera on a mobile device or with a dedicated QR
code reader. The QR code can represent a universal resource locator (URL)
to access a digital media selection, for example.

[0049] Furthermore, it will be appreciated that additional user interface
portions having additional or even identical user interface components
could be incorporated within article dispensing machine 230. For example,
these components could be incorporated on other panels of the housing 232
of machine 230 so that the machine can be used simultaneously by multiple
consumers, translating into more efficient distribution of articles in
high traffic areas. Dispensing machine 230 also preferably includes
speaker units. Known audio technology may be incorporated within
dispensing machine 230 to broadcast focused audio directed to relatively
small (e.g., three square feet) locations in front of the machines from
speaker units and/or in other designated locations at a retail site.

[0050]FIG. 3 illustrates a networked media content system 310 including
an article dispensing machine 230, a system backend 307, a content
provider backend 308, and an audio/visual (A/V) display interface 309.
The networked media content system 310 provides for a variety of
processes involving management, manipulation, searching, presentation,
and notification related to digital content and vendible physical media
articles, including processes related to the present invention for
searching for media content in a metadata database. The networked media
content system 310 allows for direct and indirect communication between
the components in the networked media content system 310 via one or more
networks. The components in the networked media content system 310 may be
operated by one or more entities. In one embodiment, the article
dispensing machine(s) 230 and the system backend 307 are operated by a
first entity, such as the operator of the article dispensing machines,
while the content provider backend 308 and the A/V display interface 309
are operated by a second entity, such as a content provider. In another
embodiment, all of the components shown in the networked media content
system 310 of FIG. 3 are operated by the same entity. The physical media
article may include at least a DVD, Blu-Ray disc, video game disc, or
other media article including those that are out-of-stock or otherwise
unavailable for rental. The digital media selections may include
streaming video content, video-on-demand content, downloadable video
content, streaming video games, downloadable video games, or other
digital media. Streaming or downloadable video games may include content
related to video games, such as expansion packs and add-on packs.
Although FIG. 3 shows a single content provider backend 308 and a single
A/V display interface 309, it is contemplated that more than one content
provider backend and/or A/V display interfaces may be in communication
with the system backend 307.

[0051] The system backend 307 includes components that primarily
communicate information, such as transaction and inventory data, to and
from the article dispensing machines 230. Components in the system
backend 307 also communicate information to and from the content provider
backend 308 and the A/V display interface 309. The system backend 307 is
detailed below with reference to FIG. 4. The content provider backend 308
includes components that primarily communicate information to and from
the A/V display interface 309. Components in the content provider backend
308 also communicate information to and from the system backend 307, as
detailed further below. Data communicated between the article dispensing
machines 230, the system backend 307, the content provider backend 308,
and/or the A/V display interface 309 may utilize the XML (Extensible
Markup Language) format. The A/V display interface 309 may communicate
with the system backend 307 and/or the content provider backend 308 using
rules and specifications of an application programming interface (API).

[0053] The article dispensing machines 230 can communicate with the system
backend 307, including the central server and controller 302, via network
communication equipment and circuitry, as detailed above. Furthermore,
the system backend 307 can communicate with the content provider backend
308 and the A/V display interface 309 via the same or different network
communication equipment and circuitry. In particular, the system backend
307 can directly communicate with the content provider backend 308 and
the A/V display interface 309, or in one embodiment, the system backend
307 can communicate with the A/V display interface 309 through the
content provider backend 308. It will also be understood that while a
preferred embodiment of the present invention is for the components of
the system 310 to have a "broadband" connection with one another, the
principles of the present invention are also practicable with a dialup
connection using a standard modem. Wireless network connections are also
contemplated, such as wireless Ethernet, satellite, infrared, radio
frequency, Bluetooth, near field communication, and cellular networks.

[0054] Each of the article dispensing machines 230 may operate without
requiring continuous connectivity and communication with the central
controller 302. In one embodiment, the central controller 302 only
transmits data in response to communication from an article dispensing
machine 230. For example, an article dispensing machine 230 may attempt
to communicate with the central controller 302 following completion of
one or more rental transactions or one or more media article return
transactions. In another embodiment, the article dispensing machine 230
continues normal operations and transactions even if communication is
interrupted or cannot be established with the central controller 302. In
these cases, transaction data can be stored locally in the article
dispensing machine 230, such as in the article dispensing machine memory
storage device 281, until a predetermined time interval elapses, when a
predetermined number of transactions is reached, or until communication
with the central controller 302 can be reestablished. Once communication
is established with the central controller 302, financial and inventory
information can be uploaded and the appropriate servers and databases can
be updated.

[0055] In one embodiment, the article dispensing machine 230 can display
only media articles which are physically located at the article
dispensing machine 230. In this way, a customer may browse on the user
interface 234 only the media articles which are in-stock and available to
rent at that article dispensing machine 230. Typically, the article
dispensing machine 230 possesses media information for the media articles
that are currently located in the article dispensing machine 230. The
media information for a media article includes title, actor, director,
studio, publisher, plot synopsis, format, description, parental rating,
individualized ratings and reviews, popularity, article type, running
time, genre, cover artwork, or other information. The article dispensing
machine 230 can also store in memory the media information for
recently-rented media articles that are no longer physically stored in
the article dispensing machine 230. The article dispensing machine 230
can communicate with the central controller 302 when media information
about a particular media article is needed. For example, when a
particular media article is returned to an article dispensing machine 230
that does not have the corresponding media information for that
particular media article, the article dispensing machine 230 can query
the central controller 302, metadata database 410, and/or inventory
database 412 for the media information. Once the media information is
obtained, the article dispensing machine 230 may display that particular
media article on the user interface 234 as in-stock and available to
rent.

[0056] In another embodiment, the article dispensing machine 230 can
display media articles that are both physically located and not
physically located at the article dispensing machine 230. In this
embodiment, media articles which are both available and unavailable to
rent can be displayed. A media article may be unavailable to rent if it
is not in-stock or is in-stock but has been reserved for rental. In one
example, the entire catalog of media articles stored in the inventory
database 412 can be displayed on the article dispensing machine 230. In
another example, a subset of the entire catalog of media articles can be
displayed on the article dispensing machine 230. The subset of media
articles that can be displayed on the article dispensing machine 230 may
be determined, for example, based on geographic location, retailer
agreements, contractual obligations, customer rental habits, and other
criteria. The media articles that can be displayed on the article
dispensing machine 230 may include recently-rented media articles that
are no longer physically stored in the article dispensing machine 230 or
media articles that have never been physically in the article dispensing
machine 230. For example, media articles that have never been physically
in the article dispensing machine 230 may be displayed because those
media articles may be available at a nearby article dispensing machine.
In this case, those media articles may be displayed to the customer so
that the customer has an option to obtain those media articles from the
nearby article dispensing machine 230. In this embodiment, if a customer
attempts to rent a media article that is out-of-stock, reserved for
another customer, or otherwise cannot be vended at the particular article
dispensing machine 230, then that media article can be deemed an
unavailable media article. Although a physical unavailable media article
cannot be rented from the particular article dispensing machine 230, a
digital alternative media selection may be available and substituted for
the unavailable media article.

[0057] FIG. 4 is a block diagram illustrating the system backend 307 and
connections to and from the system backend 307 to the article dispensing
machines 230, the content provider backend 308, and the A/V display
interface 309. The system backend 307 includes components that provide
and receive data to and from the article dispensing machines 230 during
DVD, Blu-Ray disc, and video game rental transactions and other
transactions. Components in the system backend 307 are utilized in
relation to the present invention for searching for media content in a
metadata database, as described below. It will be understood that
components 402, 404, 406, 408, 414, 416, 418, and 420 in the system
backend 307 may be implemented, for example, by the central controller
302 using instructions stored in a memory connected to the central
controller 302. It will be further understood that the databases 404,
410, and 412 may be implemented as part of the central database 304 or as
separate databases.

[0058] The identification and authentication controller 402 can receive a
unique customer identifier that a customer provides to the article
dispensing machines 230 during a rental transaction. The unique customer
identifier can be a credit or debit card number, a hashed version of a
credit or debit card number, or other unique identifier used for payment
and/or identification purposes. In the case of hashing of the credit or
debit card number, the hash function applied to the credit or debit card
number is preferably implemented on the article dispensing machines 230
and may be, for example, a SHA-256 hashing algorithm. The identification
and authentication controller 402 can validate the payment capability of
a credit or debit card by communicating with the financial server 305.

[0059] A customer may be authenticated to multiple customer profiles and
accounts by the identification and authentication controller 402. The
unique customer identifier provided by the customer can authenticate the
customer to an existing customer profile and account for the article
dispensing machines 230. The existing customer profile and account can be
stored and looked up using the unique customer identifier in the customer
profile database 404 that is connected to the identification and
authentication controller 402. The unique customer identifier can also
link the existing customer account to a content provider customer account
via a connection from the customer profile database 404 to the content
provider customer profile database 502 in the content provider backend
308, as shown in FIG. 5. Zero, one, or more content provider customer
accounts may be linked in the customer profile database 404 to the
existing customer account for the article dispensing machines 230. A
content provider may include, but is not limited to, a cable television
operator, a satellite television service provider, an IPTV (Internet
Protocol television) provider, an online gaming and digital media
delivery service (Xbox Live, PlayStation Network, OnLive, etc.), a
website (YouTube, Hulu, etc.), a movie studio, a television network, a
game publisher, or a retailer (Best Buy, Walmart, etc.). Media selections
available from a content provider may include videos on demand, streaming
videos, downloadable videos, streaming video games, or downloadable video
games. The media selections may be available through the AN display
interface 309 that is in communication with the content provider backend
308.

[0060] The customer profile database 404 can contain information related
to customers of the article dispensing machines 230, including name,
mailing and billing addresses, email addresses, phone and mobile numbers,
username, password, payment methods, rental history, purchase history,
preferred article dispensing machines, movie and video game genre
preferences, customizations, subscriptions, parental controls, linked
content provider accounts, content provider subscriptions and
entitlements, and other data. A rental transaction can be personalized
using information from the customer profile database 404 at the article
dispensing machines 230 and a website interface 418. For example, only
certain genres and titles of DVDs, Blu-Ray discs, or video games could be
shown if a customer sets particular preferences that are then stored in
the customer profile database 404. Some of the information stored in the
customer profile database 404 may also be stored in the article
dispensing machine database 282. The customer profile database 404 may
include a service which facilitates interfacing and communicating with a
notification engine 406 and other components of the system backend 307,
for example.

[0061] The website interface 418 can be interactive and accessible to a
customer using web browser software at an electronic device 306. The
website interface 418 may also include a mobile application or consumer
electronics device application. Rentable media articles may be searched,
browsed, and reserved on the website interface 418 for receipt at the
article dispensing machines 230. The location of and the inventory at
article dispensing machines 230 can be viewed at the website interface
418. Digital media selections from content providers, such as streaming,
downloadable, and on-demand media, may also be searched, browsed, and
accessed on the website interface 418. A customer can access their
customer profile on the website interface 418 for purposes of verifying
and updating their personal information in the customer profile database
404. For example, a customer can link an account they have with a content
provider on the website interface 418 by specifying their username,
password, account number, and/or other identifying information for the
content provider account. The system backend 307 can utilize SAML
(Security Assertion Markup Language), OAuth (Open Authentication), or
other protocols to authenticate the identity of the customer at the
content provider via a connection from the website interface 418 to the
content provider identification and authentication controller 506 in the
content provider backend 308, as shown in FIG. 5. If the identifying
information matches the content provider account, the linkage to the
content provider account can be stored in the customer profile database
404.

[0063] Physical media articles that may be rented at the article
dispensing machines 230 and digital media selections available at the
content provider may be synchronized and mapped to one another by
matching their respective metadata. As seen in FIG. 5, a synchronization
and mapping engine 414 connected to the customer profile database 404,
the metadata database 410, and the content provider asset management
system 504 in the content provider backend 308 may compare the metadata
for the media articles and media selections to determine matches.
Metadata in the content provider asset management system 504 for media
selections can be compared to metadata in the metadata database 410 to
perform the matching. For example, a combination of a title, release
date, running time, and/or actor information can be used to map a media
article to a corresponding media selection. In one embodiment,
proprietary identification codes unique to a media article and a media
selection can be used to map the media article to the corresponding media
selection. The proprietary identification codes for the media article and
the media selection can be stored in the metadata database 410 and the
content provider asset management system 504, respectively. Such
proprietary identification codes can be assigned to media articles and
media selections by third party providers such as Rovi, Baseline, and
AMG.

[0064] A media selection at a content provider can be placed in the saved
programs queue 604 on the A/V display interface 309, as shown in FIG. 6,
by providing the appropriate instructions to the content provider asset
management system 504 in the content provider backend 308. Queuing a
media selection may occur, for example, when a customer decides to
purchase the digital media selection from the content provider in place
of a physical media article at an article dispensing machine 230.

[0065] An inventory database 412 can be connected to the article
dispensing machine 230 and the metadata database 410 to provide
information regarding the availability of media articles in the article
dispensing machines 230. In conjunction with a search engine 416, the
inventory database 412 and the metadata database 410 can provide
inventory results for media articles and media selections to an A/V
display interface application 602 on an A/V display interface 309, as
shown in FIG. 6. Such results may include the availability of physical
media articles at the article dispensing machines 230 as well as digital
media selections available at a content provider. The results may also be
provided to the website interface 418 or other websites operated by a
content provider, for example. The synchronization and mapping engine 414
can store the information from the content provider asset management
system 504 regarding media selections at the content provider in the
metadata database 410. The inventory database 412 can also supply the
availability of media articles in the article dispensing machines 230 to
the website interface 418 or to other portals, such as an application on
a mobile device, when queried.

[0066] A metadata database watcher 408 can monitor the metadata database
410 for changes in metadata, media articles, and/or media selections. The
metadata database watcher 408 can use customer watchlist subscriptions
from a customer profile in the customer profile database 404 to determine
what changes to monitor. The changes to the metadata can include
inventory availability, content provider availability, release schedules,
and other information related to a particular title. The customer
watchlist subscriptions can be used by the metadata database watcher 408
to monitor these changes in combination with information regarding
particular actors, directors, and other information. When a change
corresponding to a customer watchlist subscription is found by the
metadata database watcher 408, a notification engine 406 can transmit
notifications and details of the change to the customer. The
notifications may be sent via email, SMS, mobile application alerts,
set-top box notification, or other electronic channels.

[0067] A customer may also subscribe to be notified about new information
regarding their favorite actors, directors, titles, studios, and other
parameters. Such information may include information related to live
performances, television appearances, news and magazine articles, blogs,
and other content. A web crawler and data feed 420 can obtain this
information by searching pertinent websites and use of a public API to
feed the metadata database 410. The customer can subscribe to this
information about their favorites at the website interface 418, for
example. The metadata database watcher 408 monitoring the metadata
database 410 can detect when there is a new piece of information about a
favorite and transmit the desired notifications using the notification
engine 406.

[0068] One embodiment of a process 700 for searching for media content in
a metadata database using the search engine 416 is shown in FIG. 7. The
process 700 can result in a search result set that includes media
articles and media selections that match search criteria in the metadata
database. Searching for media content may include matching keywords in
search criteria or using predefined search criteria for browsing of
static or dynamic listings of media content. The metadata database 410
can contain metadata information for one or more physical media articles,
such as DVDs, Blu-Ray discs, and/or video games, and one or more digital
media selections, such as streaming videos, videos-on-demand, streaming
video games, and/or downloadable video games. An inventory database 412
can be in communication with the metadata database, and contain
information regarding the availability of media articles at the article
dispensing machines 230. The availabilities of the matching media
articles and the matching media selections can also be returned in the
search result set produced by the process 700. As discussed above,
metadata for the media articles and the media selections may include
title, release date, running time, chapter information, technical
details, format, peripheral device requirements, number of players,
online capability, actors, voice actors, director, studio, publisher,
developer, platform, availability of downloadable content, episode
information, genre, critic ratings, individualized ratings, parental
ratings, description, related content, media artwork, media stills, and
other information.

[0069] Matching media articles corresponding to the search criteria can
include media articles that directly match the search criteria and/or
media articles that are indirectly associated with the search criteria.
Similarly, matching media selections may directly or indirectly match the
search criteria. For example, if the search criteria include the keyword
"Camelot", the search result set provided by the process 700 may include
direct matches, such as a media selection listing for the television
series Camelot on the premium cable channel Starz, available as a
video-on-demand, and a media article listing for the 1967 movie Camelot,
available for rental from an article dispensing machine 230. The search
result set may also include indirect matches for associated media
articles and associated media selections, such as the King Arthur video
game or the Merlin television miniseries on DVD, that are available at an
article dispensing machine 230 and/or from a content provider. Metadata
for the associated media articles and media selections may match the
search criteria, which can cause the associated media articles and media
selections to be included in the search result set. In the example above,
the Merlin television miniseries may appear in the search result set
because the search criteria "Camelot" may match a plot keyword in the
metadata of that particular media article. In an alternative embodiment,
the indirect matches may appear in the search result set due to metadata
from the direct matches. The metadata from the direct matches may not
directly match the search criteria, but instead lead to the indirect
matches. In the example above, the King Arthur video game may appear in
the search result set not because the search criteria "Camelot" is in the
metadata for the video game, but because the direct matched television
series Camelot has metadata including "King Arthur".

[0070] In some embodiments, the rental or purchase history of the customer
from the customer database 404 may also be utilized in conjunction with
the metadata of the media article, as described above, to determine
matching media articles and matching media selections. For example, if a
customer attempts to search for the movie Return of the Jedi, indirect
matching media selections may be determined, such as the movies The
Empire Strikes Back and Star Wars Episode I: The Phantom Menace. The
indirect matching media selections may be determined based on metadata
for the movie Return of the Jedi and/or the prior rental history of the
customer that may include, for example, rentals of the movie Star Wars
and the video game Star Wars: Battlefront.

[0071] The search result set provided by the process 700 may also be
ordered or ranked by combinations of criteria, such as by price, version,
video quality, audio quality, availability, release date, and/or other
factors, including the metadata described above. Versions of media
articles and media selections may differ based on the aspect ratio of the
media (4:3, 16:9, and others), ratings, geographical restrictions,
special features, three-dimensional content, or other differences. The
video quality of media articles and media selections may differ due to
the resolution of the media, such as 480p, 480i, 720p, 1080i, and 1080p.
Audio quality may vary for media articles and media selections, such as
by the type of multichannel audio technology (Dolby Digital, DTS, and
others) and number of audio channels (9.1, 7.1, 6.1, 5.1, stereo, mono,
and others). The availability and release date of media articles and
media selections may include whether a certain title is "coming soon" to
or "leaving soon" from an article dispensing machine 230 or a content
provider, for example. Availability and release dates may also be
designated by studios that produced and created the media. In one
embodiment, one or more recommendations for the best viewing option(s)
may be provided to the user based on the criteria. For example, the
viewing option with the lowest price and the highest video resolution
that is currently available to access may be highlighted in the search
result set. In another embodiment, the criteria may be displayed with
results in the search result set so that the user can decide which option
they would like to access.

[0072] At step 702, a search request can be received at the search engine
416. The search request includes search criteria, search keywords, and/or
search phrases from a user that wishes to search the metadata database
410 and/or the inventory database 412 for a media article or a media
selection. The search request may be received from a website accessed by
the electronic device 306, such as the website interface 418 or website
operated by a content provider; an application 602 executing on an A/V
display interface 309 or the electronic device 306; or from any other
device or portal capable of transmitting the search request to the search
engine 416. For example, a user using the website interface 418 may wish
to search for media articles available at an article dispensing machine
230. As another example, a user may be using a website operated by a
content provider and desires to search for media selections provided by
the content provider. In either example, the process 700 may provide a
search result set that includes both matching media articles and matching
media selections that correspond to the search criteria in the user's
search request. The search result set provided by the process 700
therefore aggregates physical matching media articles and digital
matching media selections.

[0073] The search request received at step 702 may also include a browsing
request that uses predefined search criteria for browsing of static or
dynamic listings of media content. The browsing request may be received
from a user that wishes to browse the metadata database 410 and/or the
inventory database 412 for a media article or a media selection. The
browsing request may include browsing an entire catalog of media content
and/or browsing by genre, format, rating, popularity, platform, release
date, and/or other metadata. The search criteria or keywords related to a
browsing request may include predefined search criteria or keywords that
result in the listing of matching media articles and matching media
selections that match the predefined search criteria or keywords. For
example, a user using the website interface 418 may wish to browse for
media articles at an article dispensing machine 230 that are only in the
action genre and in Blu-Ray format. Predefined search criteria would be
used so that only media articles in the action genre and in Blu-Ray
format are listed. The process 700 may provide a search result set that
includes both matching media articles and matching media selections that
correspond to the search criteria in the browsing request.

[0074] At step 704, the metadata database 410 can be accessed by the
synchronization and mapping database 414 to search for metadata of the
media articles and media selections that match the search criteria
received in the search request at step 702. In one embodiment, the media
articles have been obtained from the inventory database 412 and their
corresponding metadata from the metadata database 410, and the media
selections in the metadata database 410 and their corresponding metadata
have been obtained from the content provider asset management system 504
via the synchronization and mapping engine 414. When the metadata
database 410 is searched at step 704 in this embodiment, matching media
articles and matching media selections that directly and indirectly match
the search criteria are found and stored for later use in the process
700. As detailed above, indirect matches may include media articles and
media selections that are not directly associated with the search
criteria. In some embodiments, only direct matches based on the search
criteria can be found and stored.

[0075] In other embodiments, the media articles and the media selections
in the metadata database 410 will be mapped to one another based on their
respective metadata at step 704. One embodiment shown in FIG. 8 is a
process 800 that is performed in step 704 of the process 700, in which
media articles matching the search criteria may be retrieved first,
followed by using metadata of the matching media articles to find
matching media selections. At step 802, the matching media articles are
retrieved from the metadata database 410, based on the search criteria in
the search request. It can be determined at step 804 whether the metadata
of the matching media articles matches the metadata of one or more media
selections in the metadata database 410. For example, a combination of
the title of a movie and the release year may allow a match of a movie
DVD or Blu-Ray disc to a streaming movie, downloadable movie, or
video-on-demand that may be available from a content provider. As another
example, a combination of the title of a television series, the episode
title, episode number, and release year may allow a match of a television
show DVD or Blu-Ray disc to a media selection available from a content
provider. As a further example, a combination of the title of a video
game, release date, and publisher may allow a match of a video game to a
streaming or downloadable game from a content provider. In the case of a
movie or television show, if a match between the matching media article
and a media selection is not found with the title, episode, and/or
release year information, the synchronization and mapping engine 414
could also utilize the running time of the movie or television show and
the names or initials of the top-billed actors. It will be understood
that metadata in any combination may be used to obtain a mapping of media
articles to media selections. If no match between a matching media
article and a media selection is found at step 804, the central
controller 302 may store only the matching media articles at step 808 for
later use in the process 700. However, if a match is found at step 804,
the matching media articles, the matching media selections, and the
associated content providers are stored at step 806 for later use in the
process 700.

[0076] Another embodiment shown in FIG. 9 is a process 900 that is
performed in step 704 of the process 700, in which media selections
matching the search criteria may be retrieved first, followed by using
metadata of the matching media selections to find matching media
articles. At step 902, the matching media selections are retrieved from
the metadata database 410, based on the search criteria in the search
request. It can be determined at step 904 whether the metadata of the
matching media selections matches the metadata of one or more media
articles in the metadata database 410. The matching performed at step 904
is similar to the matching performed at step 804 in the process 800
described above using one or more combinations of the metadata. If no
match between a matching media selection and a media article is found at
step 904, the central controller 302 may store only the matching media
selections at step 908 for later use in the process 700. However, if a
match is found at step 904, the matching media selections, the associated
content providers, and the matching media articles can be stored at step
906 for later use in the process 700.

[0077] Referring back to FIG. 7, following the search of the metadata
database 410 at step 704, the availability of matching media articles can
be determined at step 706 by the central controller 302. A preferred
embodiment of step 706 in the process 700 is shown in FIG. 10. At step
1002, the location of one or more article dispensing machines 230 can be
determined. The location(s) of the article dispensing machines 230 can be
determined based on geographic proximity to the location where the search
request originated from. The article dispensing machine 230 locations
could also be determined based on a location that is manually entered by
a user. In one example, the location from where the search request
originated is determined based on Internet Protocol (IP) address, an
address of the user, Global Positioning System (GPS) coordinates, or
other methodologies. The locations of the article dispensing machines 230
that are closest to the originating location may then be determined. The
locations may be limited by a radius, city, town, zip code, or other
limitation. In another example, the location of one or more specific
article dispensing machines 230 may be input by a user at step 1002.

[0078] At step 1004, the inventory database 412 can be queried to
determine whether the matching media articles are available at the
locations of the article dispensing machines 230 found at step 1002. If
the matching media articles are available at one or more article
dispensing machines 230 at step 1006, then at step 1008, the locations of
those article dispensing machines 230 can be stored for later use in the
process 700. However, if the matching media articles are not available at
any article dispensing machine 230 at step 1006, then no available
locations can be stored at step 1010.

[0079] Returning to FIG. 7, following step 706, associated content
providers for matching media selections may be determined at step 708. A
preferred embodiment of step 708 in the process 700 is shown in FIG. 11.
At step 1102, a unique customer identifier may be received by the central
controller 302. The central controller 302 can match the unique customer
identifier to a particular customer profile in the customer profile
database 404. The unique customer identifier could be a credit or debit
card number processed through a hash function. The hashed credit or debit
card number can be used to look up a customer profile in the customer
profile database 404. The unique customer identifier may also include a
customer-provided identification of the associated content provider. The
customer could also provide what content providers they are associated
with, and optionally provide the specific subscription package they
subscribe to, instead of providing a credit card number or account
number.

[0080] If the unique customer identifier is present in the customer
profile database 404 at step 1104, then the process continues to step
1106. At step 1106, the central controller 302 can determine whether
there is an associated content provider linked to the customer profile
found at step 1104. The customer profile in the customer profile database
404 may contain a linkage to an associated content provider. If there is
not a content provider associated with the customer profile at step 1106
or if no unique customer identifier is found in the customer profile
database 404 at step 1104, the customer may provide the linkages of
content providers at step 1108. The customer profile in the customer
profile database 404 can include information obtained from the content
provider customer profile database 502 in the content provider backend
308, such as an account number, email address, subscription information,
and other information related to the customer's content provider customer
profile.

[0081] If there is a content provider associated with the customer
identifier at step 1106, the process continues to step 1110 where
subscription information at the content provider for the customer is
retrieved from the customer profile database 404. The customer profile
database 404 may contain subscription and entitlement information that
was previously received from the content provider customer profile
database 502 in the content provider backend 308. Subscription
information at the content provider can include the customer's subscribed
service package, premium channel content the customer entitled to access,
zip code and address for possible geographical content restrictions,
parental authorization and controls for age authentication, and other
subscriber information. The subscription information may be used by the
central controller 302 at step 710 when determining the availability of
matching media selections for the customer at particular content
providers. Step 1110 is also performed following step 1108 when a
customer has entered a linkage to a content provider.

[0082] Following step 708 in FIG. 7, the availability of matching media
selections can be determined at step 710. A preferred embodiment of step
710 in the process 700 is shown in FIG. 12. At step 1202, the matching
media selections, associated content providers, and subscription
information may be accessed. This information may have been supplied and
stored previously at step 708 and in particular, steps 1106, 1108, and
1110. At step 1204, the central controller 302 determines whether the
matching media selections are available at a content provider that is
linked to the customer. In addition to determining whether the matching
media selections are available at a linked content provider, the central
controller 302 can determine at step 1204 whether the customer has
permission to access the matching media selection based on the
subscription information in the customer profile database 404 that was
previously obtained at step 1110.

[0083] A customer may be entitled to access a digital matching media
selection for free, such as when the matching media selection is already
available within the customer's subscription package, or when the
matching media selection is publicly available. In other cases, a
customer may only have access to a matching media selection by providing
additional payment, such as when the customer's subscription package does
not allow access to the matching media selection or when the matching
media selection is only available at an a la carte content provider. For
example, if the customer's subscription package allows access to Home Box
Office (HBO) content and the matching media selection is available
through HBO, then the customer will have access to the matching media
selection without additional payment. As another example, if the
customer's subscription package only allows access to Showtime content
and the matching media selection is only available through HBO, then the
customer will not have access to the matching media selection. In this
case, the customer may have the option to upgrade their subscription
package to include HBO or utilize an a la carte content provider for an
additional payment. As a further example, if the customer is a Comcast
subscriber and the matching media selection is available as a free
video-on-demand selection on Comcast, then the customer will have access
to the matching media selection without additional payment. However, if
the matching media selection is only available through Hulu Plus, then
the customer will not have access to the matching media selection unless
the customer provides additional payment.

[0084] If the matching media selection is available at a linked content
provider at step 1204, the process 710 continues to step 1205 to
determine the device applicability of the matching media selection. A
matching media selection may be available in one or more formats,
depending on the technical details of the matching media selection, such
as version, video quality, and audio quality. If the A/V display
interface 309 that is to display the matching media selection does not
support the technical details of the matching media selection, then the
matching media selection may be removed from the search result set. For
example, the matching media selection may only be available in 1080p high
definition resolution. If the A/V display interface 309 cannot display
1080p resolution, then the A/V display interface 309 does not support
display of the matching media selection and the matching media selection
can be removed from the search result set. As another example, the
matching media selection may be available in 5.1 channel audio format and
in mono audio format. If the A/V display interface 309 only supports mono
audio format, then the matching media selection in 5.1 channel audio
format can be removed from the search result set. However, the matching
media selection in mono audio format can remain in the search result set.
By determining the device applicability of the matching media selection
at step 1205, only the applicable and appropriate matching media
selections will be included in the search result set provided by the
process 700. At step 1206, the applicable matching media selections and
associated content providers can be stored for later use in the process
700.

[0085] If the matching media selection is not available at a linked
content provider at step 1204, then the central controller 302 can obtain
other content provider options, if any, at step 1208. Other content
provider options may include a la carte content providers such as Amazon
Instant Video, iTunes Store, YouTube, VUDU, and other services that allow
a user to individually purchase media without requiring a subscription.
Further content provider options that may be obtained at step 1014
include retailers that grant rights to a digital media selection in
conjunction with the purchase of a physical item (e.g., Best Buy,
Walmart, etc.), movie studios, television networks, video game
developers, and online gaming delivery services (Xbox Live, PlayStation
Network, OnLive, etc.). For example, a video game may be available from
an online gaming delivery service for download, such as from Xbox Live or
the PlayStation Network, or for streaming, such as from OnLive. If other
content providers are available for the matching media selection, the
process 710 can also continue to step 1205 to determine the device
applicability of the matching media selection, as described above. At
step 1206, the matching media selections and a la carte content providers
can be stored for later use in the process 700.

[0086] Returning to FIG. 7, the available matching media articles from
step 706 and the available matching media selections from step 710 can be
ordered at step 711. The filtering at step 711 may include ordering or
ranking of the matching media articles and matching media selections, as
described earlier, by criteria such as price, version, video quality,
audio quality, availability, release date, and/or other factors, such as
by metadata. Furthermore, one or more recommendations for the best
viewing options may be provided to the user based on the criteria. For
example, the best viewing options may include recommending the piece of
media content that has the lowest price and the best video quality. As
another example, the best viewing options may include recommending the
piece of media content with high definition video quality that will be
available in a week ("coming soon"), such as a Blu-Ray disc, as compared
to another piece of media content that has standard definition video
quality and is available now, such as a streaming video in 480p
resolution.

[0087] Following step 711, the search result set can be provided at step
712. For example, the search result set may be transmitted to the A/V
display interface 309 for display to the user who initiated the search
request. The search result set may include matching media articles that
are available at article dispensing machines 230 closest to the location
where the search request originated. The search result set may also
include matching media selections that are available at associated
content providers and that are accessible based on the subscription
package of a user. The user may also be shown options to access the
matching media articles in the search result set and the matching media
selections and commence a transaction. For example, options may be
displayed for renting, reserving, or pre-reserving a matching media
article at the article dispensing machine 230. Further options may be
displayed for viewing, downloading, saving, or queuing a matching media
selection at the associated content provider.

[0088] Payment options related to the matching media articles and matching
media selections in the search result set may also be displayed at step
712. The payment options may be dependent on the subscription information
obtained at step 1110 or the a la carte content providers obtained at
step 1208. The payment options can include whether the matching media
selection is free to the customer, is free to the customer because of
their subscription service package with a content provider, or will cost
a particular price or number of credits. In one embodiment, the price for
the matching media selection may be discounted to the customer compared
to the retail price. In another embodiment, the customer may also redeem
a promotion code to gain access to the matching media selection. In a
further embodiment, the payment option may include the opportunity to
upgrade to a higher level service package which includes access to the
matching media selection. The customer may pay for the matching media
article and matching media selection using a credit card, redeeming
credits or promotion codes, charging the price to their account at the
content provider, or using other payment methods.

[0089] At step 714 and corresponding step 1302 of FIG. 13, a transaction
request may be received by the central controller 302 following the
provision of the search result set at step 712. As discussed above, the
transaction request may be related to the matching media article or the
matching media selection. At step 1304, it is determined whether the
transaction in the transaction request is related to the matching media
article or the matching media selection. If the transaction is related to
the matching media article, then the process continues to step 1312. At
step 1312, it is determined whether the matching media article has been
released. Whether a media article has been released can be determined
from information stored in the metadata database 410, the inventory
database 412, or from other sources. Media articles that are "leaving
soon" from an article dispensing machine 230 or from a content provider
may be considered released since they are currently available to access.
If the matching media article has been released, then the matching media
article can be reserved for later pickup at an article dispensing machine
230 at step 1314. However, if the matching media article is determined to
not have been released at step 1312, then the matching media article may
be pre-reserved for pickup after it has been released, at step 1316.
Media articles that are "coming soon" to an article dispensing machine
230 or content provider may be considered unreleased since they are not
currently available to access.

[0090] Returning to step 1304, if the transaction request is related to
the matching media selection, then the process continues to step 1306. At
step 1306, it is determined whether additional payment is needed to
access the matching media selection. This may occur, for example, when a
user's particular subscription package does not currently include access
to a matching media selection but where the user could access the
matching media selection by upgrading to a premium subscription package.
As another example, additional payment may be needed if the matching
media selection is available from an a la carte content provider that
requires payment for individual purchases. If additional payment is
needed at step 1306, then the additional payment may be received at step
1308. The additional payment received at step 1308 may include, for
example, a credit or debit card charge, charging the payment to a
customer account at the content provider, redeeming credits or promotion
codes, or other payment methods. Access to the matching media selection
can be granted at step 1310 following the receipt of the additional
payment at step 1308. If additional payment is not needed at step 1306,
access to the matching media selection can also be granted at step 1310.

[0091] Information regarding access to the matching media selection may be
delivered to a user via email, SMS, mobile/consumer electronics device
application alert, or other communication. In one embodiment, an email,
SMS, mobile/consumer electronics device application alert, or other
communication may be sent to the customer with a uniform resource locator
(URL) link to view the matching media selection. In another embodiment, a
QR code representing a URL link to view the matching media selection may
be displayed to the customer.

[0092] In another embodiment, an email, SMS, mobile/consumer electronics
device application alert, or other communication may be sent to the
customer with details on how to view the matching media selection, such
as instructions about how to access a video-on-demand title on an A/V
display interface 309. In another embodiment, the matching media
selection can be queued on the saved programs queue 604 on the A/V
display interface 309 so that an application on the A/V display interface
309 can notify the customer of the availability of the matching media
selection when the application is executed.

[0093] Any process descriptions or blocks in figures should be understood
as representing modules, segments, or portions of code which include one
or more executable instructions for implementing specific logical
functions or steps in the process, and alternate implementations are
included within the scope of the embodiments of the present invention in
which functions may be executed out of order from that shown or
discussed, including substantially concurrently or in reverse order,
depending on the functionality involved, as would be understood by those
having ordinary skill in the art.

[0094] It should be emphasized that the above-described embodiments of the
present invention, particularly, any "preferred" embodiments, are
possible examples of implementations, merely set forth for a clear
understanding of the principles of the invention. Many variations and
modifications may be made to the above-described embodiment(s) of the
invention without substantially departing from the spirit and principles
of the invention. All such modifications are intended to be included
herein within the scope of this disclosure and the present invention and
protected by the following claims.