Patent Description:
In this disclosure, unless otherwise specified and/or unless the particular context clearly dictates otherwise, the terms "a" or "an" mean at least one, and the term "the" means the at least one.

In this disclosure, the term "connection mechanism" means a mechanism that facilitates communication between two or more components, devices, systems, or other entities. A connection mechanism can be a relatively simple mechanism, such as a cable or system bus, or a relatively complex mechanism, such as a packet-based communication network (e.g., the Internet). In some instances, a connection mechanism can include a non-tangible medium (e.g., in the case where the connection is wireless).

In this disclosure, the term "computing system" means a system that includes at least one computing device. In some instances, a computing system can include one or more other computing systems.

In coming years, the replacement of advertisements in media content with targeted advertisements is expected to become an increasingly important advertising method. By way of example, in a dynamic advertisement insertion (DAI) system, a content provider can insert generic advertisements into advertisement-breaks that interrupt sequences of media content, such as live or pre-recorded content. Each advertisement-break can include a set of advertisements arranged in a predetermined order. Further, a particular one of the advertisements can be designated or dynamically selected to be replaced with replacement media content, such as a targeted advertisement.

With this arrangement, prior to displaying the particular advertisement, the playback device can obtain the replacement media content, and then provide the replacement media content for display instead of the particular advertisement. For instance, responsive to determining that the playback device is playing or about to play content immediately preceding the particular advertisement to be replaced, the playback device can retrieve a targeted advertisement from a database, and then provide the targeted advertisement for display in place of the particular advertisement at the appropriate time. <CIT> discloses an arrangement in which a client device accesses a video input stream from an intermediate device for display. The client device analyzes the video input stream to determine that the video input stream matches a template indicating a change of speed. In some example embodiments, the analysis is performed while the client device is generating a video output stream that replaces video content received from a content source via the intermediate device. Based on the video input stream matching the template, the client device modifies the video output stream to show the change of speed. For example, commercials transmitted from a national content provider to a smart TV via a set-top box may be replaced with targeted commercials. During the replacement, fast-forwarding of the commercial may be detected by matching a template with the video input stream. While the video input stream is being fast-forwarded, the smart TV fast-forwards the targeted commercial. <CIT> discloses methods and apparatus for displaying an overlay on top of media content. In some embodiments, a request for presentation of an overlay on top of the media content at a target position on the display screen is handled (e.g. by a local terminal) in accordance with a dynamically determined extent of interference caused by the overlay to the media content. In some embodiments, a modification to at least one overlay attribute of the overlay is computed in accordance with the determined extent of interference, and the modified overlay is display over the underlying media content. Examples of 'overlay attributes' include size, color, transparency and shape. <CIT> discloses a method for identifying media content. The method includes receiving fingerprint media content from a content provider to obtain a first set of fingerprints, the first set of fingerprints including a first subset of fingerprints in a first fingerprint layout and a second subset of fingerprints in a second fingerprint layout. The method can include receiving a second set of fingerprints for media content displayed on the electronic device, the second set of fingerprints comprising a third subset of fingerprints in the first fingerprint layout and a fourth subset of fingerprints in the second fingerprint layout. The method can include matching a first fingerprint in the first subset of fingerprints to a second fingerprint in the third subset of fingerprints or a third fingerprint in the second subset of fingerprints to a fourth fingerprint in the fourth subset of fingerprints in order to identify the media content.

According to an aspect, there is provided a method as set out in claim <NUM>. Optional features are set out in claims <NUM> to <NUM>.

According to another aspect, there is provided a non-transitory computer-readable medium as set out in claim <NUM>. Optional features are set out in claims <NUM> to <NUM>.

According to another aspect, there is provided a computing system as set out in claim <NUM>.

When a viewer modifies operation of a playback device using a remote control, the playback device can provide feedback to the user in the form of an overlay. For instance, when a viewer uses a remote control to access a menu, access a widget, change a volume level, or change a playback speed of media content, the playback device can be configured to display a graphic on top of media content that is currently being displayed on the playback device. The graphic, as well as a location of the graphic, could vary depending on the particular modification.

In some DAI systems, when the playback device is displaying replacement media content and a viewer modifies operation of the playback device using a remote control, the playback device might not be able to provide an overlay corresponding to the desired modification. For instance, if a playback device provides replacement media content for display using a media player that is configured to play media files, the playback device might not be able to display overlays while the replacement media content is being displayed. This can lead to a poor or frustrating user-experience for the viewer. For instance, the viewer might not be sure whether the playback device received an instruction transmitted by the remote control.

Disclosed herein are methods and systems to address this and potentially other issues. The playback device provides replacement media content for display. The playback device then determines that a remote control transmitted an instruction configured to cause a modification to operation of the playback device while the playback device displays the replacement media content. Based on the instruction, the playback device determines an overlay that the playback device is configured to provide for display in conjunction with the modification. Further, the playback device determines a region within a display of the playback device corresponding to the overlay, and modifies a transparency of the region. In this manner, when the playback device provides the overlay for display, the overlay is visible through the replacement media content and may appear as though the overlay is on top of the replacement media content.

<FIG> is a simplified block diagram of an example computing device <NUM>. Computing device <NUM> can perform various acts and/or functions, such as those described in this disclosure. Computing device <NUM> can include various components, such as processor <NUM>, data storage unit <NUM>, communication interface <NUM>, and/or user interface <NUM>. These components can be connected to each other (or to another device, system, or other entity) via connection mechanism <NUM>.

Processor <NUM> can include a general-purpose processor (e.g., a microprocessor) and/or a special-purpose processor (e.g., a digital signal processor (DSP)).

Data storage unit <NUM> can include one or more volatile, non-volatile, removable, and/or non-removable storage components, such as magnetic, optical, or flash storage, and/or can be integrated in whole or in part with processor <NUM>. Further, data storage unit <NUM> can take the form of a non-transitory computer-readable storage medium, having stored thereon program instructions (e.g., compiled or non-compiled program logic and/or machine code) that, when executed by processor <NUM>, cause computing device <NUM> to perform one or more acts and/or functions, such as those described in this disclosure. As such, computing device <NUM> can be configured to perform one or more acts and/or functions, such as those described in this disclosure. Such program instructions can define and/or be part of a discrete software application. In some instances, computing device <NUM> can execute program instructions in response to receiving an input, such as from communication interface <NUM> and/or user interface <NUM>. Data storage unit <NUM> can also store other types of data, such as those types described in this disclosure.

Communication interface <NUM> can allow computing device <NUM> to connect to and/or communicate with another other entity according to one or more protocols. In one example, communication interface <NUM> can be a wired interface, such as an Ethernet interface or a high-definition serial-digital-interface (HD-SDI). In another example, communication interface <NUM> can be a wireless interface, such as a cellular or WI-FI interface. In this disclosure, a connection can be a direct connection or an indirect connection, the latter being a connection that passes through and/or traverses one or more entities, such as such as a router, switcher, or other network device. Likewise, in this disclosure, a transmission can be a direct transmission or an indirect transmission.

User interface <NUM> can facilitate interaction between computing device <NUM> and a user of computing device <NUM>, if applicable. As such, user interface <NUM> can include input components such as a keyboard, a keypad, a mouse, a touch-sensitive panel, a microphone, and/or a camera, and/or output components such as a display device (which, for example, can be combined with a touch-sensitive panel), a sound speaker, and/or a haptic feedback system. More generally, user interface <NUM> can include hardware and/or software components that facilitate interaction between computing device <NUM> and the user of the computing device <NUM>.

Computing device <NUM> can take various forms, such as a workstation terminal, a desktop computer, a laptop, a tablet, a mobile phone, or a television.

<FIG> is a simplified block diagram of an example DAI system <NUM>. The DAI system <NUM> can perform various acts and/or functions related to the delivery and/or presentation of media content (e.g., audio content and/or video content), and can be implemented as a computing system.

DAI system <NUM> can include various components, such as a watching station <NUM>, a content source <NUM>, a set-top box <NUM>, a playback device <NUM>, a video identification system <NUM>, and a replacement content server <NUM>, each of which can be implemented as a computing system. Watching station <NUM> can receive video and other multimedia content from content source <NUM>, such as a broadcaster, web server, or cable television (TV) station. For example, content source <NUM> may be a broadcaster, such as a TV station or TV network, which streams or transmits media over a TV channel to watching station <NUM>, and/or a web service, such as a website, that streams or transmits media over a network <NUM> to watching station <NUM>. Watching station <NUM> includes a reference fingerprint generator <NUM> that generates reference fingerprints of video content received from content source <NUM>.

Set-top box <NUM> can receive the video and other multimedia content from content source <NUM>, such as via a broadcast channel and/or over network <NUM>. Set-top box <NUM> can modify the received content before sending content to playback device <NUM>. Set-top box <NUM> can include a tuner configured to receive an input stream of video content and generate an output stream of video content by processing the input stream. Set-top box <NUM> can be a device equipped with tuners, decoders, and other hardware and/or software such that set-top box <NUM> can access video content through a video content distribution network, such as a terrestrial broadcast, cable, and/or satellite broadcast network employed by multichannel video programming distributers. Additionally or alternatively, set-top box <NUM> can be a device equipped with network adapters, decoders, and other hardware and/or software such that set-top box <NUM> can access video content through a wide area network (e.g., the internet) employed by devices for accessing internet video streaming services. Set-top box <NUM> can output signals (e.g., digital or analog signals) usable by a display of playback device <NUM> to present video content to a user.

Playback device <NUM> is any device capable of receiving and presenting a stream of video and/or other multimedia content (e.g., a TV, a laptop or other personal computer (PC), a tablet or other mobile device, or a gaming device). Playback device <NUM> includes a display or other user interface configured to display a processed stream of video content. The display may be a flat-panel screen, a plasma screen, a light emitting diode (LED) screen, a cathode ray tube (CRT), a liquid crystal display (LCD), or a projector. Playback device <NUM> can also include an antenna configured to receive video by way of an over-the-air broadcast channel.

Network <NUM> may be any network that enables communication between devices, such as a wired network and/or a wireless network (e.g., a mobile network). Network <NUM> can include one or more portions that constitute a private network (e.g., a cable TV network or a satellite TV network) or a public network (e.g., over-the-air broadcast channels or the internet).

Video identification system <NUM> can communicate with watching station <NUM> and playback device <NUM> over network <NUM>. Video identification system may receive a query fingerprint generated from video content by a query fingerprint generator <NUM> of playback device <NUM>, and query an index of known fingerprints generated by a reference fingerprint generator <NUM> of watching station <NUM> in order to identify the video content. The query fingerprint may be a fingerprint of a frame or block of frames within the video content. Video identification system can identify the video content by matching the query fingerprint with one or more reference fingerprints.

Upon identifying the video content, video identification system <NUM> can return to playback device <NUM> an identifier for replacement media content (e.g., alternative programming or alternative commercials) associated with the video content. The replacement media content can be stored in replacement content server <NUM>. Using the identifier, playback device <NUM> can access the replacement media content from replacement content server <NUM> and then provide the replacement media content for display.

Any of the modules, systems, and/or generators may be located at any of the devices shown in <FIG>. For example, video identification system <NUM> can include query fingerprint generator <NUM>. With this arrangement, video identification system can receive frames of video content from playback device <NUM> and generate the query fingerprints using the frames of video content. As another example, set-top box <NUM> and playback device <NUM> can be integrated together within a single device. Other variations are also possible.

<FIG> is a simplified block diagram illustrating components of reference fingerprint generator <NUM>, query fingerprint generator <NUM>, and video identification system <NUM>. As shown in <FIG>, query fingerprint generator <NUM> includes a patch selection module <NUM> and a value calculation module <NUM>, configured to communicate with each other (e.g., via a bus, shared memory, or a switch). Further, video identification system <NUM> includes an index module <NUM>, a fingerprint match module <NUM>, and an identification module <NUM>, all configured to communicate with each other. Still further, reference fingerprint generator <NUM> includes a patch selection module <NUM> and a value calculation module <NUM>, configured to communicate with each other.

One or more of the modules depicted in <FIG> can be implemented using hardware (e.g., a processor of a machine, a field-programmable gate array (FPGA), or an application-specific integrated circuit (ASIC), or a combination of hardware and software. Moreover, any two or more of the modules depicted in <FIG> can be combined into a single module, and the function described herein for a single module can be subdivided among multiple modules.

In line with the discussion above, query fingerprint generator <NUM> and reference fingerprint generator <NUM> can be configured to generate a query fingerprint of one or more frames of video content. For example, query fingerprint generator <NUM> and reference fingerprint generator <NUM> can calculate values of patches of one or more frames within the video content. Patches can be located at different locations within a frame. Query fingerprint generator <NUM> and reference fingerprint generator <NUM> can be configured to combine query fingerprints from multiple frames to generate a query fingerprint of a block of frames of the video content.

By way of example, patch selection module <NUM> of query fingerprint generator <NUM> can be configured to select multiple patches of video content, such as patches associated with one or more regions of a frame or frames within the video content. Similarly, patch selection module <NUM> of reference fingerprint generator <NUM> can be configured to select multiple patches of video content, such as patches associated with one or more regions of a frame of frames within the video content.

Patches can be defined by dividing a frame into a grid, such as a 2x2 grid, a 4x3 grid, or a 4x4 grid, and selecting patches based on the grid. For instance, twenty patches may be selected, with four large patches corresponding to quadrants of a frame, and four small patches corresponding to sub-quadrants of each quadrant (i.e. sixteen small patches in total). In some instances, patches may overlap. Further, patches can cumulatively span less than the entirety of a frame.

Value calculation module <NUM> of query fingerprint generator <NUM> can be configured to calculate a value for each of the selected multiple patches using, for example, an integral image technique. The integral image technique may calculate the values using a summed area table or other data structure that generates a sum of values of a group of pixels. Similarly, value calculation module <NUM> of reference fingerprint generator <NUM> can be configured to calculate a value for each of the selected multiple matches using, for example, an integral imaging technique.

In some examples, value calculation module <NUM> and value calculation module <NUM> can calculate a value for a patch by summing the values of a group of pixels with the patch, averaging the values of a group of pixels, or determining a media value of the group of pixels. Additionally or alternatively, value calculation module <NUM> and value calculation module <NUM> can calculate a value for a patch by computing differences between values of a group of pixels or computing a linear combination of values of a group of pixels.

Index module <NUM> of video identification system <NUM> can be configured to query a database of known reference fingerprints of video content, such as a database of known fingerprints stored within watching station <NUM> or video identification system <NUM>, in order to identify reference fingerprints potentially matching a query fingerprint. Index module <NUM> can be configured to query an index of quantized patch values of the known reference fingerprints.

Fingerprint match module <NUM> of video identification system can be configured to compare a query fingerprint to one or more known reference fingerprints, and determine that the query fingerprint matches at least one known reference fingerprint. For example, fingerprint match module <NUM> can determine that query fingerprint matches at least one known reference fingerprint by determining that a similarity between the query fingerprint and at least one of the known reference fingerprints satisfies a predetermined threshold. The predetermined threshold can be associated with a Tanimoto distance measurement, a Manhattan distance measurement, or other distance measurements. Additionally or alternatively, fingerprint match module <NUM> can use other matching techniques, such as Euclidian, Cosine, KL-Divergence, and/or Itakura matching techniques.

Identification module <NUM>, in turn, can be configured to identify video content based on a determination that a query fingerprint(s) matches at least one reference fingerprint(s). For example, identification module <NUM> can identify the name or title of video content, a location within the video content currently being presented by playback device <NUM>, and/or a channel or broadcaster providing the video content.

<FIG> is a simplified block diagram illustrating components of playback device <NUM> and replacement content server <NUM>. As shown in <FIG>, in addition to query fingerprint generator <NUM>, playback device <NUM> includes a video overlay module <NUM>. Further, replacement content server <NUM> includes a video provision module <NUM> and a template provision module <NUM>.

Video provision module <NUM> can provide replacement media content to playback device <NUM>. For instance, video identification system <NUM> can identify video content that playback device is providing for display and, based on the identified video content, video provision module <NUM> can provide replacement media content corresponding to the video content to playback device <NUM>.

Playback device <NUM> can receive the replacement media content by way of a network communication interface. For instance, the replacement media content can be streamed to playback device <NUM> over the Internet and then stored in a local cache of playback device <NUM>. When playback device <NUM> receives a trigger to insert the replacement media content into a sequence of media content, playback device <NUM> can retrieve the replacement media content from the local cache, and provide the replacement media content for display using a media player that is configured to display media files.

In some instances, providing the replacement media content for display can involve switching from providing media content that is received by way of an over-the-air antenna to providing replacement media content that is stored in a database of playback device <NUM>. Playback device <NUM> can include a system on a chip that includes a frame buffer. In order to provide the replacement media content for display, the media player of playback device <NUM> can insert the replacement media content into the frame buffer. Prior to inserting the replacement media content into the frame buffer, the system on a chip may have inserted media content that is received from a different source (e.g., an over-the-air antenna) into the frame buffer.

The replacement media content can include a targeted advertisement that is to be substituted for a generic advertisement. For instance, the targeted advertisement can be a local advertisement, and the generic advertisement can be a national advertisement. As another example, the targeted advertisement can be an advertisement that is selected based on a demographic of a user of playback device <NUM>.

In some cases, while playback device <NUM> is providing replacement media content for display using a media player, playback device <NUM> can be configured to detect and respond to remote control instructions as though playback device <NUM> is displaying media content from a different input/source. For instance, playback device <NUM> can be configured such that whenever the media player provides replacement media content, playback device <NUM> detects and responds to remote control instructions in the same manner in which playback device <NUM> would have responded prior to the media player providing the replacement media content.

As a particular example, if playback device <NUM> first displays media content received by way of an over-the-air antenna and then switches to providing replacement media content using the media player, upon determining that a remote control provided an instruction during display of the replacement media content, playback device <NUM> can respond to the instruction in the same way that playback device <NUM> would have responded during display of the media content received from the over-the-air antenna. This configuration can allow playback device <NUM> to display a graphic associated with an over-the-air antenna source through the replacement media content while the replacement media content is provided.

Video overlay module <NUM> is configured to carry out various acts to allow overlays to be visible while playback device provides replacement media content. By way of example, while playback device <NUM> is displaying replacement media content using a media player, video overlay module <NUM> can determine that a remote control transmitted an instruction configured to cause a modification to operation of playback device <NUM>, determine an overlay that playback device <NUM> is configured to provide in conjunction with the modification, and modify presentation of the replacement media content such that the overlay is visible through the replacement media content.

Playback device <NUM> can include an infrared receiver. Accordingly, the act of playback device <NUM> determining that a remote control transmitted an instruction configured to cause a modification to operation of playback device <NUM> can involve playback device <NUM>: receiving, via the infrared receiver of playback device <NUM>, the instruction; matching a characteristic of the received instruction with a characteristic of a reference instruction; and based on the matching, determining that the remote control transmitted an instruction configured to cause a modification to operation of playback device <NUM>. In other examples, playback device <NUM> can perform similar acts to those described above in connection with an infrared-based interface, but in connection with another type of interface, such as a RF-based interface. Additionally or alternatively, playback device <NUM> can include a wireless communication module, and a remote control could wirelessly transmit instructions to playback device <NUM> in accordance with a wireless communication protocol, such as Bluetooth or WiFi. Hence, the act of playback device <NUM> determining that a remote control transmitted an instruction configured to cause a modification to operation of playback device <NUM> can involve receiving, via the wireless communication module, a wireless communication message, and determining an instruction based on content within the wireless communication message.

The instruction to modify operation of playback device <NUM> could be a volume adjustment (e.g., an instruction to increase or decrease a volume of playback device <NUM>), and the overlay could be a volume-adjustment graphic. Alternatively, the instruction could be a playback-speed adjustment (e.g., an instruction to pause, rewind, or fast-forward the replacement media content), and the overlay could be a playback-speed graphic. Further, the instruction could be a request to access a channel-selection guide, and the overlay could be a channel-selection guide. Similarly, the instruction could also be an instruction to access a menu of playback device <NUM> or an instruction to access display information (e.g., time, date, channel identifier, content identifier, etc.), and the overlay could be a menu graphic or a display-information graphic.

Playback device <NUM> stores correlation data mapping (i) instructions for modifying operation of playback device <NUM> to (ii) overlays. The correlation data (or other data stored by playback device <NUM>) also indicates respective regions within a display of playback device <NUM> at which playback device <NUM> is configured to provide the overlays.

Upon determining that a remote control transmitted an instruction configured to cause a modification to operation of playback device <NUM>, video overlay module <NUM> uses the correlation data to map the instruction to an overlay. Video overlay module <NUM> also uses the correlation data to determine a region within a display of playback device <NUM> at which playback device <NUM> is configured to provide the overlay for display.

In practice, different playback devices, such as different playback devices manufactured by different manufacturers, can be configured to provide different overlays. Similarly, different models of playback devices made by a single manufacturer can be configured to provide different overlays. Template provision module <NUM> can store correlation data for different respective playback devices. Upon request, or at another time, template provision module <NUM> can provide correlation data corresponding to playback device <NUM> to playback device <NUM>. For instance, playback device <NUM> can send a request to template provision module <NUM>, with the request including an identifier of playback device <NUM>, and template provision module <NUM> can respond to the request by providing the correlation data to playback device <NUM>.

After determining a region corresponding to an overlay, video overlay module <NUM> modifies a transparency of the region. Video overlay module <NUM> can modify the transparency of the region by applying an opacity mask to the region. The opacity mask can include data indicative of portions of the display of playback device <NUM> for which the transparency of replacement media content presented by the media player should be modified. For instance, the opacity mask can include a <NUM>-bit transparency mask that indicates, on a pixel-by-pixel basis, whether the pixel should be transparent or opaque.

When playback device <NUM> provides the replacement media content for display using a media player, the media player presents the replacement media content in a media-player layer that is on top of another layer in which other media content is provided for display, such as media content received by way of an over-the-air antenna. Applying the opacity mask to the region within the display can allow content that is within the same region, but provided in a layer that is beneath the replacement media content, to become visible. In other words, applying the opacity mask to the region can allow graphics that playback device <NUM> provides for display to become visible. Hence, if (i) playback device <NUM> provides an overlay, such as a volume-adjustment graphic, menu, or playback-speed graphic, and (ii) video overlay module <NUM> applies an opacity mask to a region in which playback device <NUM> provides the overlay, the overlay may be visible on the display of the playback device through the replacement media content. Advantageously, applying the opacity mask to a region within the display, rather than to the entire display, allows a first region of the replacement media to be displayed over and obscure the other media content while, at the same time, allowing a graphic corresponding to the instruction to be visible through a second region of the replacement media content.

In some examples, playback device <NUM> can receive a selection of a new channel. For instance, while playback device <NUM> is presenting the replacement media content, a user can provide, using a remote control, a selection of a new channel. Responsive to receiving the selection of the new channel, playback device <NUM> can carry out a channel-change operation. Carrying out the channel-change operation can involve switching from providing the replacement media content for display to providing media content that is received by way of an over-the-air antenna for display.

To smooth the transition from providing replacement media content for display using the media player to providing media content that is received by way of the new channel, video overlay module <NUM> can perform various acts. For instance, video overlay module <NUM> can cause the replacement media content to fade to black over a period of time (e.g., one half of a second), and then cause the media content that is received by way of the over-the-air antenna on the selected channel to fade in from black over a period of time (e.g., one half of a second). In this manner, when a user changes a channel while playback device <NUM> is providing replacement media content for display, playback device <NUM> can cause display of the replacement media content to cease, and transition to providing for display other media content that is received by way of the selected channel.

<FIG> is a display diagram <NUM> illustrating an overlay. As shown in <FIG>, display diagram <NUM> includes a first display region <NUM> and a second display region <NUM>. While playback device <NUM> provides replacement media content for display within first display region <NUM>, playback device <NUM> can receive an instruction for a volume adjustment. Based on receiving the instruction, video overlay module <NUM> can apply an opacity mask to second display region <NUM>. Applying the opacity mask to second display region <NUM> allows a volume-adjustment graphic provided in a layer beneath a media-player layer to become visible through the media-player layer. Accordingly, when playback device <NUM> provides the volume-adjustment graphic for display, the volume-adjustment graphic is visible within second display region <NUM>, mimicking the manner in which the volume-adjustment graphic would appear if playback device <NUM> was instead presenting media content that is received by way of an over-the-air antenna for display.

<FIG> is another display diagram <NUM> illustrating an overlay. As shown in <FIG>, display diagram <NUM> includes a first display region <NUM> and a second display region <NUM>. While playback device <NUM> provides replacement media content for display within first display region <NUM>, playback device <NUM> can receive an instruction for a play-back speed adjustment. Based on receiving the instruction, video overlay module <NUM> can apply an opacity mask to second display region <NUM>. Applying the opacity mask to second display region <NUM> allows a playback-speed graphic provided in a layer beneath a media-player layer to become visible through the media-player layer. Accordingly, when playback device <NUM> provides the playback-speed graphic for display, the playback-speed graphic is visible within second display region <NUM>, mimicking the manner in which the playback-speed graphic would appear if playback device <NUM> was instead presenting media content that is received by way of an over-the-air antenna for display.

<FIG> is still another display diagram <NUM> illustrating an overlay. As shown in <FIG>, display diagram <NUM> includes a first display region <NUM> and a second display region <NUM>. While playback device <NUM> provides replacement media content for display within first display region <NUM>, playback device <NUM> can receive an instruction for accessing a channel-selection guide. Based on receiving the instruction, video overlay module <NUM> can apply an opacity mask to second display region <NUM>. Applying the opacity mask to second display region <NUM> allows the channel-selection guide provided in a layer beneath a media-player layer to become visible through the media-player layer. Accordingly, when playback device <NUM> provides the channel-selection guide for display, the channel-selection guide is visible within second display region <NUM>, mimicking the manner in which the playback-speed graphic would appear if playback device <NUM> was instead presenting media content that is received by way of an over-the-air antenna for display.

<FIG> is a flow chart of a method <NUM>. Method <NUM> can be carried out by a playback device, such as playback device <NUM> or more generally, by a computing system. At block <NUM>, method <NUM> includes providing, by a playback device, replacement media content for display. At block <NUM>, method <NUM> includes determining, by the playback device, that a remote control transmitted to the playback device an instruction configured to cause a modification to operation of the playback device while the playback device displays the replacement media content. At block <NUM>, the method <NUM> includes determining, by the playback device based on the instruction, an overlay that the playback device is configured to provide for display in conjunction with the modification. At block <NUM>, the method <NUM> includes determining, by the playback device, a region within a display of the playback device corresponding to the overlay. And at block <NUM>, the method <NUM> includes modifying, by the playback device, a transparency of the region such that the overlay is visible through the replacement media content.

<FIG> is a flow chart illustrating additional acts that can be carried out in conjunction with the method shown in <FIG>. The additional acts can be carried out after block <NUM> of <FIG>, for example. Alternatively, the additional acts can be carried out in place of blocks <NUM>, <NUM>, and <NUM>. Block <NUM> involves receiving a selection of a new channel. Block <NUM> involves causing the replacement media content to fade to black. And block <NUM> involves causing media content received by way of an over-the-air antenna to fade in from black.

Although some of the acts and/or functions described in this disclosure have been described as being performed by a particular entity, the acts and/or functions can be performed by any entity, such as those entities described in this disclosure. Further, although the acts and/or functions have been recited in a particular order, the acts and/or functions need not be performed in the order recited. However, in some instances, it can be desired to perform the acts and/or functions in the order recited. Further, each of the acts and/or functions can be performed responsive to one or more of the other acts and/or functions. Also, not all of the acts and/or functions need to be performed to achieve one or more of the benefits provided by this disclosure, and therefore not all of the acts and/or functions are required.

Although certain variations have been discussed in connection with one or more examples of this disclosure, these variations can also be applied to all of the other examples of this disclosure as well.

Claim 1:
A method comprising:
providing, by a playback device (<NUM>), replacement media content for display;
determining, by the playback device (<NUM>), that a remote control transmitted to the playback device (<NUM>) an instruction configured to cause a modification to operation of the playback device (<NUM>) while the playback device (<NUM>) displays the replacement media content;
determining, by the playback device (<NUM>) based on the instruction and using correlation data that maps instructions to overlays and respective regions within a display of the playback device (<NUM>), an overlay that the playback device (<NUM>) is configured to provide for display in conjunction with the modification caused by the instruction transmitted from the remote control and a corresponding region within the display of the playback device at which the playback device is configured to provide the overlay for display; and
modifying, by the playback device (<NUM>), a transparency of the replacement media content in the region such that the overlay is visible through the replacement media content when the playback device (<NUM>) provides the overlay for display,
wherein the overlay is provided in a first display layer, the replacement media content is provided in a second display layer, and the first display layer is beneath the second display layer.