Method, system, and media for presenting media content items using multiple devices - Patents.com
Patent Information
- Application Number
- JP2023110893
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2023-07-05
- Publication Date
- 2025-02-21
- Estimated Expiration
- 2039-12-03
AI Technical Summary
【0013】 開示される主題の以下の詳細な説明を参照して、以下の図面と共に考慮するとき、開示される主題の様々な目的、特徴、および利点をより完全に理解することができ、図面では、同様の参照番号が同様の要素を特定する。
Smart Images

Figure 0007634604000001 
Figure 0007634604000002 
Figure 0007634604000003
Abstract
Description
[Technical field]
[0001] The disclosed subject matter relates to methods, systems, and media for presenting media content items using multiple devices. [Background technology]
[0002] Many users desire to view media content associated with a video hosting or sharing service on a media device, such as the user's television or other display device. In many cases, it is preferable or necessary to sign in to a user account associated with the service in order to access and view the media content. Specifically, such users must sign in to a user account associated with the service in order to purchase media content to play on the media device. However, it is generally difficult for these types of media devices to provide user account information, such as a username and password, and / or payment information, such as credit card information. For example, using an input device such as a remote control to sign in to a user account from the media device and / or complete a payment transaction from the media device can be time consuming and / or cumbersome. Summary of the Invention [Problem to be solved by the invention]
[0003] It is therefore desirable to provide methods, systems, and media for presenting media content items using multiple devices. [Means for solving the problem]
[0004] SUMMARY OF THE DISCLOSURE Methods, systems, and media are provided for selecting a format for presenting a media content item using multiple devices.
[0005] According to some embodiments of the disclosed subject matter, a method for presenting media content is provided, the method including: detecting a suggestion to initiate a purchase of a content item being presented using a media device, where the media device is not authenticated to a content service that provides the content item; in response to detecting the suggestion to initiate a purchase of the content item when the media device is not authenticated to the content service that provides the content item, making the media device discoverable by one or more mobile devices connected to a same local area network as the media device; encoding suggestion data corresponding to the detected suggestion to initiate a purchase of the content item; in response to receiving a status request from a mobile device connected to the same local area network as the media device, transmitting encoded suggestion data associated with the purchase of the content item to the mobile device, where the encoded suggestion data causes a payment user interface to be presented on the mobile device; receiving a cast request from the mobile device to cast the content item on the media device; and in response to the cast request, executing a receiver application on the media device that accepts the cast request from the mobile device and causes the content item to be presented using the media device. This method may thus overcome the technical difficulties (e.g., the time required and the risk of error) of entering data into a content service for providing content to a media device by relying entirely on a data entry device (e.g., a remote control device) associated with the media device. The method does this by taking advantage of the typically more sophisticated data entry capabilities of the mobile device. This is accomplished in a secure manner despite the additional involvement of the mobile device.
[0006] In some embodiments, the media device is running a media playback application, the mobile device is running a corresponding media playback application, the media playback application sends encoding suggestion data to the corresponding media playback application running on the mobile device, and in response to sending the encoding suggestion data to the mobile device, the media device inhibits sending of the encoding suggestion data to remaining mobile devices connected to the same local area network.
[0007] In some embodiments, the encoding proposal data causes the mobile device to retrieve corresponding human readable information from a server, and the human readable information is presented within a payment user interface on the mobile device.
[0008] In some embodiments, the method further includes receiving authentication information from the mobile device, the authentication information corresponding to a user account used to complete the purchase via a payment user interface on the mobile device. In some embodiments, the authentication information causes the media device to retrieve a corresponding authentication token from an authentication server, the corresponding authentication token authenticating the user account on the media device.
[0009] In some embodiments, the cast request indicates that the mobile device is authorized to play the content item.
[0010] According to some embodiments of the disclosed subject matter, a system for presenting media content is provided comprising: a memory; and a hardware processor configured, when executing computer-executable instructions stored in the memory, to: detect an offer to initiate a purchase of a content item being presented using a media device, where the media device is not authenticated to a content service that provides the content item; in response to detecting the offer to initiate a purchase of the content item when the media device is not authenticated to the content service that provides the content item, make the media device discoverable by one or more mobile devices connected to the same local area network as the media device; encode offer data corresponding to the detected offer to initiate a purchase of the content item; in response to receiving a status request from a mobile device connected to the same local area network as the media device, transmit encoded offer data associated with the purchase of the content item to the mobile device, where the encoded offer data causes a payment user interface to be presented on the mobile device; receive a cast request from the mobile device to cast the content item on the media device; and, in response to the cast request, execute a receiver application on the media device, the receiver application accepting the cast request from the mobile device and causing the content item to be presented using the media device.
[0011] According to some embodiments of the disclosed subject matter, there is provided a computer program product (such as a non-transitory computer readable medium or an item of software for download over a communications network) including computer-executable instructions that, when executed by a processor, cause the processor to perform a method for presenting media content, the method including: detecting an offer to initiate a purchase of a content item being presented using a media device, where the media device is not authenticated to a content service that provides the content item; and, in response to detecting the offer to initiate a purchase of the content item when the media device is not authenticated to a content service that provides the content item, transmitting a request to one or more content service connected to the same local area network as the media device. the mobile device; encoding offer data corresponding to the detected offer to initiate a purchase of the content item; in response to receiving a status request from a mobile device connected to the same local area network as the media device, transmitting encoded offer data associated with the purchase of the content item to the mobile device, the encoded offer data causing a payment user interface to be presented on the mobile device; receiving a cast request from the mobile device to cast the content item on the media device; and in response to the cast request, executing a receiver application on the media device that accepts the cast request from the mobile device and causes the content item to be presented using the media device.
[0012] According to some embodiments of the disclosed subject matter, a system for presenting media content is provided, the system comprising: means for detecting a suggestion to initiate a purchase of a content item being presented using a media device, where the media device is not authenticated to a content service that provides the content item; means for making the media device discoverable by one or more mobile devices connected to a same local area network as the media device in response to detecting the suggestion to initiate a purchase of the content item when the media device is not authenticated to the content service that provides the content item; means for encoding suggestion data corresponding to the detected suggestion to initiate a purchase of the content item; means for transmitting encoded suggestion data associated with the purchase of the content item to the mobile device in response to receiving a status request from a mobile device connected to the same local area network as the media device, where the encoded suggestion data causes a payment user interface to be presented on the mobile device; means for receiving a cast request from the mobile device to cast the content item on the media device; and means for executing a receiver application on the media device in response to the cast request, the receiver application accepting the cast request from the mobile device and causing the content item to be presented using the media device.
[0013] Various objects, features, and advantages of the disclosed subject matter can be more fully understood by reference to the following detailed description of the disclosed subject matter when considered in conjunction with the following drawings, in which like reference numerals identify like elements and in which: [Brief description of the drawings]
[0014] [Figure 1]FIG. 1 shows an illustrative example of a process for mobile device-assisted purchasing of a content item for playback using a connected media device in accordance with some embodiments of the disclosed subject matter, in which encoding offer data is broadcast to one or more mobile devices for purchasing the content item. [Diagram 2] FIG. 1 illustrates an illustrative example of a process for detecting the presence of a media device using a mobile device, presenting a user interface for completing a payment transaction associated with purchasing a content item, and casting the content item for presentation using the media device, in accordance with some embodiments of the disclosed subject matter. [Diagram 3] 1 illustrates an exemplary user interface for facilitating and presenting on a media device a payment transaction for purchasing a content item on a mobile device connected to a media device, in accordance with some embodiments of the disclosed subject matter. [Figure 4] A schematic diagram of an exemplary system suitable for implementing the mechanisms described herein for presenting media content items using multiple devices in accordance with some embodiments of the disclosed subject matter. [Diagram 5] A diagram showing a detailed example of hardware that may be used in the server and / or user device of FIG. 4 in accordance with some embodiments of the disclosed subject matter. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] According to various embodiments, mechanisms (which may include methods, systems, and media) are provided for presenting media content items using multiple devices.
[0016] In some embodiments, the mechanisms described herein may detect that an offer to initiate a purchase of a content item has been presented using a media device. For example, while navigating among a plurality of content items presented on the media device (e.g., using a remote control device), the mechanism may detect that a selected content item is associated with an offer to provide a payment in exchange for playing the content item. In a more specific example, while navigating among a plurality of content items presented on the media device, the mechanism may detect that a selected content item is associated with a "buy" button or a "rent" button. In some embodiments, upon detection of the offered offer, the mechanism may also determine that the media device is not authenticated to the service that is offering the content item. For example, the media device is not signed in to the service and therefore user payment information is not stored for use in purchasing or other payment for the selected content item.
[0017] It should be noted that in some embodiments, the media device is connected to a display device, which presents a user interface for navigating among the multiple content items and a media player for playing one of the content items.
[0018] In some embodiments, in response to detecting an offer to initiate a purchase of a content item when the media device is not authenticated to the content service that provides the content item, the mechanism may make the media device discoverable by one or more mobile devices connected to the same local area network as the media device. For example, the media device may implement the server side of the Discovery And Launch (DIAL) protocol to broadcast the presence of the media device to devices connected to the same local area network. Continuing with this example, one or more mobile devices connected to the same local area network may implement the client side of the DIAL protocol, and the mobile device may discover a DIAL service for the media device on the local area network and launch an application on the DIAL server. In a more specific example, the mobile device may prompt the media device to launch a corresponding media playing application using the DIAL server using a media playing application running on the mobile device. This may include passing an IP / port corresponding to the media playing application, a URL for the media playing application, and / or any other suitable information. It is noted that the DIAL protocol allows for the transfer of any data between the media device and the mobile device. Thus, in some embodiments, a media playback application running on a media device may return additional information to the DIAL server via the additionalData field.
[0019] In some embodiments, the media device may encode offer data associated with the purchase of a content item for placement in the additionalData field, which may include, for example, a content identifier, a description of the content item, a price associated with playing the content item, a type of purchase, a duration for playing the content item, an application to be used to play the content item, etc.
[0020] It should be noted that in some embodiments, the encoded offer data may cause the mobile device to retrieve human-readable information about the corresponding offers from a server (e.g., a media server, a payment server, etc.) In response, one or more payment user interfaces may be presented on the mobile device that provide human-readable information about the corresponding offers and facilitate a payment transaction to purchase the content item.
[0021] In some embodiments, upon completion of the payment transaction, the mobile device may send a cast request to cast the content item on the media device. For example, in response to completion of the payment transaction and receiving an indication that the mobile device is authorized to play the content item, the mobile device may be configured to automatically cast the content item for playback on the media device. In another example, in response to receiving the cast request, the media device may execute a media playback application or any other suitable receiver application that accepts the cast request from the mobile device and causes the content item to be presented using the media device. In a more specific example, the cast request may include a URL or any other suitable content identifier that allows the media device to locate the content item for playback.
[0022] In addition to the cast request, in some embodiments, authentication information corresponding to the user account used to complete the purchase of the content item via a payment user interface on the mobile device may be retrieved. For example, the authentication information may cause the media device to retrieve a corresponding authentication token from an authentication server, which authenticates the user account on the media device.
[0023] Such mechanisms may, for example, allow a user to complete a transaction for a content item and view a purchased content item on the media device without signing in to or being authenticated on the media device and without requiring the user to enter authentication or payment information using an input device associated with the media device (e.g., a remote control device, an on-screen keyboard, etc.). Such mechanisms may also allow other users (e.g., users with nearby mobile devices) to purchase content items for playback on the media device (e.g., using a user account not associated with the media device). Such mechanisms may further allow for payment and other user information to be entered and / or transmitted using a private device rather than the media device, in cases where additional viewers may be present.
[0024] These and other features for presenting media content items using multiple devices are further described in conjunction with FIGS. 1-5.
[0025] 1, an illustrative example of a process 100 for mobile device assisted purchase of a content item for playback using a connected media device is shown in accordance with some embodiments of the disclosed subject matter. As shown, the blocks of process 100 may be performed by a media device and / or any other suitable computing device. For example, the media device may be a user device without an input device and / or a user device with an input device that makes it difficult to input payment information and user credential information, such as a television device, a home appliance, among others, and / or any other suitable display device.
[0026] It should be noted that while the embodiments described herein generally relate to content items being presented by a media device, this is by way of example only. In some embodiments, the media device may be a media rendering device connected to a display device, which receives instructions from the media rendering device to present, among other things, a user interface associated with a media playback application for navigating among a plurality of content items and a media player for playing one of the content items.
[0027] Process 100 may begin at 110 by detecting that an offer to initiate a purchase of a content item is presented using a media device (e.g., on a display associated with the media device). For example, while navigating through a plurality of content items presented on the media device (e.g., using a remote control device or any other suitable input device), process 100 may detect that a selected content item is associated with an offer to provide a payment in exchange for playing the content item. In a more specific example, while navigating through a plurality of content items presented on the media device, process 100 may detect that a selected content item is associated with a "buy" button or a "rent" button. In another more specific example, while navigating through a plurality of content items, each content item presented using the media device may be associated with purchasing information (e.g., $2.99 to view the content item within 48 hours of purchase). Continuing with this example, process 100 may detect that the media device has navigated to a page where a user of the media device is given an opportunity to initiate a purchase of a content item (e.g., by selecting a “Buy” button on an on-screen interface, by selecting a “Buy” button on a remote control device, etc.).
[0028] In some embodiments, process 100 may receive an indication of initiating a purchase of content for presentation by a media device. For example, process 100 may receive an indication that a user has selected a content item for playback having associated purchase information. In another example, process 100 may receive a purchase indicator in response to accessing a page with a media playback application running on the media device where a user may initiate a purchase of a content item.
[0029] In some embodiments, process 100 may also determine that the media device is not authenticated to the service offering the content item. For example, process 100 may determine that the media device is not signed in to an appropriate service where a user may enter payment information and / or user account information. In a more specific example, a media playback application running on the media device may determine that a user account associated with a content provider has not been authenticated on the media device. Thus, a user account associated with a payment service and / or a content item purchase has not been authenticated on the media device to proceed with the purchase.
[0030] At 120, in response to detecting an offer to initiate a purchase of a content item being presented by the media device and in response to determining that the media device is not authenticated to the content service that provides the content item, process 100 may make the media device discoverable by one or more mobile devices connected to the same local area network as the media device. For example, the media device may implement the server side of the Discovery And Launch (DIAL) protocol to broadcast the presence of the media device to devices connected to the same local area network. Continuing with this example, one or more mobile devices connected to the same local area network may implement the client side of the DIAL protocol, and the mobile devices may discover a DIAL service for the media device on the local area network and launch an application on the DIAL server.
[0031] It should be noted that a media playback application running on a media device may create a communication channel with a corresponding media playback application running on a mobile device. For example, using this communication channel, a media playback application running on a mobile device may discover a DIAL service implemented on the media device. The media playback application running on the mobile device may then use the DIAL protocol to query the media device to launch a corresponding media playback application on the media device, or to query whether a corresponding media playback application is already launched on the media device.
[0032] Continuing with this example, note that the DIAL protocol may enable the transfer of any data between the media device and the mobile device. The DIAL server may, for example, send a URL or other appropriate information to the media playback application, which may use this information to relay the information to the DIAL server.
[0033] In some embodiments, at 130, process 100 may encode offer data associated with purchasing the content item. The offer data may include, for example, a content identifier, a description of the content item, a price associated with playing the content item, a type of purchase, a duration for playing the content item, an application used to play the content item, a location identifier indicating where the user has the opportunity to purchase the content item, etc. Note that such encoded offer data may be transmitted to the mobile device as additional information in an additionalData field.
[0034] In some embodiments, at 140, process 100 may transmit encoding suggestion data to the mobile device. For example, in response to a mobile device running a DIAL client discovering a DIAL server on a media device, the DIAL client running on the mobile device may transmit a request to determine whether a media playback application is available on the media device, whether it is running on the media device, and / or other information regarding the status of the media playback application on the media device. In response, the DIAL server response may indicate that the media playback application is already running and may include additional data, including the encoding suggestion data described above. Note that in some embodiments, the additional data may also enable the media playback application running on the mobile device to communicate with a running instance of the media playback application running on the media device.
[0035] In a more specific example, a media playback application launched or running on a media device may send data including an additionalData field to a DIAL server. Such data may also include, for example, device information, application state information, network information, etc. The DIAL server may then communicate the data to a DIAL client connected to the DIAL server. For example, in response to detecting an offer to initiate a purchase of a content item being presented by the media device and in response to determining that the media device is not authenticated to the content service that provides the content item, process 100 may cause a media playback application running on the media device to include encoding offer data in the additionalData field and post the encoding offer data to a DIAL server or broadcast the encoding offer data to a DIAL client running on the mobile device.
[0036] In some embodiments, the media device may determine whether to send the encoding suggestion data to the mobile device. For example, the media device may determine whether to send the encoding suggestion data to the mobile device using any suitable criteria. In a more specific example, the media device may determine that there are multiple mobile devices in the vicinity of the media device and connected to the same local area network. Continuing with this example, the media device may determine whether a preferred mobile device is one of the multiple mobile devices, e.g., whether a preferred mobile device that has been used more than a threshold number of times for purchasing a content item may be selected to receive the encoding suggestion data, whether mobile devices associated with a particular type of user (e.g., a minor, a user not associated with a payment account, etc.) may be excluded from being selected to receive the encoding suggestion data, whether a mobile device that is currently authenticated to a payment service may be selected to receive the encoding suggestion data, etc.
[0037] In some embodiments, the media device may determine a probability as to whether a mobile device receiving the encoding offer data is likely to complete a payment process when purchasing a content item. For example, a mobile device associated with a child user may be determined to have a low probability of completing a payment process, while a mobile device associated with a user who has purchased multiple content items using the mobile device may be designated as having a high probability of completing a payment process.
[0038] Continuing with the example, in response to the mobile device receiving the encoding suggestion data, process 100 may cause the media device to prohibit transmission of the encoding suggestion data to any remaining mobile devices connected to the same local area network. Thus, additional mobile devices connected to the same local area network that have discovered the DIAL service running on the media device and have requested status information regarding a media playback application running on the media device may not receive the encoding suggestion data in the additionalData field. This may, for example, prevent a purchase of a content item for playback on the media device from being initiated on multiple devices (e.g., friend A's mobile device and friend B's mobile device).
[0039] It should be noted that in some embodiments, in response to determining that the mobile device has not completed the purchase of the content item (e.g., the purchase is not completed within a threshold amount of time, the mobile device abandons the purchase of the content item, etc.), process 100 may cause the media device to continue to provide the encoding suggestion data in the form of additional data.
[0040] It should also be noted that in some embodiments, simultaneously with encoding the offer data and transmitting the encoded offer data to the mobile device, process 100 may present a payment interface on the media device for entering payment information to purchase the content item. For example, in response to selection of the “Purchase” option at 110, the media device may present a user interface on the media device for completing the payment transaction.
[0041] As described in FIG. 2 below, the mobile device may receive the encoding offer data and proceed with purchasing the content item.
[0042] At 150, in response to the mobile device completing a purchase of the content item (e.g., via a payment service) and in response to the mobile device receiving authority to play the content item, process 100 may retrieve instructions to cast the content item from the mobile device for presentation by a media device.
[0043] In a more specific example, the casting technique refers to content streaming and playback involving a first device that identifies a content item to be played and a second device that realizes the playback of the identified content item. For example, the first device is a mobile device that completes a purchase of a content item and receives an authorization to play the purchased content item, and the second device is a media device that plays the purchased content item. In the casting technique, video encoding of the content item is not performed on the mobile device. Rather, a media playback application running on the mobile device may send a universal resource identifier (URI) (e.g., a universal resource locator (URL)) for the content item to the media device, and the media device may use the URI to obtain the content item from a content provider server via an Internet connection over a network. The media device may receive the content item and stream the content item directly from the URI to one or more output devices (e.g., a television, a home theater audio system, etc.).
[0044] In some embodiments, instead of casting a content item from a mobile device to a media device, a mobile device may implement a mirroring technique in which the mobile device may receive the content item as a media stream from a content provider server over a communications network (e.g., in response to the mobile device completing a purchase of the content item (e.g., via a payment service) and in response to the mobile device receiving authorization to play the content item) and repackage the media stream as a reformatted media stream for the media device. The mobile device may stream the reformatted stream over a wireless local area network to the media device. The media device may then output the content item to one or more output devices (e.g., a television, a home theater audio system, etc.).
[0045] In some embodiments, authentication information corresponding to a user account used on the mobile device to purchase a content item may be sent to the media device, as described below in conjunction with Figure 2. The media device may use the authentication information to retrieve a corresponding authentication token from an authentication server, which authenticates the user account on the media device.
[0046] 2, an illustrative example 200 of a process for mobile device assisted purchase of a content item is shown in which the mobile device receives encoding offer data and proceeds with the purchase of the content item, according to some embodiments of the disclosed subject matter. As shown, the blocks of process 200 may be performed by a mobile device and / or any other suitable computing device. For example, the mobile device may be a user device that supports casting or mirroring technology, such that upon completion of the payment process in which the content item has been purchased and the mobile device is authorized to receive and play the content item, the mobile device may cause the content item to be presented by a media device for output on any suitable output device (e.g., a television, a home theater audio system, etc.).
[0047] Process 200 begins at 210, where a mobile device is associated with or connected to a local network (e.g., a local area network, a wireless local area network, a wired / wireless local area network, or any other suitable network). For example, the mobile device may be connected to a wireless local area network having multiple network media devices. At 220, process 200 may detect the presence of a media device using a media playback application running on the mobile device. For example, using the Discovery And Launch (DIAL) protocol, the mobile device may implement the client side of the DIAL protocol and discover a DIAL service for the media device. The mobile device may create a communication channel for exchanging messages between, for example, a media playback application running on the mobile device and a corresponding media playback application running on the media device.
[0048] At 230, in response to discovery of the DIAL service for the media device, process 200 may receive status information from the media device regarding a corresponding media playback application running on the media device. For example, a DIAL client running on a mobile device may send a request to determine whether a media playback application is available on the media device, whether it is running on the media device, and / or other information regarding the status of the media playback application on the media device. In response, a DIAL server response may indicate that the media playback application is already running and may include additional data, including encoded offer data for purchasing the aforementioned content item.
[0049] As mentioned above, the encoding suggestion data in the additionalData field may include, for example, a content identifier, a description of the content item, a price associated with playing the content item, a type of purchase, a duration for playing the content item, an application to be used to play the content item, a location identifier indicating where a user has the opportunity to purchase the content item, etc.
[0050] At 240, in response to receiving the encoded suggestion data, process 200 may send a request to a server (e.g., a media server, a payment server, etc.) to obtain human-readable suggestion information corresponding to the encoded suggestion data. At 250, process 200 may use the human-readable suggestion information from the server to generate a user interface for presenting the suggestion and one or more user interfaces for proceeding with a payment transaction to purchase the content item. In a more specific example, the human-readable suggestion information may be combined with information about the selected content item to generate a user interface for initiating a payment process on a mobile device. An illustrative example of a user interface that presents suggestions and provides an opportunity for a user of a mobile device to proceed with a payment process on a mobile device is shown in FIG. 3.
[0051] At 260, in response to completing the payment process for the content item on the mobile device, process 200 may receive authorization to stream or play the content item on the mobile device. For example, the mobile device may receive a confirmation interface indicating that the payment process for the content item has been completed. Continuing with this example, a playback interface element or any other suitable playback element may be activated to allow the user to play the content item on the mobile device.
[0052] At 270, the process 270 may cause the purchased content item to be cast to a media device. For example, in some embodiments, the mobile device, upon receipt of authorization to play the content item, may automatically send a cast request to the media device that first received an offer to purchase the content item. In another example, in some embodiments, the mobile device, upon receipt of authorization to play the content item, may present instructions directing the mobile device user to select a cast option to cast the purchased content item to the media device.
[0053] As described above, in response to casting a content item from a mobile device to a media device, a media playback application running on the mobile device may send a universal resource identifier (URI) (e.g., a universal resource locator (URL)) for the content item to the media device, and the media device may use the URI to obtain the content item from a content provider server via an Internet connection over a network. The media device may receive the content item and stream the content item directly from the URI to one or more output devices (e.g., a television, a home theater audio system, etc.).
[0054] As also mentioned above, instead of casting a content item from a mobile device to a media device, a mobile device may implement a mirroring technique in which the mobile device may receive the content item as a media stream from a content provider server over a communications network (e.g., in response to the mobile device completing a purchase of the content item (e.g., via a payment service) and in response to the mobile device receiving authorization to play the content item) and repackage the media stream as a reformatted media stream for the media device. The mobile device may stream the reformatted stream over a wireless local area network to the media device. The media device may then output the content item to one or more output devices (e.g., a television, a home theater audio system, etc.).
[0055] In addition to causing a content item to be presented on a media device without requiring the user to authenticate a user account (e.g., associated with a content provider service, a payment service, etc.), process 200 may authenticate the media device using a mobile device. For example, simultaneously with directing a purchased content item to be cast from the mobile device for playback on an output device associated with the media device, the mobile device may also send a message indicating that the user account authenticated on the mobile device should also be used for authentication on the media device.
[0056] In some embodiments, the mobile device may send a message to the media device indicating that a user account should be logged into from the mobile device. For example, the user account may be a user account associated with a content provider service. In another example, the user account may be a user account used to facilitate a payment process when purchasing a content item.
[0057] It should be noted that in some embodiments, in response to determining that the media device is a particular type of user device (e.g., a television, a game console, a home theater audio system, a set-top box, and / or any other suitable type of device), the mobile device may initiate authentication of a user account on the media device using user credentials on the mobile device. As a more specific example, in some embodiments, the mobile device may determine a device type associated with the media device and, based on the determined device type of the media device, may identify one or more user accounts logged in with the mobile device that are appropriate user accounts to log in to from the media device. As a particular example, if the mobile device determines that the media device is a display device, the mobile device may determine that user accounts associated with a video sharing service are candidate user accounts to log in to on the media device using user credentials associated with the mobile device.
[0058] In some embodiments, the device type and / or device category (e.g., television, game console, set-top box, video camera, printer, and / or any other suitable device type) may be determined using any suitable technique. For example, in some embodiments, the mobile device may detect the presence of one or more devices, such as a television device, to authenticate with a user account logged in on the mobile device. For example, device discovery of nearby devices may be initiated on a local area network to which the mobile device is connected. It should be noted that device discovery may be initiated by the mobile device at any suitable time and for any suitable reason. For example, an application running on the mobile device may initiate device discovery to determine whether the mobile device is on the same network as a media device (e.g., a television device). In a more specific embodiment, the mobile device may perform a full discovery protocol on the network to determine details of any devices found on the current network. The full discovery protocol may include sending a multicast message to all devices on the network requesting device details from devices on the network. Additionally, the multicast message may be addressed to certain types of devices. In some embodiments, the mobile device may wait a predetermined amount of time for a response to the multicast message. Additionally, in some embodiments, the full discovery protocol may include requesting additional device details from responding devices by sending a message to the address and / or location included in the device's response to the multicast message. Such additional details may include the name of the device, the manufacturer of the device, the model name of the device, the model number of the device, the model description of the device, the serial number of the device, and / or any other suitable device information associated with the device.In some embodiments, a description of the device type or category (eg, television, game console, set-top box, etc.) and / or the capabilities of the device may be included in the response to the message.
[0059] In some embodiments, the mobile device may present a first user interface requesting approval to initiate authentication of the media device. In response to a user of the mobile device providing approval to initiate authentication of a user account on the media device (e.g., a prompt such as "Do you also want to log into this account on the connected television?" or to select a user account to authenticate on the media device), the mobile device may send an authority request to the media device.
[0060] In some embodiments, in response to receiving an authority request from the mobile device, the media device may send a request to an authority server. In some embodiments, the request may include any suitable information, such as information about the connection of the mobile device to the device association server (e.g., an identifier associated with the mobile device, and / or any other suitable information), information about the configuration of the mobile device (e.g., a manufacturer and / or model associated with the mobile device, an operating system associated with the mobile device, and / or any other suitable configuration information), information about a user of the mobile device (e.g., one or more usernames associated with the mobile device, and / or any other suitable information), and / or any other suitable identification information. In a more specific example, in some embodiments, the request may indicate an identifier associated with a particular user account to be logged into. As a more specific example, the request may indicate an identification of a service associated with the user account (e.g., a name of a social networking site, a name of a video sharing site, and / or any other suitable identification). As yet another more specific example, the request may indicate any suitable information associated with the media device, such as an Internet Protocol (IP) address associated with the media device, a location of the media device, and / or any other suitable information.
[0061] In some embodiments, the authorization server may send a message including authentication data to the media device associated with the user account and corresponding to an existing session associated with the mobile device. In some embodiments, the authentication data may include any suitable information, such as a random sequence of characters (e.g., alphabetic, numeric, and / or any other suitable characters or combinations of characters) of any suitable length (e.g., 4 characters, 8 characters, 16 characters, and / or any other suitable length). For example, in some embodiments, the authentication data may include a cryptographic token associated with the current session of the user account established by the mobile device.
[0062] In some embodiments, the authorization server may send the authentication data along with a uniform resource locator (URL) that identifies a page that can be used to sign in to a user account. For example, in some embodiments, the authentication data may be embedded within a query string of the URL. As another example, in some embodiments, the URL may be included in a message sent to the media device.
[0063] Additionally or alternatively, in some embodiments, the authentication data may indicate any suitable identifying information corresponding to the mobile device and / or user account. For example, in some embodiments, the authentication data may indicate information about the mobile device (e.g., an identifier of a user associated with the mobile device, an identifier of the manufacturer of the mobile device, an identifier of a product number associated with the mobile device, and / or any other suitable information). As another example, in some embodiments, the authentication data may indicate information associated with the user account (e.g., a date and / or time the user account was last accessed from the mobile device, a media access control (MAC) address associated with the connection last used to access the user account from the mobile device, and / or any other suitable information). In some embodiments, the authentication data may be encrypted using any suitable protocol.
[0064] In some embodiments, the media device may transmit authentication data included within the received message to the mobile device. In some embodiments, the media device may perform any suitable processing on the received message to extract the authentication data before transmitting the authentication data to the mobile device. For example, in some embodiments, the media device may extract a particular portion of the received message that includes the authentication data. As a more specific example, if the received message includes a URL and the authentication data, the media device may extract the authentication data from the URL.
[0065] In response to receiving the authentication data, the mobile device may present a user interface requesting authorization to authenticate the media device. In some embodiments, the mobile device may identify one or more user accounts that may be used by the media device. In some such embodiments, the user interface may further request that the user select a particular user account to be used by the media device.
[0066] In some embodiments, in response to determining that the media device should be authenticated, the mobile device may transmit information associated with the user account to the media device. In some embodiments, the transmitted information may indicate that the media device is authorized to access the user account using login information associated with the mobile device. In such embodiments, the transmitted information may include an indicator (e.g., a Boolean, an integer, a flag, and / or any other suitable type of indicator) whose value indicates that permission to access the user account has been granted. In some embodiments, the transmitted information may include any other suitable information, such as an indication of which of multiple user accounts should be used by the media device.
[0067] In some embodiments, the media device may request an authentication token from the authorization server based on the received information. In some embodiments, the media device may log into a user account, for example, using a URL received from the authentication server. In some embodiments, the media device may then request an authentication token in response to determining that the user account has been successfully logged in. Alternatively, in some embodiments, the media device may send the received information to the authorization server (e.g., send an indication that the mobile device has granted permission for the media device to log into the user account using credentials associated with the mobile device), and then request that the authorization server establish a session associated with the media device and the user account and send an authorization token in response to establishing the session.
[0068] In some embodiments, the authorization server may send an authentication token to the media device. In some embodiments, the authentication token may be used for any suitable purpose. For example, in some embodiments, the authentication token may be used to indicate that a user account is signed in with the media device, thereby allowing a user account to remain signed in on the media device if a particular application is closed.
[0069] 4, an illustrative example of hardware 400 for mobile device assisted purchase of content items for playback using a connected media device that may be used in accordance with some embodiments of the disclosed subject matter is shown. As shown, the hardware 400 may include a server 402, a communications network 404, and / or one or more user devices 406, such as a mobile device 408 and a media device 410.
[0070] The server 402 may be any suitable server for storing information, data, programs, media content, and / or any other suitable content. In some embodiments, the server 402 may perform any suitable functions. For example, in some embodiments, the server 402 may be any suitable content server for storing content and transmitting content to a user device for presentation. For example, in some embodiments, the server 402 may be a server that transmits media content to the user device 406 over the communications network 404. Note, however, that in some embodiments, the media content may be local media content stored on a suitable storage device (e.g., memory) associated with the user device 406, such as the mobile device 408. Continuing with this example, the local media content may be transmitted from a storage device associated with the mobile device 408 to the media device 410. Additionally or alternatively, the local media content may have been downloaded and stored in a suitable storage device from the server 402 or any other suitable device (e.g., in peer-to-peer file sharing). In some embodiments, the content on server 402 may be any suitable content, such as web pages, video content, audio content, movies, television programs, live streaming content, audiobooks, and / or any other suitable type of content.
[0071] In some embodiments, the server 402 may be any suitable server for identifying an existing session associated with a user account and a mobile device and transmitting authentication data corresponding to the identified session. For example, in some embodiments, the server 402 may receive an authentication request from the media device 410 and, in response to receiving the authentication request, may identify an existing session. As another example, in some embodiments, the server 402 may generate authentication data and transmit the generated authentication data to the media device 410. As yet another example, in some embodiments, the server 402 may receive an authentication request including user credentials (e.g., a username, a password, and / or any other suitable user credentials) corresponding to the mobile device 408 (and / or any other suitable user device) and, in response to receiving the user credentials, may establish a session for the corresponding user account.
[0072] In some embodiments, the server 402 may be any suitable server for establishing a communication channel between the mobile device 408 and the media device 410. For example, in some embodiments, the mobile device 408 and the media device 410 may each be connected to the device association server 402, and the device association server 402 may transmit messages between the mobile device 408 and the media device 410.
[0073] The communication network 404 may be any suitable combination of one or more wired and / or wireless networks in some embodiments. For example, the communication network 404 may include any one or more of the Internet, an intranet, a wide area network (WAN), a local area network (LAN), a wireless network, a digital subscriber line (DSL) network, a frame relay network, an asynchronous transfer mode (ATM) network, a virtual private network (VPN), and / or any other suitable communication network. The user device 406 may be connected to the communication network 404 by one or more communication links (e.g., communication link 412), and the communication network 404 may be linked to the server 402 via one or more communication links (e.g., communication link 414). The communication link may be any communication link suitable for communicating data between the user device 406 and the server 402, such as a network link, a dial-up link, a wireless link, a hardwired link, any other suitable communication link, or any suitable combination of such links.
[0074] In some embodiments, the mobile device 408 may be any suitable user device for receiving encoding suggestion data corresponding to suggestions being offered on the connected media device 410, presenting a user interface for navigating a payment process for purchasing a content item for playback on the media device 410, sending messages to the media device 410, casting a purchased content item for playback on the media device 410, and / or any other suitable functionality. In some embodiments, the media device 410 may be any suitable device for encoding suggestion data, presenting received content, and / or performing any other suitable functionality. In some embodiments, the user device 406 may be any suitable type of user device. For example, in some embodiments, the user device 406 may be implemented as a mobile device, such as a smartphone, a mobile phone, a tablet computer, a wearable computer, a laptop computer, a vehicle (e.g., a car, a boat, an airplane, or any other suitable vehicle) entertainment system, a portable media player, and / or any other suitable mobile device. As another example, in some embodiments, user device 406 may be implemented as a non-mobile device, such as a desktop computer, a set-top box, a television, a streaming media player, a game console, a speaker, a home entertainment device, a media playback device, and / or any other suitable non-mobile device.
[0075] In a more specific example, the user device 406 may be a display device including hardware and / or software for presenting media received from one or more sources of media content. For example, the user device 406 may include a television, a smart television, a monitor, a set-top box, an audio-video (AV) receiver, any other suitable media playback device and / or any suitable combination thereof. More specifically, the user device 406 may include a display, speakers, hardware and / or software for rendering media content such as analog and / or digital video and / or audio data, a power source, etc. In some embodiments, the user device 406 may include various input ports for receiving video and / or audio data from various sources. Such input ports may include one or more HDMI ports, one or more component video ports, one or more composite video ports, one or more USB ports, one or more S-Video ports, one or more TOSLINK ports, one or more coaxial ports, one or more Ethernet ports (wired or wireless), etc.
[0076] In another more specific example, the user device 406 may be any suitable device that can receive an audio signal and output the audio signal to one or more speakers (potentially through one or more intermediate devices). For example, the user device 406 may be an audio-video (AV) receiver, a speaker, an amplifier, an audio switch, an HDMI switch, any other suitable audio system, and / or any suitable combination thereof. More specifically, the user device 406 may include speakers, hardware and / or software for rendering media content such as analog and / or digital audio and / or video data, a power source, etc. The user device 406 may include various input ports for receiving audio and / or video data from various sources. Such input ports may include one or more HDMI ports, one or more component video ports, one or more composite video ports, one or more USB ports, one or more S-Video ports, one or more TOSLINK ports, one or more coaxial ports, one or more Ethernet ports (wired or wireless), etc. Additionally or alternatively, in some embodiments, the user device 406 may be configured to receive audio signals via any suitable wireless connection, such as a connection to a local area network (e.g., a connection conforming to one of the IEEE 802.11x family of protocols, sometimes referred to as a Wi-Fi connection), or a wireless connection between the external sound system 406 and the mobile device 408, such as an ad-hoc wireless network connection, a short-range wireless communication protocol (e.g., Bluetooth, Bluetooth Low Energy, Wireless USB, etc.).
[0077] Although server 402 is shown as one device, the functions performed by server 402 may be performed using any suitable number of devices in some embodiments. For example, in some embodiments, multiple devices may be used to implement the functions performed by server 402.
[0078] Although two user devices 408 and 410 are shown in FIG. 4 to avoid overcomplicating the diagram, in some embodiments, any suitable number and / or type of user devices may be used.
[0079] The server 402 and the user device 406 may be implemented using any suitable hardware in some embodiments. For example, in some embodiments, the devices 402 and 406 may be implemented using any suitable general-purpose or special-purpose computer. For example, a mobile phone may be implemented using a special-purpose computer. Any such general-purpose or special-purpose computer may include any suitable hardware. For example, as shown in the example hardware 500 of FIG. 5, such hardware may include a hardware processor 502, memory and / or storage 504, an input device controller 506, an input device 508, a display / audio driver 510, a display and audio output circuit 512, a communication interface 514, an antenna 516, and a bus 518.
[0080] The hardware processor 502, in some embodiments, may include any suitable hardware processor, such as a microprocessor, a microcontroller, a digital signal processor, special purpose logic, and / or any other suitable circuitry for controlling the functions of a general purpose or special purpose computer. In some embodiments, the hardware processor 502 may be controlled by a server program stored in the memory and / or storage of a server, such as the server 402. In some embodiments, the hardware processor 502 may be controlled by a computer program stored in the memory and / or storage 504 of the user device 406.
[0081] The memory and / or storage 504, in some embodiments, may be any suitable memory and / or storage for storing programs, data, and / or any other suitable information. For example, the memory and / or storage 504 may include random access memory, read-only memory, flash memory, hard disk storage, optical media, and / or any other suitable memory.
[0082] The input device controller 506, in some embodiments, may be any suitable circuitry for controlling and receiving input from one or more input devices 508. For example, the input device controller 506 may be circuitry for receiving input from a touch screen, a keyboard, one or more buttons, voice recognition circuitry, a microphone, a camera, a light sensor, an accelerometer, a temperature sensor, a near field sensor, a pressure sensor, an encoder, and / or any other type of input device.
[0083] Display / audio driver 510, in some embodiments, may be any suitable circuitry for controlling and driving output to one or more display / audio output devices 512. For example, display / audio driver 510 may be circuitry for driving a touch screen, a flat panel display, a cathode ray tube display, a projector, speakers, and / or any other suitable display and / or presentation device.
[0084] The communications interface 514 may be any suitable circuitry for interfacing with one or more communications networks (e.g., the communications network 404). For example, the interface 514 may include network interface card circuitry, wireless communications circuitry, and / or any other suitable type of communications network circuitry.
[0085] The antenna 516, in some embodiments, may be any suitable antenna or antennas for wirelessly communicating with a communications network (e.g., communications network 404). In some embodiments, the antenna 516 may be omitted.
[0086] The bus 518 may be any suitable mechanism for communicating between two or more components 502, 504, 506, 510, and 514 in some embodiments.
[0087] Any other suitable components may be included in hardware 500 according to some embodiments.
[0088] In some embodiments, at least some of the aforementioned blocks of the processes of Figures 1 and 2 may be executed or performed in any order or sequence, including but not limited to the order and sequence illustrated and described in conjunction with the figures. Moreover, to reduce latency and processing time, some of the aforementioned blocks of Figures 1 and 2 may be executed or performed substantially simultaneously or in parallel, where appropriate. Additionally or alternatively, some of the aforementioned blocks of the processes of Figures 1 and 2 may be omitted.
[0089] In some embodiments, any suitable computer-readable medium may be used to store instructions for implementing the functions and / or processes herein. For example, in some embodiments, the computer-readable medium may be transitory or non-transient. For example, a non-transient computer-readable medium may include a medium such as a magnetic medium in a non-transient form (such as a hard disk, a floppy disk, and / or any other suitable magnetic medium), an optical medium in a non-transient form (such as a compact disk, a digital video disk, a Blu-ray® disk, and / or any other suitable optical medium), a semiconductor medium in a non-transient form (such as a flash memory, an electrically programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), and / or any other suitable semiconductor medium), any suitable medium that is not instantaneous during transmission and does not lack any semblance of permanence, and / or any suitable tangible medium. As another example, a transitory computer-readable medium may include signals on a network, in wires, in conductors, in optical fibers, in circuits, in transmission, in any suitable medium that is momentary and lacks any appearance of permanence, and / or in any suitable intangible medium.
[0090] Thus, methods, systems, and media are provided for presenting media content items using multiple devices.
[0091] While the invention has been described and illustrated in the above exemplary embodiments, it will be understood that the disclosure has been made by way of example only, and that numerous changes in the details of the implementation of the invention may be made without departing from the spirit and scope of the invention, which is limited only by the following claims. Features of the disclosed embodiments may be combined and rearranged in various ways. [Explanation of symbols]
[0092] 400 Hardware 402 Server 404 Communication Network 406 User Device 408 Mobile Devices 410 Media Devices 412 Communication Links 414 Communication Links 500 Hardware 502 Hardware Processor 504 Memory and / or Storage 506 Input Device Controller 508 Input Devices 510 Display / Audio Driver 512 Display and audio output circuit 514 Communication Interface 516 Antenna 518 Bus
Claims
1. 1. A method for presenting media content, comprising: detecting, using a media device, an offer to initiate a purchase of a content item being presented using the media device; using the media device to determine whether the media device is not authenticated to a content service that provides the content item; in response to detecting the offer to initiate the purchase of the content item and in response to determining that the media device is not authenticated to the content service that provides the content item, using the media device to make the media device discoverable by a plurality of computing devices in a vicinity of the media device; transmitting encoding offer data associated with the purchase of the content item to one of the plurality of computing devices and in proximity to the media device; causing a payment user interface to be presented on the computing device using the encoded offer data; The method includes:
2. the encoding suggestion data causes the media device to transmit corresponding human readable information to the computing device; The method of claim 1 , wherein the human readable information is presented within the payment user interface on the computing device.
3. receiving authentication information from the computing device; The method of claim 1 , wherein the authentication information corresponds to a user account used to complete the purchase via the payment user interface on the computing device.
4. the authentication information causes the media device to transmit a corresponding authentication token to the computing device; The method of claim 3 , wherein the corresponding authentication token authenticates the user account on the media device.
5. the media device is executing a media playback application and the computing device is executing a corresponding media playback application; the media playback application sending the encoding suggestion data to the corresponding media playback application running on the computing device; The method of claim 1 , wherein in response to transmitting the encoding suggestion data to the computing device, the media device inhibits transmission of the encoding suggestion data to remaining computing devices connected to the same local area network.
6. receiving a cast request from the computing device to cast the content item on the media device; in response to the cast request, executing on the media device a receiver application that accepts the cast request from the computing device and causes the media device to present the content item; The method of claim 1, further comprising:
7. The method of claim 6 , wherein the cast request indicates that the computing device is authorized to play the content item.
8. 1. A system for presenting media content, comprising: Memory, When executing the computer-executable instructions stored in the memory, Detecting, using a media device, an offer to initiate a purchase of a content item being presented using the media device; using the media device to determine whether the media device is not authenticated to a content service that provides the content item; in response to detecting the offer to initiate the purchase of the content item and in response to determining that the media device is not authenticated to the content service that provides the content item, using the media device to make the media device discoverable by a plurality of computing devices in a vicinity of the media device; transmitting encoding suggestion data associated with the purchase of the content item to one of the plurality of computing devices and in proximity to the media device; presenting a payment user interface on the computing device using the encoding offer data; and a hardware processor configured to: A system comprising:
9. the encoding suggestion data causes the media device to transmit corresponding human readable information to the computing device; The system of claim 8 , wherein the human readable information is presented within the payment user interface on the computing device.
10. the hardware processor is further configured to receive authentication information from the computing device; The system of claim 8 , wherein the authentication information corresponds to a user account used to complete the purchase via the payment user interface on the computing device.
11. the authentication information causes the media device to transmit a corresponding authentication token to the computing device; The system of claim 10 , wherein the corresponding authentication token authenticates the user account on the media device.
12. the media device is executing a media playback application and the computing device is executing a corresponding media playback application; the media playback application sending the encoding suggestion data to the corresponding media playback application running on the computing device; 9. The system of claim 8, wherein in response to transmitting the encoding suggestion data to the computing device, the media device inhibits transmission of the encoding suggestion data to remaining computing devices connected to the same local area network.
13. The hardware processor includes: receiving a cast request from the computing device to cast the content item on the media device; in response to the cast request, executing a receiver application on the media device that accepts the cast request from the computing device and causes the media device to present the content item; The system of claim 8 , further configured to:
14. The system of claim 13 , wherein the cast request indicates that the computing device is authorized to play the content item.
15. 1. A non-transitory computer-readable recording medium having computer-executable instructions recorded thereon that, when executed by a processor, cause the processor to perform a method for presenting media content, the method comprising: Detecting, using a media device, an offer to initiate a purchase of a content item being presented using the media device; using the media device to determine whether the media device is not authenticated to a content service that provides the content item; in response to detecting the offer to initiate the purchase of the content item and in response to determining that the media device is not authenticated to the content service that provides the content item, using the media device to make the media device discoverable by a plurality of computing devices in a vicinity of the media device; transmitting encoding suggestion data associated with the purchase of the content item to one of the plurality of computing devices and in proximity to the media device; presenting a payment user interface on the computing device using the encoding offer data; and A non-transitory computer-readable recording medium comprising:
16. the encoding suggestion data causes the media device to transmit corresponding human readable information to the computing device; 16. The non-transitory computer-readable medium of claim 15, wherein the human readable information is presented within the payment user interface on the computing device.
17. The method further includes receiving authentication information from the computing device; 16. The non-transitory computer-readable medium of claim 15, wherein the authentication information corresponds to a user account used to complete the purchase via the payment user interface on the computing device.
18. the authentication information causes the media device to transmit a corresponding authentication token to the computing device; 20. The non-transitory computer-readable medium of claim 17, wherein the corresponding authentication token authenticates the user account on the media device.
19. the media device is executing a media playback application and the computing device is executing a corresponding media playback application; the media playback application sending the encoding suggestion data to the corresponding media playback application running on the computing device; 16. The non-transitory computer-readable storage medium of claim 15, wherein in response to transmitting the encoding suggestion data to the computing device, the media device inhibits transmission of the encoding suggestion data to remaining computing devices connected to the same local area network.
20. The method further comprising: receiving a cast request from the computing device to cast the content item on the media device; in response to the cast request, executing a receiver application on the media device that accepts the cast request from the computing device and causes the media device to present the content item; 16. The non-transitory computer-readable storage medium of claim 15, further comprising:
21. 21. The non-transitory computer-readable medium of claim 20, wherein the cast request indicates that the computing device is authorized to play the content item.
Citation Information
Patent Citations
Digital TV broadcast receiver
JP2004312505A
Systems and methods for spotted advertising and control of corresponding user interfaces and transactions via user receiving devices and mobile devices
US20160205439A1
Information processing method and display apparatus
WO2017085759A1