Computer software module apparatus, device and method for improved control of media delivery

By designing a media delivery controller in the media delivery system, dividing the main and secondary controllers according to the connection order, multiple users share control rights, solving the problem of single control rights in the existing technology and improving the viewing experience of multiple people.

CN116018810BActive Publication Date: 2024-12-24TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202080103741.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-09-03
Publication Date
2024-12-24
Estimated Expiration
2040-09-03

AI Technical Summary

Technical Problem

In the existing media delivery system, only one device is allowed to control media delivery, and multiple users cannot share control at the same time, resulting in poor user experience, especially in multiple viewing scenarios.

Method used

A media delivery controller is designed to determine the user status by establishing a connection with the media device, and divide the main controller and the secondary controller according to the connection sequence. The main controller executes a high-level command set, and the secondary controller executes basic and non-invasive. Sex command set, enabling simple and intuitive control of multiple users.

Benefits of technology

Allowing multiple users to point out important content, pause or playback parts on the screen in a simple and intuitive way, enhancing the multi-person viewing experience, making full use of everyone's personal devices, and avoiding control arbitration for a single remote.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116018810B_ABST
    Figure CN116018810B_ABST
Patent Text Reader

Abstract

A media delivery controller (200) comprises a communication interface (203) configured to establish a connection with a media device (300) and a controller (201), the controller being configured to: connect (510) with the media device (300); determine (520) a user status, and if the media delivery controller (200) is the first to be connected, the media delivery controller (200) becomes a main controller (525), wherein the main controller is capable of executing a main command set as a command set of the media delivery controller (200); and if the media delivery controller (200) is not the first to be connected, the media delivery controller (200) becomes a sub-controller (550), wherein the sub-controller is capable of executing a sub-command set as a command set of the media delivery controller (100), wherein the main command set includes a sub-command set in addition to a basic command.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an apparatus, including a computer software module, an apparatus including a circuit, a device, a system and a method for providing improved control of media delivery, and in particular to an apparatus, including a computer software module, an apparatus including a circuit, a device, a system and a method for providing improved control of media delivery using more than one delivery control device. Background Art

[0002] There is technology that uses a device such as a smartphone to control content to be presented on a media device such as a television (TV). Examples of such technology are Chromecast TM or AppleTV TM Both technologies work on the same principle, a smartphone is paired with a media device for delivering media to the media device in the media delivery system. Figure 1A An example of such a media delivery system 10 is shown. The media delivery system 10 includes a media delivery controller 20 (such as a smartphone or tablet computer that implements the desired functions) and a media device 30, wherein the smartphone 20 is paired with the media device 30. The pairing of the smartphone 20 and the media device 300 can be direct, such as Figure 1A or may be indirect, such as via WiFi TM Routers - such as Chromecast TM By using such a paired smartphone 20, the user is able to select content 32 for presentation via the media device 30, such as playing the content on the display 31 of the media device 30. The content 32 may be stored locally in the memory of the smartphone, or the content may be retrieved from a remote server, such as via the Internet. The user is also able to control the presentation of the content 32, such as by allowing the user to provide control commands through the user interface of the smartphone 20 to switch content, stop presentation, pause presentation, fast forward, rewind, or other known ways of controlling the presented media. The smartphone 20 is a media delivery controller.

[0003] The normal situation of watching content is that the user is not alone, and there may be a second media delivery controller 20B. However, the second media delivery controller 20B is not paired with the media device, so it cannot control any media delivered on this specific media device 30.

[0004] If the user wishes to allow a second user to control the media device 30, the second user can typically establish a guest pairing of the second media delivery controller 20B with the media device 30. Figure 1BAs shown, the second media delivery controller 20B is now paired with the media device 30 and is therefore able to control content delivered to and presented by the media device 30.

[0005] The inventors have recognized a problem with contemporary delivery systems, that is, even if a second media delivery controller is allowed to pair, only one pair is allowed to be controlled, so when the second media delivery controller 20B is paired, or at least when the second media delivery controller 20B initiates delivery, the first media delivery controller 20 will be deactivated. Figure 1B It is indicated in Figure 1B Shows Figure 1A Schematic diagram of a media delivery system 20, wherein the first media delivery controller 20 no longer controls the media device 30 (as indicated by the dotted line being moved to the second media delivery controller).

[0006] As described above, when two smartphones 20, 20B (or other devices) are connected to a media apparatus 30 for casting media, there will be some arbitration between the different devices as to which device decides what content to display and controls the playback, which arbitration is complex and generally means that the second user must take over the entire control or wait in line for such control to be taken over, or the first user must leave the casting altogether in order for the second user to be granted access. In some systems, the second device 20B is able to provide the content to be broadcast, but the content is then selected and controlled by the first (or active) device 20.

[0007] As the inventors have appreciated, for all practical purposes there is no true sharing of control of the media apparatus 30, as only one device at a time can control the delivery of media.

[0008] As the inventors have recognized, there is therefore a need for an apparatus, device, and method for providing improved control of media delivery. Summary of the invention

[0009] It is an object of the present teachings to overcome or at least reduce or alleviate the problems discussed in the Background section.

[0010] According to one aspect, a media delivery controller is provided, which includes a communication interface and a controller configured to establish a connection with a media device, and the controller is configured to: connect with the media device; determine a user status, and if the media delivery controller is the first to be connected, the media delivery controller becomes a main controller, wherein the main controller is capable of executing a main command set as a command set of the media delivery controller; and if the media delivery controller is not the first to be connected, the media delivery controller becomes a sub-controller, wherein the sub-controller is capable of executing a sub-command set as a command set of the media delivery controller, wherein the main command set includes a sub-command set in addition to basic commands.

[0011] The teachings herein may be implemented as a combination of software, hardware, or software and hardware components. One benefit of the proposed teachings is that when several people watch a movie, YouTube clip, or presentation together on a joint screen, multiple active users can point things out on the screen, mark important things, pause, or even select bookmarks to replay certain parts in an extremely simple and intuitive manner. The fast, intuitive, and non-intrusive way that this sub-controller is taught herein will greatly enhance the viewing experience of multiple viewers and take full advantage of the benefits of everyone having a personal device to use instead of the explicit control arbitration of a single remote control.

[0012] In one embodiment, the controller is further configured to determine whether the priority of the user of the media delivery controller is higher than the priority of the master controller if the media delivery controller is not the first to be connected, and if so, the media delivery controller becomes the master controller.

[0013] In one embodiment, the controller is further configured to receive an acceptance from a user associated with the media delivery controller to become the master controller.

[0014] In one embodiment, the controller is further configured to generate and send a request to execute a higher level command to a media delivery controller operating as a master controller; receive an acceptance from the media delivery controller operating as a master controller; and execute the high level command in response thereto.

[0015] In one embodiment, the controller is further configured to receive a request to execute a higher-level command from a media delivery controller operating as a secondary controller; receive a user acceptance of the request; generate an acceptance of the request in response; and send the acceptance to the media delivery controller operating as a secondary controller.

[0016] In one embodiment, the controller is further configured to generate a message for changing the role; send the message for changing the role to the media delivery controller operating as a sub-controller; thereby the media delivery controller operating as a sub-controller becomes the main controller.

[0017] In one embodiment, the controller is further configured to generate a message for changing the role; send the message for changing the role to the media delivery controller operating as the main controller; thereby the media delivery controller operating as the main controller becomes the sub-controller.

[0018] In one embodiment, the controller is further configured to receive a command from a user, determine whether the command is within a command set of the media delivery controller, and if so, execute the command, wherein the command relates to delivering media on the media device.

[0019] In one embodiment, the media delivery controller is a smartphone or tablet computer.

[0020] According to another aspect, a method for a media delivery controller is provided, wherein the method includes: connecting to a media device; determining a user status, and if the media delivery controller is the first to be connected, the media delivery controller becomes a main controller, wherein the main controller is capable of executing a main command set as a command set of the media delivery controller; and if the media delivery controller is not the first to be connected, the media delivery controller becomes a sub-controller, wherein the sub-controller is capable of executing a sub-command set as a command set of the media delivery controller, wherein the main command set includes the sub-command set in addition to basic commands.

[0021] According to another aspect, a computer readable medium carrying computer instructions is provided, which, when loaded into and executed by a controller of a media delivery controller, enables the media delivery controller to implement the method described herein.

[0022] According to another aspect, a software component device for controlling media delivery in a media delivery controller is provided, wherein the software component device includes: a software component for connecting to a media device and a software component for determining a user status. The software component device also includes a software component for changing roles, so that if the media delivery controller is the first to be connected, the media delivery controller becomes a main controller, wherein the main controller is capable of executing a main command set as a command set of the media delivery controller. The software component device also includes a software component for changing roles, so that if the media delivery controller is not the first to be connected, the media delivery controller becomes a sub-controller, wherein the sub-controller is capable of executing a sub-command set as a command set of the media delivery controller, wherein the main command set includes the sub-command set in addition to basic commands.

[0023] According to another aspect, a device is provided, which is a media delivery controller including a circuit for media delivery control according to an embodiment taught herein. The device including the circuit for media delivery control is suitable for use in the media delivery controller taught herein. The device including the circuit for media delivery control includes a circuit for connecting to a media device and a circuit for determining a user state. The device including the circuit for media delivery control also includes a circuit for changing roles, so that if the media delivery controller is the first to be connected, the media delivery controller becomes a main controller, wherein the main controller is capable of executing a main command set as a command set of the media delivery controller. The device including the circuit for media delivery control also includes a circuit for changing roles, so that if the media delivery controller is not the first to be connected, the media delivery controller becomes a sub-controller, wherein the sub-controller is capable of executing a sub-command set as a command set of the media delivery controller, wherein the main command set includes the sub-command set in addition to the basic commands.

[0024] Further embodiments and advantages of the invention will be given in the detailed description.It should be noted that the teachings herein can be used in digital imaging devices in digital photography and in many areas of computer vision, including image retrieval, robotic vision, augmented reality and video surveillance. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Embodiments of the invention will be described below, with reference to the accompanying drawings which show non-limiting examples of how the inventive concept can be reduced to practice.

[0026] Figure 1A A schematic diagram of a contemporary media delivery system including a first media delivery controller and a media device is shown;

[0027] Figure 1BShows when the second media delivery controller is activated Figure 1A Schematic diagram of contemporary media delivery systems;

[0028] Figure 2A A schematic diagram of a media delivery controller according to an embodiment of the present invention is shown;

[0029] Figure 2B A schematic diagram of a media delivery controller according to an embodiment of the present invention is shown;

[0030] Figure 3 A schematic diagram showing a media device according to one embodiment of the teachings herein;

[0031] Figure 4 A schematic diagram of a media delivery system according to one embodiment of the teachings herein is shown;

[0032] Figure 5 A flow chart showing a general method according to an embodiment of the present invention;

[0033] Figure 6 shows a component view of a software component arrangement according to an embodiment taught herein;

[0034] Figure 7 shows a component view of an apparatus including circuitry according to an embodiment taught herein; and

[0035] Figure 8 A schematic diagram of a computer-readable medium is shown, which carries computer instructions, which, when loaded into and executed by a controller of a device, enable the device to implement an embodiment of the present invention. DETAILED DESCRIPTION

[0036] Figure 2A A schematic diagram of a media delivery controller 200 according to an embodiment of the present invention is shown. The media delivery controller 200 includes a controller 201 and a memory 202. The controller 201 is configured to control the overall operation of the media delivery controller 200. In one embodiment, the controller 201 is a graphics controller. In one embodiment, the controller 201 is a general controller. In one embodiment, the controller 201 is a combination of a graphics controller and a general controller. As the technician understands, there are many alternatives for how to implement the controller, such as using field programmable gate array circuits, ASICs, GPUs, etc. as supplements or alternatives. For the purposes of this application, all of these possibilities and alternatives will be simply referred to as controller 201.

[0037] It should also be noted that in one embodiment, some or all of the processing is performed remotely, where the local controller 201 is configured to provide input data to a remote processing unit (such as in a cloud server) so that the remote processing unit performs the processing, and receives the results of the processing as output from the remote processing unit. For the purposes of this application, this possibility and alternative will also be simply referred to as controller 201, which thus represents both the local controller and the remote processing unit.

[0038] The memory 202 is configured to store media data, delivery settings, and computer-readable instructions that, when loaded into the controller 201, indicate how the media delivery controller 200 will be controlled. The memory 202 may include several memory units or devices, but they will be considered as part of the same overall memory 202. There may be a memory unit for storing media data, a memory unit for media device settings, and a memory for storing settings for a communication interface (see below), and so on. As will be appreciated by those skilled in the art, there are many possibilities for how to choose where the data should be stored, and therefore, the general memory 202 for the media delivery controller 200 is considered to include any and all such memory units for the purposes of this application. Specifically, the media content may be stored locally in the memory 202, or may be stored remotely in a server (possibly accessed via a cloud service), where an identifier for the media content is stored locally. Those skilled in the art will appreciate that there are many alternatives for how to implement the memory, such as using a non-volatile memory circuit (e.g., an EEPROM memory circuit), or using a volatile memory circuit (e.g., a RAM memory circuit). For the purposes of this application, all of these alternatives will be simply referred to as memory 202.

[0039] Figure 2B A schematic diagram of a media delivery controller as a communication device 200 according to an embodiment of the present invention is shown. In this embodiment, the communication device 200 is a smart phone or a tablet computer. In such an embodiment, the communication device 200 further includes a display device 210, which can be a touch screen of a smart phone or a tablet computer.

[0040] In the following, reference will be made to Figure 2A and 2B A media delivery controller 200 is provided.

[0041] In one embodiment, the media delivery controller 200 may further include a communication interface 203. The communication interface 203 may be wired and / or wireless. The communication interface 203 may include several interfaces.

[0042] In one embodiment, the communication interface 203 includes a USB (Universal Serial Bus) interface. In one embodiment, the communication interface 203 includes an HDMI (High Definition Multimedia Interface) interface. In one embodiment, the communication interface 203 includes a DisplayPort interface. In one embodiment, the communication interface 203 includes an Ethernet interface. In one embodiment, the communication interface 203 includes a MIPI (Mobile Industrial Processor Interface) interface. In one embodiment, the communication interface includes an analog interface, a CAN (Controller Area Network) bus interface, an I2C (Inter-Integrated Circuit) interface, or other interfaces.

[0043] In one embodiment, the communication interface 203 comprises a radio frequency (RF) communication interface. In one such embodiment, the communication interface 203 comprises a Bluetooth TM Interface, WiFi TM Interface, ZigBee TM Interface, RFID TM In one embodiment, the communication interface 203 is configured to communicate using a UPnP (Universal Plug and Play) protocol. In one embodiment, the communication interface 203 is configured to communicate using a DLNA (Digital Living Network Appliance) protocol.

[0044] In one embodiment, the communication interface 203 is configured to enable communication via more than one of the example technologies given above. As an example, a wired interface such as MIPI can be used to establish an interface between the display device, the controller, and the user interface, and a wireless interface such as WiFi can be used to establish an interface between the display device, the controller, and the user interface. TM A wireless interface may be used to enable communication between the media delivery controller 200 and an external host device (not shown).

[0045] The communication interface 203 is configured to enable the media delivery controller 200 to communicate with a media device such as a television, a game console, a video slide projector or a projector (not shown).

[0046] User interface 204 may be included in media delivery controller 200 (only in Figure 2BAdditionally or alternatively, user interface 204 (at least a portion thereof) may be remotely included in media delivery controller 200 via communication interface 203, so that user interface 204 (at least a portion thereof) is not a physical device in media delivery controller 200, but is implemented by receiving user input through a remote device (not shown) via communication interface 203.

[0047] The user interface 204 enables a user to enter control commands for the media to be delivered, which commands may be forwarded to the media device via the communication interface.

[0048] Figure 3 A schematic diagram of a media device 300 according to this article is shown. The media device 300 includes a media output device 310 for presenting media content 320. In one embodiment, the media output device 310 is a display for presenting visual content 320 (e.g., one or more images and / or videos). In one embodiment, the media output device 310 is a speaker device for presenting audio content 320 (e.g., music and / or video soundtracks). In one embodiment, the media output device 310 is a combination display for presenting visual content (e.g., one or more images and / or videos) and a speaker device for presenting audio content (e.g., audio and / or video soundtracks). In one embodiment, the media device 300 is a television. In one embodiment, the media device 300 is a projector device. It should be noted that in some embodiments, the media device can be any device capable of presenting media content.

[0049] The media device 300 further includes a controller 301 , a memory 302 , and a communication interface 303 .

[0050] Controller 301 is configured to control the overall operation of media device 300. In one embodiment, controller 301 is a graphics controller. In one embodiment, controller 301 is a general controller. In one embodiment, controller 301 is a combination of a graphics controller and a general controller. As the technician understands, there are many alternatives for how to implement the controller, such as using field programmable gate array circuits, ASICs, GPUs, etc. as supplements or alternatives. For the purposes of this application, all of these possibilities and alternatives will be simply referred to as controller 301. It should also be noted that in one embodiment, some or all of the processing is performed remotely, wherein the local controller 301 is configured to provide input data to a remote processing unit (e.g., in a cloud server) so that the remote processing unit performs processing and receives the result of such processing as output from the remote processing unit. For the purposes of this application, such possibilities and alternatives will also be simply referred to as controller 301, which therefore represents a local controller and a remote processing unit.

[0051] The memory 302 is configured to store media data, delivery settings, and computer-readable instructions that, when loaded into the controller 301, indicate how the media device 300 will be controlled. The memory 302 may include several memory units or devices, but they will be considered as part of the same overall memory 302. There may be a memory unit for storing media data, a memory unit for media delivery controller settings, and a memory for storing settings for a communication interface (see below), etc. As will be appreciated by those skilled in the art, there are many possibilities for how to choose where the data should be stored, and therefore, the general memory 302 for the media device 300 is considered to include any and all such memory units for the purposes of this application. Specifically, the media content may be stored locally in the memory 302, or may be stored remotely in a server (possibly accessed via a cloud service), where an identifier for the media content is stored locally. Those skilled in the art will appreciate that there are many alternatives for how to implement the memory, such as using a non-volatile memory circuit (e.g., an EEPROM memory circuit), or using a volatile memory circuit (e.g., a RAM memory circuit). For the purposes of this application, all of these alternatives will be simply referred to as memory 302.

[0052] In one embodiment, the communication interface 303 is wired, such as through a local area network (LAN) connection or an antenna connection, for receiving media content to be viewed.

[0053] In one embodiment, the communication interface 303 is wireless, and in one embodiment, the communication interface 303 is both wireless and wired.

[0054] In embodiments where the communication interface 303 is wireless, the communication interface 303 comprises a radio frequency (RF) communication interface. In one such embodiment, the communication interface 203 comprises a Bluetooth TM Interface, WiFi TM Interface, ZigBee TM Interface, RFID TM (Radio Frequency Identifier) ​​interface, wireless display (WiDi) interface, Miracast interface and / or other RF interfaces commonly used for short-range RF communication. In such an alternative or supplementary embodiment, the communication interface 303 includes a cellular communication interface, such as a fifth generation (5G) cellular communication interface, an LTE (Long Term Evolution) interface, a GSM (Global System Mobile) interface and / or other interfaces commonly used for cellular communication.

[0055] The communication interface 303 is configured to enable the media device 300 to communicate with one or more media delivery controllers 200 and receive media content to be presented. The communication between the media device 300 and one or more media delivery controllers 200 may be direct or via a wireless network such as WiFi. TM Router device of the router. Such communication links are well known and the skilled person does not need to understand further details.

[0056] Thus, the media device 300 is capable of receiving media content 320 to be presented and delivery control commands from one or more media delivery controllers 200. As will be appreciated, the media device 30 may include a single device or several devices in cooperation, some of which may even be remote. The media content 320 may be received directly from one or more media delivery controllers 200, or indirectly via a remote server, or may be accessed via a communication interface 303, wherein one or more media delivery controllers 200 provide an identifier for the media content 320. Some examples of control commands that the media device 300 may receive include, but are not limited to, a stop command, a pause command, a play command, a skip command, a fast forward (or scroll forward) command, a fast rewind (or scroll backward) command, a zoom command, a partial zoom command, a command to establish an independently controlled partial view, a command for adjusting the presentation speed (slow motion / fast motion) of the media content, a change in volume, a change in display properties (such as brightness or contrast), a selection of media to be viewed, a split screen, a selection of channels, a zoom view, a pan view, allowing a drawing of a graphic or shape (using a pointer), typing text, or generating other types of overlays, to name some examples.

[0057] Figure 4 Schematic diagram of a media delivery system 400 according to the present invention is shown. The media delivery system 400 includes a media device 300, such as Figure 3 The media devices discussed herein, and one or more media delivery controllers 200, such as the media delivery controllers discussed with respect to 2A and 2B. Figure 4 In the example shown, the media delivery system 400 includes two media delivery controllers, a first media delivery controller 200A and a second media delivery controller 200B. Even though the first media delivery controller 200A and the second media delivery controller 200B of FIG. 2 are shown as similar devices, they may also be different devices. For example, the first media delivery controller 200A may be a smart phone, and the second media delivery controller 100B may be a smart watch.

[0058] Figure 5 A general flow chart of a method for controlling media delivery to media devices via a plurality of media delivery controllers 200 according to the teachings herein is shown. Figure 4 and Figure 5 1 and 2 to discuss the manner in which media delivery can be controlled by multiple media delivery controllers 200 according to the teachings herein. Reference will also be made to two user scenarios: A) use in a public area, such as in a sports bar, store, or museum, and B) use in a private area, such as in a user's home or conference room where friends are visiting.

[0059] Starting with the public area user scenario, a public area such as a store, museum, gallery, or sports bar (to name a few) may have one or more media devices for providing content, entertainment, or education to multiple visitors. In a store, there may be different media devices to present information about different goods or products for sale. In a museum or gallery, there may be different media devices to provide information about different exhibits. In a sports bar, there may be different media devices to show different competitions or games. What all of these scenarios have in common is that there are multiple users. For example, in a museum / gallery, there will be a curator, a tour guide, and a visitor (of course, the number of users may be different), in a store, there may be a store manager, a salesperson, and a customer, and in a sports bar, there may be a bar manager, a waiter, and a guest. There are also three (or more) levels of users, assuming that managers and curators have the highest level and have greater power to influence the content to be delivered, tour guides, salespeople, and waiters have a medium level, and visitors, customers, or guests have the lowest level.

[0060] In the private area user scenario, there are also different levels of users. In the family scenario, there are adults, children, and visitors, while in the meeting scenario, there are staff, presenters, and attendees.

[0061] When a first user engages in the delivery of media from the first media delivery controller 200A to the media device 300 , the first media delivery controller 200A identifies the media device 300 and connects 510 thereto.

[0062] In one embodiment, the media device 300 is connected to the local area network (e.g., WiFi) TM or in Bluetooth TM The media device 300 is identified by its presence in the network.

[0063] In one embodiment, the media delivery controller 200 is configured to identify the media device through a discovery process by identifying the media device 300 through an image of the media device 300 taken by the media delivery controller 200 or by pointing the media delivery controller 200 at the media device 300. Various ways of actually identifying the media device are known and further details do not require the skilled person to understand.

[0064] If the first media delivery controller 200A is not already paired with the media device 300, pairing is performed as part of the connection. When the first media delivery controller 200A is connected, the state of the first media delivery controller 200A is determined 520 to determine if another media delivery controller 200 is already connected, - or if the first media delivery controller 200A is the first to connect. If the first media delivery controller 200A is the first to connect, the first media delivery controller 200A becomes 525 a primary controller and is given a high level of control and then operates accordingly as a secondary controller. If another media delivery controller 200 is already connected, the first media delivery controller 200A becomes 550 a secondary controller and is given a low level of control and then operates accordingly as a secondary controller.

[0065] The control level indicates which control commands the user is allowed to perform on the media device and the delivered media.

[0066] In one embodiment, the actual level of control given to the user upon connection is based on the identity of the user. In such an embodiment, a user may be identified as having a priority that may be higher than the priority of a second user. Returning to how the connection is established, if it is determined that other media delivery controllers 200 are already connected, then in such an embodiment, it is determined 530 whether the priority of the first user is higher or lower than (or equal to) the priority of the already connected (second) user. If the priority of the first user is higher than the priority of the already connected (second) user, the first user becomes 525 the primary controller and the second user becomes the secondary controller 550.

[0067] In one such embodiment, the first user can select 540 whether to accept as the primary controller. Acceptance can be made through a prompt at the time of connection or through a command given by the first user after connection.

[0068] Returning to the public area user scenario, when the waiter enters the sports bar and connects to one of the TVs, it is determined that the waiter is the first to connect, and the waiter becomes the primary controller. When the guest enters, the guest also connects to the TV, and because the waiter is already connected, and because the guest has a lower priority, the guest becomes the secondary controller. Subsequently, when the manager enters, the manager also connects to the TV. The manager, who has a higher priority, becomes the primary controller, however, because the manager will be doing office work, the manager refuses to serve as the primary controller and becomes the secondary controller, while the waiter remains the primary controller.

[0069] Similarly, in a private area user scenario, when a resident returns home, the resident connects to the television and becomes the primary controller. When a visitor arrives, the visitor also connects, but becomes the secondary controller. Subsequently, when another resident returns home, the second resident also connects, but because the second resident is not interested in the media viewing session, the second resident declines, and the first resident remains the primary controller. Optionally, the second resident will be asked to request to become the primary controller, but refrain from doing so.

[0070] The primary controller is capable of executing a primary command set of commands, while the secondary controller is capable of executing a secondary command set of commands. The primary command set includes more commands than the secondary command set. Generally speaking, the secondary command set includes non-intrusive commands, and the primary command set includes basic commands in addition to the non-intrusive commands. Examples of non-intrusive commands are changing volume, pausing, pointing to a point on the display 310, launching a partial view (which may be independently controlled by the secondary controller), to mention a few as examples. Examples of basic commands include changing the content to be viewed, stopping delivery, rewinding, skipping, zooming, or other commands that fundamentally change the presentation of the media.

[0071] In one example, a user may have a priority that does not allow the user to be the primary controller. In one such embodiment, a user may have a priority that allows the user to be the primary controller only if the user is accepted by a higher priority user.

[0072] For a public area user scenario, this could prevent a museum visitor from drastically changing an exhibit by preventing that user from becoming the primary controller, even if that user was the first to connect.

[0073] A user may further be associated with permissions, which determine which commands the user may execute. It should be noted that a user's permissions are distinct from the controls allowed according to status as a controller (primary / secondary). Permissions are separate, but the permissions granted by status may never exceed a user's permissions. In other words, just because a user is a primary controller and is allowed to select the media to be presented, such as by selecting a channel to watch, the user is only allowed to select media according to the user's permissions, which may prohibit certain channels, such as pay-per-view channels.

[0074] The already connected first user then proceeds to obtain a portion of the media delivered by the given command according to the command level (secondary / primary) of the first user.

[0075] However, if the sub-controller wishes to execute a higher-level command, the sub-controller can request 560 the command by issuing a command on the second media delivery controller 200B. When such a request is received, a request is sent to the first media delivery controller 200A by the second media delivery controller 200B, prompting the main controller whether to accept 570 the request, and the first media delivery controller 200A receives and may accept the request after the user input from the first user. The request can even include a request that exceeds the permission of the second user (temporary). If the request is accepted, the sub-controller is allowed to execute a higher request 580. The request can be for a single command or for a group of commands. In the case where the request is for a group of commands, the group of commands can be associated with a time limit, thereby allowing the second user to execute a higher-level command within a limited time period. When the higher-level command is executed, the sub-controller continues 550 as a sub-controller. As an alternative to only granting the sub-controller (temporary) the authority to execute a higher-level command, the main controller can change 590 roles, which may be temporary, so that the requesting sub-controller becomes 525 the main controller, and vice versa.

[0076] As part of becoming and subsequently operating as a primary controller 530 or a secondary controller 550, the media delivery controller receives one or more commands from a user via the user interface 204 and determines whether the command is within the command set of the media delivery controller 200, and if so, executes the command, wherein the command involves delivering media on the media device 300.

[0077] In one embodiment, the media delivery controller is configured to present a control panel corresponding to the command set of the media delivery controller on the user interface. In such an embodiment, the media delivery controller is configured to present a primary control panel in the user interface when operating as a primary controller, and the media delivery controller is configured to present a secondary control panel in the user interface when operating as a secondary controller.

[0078] For example, when a first user intends to display content (from the Internet or from a user device), the user may connect to a television by pointing the camera of a media delivery control device at the television, the television is recognized, identified and confirmed, paired, and the first user can begin to display and control the content to be delivered 320. A second user may then connect to the same television 300 through a similar process (pointing the device camera at the television, the television is recognized, identified and confirmed, paired), but then automatically obtains a secondary control panel - since the first user is already using the television.

[0079] In some embodiments, the secondary controller has different levels of control: non-intrusive, low impact, and master control request. Non-intrusive control requires no arbitration and allows the user to point to certain parts of the device's touch screen, through which a pointer appears on the TV screen - this allows a second user to point out events on the screen for other users without actually taking full control of the playback. This pointing can be transient, or allow the user to draw structures so that what is drawn remains on the screen for a certain duration, or until the user or the primary controller stops it. Another non-intrusive function might be to pause playback (but not end it) because that person might want to talk, take a break, etc.

[0080] Therefore, there may be different levels of control or access granted to different controllers, where higher access rights give access to more commands and more intrusive commands. The level of control can range from no control at all to the same level of control as the main controller.

[0081] In some embodiments, the default level of secondary control permissions (e.g., level 1) is the same for all new secondary control connections, regardless of who it is or previous access permissions. In some embodiments, a user gets the same control permissions as the last time they were a secondary controller (if the user has used the device before). In some embodiments, distinctions are made between user groups, so guests might have one default level, while employees or family members, if entered as secondary, have a higher control level by default. In some cases, a new secondary gets the same control permissions as other existing secondary controls of the same category (e.g., a master increases the level of an existing guest from 0 to 1, then all new guests will get 1 by default instead of 0).

[0082] When a first user wants to display content (either from the Internet or from a user's device), the user points the device camera at the TV, the TV is recognized, identified and confirmed, paired, and the first user can begin displaying and controlling content. A second user can then connect through a similar process (pointing the device camera at the TV, which is recognized, identified and confirmed, paired), but then automatically gets a secondary control panel - since the first user is already using the TV. There are different levels of control for the secondary control: non-intrusive, low-impact, and master control request. Non-intrusive control requires no arbitration and allows the user to point to certain parts of the device's touch screen, through which a pointer is displayed on the TV screen - this allows the second user to point out events on the screen for other users without actually fully controlling playback. This pointing can be transient, or allow the user to draw structures so that the drawn content remains on the screen for a certain duration, or until the user or the master controller stops it. Another non-intrusive function might be to pause playback (but not end it) because that person might want to talk, take a break, etc.

[0083] The secondary control may also allow the user to get a screen share of the content on the user's personal device (e.g., a smartphone), allowing the user to pause playback for a closer look, or even return to an earlier scene if the user missed something. This secondary local playback on the user's device may be at a lower bitrate.

[0084] In low-impact secondary control mode, the first user still controls the content being displayed, but the secondary controller is given some ability to influence. It could be to move playback to an earlier scene, or to play back a slideshow from an earlier slide (from a bookmark provided by the second user), perhaps because that user missed something, or wants to discuss content from an earlier stage of playback or presentation. It could also be that the second user wants to overlay some information related to the current content, or change subtitles, etc.

[0085] When requesting master control, the second user requests and is granted master control with full rights to change content, etc. This is similar to Figure 1A and 1B Typical changes in controllers in today's systems are discussed in . Therefore, it is clear that Figure 4 The media delivery system discussed in this article is obviously Figure 1A and 1B Extensions of the system in question.

[0086] The master controller may set the default permission value to a level where, with non-intrusive mode as the default, all other users may initiate secondary control and be allowed to perform actions associated with it without explicit acceptance from the master controller. If the default mode is set to no access, non-intrusive actions also require acceptance. During a play session, the master controller may change the default mode for all users, for individual users, and provide on-demand access to individual users upon request.

[0087] In some embodiments, and depending on the sub-control mode, the sub-controller is able to obtain a secondary view of the current playback, such as a partial display. For example, if the media device is playing a movie, the sub-controller obtains the same movie, possibly with a lower resolution, on the display 210 of the second media delivery controller 200B at the same time (same position in the movie). The sub-controller can then zoom in, pause, return to a previous point in the movie, etc. on the personal device screen. The user can then request that the TV be played to that bookmark if the sub-control mode or the main controller allows it - perhaps with some drawings drawn on the scene. In some embodiments, this is also possible for a slide show of a presentation from the main controller.

[0088] For example: the primary controller starts playing a movie. A second user misses some details in a scene, so the second user might connect by pointing the smartphone (as the second media delivery controller 200B) at the TV, get the secondary control, choose to play a copy from a certain point in the movie, rewind to that scene on the smartphone, take a closer look, and draw a circle around the particularly interesting details. The second user then tells the other users that there were particularly interesting details in the previous scene and asks for permission to change the playback on the TV to the specific scene that the second user marked on the smartphone, and pointed out the details by drawing, which is now visible to everyone. After that, they can either continue from that previous bookmark or continue from where they were before jumping to that previous location.

[0089] Another use case: the primary or master controller is showing a slideshow from a smartphone or personal device such as a laptop. One user wants to compare a slideshow to a previous slideshow, so he picks up his smartphone, points at the TV, becomes the second user, selects a copy of the content, and flips through the previous slides on his smartphone until he finds the relevant previous slideshow. Now, he may want to show that previous slide to others, or ask a question about it - and he can request the right to change the displayed slide to the one he now has bookmarked on his smartphone, and then show it on the TV. It is more effective if the primary controller is flipping through the previous slides just to get the slideshow to a single user who may or may not have a question.

[0090] In some embodiments, certain content is represented as private or confidential so that it cannot be repeated on the secondary controller's screen, while other content is represented as public and can be repeated.

[0091] The copy and control of the copy playback can be implemented in different ways. For content directly from the Internet requested by the main controller to be played on the TV, similar to a Chromecast session, the sub-controller is requested and given the identification of the content from the TV or main controller device and the current bookmark. The sub-control device then establishes its own streaming media over the Internet, but the position in playback remains synchronized with the TV or main controller until the sub-controller pauses or changes its position in playback. For content sent from the main controller device (such as a slide show), the content is provided by the main control device directly or via the TV.

[0092] In some embodiments, the bookmarks and screen drawings of the subcontroller can be shared with other users to provide devices rather than the main television set. In such embodiments, the subcontroller is paired not only with the television set, but also with other devices currently paired with the same television set.

[0093] Figure 6 A component view of a software component (or module) arrangement 600 according to an embodiment of the teachings herein is shown. The software component arrangement 600 is suitable for use in a media delivery controller 200 as taught herein to provide image processing as taught herein.

[0094] The software component device 600 includes a software component for connecting 610 with the media device 300 and a software component for determining 620 a user status. The software component device 600 also includes a software component 625 for changing roles, so that if the media delivery controller 200 is the first to be connected, the media delivery controller 300 becomes a main controller, wherein the main controller can execute a main command set as a command set of the media delivery controller 200. The software component device 600 also includes a software component 650 for changing roles, so that if the media delivery controller 200 is not the first to be connected, the media delivery controller 200 becomes a sub-controller, wherein the sub-controller can execute a sub-command set as a command set of the media delivery controller 200, wherein the main command set includes sub-command sets in addition to basic commands.

[0095] Figure 7 A component view of an apparatus 700 including circuitry for media delivery control according to an embodiment taught herein is shown. The apparatus 700 including circuitry for media delivery control is suitable for use in the media delivery controller 200 taught herein. Figure 7 The device 700 including the circuit for media delivery control includes a circuit 710 for connecting with the media device 300 and a circuit 720 for determining the user status. The device 700 including the circuit for media delivery control also includes a circuit 725 for changing roles, so that if the media delivery controller 200 is the first to be connected, the media delivery controller 200 becomes a main controller, wherein the main controller can execute a main command set as a command set of the media delivery controller 200. The device 700 including the circuit for media delivery control also includes a circuit 750 for changing roles, so that if the media delivery controller 200 is not the first to be connected, the media delivery controller 200 becomes a sub-controller, wherein the sub-controller can execute a sub-command set as a command set of the media delivery controller 200, wherein the main command set includes the sub-command set in addition to the basic commands.

[0096] Figure 8 A schematic diagram of a computer readable medium 120 carrying computer instructions 121 which, when loaded into and executed by a controller of a media delivery controller 200, enable the media delivery controller 200 to implement the present invention is shown.

[0097] The computer readable medium 120 may be tangible, such as a hard drive or flash memory, such as a USB memory stick or a cloud server. Alternatively, the computer readable medium 120 may be intangible, such as a signal carrying computer instructions that can be downloaded via a network connection (e.g., an Internet connection).

[0098] exist Figure 8 In the example of , the computer readable medium 120 is shown as a computer disk 120 carrying computer readable computer instructions 121, which is inserted into a computer disk reader 122. The computer disk reader 122 can be part of a cloud server 123 or other server, or the computer disk reader can be connected to the cloud server 123 or other server. The cloud server 123 can be part of the Internet or at least connected to the Internet. The cloud server 123 can alternatively be connected through a proprietary or dedicated connection. In an example embodiment, the computer instructions are stored at a remote server 123 and downloaded to the memory 202 of the media delivery controller 200 for execution by the controller 201.

[0099] A computer disk reader 122 may also or alternatively be connected to (or possibly inserted into) the media delivery controller 200 for transferring computer-readable computer instructions 121 to a controller of the media delivery controller 200 (presumably via a memory of the media delivery controller 20).

[0100] Figure 8 The situation when the media delivery controller 200 receives computer readable computer instructions 121 via a server connection and the situation when another media delivery controller 200 receives computer readable computer instructions 121 through a wired interface are shown. This enables the computer readable computer instructions 121 to be downloaded into the media delivery controller 200, thereby enabling the media delivery controller 200 to operate according to the present invention disclosed herein and implement the present invention.

[0101] In the above example, the media delivery controller is a smartphone. However, other devices that can be used as a primary or secondary controller may be laptops, tablet computers, smart watches, or other devices with a touchpad or touch screen and / or display.

Claims

1. A media delivery controller (200), comprising a communication interface (203) configured to establish a connection with a media device (300) and a controller (201), wherein the controller is configured to: Connecting (510) to the media device (300); The user status is determined (520), and if the media delivery controller (200) is the first to connect, the media delivery controller (200) becomes the master controller (525), wherein: The main controller is capable of executing a main command set as a command set of the media delivery controller (200); and if the media delivery controller (200) is not the first to be connected, the media delivery controller (200) becomes a sub-controller (550), wherein the sub-controller is capable of executing a sub-command set as the command set of the media delivery controller (200), wherein the main command set includes the sub-command set in addition to the basic commands, Wherein, the controller (201) is further configured to, if the media delivery controller is not the first one connected, determine (530) whether the priority of the user of the media delivery controller (200) is higher than the priority of the main controller, and if so, the media delivery controller (200) becomes the main controller (525).

2. The media delivery controller (200) according to claim 1, wherein: The controller (201) is further configured to receive an acceptance from a user associated with the media delivery controller (200) becoming the master controller (525).

3. A media delivery controller (200) according to any preceding claim, wherein: The controller (201) is further configured to: generating (560) a request to execute a higher level command and sending the request to a media delivery controller (200) operating as the master controller; receiving an acceptance from the media delivery controller (200) operating as a master controller; And in response to this The higher level command is executed (580).

4. The media delivery controller (200) according to claim 3, wherein: The controller (201) is further configured to: receiving a request to execute a higher level command from a media delivery controller (200) operating as a secondary controller; receiving (570) a user acceptance of the request; generating an acceptance of said request accordingly; as well as The acceptance is sent to the media delivery controller (200) operating as a secondary controller.

5. The media delivery controller (200) according to claim 4, wherein: The controller (201) is further configured to: generating a message for changing a role (590); Sending the message for changing the role to the media delivery controller (200) operating as a sub-controller; The media delivery controller (200) operating as a sub-controller thereby becomes the main controller.

6. The media delivery controller (200) according to claim 4, wherein: The controller (201) is further configured to: generating a message for changing a role (590); Sending the message for changing the role to the media delivery controller (200) operating as the main controller; The media delivery controller (200) operating as the main controller thus becomes a sub-controller.

7. The media delivery controller (200) according to claim 1, wherein: The controller (201) is further configured to: Receive commands from users, determining whether the command is within the command set of the media delivery controller (200), and if so, The command is executed, wherein the command relates to delivering media on the media device.

8. The media delivery controller (200) according to claim 1, wherein: The media delivery controller is a smart phone or a tablet computer.

9. A method for a media delivery controller (200), wherein: The method comprises: Connecting (510) with a media device (300); determining (520) a user status and if the media delivery controller (200) is the first to connect, the media delivery controller (200) becomes a master controller (525), wherein the master controller is capable of executing a master command set as a command set of the media delivery controller (200); and if the media delivery controller (200) is not the first to be connected, the media delivery controller (200) becomes a sub-controller (550), wherein the sub-controller is capable of executing a sub-command set as a command set of the media delivery controller (200), wherein the main command set includes the sub-command set in addition to the basic commands, The method further comprises: if the media delivery controller is not the first one connected, determining (530) whether the priority of the user of the media delivery controller (200) is higher than the priority of the master controller, and if so, the media delivery controller (200) becomes the master controller (525).

10. A computer readable medium (120) carrying computer instructions (121), which, when loaded into and executed by a controller (201) of a media delivery controller (200), enables the media delivery controller (200) to implement the method according to claim 9.

11. A software component device (600) for controlling media delivery in a media delivery controller (200), wherein: The software component device comprises: a software component for interfacing (610) with a media device (300); a software component for determining (620) a user state, and a software component for changing roles (625) such that if the media delivery controller (200) is the first to be connected, the media delivery controller (200) becomes a master controller, wherein the master controller is capable of executing a master command set which is a command set of the media delivery controller (200), and A software component for changing roles (650) such that if the media delivery controller (200) is not the first to be connected, the media delivery controller (200) becomes a secondary controller, wherein the secondary controller is capable of executing a secondary command set as a command set of the media delivery controller (200), wherein the primary command set includes the secondary command set in addition to the primary commands, The software component device further includes a software component for the following operations: if the media delivery controller is not the first one connected, determining (530) whether the priority of the user of the media delivery controller (200) is higher than the priority of the main controller, and if so, the media broadcast controller (200) becomes the main controller (525).

12. A media delivery controller including circuitry for controlling media delivery, comprising: Circuits for interfacing with media devices; circuitry for determining the state of a user, and circuitry for changing roles so that if the media delivery controller is the first to be connected, the media delivery controller becomes a master controller, wherein the master controller is capable of executing a master command set that is a command set of the media delivery controller, and circuitry for changing roles so that if the media delivery controller is not the first to be connected, the media delivery controller becomes a secondary controller, wherein the secondary controller is capable of executing a secondary command set as a command set of the media delivery controller, wherein the primary command set includes the secondary command set in addition to primary commands, Wherein, the media delivery controller further includes a circuit for the following operations: if the media delivery controller is not the first one connected, determining whether the priority of the user of the media delivery controller is higher than the priority of the main controller, and if so, the media delivery controller becomes the main controller.

Citation Information

Patent Citations

  • Remote operation device, device to be operated, control method for remote operation device, control method for device to be operated, and remote operation system

    CN101981940A

  • Air conditioner control system registered by multiple users for use and control method of air conditioner control system

    CN108278728A