US20090295680A1 - Operating a multi display network supporting hdmi-cec - Google Patents
Operating a multi display network supporting hdmi-cec Download PDFInfo
- Publication number
- US20090295680A1 US20090295680A1 US12/193,021 US19302108A US2009295680A1 US 20090295680 A1 US20090295680 A1 US 20090295680A1 US 19302108 A US19302108 A US 19302108A US 2009295680 A1 US2009295680 A1 US 2009295680A1
- Authority
- US
- United States
- Prior art keywords
- cec
- hdmi
- manipulating switch
- display device
- devices
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/003—Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
- G09G5/006—Details of the interface to the display terminal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/06—Consumer Electronics Control, i.e. control of another device by a display or vice versa
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/12—Use of DVI or HDMI protocol in interfaces along the display data pipeline
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/22—Detection of presence or absence of input display information or of connection or disconnection of a corresponding information source
Definitions
- HDMI-CEC High-Definition Multimedia Interface
- CEC Consumer Electronics Control
- HDMI-CEC devices enable a user to manage a plurality of sources connected via HDMI with no special programming needed and to run operations such as ‘one touch play’.
- the user may, for example, use one remote control to turn on the TV, DVD, and receiver at the same time, and to adjust the system volume using one button.
- the HDMI-CEC protocol uses a one-wire shared bus that includes automatic mechanisms for logical address allocation based on product type, arbitration, retransmission, broadcasting, and switching control.
- Operation code (opcode) supports both device specific and general features.
- CEC devices have both physical and logical addresses. Normally, upon hot-plugging, each CEC source device obtains a physical address by reading the EDID of the display device to which it is attached.
- an HDMI-CEC message shortly referred to as “CEC message”, includes the following CEC blocks: a special start ‘bit’, a header block containing source and destination addresses, a first data block containing optional opcode, and a second data block containing optional operands specific to the opcode.
- the maximum CEC message size (header block plus opcode block plus operand blocks) is 16*10 bits.
- Each CEC block includes 8 bits of data, one End-Of-Message (EOM) bit, and one acknowledge (ACK) bit transmitted by the receiver.
- a CEC message includes a series of CEC blocks wherein only the EOM bit of the last block in the message is on. Each CEC message starts with a block having 4 bits of source address (also referred to as nibble), 4 bits of destination address, an EOM bit, and an ACK bit.
- a polling message includes the same source and destination addresses with the EOM bit on.
- CEC includes an option for customized commands. This enables different vendors to create CEC based networks between products of the specific vendor. Examples of such modified CEC base networks include: Anynet (Samsung), Aquos Link (Sharp), BRAVIA Theatre Sync (Sony), Regza Link (Toshiba), RIHD (Onkyo), Simplink (LG), Viera Link/EZ-Sync (Panasonic/JVC), Easylink (Philips) and NetCommand for HDMI (Mitsubishi).
- a method for operating a network including at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, including: communicating with the various HDMI-CEC cluster trees using HDMI-CEC; creating a control menu which includes the HDMI-CEC display devices; sending the control menu to at least one of the HDMI-CEC display devices for display; and operating the control menu according to a user's selection.
- a method for operating a network including at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, including: communicating with the various HDMI-CEC cluster trees using HDMI-CEC; creating a control menu for each of the HDMI-CEC display devices; and sending the control menus to the HDMI-CEC display devices for display.
- a manipulating switch coupled to at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap; the manipulating switch including means for enabling the at least two HDMI-CEC display devices to communicate with their HDMI-CEC cluster trees using HDMI-CEC, and means for creating a control menu including at least two of the HDMI-CEC display devices.
- a manipulating switch coupled to at least two HDMI-CEC display devices; the manipulating switch also coupled to at least one HDMI-CEC source device; the manipulating switch communicates with the HDMI-CEC display devices and the HDMI-CEC source devices using HDMI-CEC; the manipulating switch operative to enable each of the HDMI-CEC display devices to control the available HDMI-CEC source devices using at least one menu created by the manipulating switch and displayed on at least one of the HDMI-CEC display devices.
- Implementations of the disclosed embodiments involve performing or completing selected tasks or steps manually, semi-automatically, fully automatically, and/or a combination thereof.
- several embodiments could be achieved by hardware, by software, by firmware, or a combination thereof.
- embodiments of the invention could exist by variations in the physical structure.
- selected functions of the invention could be performed by a data processor, such as a computing platform, executing a software instructions or protocols using any suitable computer operating system.
- FIG. 1A illustrates a multi display network in accordance with one embodiment of the invention
- FIG. 1B illustrates a multi port display device in accordance with one embodiment of the invention
- FIG. 1C illustrates a manipulating switch inside a display device in accordance with one embodiment of the invention
- FIG. 2 illustrates a multi port display device in accordance with one embodiment of the invention
- FIG. 3 illustrates a multi stream network in accordance with one embodiment of the invention
- FIG. 4 illustrates a multi stream network in accordance with one embodiment of the invention
- FIG. 5A illustrates a daisy chain in accordance with one embodiment of the invention
- FIG. 5B illustrates a multi stream manipulating switch inside a source device in accordance with one embodiment of the invention
- FIG. 5C illustrates a multi stream manipulating switch inside a source device in accordance with one embodiment of the invention
- FIG. 5D illustrates a multi stream network in accordance with one embodiment of the invention
- FIG. 5E illustrates a multi stream manipulating switch inside a source device in accordance with one embodiment of the invention
- FIGS. 6A-C illustrate HDMI-CEC network views in accordance with one embodiment of the invention
- FIG. 7 illustrates a multi display network in accordance with one embodiment of the invention
- FIG. 8 illustrates a multi display network in accordance with one embodiment of the invention
- FIG. 9 illustrates a multi display network in accordance with one embodiment of the invention.
- FIG. 10 illustrates a manipulating switch in accordance with one embodiment of the invention
- FIGS. 11A-11B illustrate symmetric communication channels in accordance with one embodiment of the invention
- FIG. 12 is a flow diagram of one method in accordance with one embodiment of the invention.
- FIG. 13 is a flow diagram of a routing method in accordance with one embodiment of the invention.
- FIG. 14 is a flow diagram of an emulating method in accordance with one embodiment of the invention.
- FIG. 15 is a flow diagram of a menu creation method in accordance with one embodiment of the invention.
- FIG. 16 is a flow diagram of a menu creation method in accordance with one embodiment of the invention.
- FIG. 17 is a flow diagram of a propagation control method in accordance with one embodiment of the invention.
- FIG. 18 is a flow diagram of a propagation control method in accordance with one embodiment of the invention.
- FIG. 19 is a flow diagram of a CEC on the fly modification method in accordance with one embodiment of the invention.
- FIG. 20 is a flow diagram of a CEC block termination method in accordance with one embodiment of the invention.
- FIG. 21 is a flow diagram of a method in accordance with one embodiment of the invention.
- FIG. 22 is a flow diagram of an addresses allocation method in accordance with one embodiment of the invention.
- FIG. 23 is a flow diagram of a logical addresses acquiring method in accordance with one embodiment of the invention.
- FIG. 24 is a flow diagram of a logical addresses acquiring method in accordance with one embodiment of the invention.
- FIG. 25 is a flow diagram of a physical addresses assignment method in accordance with one embodiment of the invention.
- references to “one embodiment” or “an embodiment” mean that the feature being referred to is included in at least one embodiment of the invention. Moreover, separate references to “one embodiment” in this description do not necessarily refer to the same embodiment. Illustrated embodiments are not mutually exclusive, unless so stated and except as will be readily apparent to those of ordinary skill in the art. Thus, the invention may include any variety of combinations and/or integrations of the embodiments described herein.
- flow diagrams illustrate non-limiting embodiment examples of the methods
- block diagrams illustrate non-limiting embodiment examples of the devices. Some flow diagrams operations are described with reference to the embodiments illustrated by the block diagrams. However, the methods of the flow diagrams could be performed by embodiments of the invention other than those discussed with reference to the block diagrams, and embodiments discussed with reference to the block diagrams could perform operations different from those discussed with reference to the flow diagrams. Moreover, although the flow diagrams may depict serial operations, certain embodiments could perform certain operations in parallel and/or in different orders from those depicted. Moreover, the use of repeated reference numerals and/or letters in the text and/or drawings is for the purpose of simplicity and clarity and does not in itself dictate a relationship between the various embodiments and/or configurations discussed.
- references to “one embodiment” or “an embodiment” mean that the feature being referred to is included in at least one embodiment of the invention. Moreover, separate references to “one embodiment” in this description do not necessarily refer to the same embodiment. Illustrated embodiments are not mutually exclusive, unless so stated and except as will be readily apparent to those of ordinary skill in the art. Thus, the invention may include any variety of combinations and/or integrations of the embodiments described herein.
- flow diagrams illustrate non-limiting embodiment examples of the methods
- block diagrams illustrate non-limiting embodiment examples of the devices. Some operations in the flow diagrams may be described with reference to the embodiments illustrated by the block diagrams. However, the methods of the flow diagrams could be performed by embodiments of the invention other than those discussed with reference to the block diagrams, and embodiments discussed with reference to the block diagrams could perform operations different from those discussed with reference to the flow diagrams. Moreover, although the flow diagrams may depict serial operations, certain embodiments could perform certain operations in parallel and/or in different orders from those depicted. Moreover, the use of repeated reference numerals and/or letters in the text and/or drawings is for the purpose of simplicity and clarity and does not in itself dictate a relationship between the various embodiments and/or configurations discussed.
- DVITM Digital Visual Interface
- HDMITM High-Definition Multimedia Interface
- DisplayPortTM is a digital display interface standard put forth by the Video Electronics Standards Association (VESA)TM.
- VESA Video Electronics Standards Association
- a display device may be any kind of video display, television, or projector.
- Some of the following embodiments discuss the operation of novel methods and systems for utilizing HDMI-CEC in a network including more than one display device and novel methods and systems for multi-display networks supporting HDMI-CEC.
- the embodiments may operate with standard HDMI-CEC devices and/or with partially compatible devices.
- An HDMI-CEC input port is associated with an “HDMI-CEC cluster tree” which includes all the upstream devices having HDMI physical paths to that HDMI-CEC input port.
- the upstream direction is from a sink device to a source device
- the downstream direction is from a source device to a sink device.
- HDMI-CEC network view includes the network topology and the linkage between HDMI physical addresses and CEC logical addresses as exposed to a device through the CEC ⁇ report physical address> messages that it receives. It is to be understood that the “HDMI-CEC cluster tree” represents the actual physical topology while the “HDMI-CEC network view” may be manipulated, for example, by a manipulating switch as described below.
- the HDMI-CEC network view of device ‘X’ enables device ‘X’ to communicate with the various devices available in its HDMI-CEC network view.
- manipulating switch denotes a component comprising at least one input port supporting HDMI-CEC and at least two output ports supporting HDMI-CEC transactions.
- a manipulating switch may also be any component comprising at least one input and at least two outputs which capable of delivering HDMI-CEC data.
- a manipulating switch may utilize any physical transmission that can be converted to HDMI-CEC.
- the manipulating switch may be located within or integrated with one of the HDMI-CEC source devices.
- the manipulating switch may be located within or integrated with one of the HDMI-CEC display devices.
- the manipulating switch may be implemented as a single component.
- the manipulating switch may be implemented as two or more interconnected components, optionally forming a cluster and/or network, whereby the described functionality of the manipulating switch may refer to the functionality accomplished by a part or the whole of the cluster and/or network.
- FIG. 3 illustrates a manipulating switch 41 representing two or more components forming the manipulating switch functionality together.
- HDMI-CEC cluster tree may refer to an entire network or refer just to a sub-network.
- source devices 13 - 17 form a first HDMI-CEC cluster tree coupled to display device 21
- the same source devices 13 - 17 form a second HDMI-CEC cluster tree coupled to display device 22 .
- display device 21 and source devices 13 - 17 form a first HDMI-CEC cluster tree
- display device 22 and source devices 13 - 17 form a second HDMI-CEC cluster tree.
- the manipulating switch 23 may or may not be regarded as included in one or more of the HDMI-CEC cluster trees.
- HDMI-CEC devices every CEC message is received by all devices connected to the HDMI-CEC cluster tree and only one output port may be connected to the HDMI-CEC cluster tree.
- FIG. 1A illustrates one embodiment of a manipulating switch 23 that includes logic that enables a plurality of HDMI-CEC display devices ( 21 , 22 ) to control an HDMI-CEC cluster tree, comprised of standard HDMI-CEC sources ( 13 , 14 , 16 , 17 ) and standard HDMI-CEC switch 15 .
- the manipulating switch 23 dynamically manipulates the HDMI-CEC network views, such that when none of the source devices is active, each display device may control all source devices. And when a first display device communicates with a first source device using HDMI-CEC, the second display device can still communicate with the other source device using HDMI-CEC. For example, when none of the source devices is active, display device 21 may control, through its CEC bus, source devices 13 , 14 , 16 , and 17 and switches 23 and 15 . Display device 22 may also control, through its CEC bus, the same source devices 13 , 14 , 16 , and 17 and switches 23 and 15 .
- the manipulating switch 23 manipulates the HDMI-CEC network view of display device 22 to reflect only source devices 13 and 14 .
- Source device 17 is also erased from the HDMI-CEC network view of display device 22 because it is connected though HDMI link 23 c which is already used by source device 16 .
- FIG. 12 is a flow diagram illustrating one method comprising the following steps: In step 120 , manipulating HDMI-CEC messages transmitted over a network comprising at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap. And in step 121 , enabling each of the HDMI-CEC display devices to communicate using HDMI-CEC with its associated HDMI-CEC cluster tree according to its current HDMI-CEC network view.
- FIGS. 1B-1C illustrate one embodiment wherein the manipulating switch 1 c 1 is located within the display device 1 b 1 .
- the manipulating switch 1 c 1 includes logic that enables a plurality of HDMI-CEC display devices ( 1 b 1 , 1 b 3 ) to control an HDMI-CEC cluster tree, comprised of standard HDMI-CEC sources ( 13 , 14 ).
- the embodiment illustrated by FIG. 1B enables a user to chain two or more display devices such that when none of the source devices is active, each display device may control all source devices, and when a first display device communicates with a first source device using HDMI-CEC, the second display device can still communicate with the second source device using HDMI-CEC.
- FIG. 2 illustrates one embodiment of a display device with a manipulating switch 12 that includes logic for controlling overlapping or partially overlapping HDMI-CEC networks.
- both HDMI-CEC ports 11 a, 11 b
- the HDMI-CEC ports 11 a, 11 b
- the HDMI-CEC ports may be coupled to a standard HDMI-CEC display device 11 as illustrated.
- FIG. 1 illustrates one embodiment of a display device with a manipulating switch 12 that includes logic for controlling overlapping or partially overlapping HDMI-CEC networks.
- the manipulating switch 12 resides within a display box 10 (such as a television, a monitor or a projector), but it is to be understood that the manipulating switch 12 may reside within any other display device, source device, or as a stand-alone device.
- the manipulating switch 12 selects and manipulates the data to be transmitted over the different HDMI-CEC networks connected to HDMI-CEC ports 11 a and 11 b.
- FIG. 13 is a flow diagram illustrating one method for enabling picture-in-picture in a display device comprising two HDMI-CEC input ports, each of the HDMI-CEC input ports associated with an HDMI-CEC cluster tree, and the HDMI-CEC cluster trees at least partially overlapping, the method comprising the following steps: In step 130 , defining an HDMI-CEC network view for each HDMI-CEC input port. In step 131 , controlling the HDMI-CEC messages transmitted between each HDMI-CEC input port of the HDMI-CEC display device and its HDMI-CEC cluster tree. In step 132 , controlling the HDMI-CEC messages transmitted between the HDMI-CEC cluster trees. And in step 133 , enabling selecting which of the HDMI-CEC source devices to route to which of the HDMI-CEC input ports using HDMI-CEC messages.
- the manipulating switch 12 includes logic that enables it to communicate with source devices 13 and 14 , and with source devices 16 and 17 through switch 15 , using HDMI-CEC, and still output one or more pictures through ports 11 a and 11 b.
- This capability enables the display device 11 to have, for example, a picture-in-picture feature, while it is possible to control each picture's source through the HDMI-CEC network view. It may also be possible to operate all the sources ( 13 , 14 , 16 , 17 ), using the display's remote control, through standard HDMI-CEC, while having the picture-in-picture feature.
- the physical addresses, and optionally the logical addresses, of the HDMI-CEC network are approximately duplicated by the manipulating switch 12 , such that the display device 11 is able to control sources ( 13 , 14 , 16 , and 17 ) either through HDMI-CEC port 11 a or through HDMI-CEC port 11 b.
- the manipulating switch 12 transmits some data between the two HDMI-CEC networks. It is possible to control what data will be transferred between the HDMI-CEC cluster trees and when.
- Prior art HDMI-CEC networks having one display device enable the user to: (i) operate the HDMI-CEC cluster tree using a display device, optionally utilizing the set-stream-path message, and (ii) operate the HDMI-CEC cluster tree using a source device, optionally utilizing the one touch play feature.
- At least one source device is connected through at least one manipulating switch to at least two display devices, and a user operates the HDMI-CEC network through a display device utilizing the set-stream-path message.
- the display device is able to operate the required source device using the standard set-stream-path message because the manipulating switch makes each display device believe it is connected to a standard HDMI-CEC network having one display device.
- At least one source device is connected through at least one manipulating switch to at least two display devices, and a user operates the HDMI-CEC network through a source device utilizing the one touch play feature.
- a source device activates a display device, for example, by utilizing the ‘one-touch play’ CEC feature, for example as described in HDMI spec 1.3 paragraph “CEC 13.1 One Touch Play”
- the manipulating switch should select which of the available display devices to connect with the source device.
- the logic for selecting the display device to be connected to the source device may be predefined, dynamically selected, and/or manually selected.
- the display device on which the content is to be displayed may be selected according to one of the following non-limiting examples: displaying the content on a display device that is defined as the primary display device; displaying the content on a display device that is already active; or displaying the content on a display device that is not active.
- manipulating switch 23 may connect source device 16 , instead of source device 13 , to display device 21 ; or connect source device 16 to display device 22 ; or display a menu on display device 21 and/or on display device 22 in order to enable the user to select the desired display device; or connect source device 16 to the display device it was last connected to; or operate according to any other reasonable logic.
- the manipulating switch takes over and the HDMI-CEC cluster tree is operated from the switch as discussed in the next paragraphs.
- operation from a source device may cause operation from the manipulating switch.
- At least one source device is connected through at least one manipulating switch to at least two display devices, and a user operates the network, which supports HDMI-CEC, through a manipulating switch that performs one or more of the following operations: (i) communicating with the various HDMI devices using the HDMI-CEC protocol, including spoofing when needed and as explained below, (ii) creating a control menu, which includes the display devices, and (iii) sending the control menu to at least one of the display devices for displaying.
- the user operates the control menu, created by the manipulating switch, through the remote control of the manipulating switch.
- the user operates the control menu, created by the manipulating switch, through any other appropriate means such as a multifunctional remote control communicating with the manipulating switch, or though the remote control of one of the display devices, wherein the display device forwards the user's selections to the manipulating switch.
- the display device may forward the user's selections to the manipulating switch directly or following a manipulation by the manipulating switch.
- One example of such a manipulation is when the manipulating switch emulates a source device that displays its menu on the display device using CEC available mechanisms for displaying menu and retrieves remote control actions.
- CEC mechanisms are described in HDMI specification 1.3 paragraph “CEC 13.12 Device Menu Control” and include messages such as ⁇ User Control Pressed>, ⁇ User Control Released>, ⁇ Menu Request>, or ⁇ Menu Status>.
- the manipulating switch in order to operate the HDMI-CEC cluster tree through the manipulating switch, supplies the user with the devices available in the manipulated HDMI-CEC cluster tree (i.e. not bounded by the standard CEC rules).
- FIG. 15 is a flow diagram illustrating one method for operating a network comprising at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, comprising the following steps: In step 150 , communicating with the various HDMI-CEC cluster trees using HDMI-CEC. In step 151 , creating a control menu which comprises the HDMI-CEC display devices. In step 152 , sending the control menu to at least one of the HDMI-CEC display devices for display. And in step 153 , operating the control menu according to a user's selection.
- FIG. 16 is a flow diagram illustrating one method for operating a network comprising at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, comprising: In step 160 , communicating with the various HDMI-CEC cluster trees using HDMI-CEC. In step 161 , creating a control menu for each of the HDMI-CEC display devices. In step 162 , sending the control menus to the HDMI-CEC display devices for display. In optional step 163 , operating each control menu by a remote control of the HDMI-CEC display device on which it is displayed. And in optional step 164 , forwarding the user's selections from the HDMI-CEC display device to a manipulating switch.
- Standard HDMI interface supports only one stream.
- a channel that is capable of transferring more than one HDMI stream is referred to herein as a multi-stream channel supporting HDMI-CEC.
- the multi-stream channel supporting HDMI-CEC may be coupled to two or more HDMI output ports and therefore is somehow similar to a device having multiple HDMI inputs and multiple HDMI outputs.
- a multi-stream manipulating switch refers to a switch that supports at least one multi stream channel.
- the multi-stream manipulating switch is capable of manipulating at least some of the HDMI and CEC control transactions.
- a source device supporting a multi-stream daisy chain is referred to herein as a source device supporting multi-stream.
- one or more multi-stream channel supporting HDMI-CEC are embedded within an HDMI-CEC network, or within a network that is compatible or partially compatible with HDMI-CEC.
- the multi-stream channel it is possible to operate more than one source device connected to the HDMI-CEC cluster tree spanned by the multi-stream channel.
- the system has to manipulate the HDMI-CEC cluster trees connected to the different display devices in order to be able to operate the source devices using CEC messages.
- FIG. 3 illustrates one embodiment of a multi-display network supporting HDMI-CEC with a multi-stream channel 41 c.
- the display devices ( 21 , 22 ) are connected to multi-stream manipulating switch 41 that is connected to multi-stream manipulating switch 42 through a multi-stream channel supporting HDMI-CEC 41 c.
- manipulating switch 41 is implemented as two or more interconnected components, optionally forming a cluster and/or network, whereby the described functionality of the manipulating switch 41 may refer to the functionality accomplished by a part or the whole of the cluster and/or network.
- display device 22 may only access devices 13 , 14 , and 17 .
- the throughput from source device 17 may be limited, for example, by implementing the following method:
- Multi-stream manipulating switch 42 removes the HPD signal to source device 17 ;
- source device 17 initiates a read EDID transaction
- Multi-stream manipulating switch 42 replies the read EDID transaction with a prefetched, manipulated, EDID of display device 22 , such that only video formats that match the available bandwidth of the multi-stream channel 41 c are exposed to source device 17 .
- FIG. 4 illustrates an embodiment where display box 30 includes a multi-stream manipulating switch 31 outputting two standard HDMI output signals through ports 11 a and 11 b to the display device 11 .
- Multi-stream manipulating switch 31 communicates with multi-stream manipulating switch 42 through a multi-stream channel supporting HDMI-CEC 31 c.
- Multi-stream manipulating switch 42 communicates with the source devices ( 16 , 17 ) through standard HDMI-CEC interface ( 32 a, 32 b ).
- the source devices When none of the source devices is active, and assuming that the CEC buses of ports 11 a and 11 b are not physically connected, the source devices ( 13 , 14 , 16 , 17 ) are visible to the display device 11 in one or two HDMI-CEC network views (because display device 11 has only two HDMI-CEC inputs, 11 a and 11 b, it cannot have more than two HDMI-CEC network views).
- multi-stream manipulating switch 31 manipulates the HDMI-CEC network view such that source devices 13 , 14 , and 17 appear to be in the HDMI-CEC network view of port 11 b, and therefore HDMI-CEC display device 11 is still able to communicate with one of the remaining source devices ( 13 , 14 , and 17 ).
- multi-stream manipulating switch 31 may place the source devices 16 and 17 under the same HDMI-CEC network view or under different HDMI-CEC network views.
- channel 31 c is a multi-stream channel supporting HDMI-CEC
- the multi-stream manipulating switch 31 may manipulate the HDMI-CEC network views as needed and locate source devices 16 and 17 to be in the HDMI-CEC network view of port 11 a or in the HDMI-CEC network view of port 11 b.
- source device 17 is manipulated by multi-stream manipulating switch 31 to be in the HDMI-CEC network view of port lb. But the available bandwidth of the multi-stream channel supporting HDMI-CEC 31 c decreases and therefore the multi-stream manipulating switch 31 has to make sure that future transmissions from source device 17 will be limited to the available bandwidth of the multi-stream channel supporting HDMI-CEC 31 c.
- the throughput from source device 17 may be limited, for example, by implementing the following method:
- Multi-stream manipulating switch 42 removes and restores the HPD signal to source device 17 , in order to cause source 17 to read the EDID;
- source device 17 initiates a read EDID transaction.
- Multi-stream manipulating switch 42 replies the read EDID transaction with a prefetched, manipulated, EDID of display device 11 such that only video formats that match the available bandwidth of the multi-stream channel supporting HDMI-CEC 31 c are exposed to source device 17 .
- link 31 c is a multi-stream channel supporting HDMI-CEC that is capable of transporting a total throughput of 8 Gbps, which is suitable for transmitting 1080p, 60 Hz, 48 bit per pixel (bpp); If source device 16 transmits 1080p 60 Hz 24 bpp to port 11 a, the multi-stream channel supporting HDMI-CEC 31 c still has enough bandwidth to transmit another 1080p 60 Hz 24 bpp stream.
- multi-stream manipulating switch 42 removes and restores the HPD signal to source device 17 , so that source 17 reads the manipulated EDID of display device 11 , such that no other formats requiring higher bandwidth than the available bandwidth seem to be supported by port 11 b.
- the EDID of the appropriate display device is manipulated such that the total maximum bandwidth consumed by the predefined number of the source devices communicating in parallel through the multi-stream channel supporting HDMI-CEC is supported by the multi-stream channel. For example, if 31 c is a multi-stream channel supporting HDMI-CEC capable of transmitting a total throughput of 8 Gbps, each of source devices 16 and 17 will be supplied with formats having a throughput that is equal to or lower than 1080p 60 Hz 24 bpp stream.
- FIG. 5A illustrates a multi-stream sub network within a multi-display network supporting HDMI-CEC having a multi-stream daisy chain including source devices supporting multi-stream 52 , and 53 , and source device 54 , connected through the multi-stream channels supporting HDMI-CEC 51 a and 52 a to the multi-stream manipulating switch 51 , that is connected to display devices 55 , 56 , and 57 .
- the multi-stream manipulating switch 51 and each of the source devices supporting multi-stream ( 52 , 53 ) have to calculate their upstream residue bandwidth, and then expose only the video formats that match the available bandwidth of the chain's bottleneck.
- multi-stream channels supporting HDMI-CEC 51 a and 52 a have a maximum throughput of 8 Gbps each. Assuming display device 56 requests from source device supporting multi-stream 52 to start transmitting a 6 Gbps stream over the multi-stream channel supporting HDMI-CEC 51 a, then the multi-stream channel supporting HDMI-CEC 51 a has a residue bandwidth of 2 Gbps. Therefore, source device supporting multi-stream 52 transmits to source device supporting multi-stream 53 a message informing it that the residue bandwidth is 2 Gbps.
- the multi-stream channel supporting HDMI-CEC includes an internal control channel between its nodes.
- device 52 utilizes the internal control channel for transmitting to device 53 the message informing that the residue bandwidth is 2 Gbps.
- source device supporting multi-stream 53 removes and restores the HPD signal to source device 54 , in order to make it read the EDID of a virtual display device supporting up to 2 Gbps.
- FIG. 5B illustrates one embodiment of a source device supporting multi-stream 53 , including: (i) an HDMI input port 53 a, (ii) a data source 58 a, and (iii) a multi-stream manipulating switch 58 b having two HDMI inputs ports and one multi-stream channel supporting HDMI-CEC 52 a output.
- the source device supporting multi-stream 53 is capable of utilizing the multi-stream channel supporting HDMI-CEC 52 a for data received from the data source 58 a, or data received from the HDMI input port 53 a, or for data received from both inputs.
- FIG. 5C illustrates one embodiment of a source device supporting multi-stream 52 , including: (i) an input for receiving a multi-stream channel supporting HDMI-CEC 52 a, (ii) a data source 58 c, and (iii) a multi-stream manipulating switch 58 d having one HDMI stream input, one multi-stream channel supporting HDMI-CEC input, and one multi-stream channel supporting HDMI-CEC 51 a output.
- the source device supporting multi-stream 52 is capable of utilizing the multi-stream channel supporting HDMI-CEC 51 a for data received from the data source 58 c, or data received from the multi-stream channel supporting HDMI-CEC 52 a, or for data received from both inputs.
- FIGS. 5D-5E illustrate one embodiment wherein the multi-stream manipulating switch 552 a is located within a display device 552 .
- the multi-stream manipulating switch 552 a includes logic which enables a plurality of HDMI-CEC display devices ( 552 , 56 ) to control an HDMI-CEC cluster tree, comprising a standard HDMI-CEC source 54 and a source device supporting multi-stream 53 .
- FIG. 5D-5E illustrate one embodiment wherein the multi-stream manipulating switch 552 a is located within a display device 552 .
- the multi-stream manipulating switch 552 a includes logic which enables a plurality of HDMI-CEC display devices ( 552 , 56 ) to control an HDMI-CEC cluster tree, comprising a standard HDMI-CEC source 54 and a source device supporting multi-stream 53 .
- 5D enables a user to connect a chain of source devices (linked using at least one multi-stream channel supporting HDMI-CEC) to a chain of display devices, such that when none of the source devices is active, each display device may control all of the source devices, and when a first display device communicates with a first source device using HDMI-CEC, a second display device can still communicate with the other source devices using HDMI-CEC.
- a chain of source devices linked using at least one multi-stream channel supporting HDMI-CEC
- a multi-stream manipulating switch may be connected to a multi-stream channel supporting CEC.
- the multi-stream channel supporting HDMI-CEC may be implemented using any appropriate technique, as long as the transmitted streams are HDMI-CEC compatible.
- a multi-stream channel supporting HDMI-CEC may be created using solutions for transmitting HDMI-CEC signals over media such as twisted-pair cables, coax cables, optical fibers, and/or implemented using a wireless solution.
- the manipulating switch utilizes one or more of the following four CEC manipulation functions.
- the CEC propagation control function enables the manipulating switch to receive a CEC block which was initiated by a certain device; and pass or intercept the received CEC block to a certain device(s), optionally on the fly, and without modifying the received block.
- the manipulating switch may divide the HDMI-CEC cluster tree into multiple HDMI-CEC cluster trees and may control the propagation of the CEC blocks between the multiple HDMI-CEC cluster trees; the multiple HDMI-CEC cluster trees may partially overlap.
- manipulating switch 64 controls two HDMI-CEC cluster trees.
- the first HDMI-CEC cluster tree includes source devices 66 and 67 and display device 62 .
- the second HDMI-CEC cluster tree includes source devices 65 , 66 and 67 and display device 61 .
- the manipulating switch 64 controls the propagation of CEC blocks within each of the HDMI-CEC cluster trees and the propagation of CEC blocks between the various HDMI-CEC cluster trees. This means that the manipulating switch may forward certain CEC blocks to some source or display devices and not forward the certain CEC blocks to other source or display devices it is connected to.
- FIG. 17 is a flow diagram illustrating one method comprising the following steps: In step 170 , receiving a CEC block which was initiated by a first HDMI-CEC device. In step 171 , passing the received CEC block to a second HDMI-CEC device. And in step 172 , preventing a third HDMI-CEC device from receiving the CEC block
- FIG. 18 is a flow diagram illustrating one method comprising the following steps: In step 180 , dividing a plurality of devices into at least a first HDMI-CEC cluster tree coupled to a first display device, and a second HDMI-CEC cluster tree coupled to a second display device, wherein the HDMI-CEC cluster trees partially overlap. In step 181 , receiving a first CEC block which was initiated by the first HDMI-CEC cluster tree. In step 182 , passing the first CEC block to the first display device not passing the first CEC block to the second display device.
- the CEC on the fly modification function enables the manipulating switch to: (i) receive a CEC block which was initiated by a certain device, (ii) modify one or more bits in the received CEC block, optionally on the fly, and (iii) supply the modified CEC block to a certain device(s).
- a source device is associated with two HDMI-CEC network views through a manipulating switch, and the source device holds different logical addresses for each HDMI-CEC network view.
- a display device associated with the first HDMI-CEC network view
- transmits a CEC message to the source device that stores a logical address matching the second HDMI-CEC network view
- the manipulating switch may replace the CEC destination address with the address matching the second HDMI-CEC network view, such that the source device will identify the CEC message as addressed to it.
- the manipulating switch receives the CEC block containing the four bits of source address and the four bits of destination address, it can determine whether the block was correctly or incorrectly modified.
- the manipulating switch drops the CEC message, optionally by changing one or more of the address bits or using a ⁇ feature abort> message.
- On the fly modification may also be applied to downstream CEC messages (e.g. from the source device to the display device).
- the source device transmits a CEC message using the logical addresses it stores.
- the manipulating switch may modify the source and/or destination addresses according to addresses matching the recipient's HDMI-CEC network view.
- a transaction on a CEC line involves an initiator and one or more followers.
- the initiator is responsible for sending the message structure and the data (sometimes both of them referred to herein as data).
- the follower is the recipient of the data and is responsible for setting any acknowledgement bits.
- FIG. 19 is a flow diagram illustrating one method comprising the following steps:
- step 190 receiving a CEC message from a first HDMI-CEC port, the CEC message comprising data according to the initiator's HDMI-CEC network view.
- step 191 modifying the CEC data, approximately on the fly, to match the follower's HDMI-CEC network view.
- the data is selected from the group of CEC source logical address, or CEC destination logical address, or CEC source logical address and CEC destination logical address.
- step 192 transmitting the modified CEC message through a second HDMI-CEC port.
- the CEC block termination function enables the manipulating switch to receive a CEC block which was initiated by a certain device; optionally acknowledge (ACK) the block; modify the received block; and supply the modified blocks to a certain device(s).
- ACK acknowledge
- a few blocks or all the blocks comprising the CEC may be partially or completely modified.
- only a section of the block may be modified, for example, only the header containing the logical addresses may be modified.
- the source address still matches the source address of the original initiator of the block and not the source address of the manipulating switch.
- a transmission is stopped using CEC Line Error Handling, such as defined in HDMI spec 1.3 paragraph CEC 7.4.
- CEC line error handling enables a device acting as follower to notify all other devices (primarily the initiator) that a potential error has occurred, where an error is defined as a period between falling edges that is shorter than a minimum data bit period.
- FIG. 20 is a flow diagram illustrating one method comprising the following steps: In step 200 , receiving a CEC block through a first HDMI-CEC port and in step 201 , acknowledging the CEC block. In step 202 modifying one or more bits in the received CEC block. And in step 203 , sending the modified CEC block through at least a second HDMI-CEC port.
- FIG. 21 is a flow diagram illustrating one method comprising the following steps: In step 210 , receiving a CEC block comprising a destination logical address matching the initiator's HDMI-CEC network view. In step 211 , acknowledging the CEC block. In step 212 , modifying the destination logical address to match the follower's HDMI-CEC network view. And in optional step 213 , forwarding the modified block to the follower.
- the CEC message generation function enables the manipulating switch to self generate one or more CEC blocks or one or more CEC messages, and supply the generated CEC message to a certain device(s).
- the self generated CEC message is not initiated directly by a CEC message received by the manipulating switch.
- the manipulating switch may generate a CEC message in order to perform one or more of the following: create an HDMI-CEC network view for a device, emulate a CEC message from a device, assign physical address to a CEC device, or spoof the HDMI-CEC cluster tree. By learning the HDMI network, the manipulating switch may create spoofed CEC transactions and/or spoof the address allocation process.
- display device 61 may be accessed by all source devices in the network and display device 62 may be accessed only by source devices 66 and 67 .
- manipulating switch 64 prevents display device 62 from receiving the CEC transactions used for creating the HDMI-CEC network view exposed to display device 61 , optionally using the CEC propagation control function.
- manipulating switch 64 may learn the HDMI-CEC network topology and create spoofed CEC transactions used for creating the HDMI-CEC network view exposed to display device 62 , optionally using the CEC message generation function.
- the manipulating switch may create an appropriate HDMI-CEC network view for each downstream and/or upstream path.
- the manipulating switch creates the appropriate HDMI-CEC network view by spoofing CEC transactions using the CEC ⁇ report physical address> message that causes the addressed CEC device to report, to the other CEC devices in the HDMI-CEC cluster tree, the connection between its HDMI physical address and its CEC logical address.
- FIGS. 6A-C illustrate manipulating switch 64 spoofing the CEC transactions for display device 62 , optionally using the CEC “report physical address” message.
- display device 61 receives an HDMI-CEC network view as if it were the only display device connected to the HDMI-CEC cluster tree, while display device 62 also receives an HDMI-CEC network view as if it were the only display device connected to the HDMI-CEC cluster tree.
- FIG. 6B illustrates the HDMI-CEC network view of display device 61 , where the physical addresses are denoted by a four digit number and the logical addresses are denoted inside brackets.
- the manipulating switch 64 makes sure that the various source devices receive the right physical addresses using the HDMI EDID distribution process with the EDID of display device 61 .
- each source device may assign itself a CEC logical address as known in the art. Then, each source device reports the connection between its logical and physical addresses using the ⁇ report physical address> CEC message.
- FIG. 6B illustrates the HDMI-CEC network view of display device 61 , where the physical addresses are denoted by a four digit number and the logical addresses are denoted inside brackets.
- the manipulating switch 64 makes sure that the various source devices receive the right physical addresses using the HDMI EDID distribution process with the EDID of display device 61 .
- each source device may assign itself a CEC logical address as known in the art.
- each source device reports the
- switch 63 receives the physical address 1.0.0.0
- DVD 65 receives the physical address 1.1.0.0 and the logical address 4
- switch 64 receives the physical address 1.2.0.0
- STB 66 receives the physical address 1.2.1.0 and the logical address 3
- game console 67 receives the physical address 1.2.2.0 and the logical address 8 .
- FIG. 6C illustrates the spoofed HDMI-CEC network view of display device 62 , where the physical addresses are denoted by a four digit number and the logical addresses are denoted inside brackets.
- HDMI-CEC does not support a multiple display architecture, therefore, the manipulating switch 64 spoofs the HDMI-CEC network view of display device 61 by self generating the appropriate CEC blocks that are supposed to be received and transmitted by source devices 66 and 67 .
- switch 64 receives the physical address 1.0.0.0
- STB 66 receives the physical address 1.1.0.0 and the logical address 3
- game console 67 receives the physical address 1.2.0.0 and the logical address 8 .
- the manipulating switch tries to maintain the same physical address and/or logical address assigned to each device in each of the HDMI-CEC network views.
- source devices 66 and 67 in FIGS. 6B and 6C have the same logical addresses.
- one or more of the four basic CEC manipulation functions described above are used for the following CEC manipulation operations.
- the manipulating switch manipulates the active sources existing in the HDMI-CEC network view of each display device.
- FIG. 7 illustrates a case where display device 61 receives data from source device 73 .
- manipulating switch 64 has to disconnect the entire HDMI-CEC cluster tree connected by HDMI link 64 a from the HDMI-CEC network view of display device 62 .
- the HDMI-CEC network view of display device 62 is manipulated according to the source-display stream activity and network topology.
- the manipulating switch may change the physical addresses of the rest of the network such that the rest of the network will be ready to transmit to the second display device.
- the manipulating switch may change the physical addresses of the specific source device and its downstream devices such that the rest of the network will be ready to transmit to the second display device.
- FIG. 22 is a flow diagram illustrating one method for discovering the CEC logical addresses of HDMI-CEC devices coupled to at least two HDMI-CEC ports of a manipulating switch, the method comprising performing the following steps for each HDMI-CEC port:
- step 220 generating CEC messages, wherein the generated CEC messages are optionally CEC polling messages.
- step 221 transmitting the generated CEC messages through the HDMI-CEC port.
- step 222 receiving replies to the transmitted CEC messages.
- step 223 not transmitting the received replies through the other HDMI-CEC ports.
- step 224 determining the CEC logical addresses of the HDMI-CEC devices coupled to the HDMI-CEC port from the received replies.
- step 225 discovering the physical addresses of the HDMI-CEC devices coupled to the HDMI-CEC ports using CEC ⁇ Give Physical Address> messages.
- the following method steps are performed: Maintaining, by a manipulating switch, a first HDMI-CEC network view of a first HDMI-CEC display device and a second HDMI-CEC network view of a second HDMI-CEC display device, wherein the first and the second HDMI-CEC network views comprise a first HDMI-CEC source device that is common to both HDMI-CEC network views, whereby the common device defines the overlapping HDMI-CEC cluster tree.
- the step of disconnecting the HDMI-CEC sub cluster tree may occur approximately when identifying one or more of the following CEC messages: ⁇ set stream path>, ⁇ active source>, ⁇ image view on>, or ⁇ text view on>.
- CEC propagation control is used with CEC broadcast messages, such as “report physical address”, and when at least two subsets of at least two overlapping or partially overlapping HDMI-CEC network views share the same physical and logical addresses or share the same logical addresses. Therefore, the manipulating switch tries to create a situation where the same device holds the same physical and logical addresses, or just the same logical address, in two or more HDMI-CEC network views.
- the manipulating switch 64 may identify the more complicated physical address tree of the two HDMI-CEC cluster trees, optionally by comparing the physical address received in the HDMI output port connected to 63 b with the physical address received in the HDMI output port connected to 62 a. Then the manipulating switch assigns its upstream devices physical addresses meeting the more complicated physical address tree.
- the more complicated physical address tree is the HDMI-CEC cluster tree of display device 61 .
- the manipulating switch generates spoofed report physical address CEC messages that are transferred to the less complicated physical address tree, which is the HDMI-CEC cluster tree of display device 62 in the example of FIG. 7 .
- the manipulating switch 64 may create the HDMI-CEC network view of display device 62 by generating “report physical address” CEC messages that are transferred to the display device 62 .
- a method for assigning a required physical address to an HDMI-CEC device comprising: determining by a manipulating switch the required HDMI physical address to be assigned to an upstream HDMI-CEC device, and providing the required HDMI physical address to the upstream HDMI-CEC device.
- the required HDMI physical address is different from the true HDMI physical address that should have been assigned according to the standard HDMI procedure for computing an HDMI physical address.
- a method operating a network comprising at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, comprising: identifying a set of HDMI physical addresses to be assigned to the HDMI-CEC devices in at least one upstream HDMI-CEC sub cluster tree of a manipulating switch, whereby these HDMI physical addresses will be consistent in the HDMI-CEC network views of the first and the second HDMI-CEC display devices.
- the logical address of a device describes the device's functionality.
- the HDMI-CEC cluster tree is limited in the total number of devices it can contain (for example up to 10 devices) and in the number of devices of the same type it can contain (for example one audio system and four tuners).
- section “CEC 10.2 Logical Addressing” in the HDMI specification version 1.3a describes the available logical addresses.
- source devices 65 , 72 , 73 , and 74 are playback devices, but the HDMI-CEC cluster tree supports only up to 3 playback devices. Therefore, display device 61 should see only three source devices, while display device 62 , which cannot receive streams from source device 65 (because HDMI link 63 b is asymmetric), should see all the three source devices from which it can receive streams ( 72 , 73 , 74 ). Assuming source device 72 is disconnected from the HDMI-CEC cluster tree, source devices 65 , 73 and 74 are visible to display device 61 , while only source devices 73 and 74 are visible to display device 62 .
- source device 72 When source device 72 is connected to the HDMI-CEC cluster tree, manipulating switch 64 sees source devices 73 , 74 and 72 , but the HDMI-CEC network view of display device 61 cannot include 4 playback devices in a standard HDMI-CEC cluster tree and this may be solved by one of the following two non-limiting examples.
- a first example of assigning a valid logical address includes the following steps:
- Playback device 72 wakes up and because HDMI-CEC cluster tree of display device 61 already contains three playback devices, playback device 72 cannot allocate a playback device CEC logical address.
- playback device 72 While playback device 72 tries to receive its appropriate logical address, the other sources identify themselves, and as a result the manipulating switch 64 holds an updated network topology of the source devices having the same function.
- manipulating switch 64 checks if it is possible to assign to playback device 72 a logical address in the HDMI-CEC cluster tree of display device 62 , so that the HDMI-CEC network view of display device 62 will include playback device 72 with its true logical address. This may be possible because source device 65 is under switch 63 and therefore is not accessible by display device 62 .
- the manipulating switch 64 causes playback device 72 to reinitialize itself using the HPD signal, and then the manipulating switch 64 emulates the entire HDMI-CEC cluster tree of display device 62 in order for playback device 72 to receive the appropriate logical address.
- One example of an address allocation process includes the following steps: playback device 72 attempts to acquire a logical address by sending polling message to that address, and the manipulating switch 64 generates an answer for the logical addresses it does not want playback device 72 to acquire.
- the manipulating switch 64 may emulate source device 72 in order to notify display device 62 of the logical address of source device 72 .
- a second example of assigning a valid logical address includes the following steps:
- manipulating switch 64 creates for itself the downstream HDMI-CEC network view through his HDMI outputs, and calculates the logical addresses it should assign to the upstream devices ( 72 , 73 , and 74 ).
- Source device 72 wakes up as an HDMI-CEC device and the manipulating switch 64 assigns to source device 72 an address according to its preferences, by emulating the entire HDMI-CEC cluster tree.
- manipulating switch 64 checks whether a downstream device already owns the address assigned to source device 72 . If a downstream device already owns the address, manipulating switch 64 repeats the process so that source device 72 will receive a different address.
- FIG. 8 illustrates a network example where a maximum number of 3 playback devices (having CEC logical addresses 8 , 9 , and 11 ) is allowed and already assigned to playback devices 81 , 82 , and 83 .
- the manipulating switch 64 When playback device 84 connects to the network, the manipulating switch 64 has no available playback device logical address that is valid for both HDMI-CEC cluster trees. Therefore, the manipulating switch 64 assigns playback device 84 a logical address that meets one of the HDMI-CEC cluster trees and spoofs the other HDMI-CEC cluster tree.
- manipulating switch 64 may actually assign the logical address 9 to playback device 84 , which is accepted by the HDMI-CEC network view of display device 61 , and spoof the HDMI-CEC network view of display device 62 to believe that playback device 84 holds the logical address 8 .
- FIG. 24 is a flow diagram illustrating one method for assigning a required CEC logical address to an HDMI-CEC source device, comprising the following steps: In step 240 , determining the required CEC logical address to be acquired by the HDMI-CEC source device. In step 241 , reinitializing the HDMI-CEC source device to acquire a CEC logical address utilizing polling messages. And in step 242 , spoofing the acknowledgements to polling messages containing CEC logical addresses other than the required CEC logical address.
- FIG. 23 is a flow diagram illustrating one method comprising the following steps: In step 230 , dividing, by a manipulating switch, a plurality of HDMI-CEC devices into at least a first HDMI-CEC cluster tree coupled to a first HDMI-CEC display device, and a second HDMI-CEC cluster tree coupled to a second HDMI-CEC display device, wherein the HDMI-CEC cluster trees partially overlap. In step 231 , determining a first and a second HDMI-CEC network view for the first and the second HDMI-CEC display devices, whereby the two HDMI-CEC network views partially overlap.
- step 232 enabling a second HDMI-CEC source device in the second HDMI-CEC cluster tree to acquire a required CEC logical address already in use by a first HDMI-CEC source device in the first HDMI-CEC cluster tree, wherein the first and the second HDMI-CEC source devices are located in the non-overlapping parts of the HDMI-CEC network views.
- the manipulating switch emulates the HDMI-CEC cluster tree in order to cause the active source device to have the correct EDID of the first display device.
- the manipulating switch is capable of knowing the correct EDID of the first display device using the 12 c interface.
- the manipulating switch may also emulate the HDMI-CEC cluster tree in order to cause the active source device to have the required physical address.
- HDMI limits the network view to include up to 4 hierarchic levels.
- the manipulating switch eliminates one or more hierarchic levels from the HDMI-CEC network view of a display device.
- FIG. 9 illustrates an example where the HDMI-CEC network views of both display devices 61 and 62 include 5 hierarchic levels.
- the manipulating switch 64 may eliminate, for example, the existence of switch 71 from the HDMI-CEC network views of display devices 61 and 62 .
- FIG. 9 illustrates a case where the manipulating switch 64 spoofs the physical addresses of its upstream and downstream devices.
- the HDMI-CEC network views of both display devices 61 and 62 include no more than 4 hierarchic levels.
- the physical address spoofing of eliminating the downstream devices of the manipulating switch 64 it is possible to control devices 71 , 72 , 73 , 74 , and 94 using CEC.
- the described physical address spoofing method may be implemented on many more hierarchic levels, utilizing more manipulating switches.
- the manipulating switch may always try to eliminate hierarchical levels in order to enable as many hierarchical levels as possible.
- the manipulating switch uses polling messages to verify, maintain and/or discover the CEC logical addresses of the network devices.
- the manipulating switch may check the logical address(es) from time to time in order to make sure that it stores an updated view of the network.
- the manipulating switch 64 When the manipulating switch receives a polling message it knows whether it should answer with an ACK or not according to the stored HDMI-CEC network view(s). Referring again to FIG. 8 , assume that the manipulating switch 64 receives a polling message from display device 62 containing the logical address of source device 73 in the HDMI-CEC network view of display device 62 . The manipulating switch replies with an ACK and does not forward the original message to source device 73 because it actually holds a different logical address in accordance with the HDMI-CEC network view of display device 61 . If needed, the manipulating switch may transmit to source device 73 a modified polling message containing its actual address. Similarly, the manipulating switch 64 may process polling messages from an upstream device to a downstream device.
- a polling message from source device 73 containing the logical address of playback device 83 in the HDMI-CEC network view of display device 62 may be forwarded through HDMI link 62 a if the message's address meets the actual address.
- the manipulating switch replies with an ACK and does not forward the original message to playback device 83 . If needed, the manipulating switch may transmit to playback device 83 a modified polling message containing its actual address.
- FIG. 14 is a flow diagram illustrating one method for emulating an HDMI-CEC sub network, comprising the following steps: In step 140 , determining the properties of the HDMI-CEC sub network. In step 141 , generating CEC messages that emulate the CEC messages initiated by the HDMI-CEC sub network. And in step 142 , answering CEC messages addressed to the emulated HDMI-CEC sub network.
- FIG. 25 is a flow diagram illustrating one method for manipulating HDMI-CEC messages transmitted over a network comprising at least a first and a second HDMI-CEC display device with their associated first and second HDMI-CEC cluster trees that at least partially overlap, the method comprising the following steps: In step 250 , monitoring the CEC ⁇ Report Physical Address> messages resulting from the physical address discovery process of the first and the second HDMI-CEC cluster trees. In step 251 , preventing the non-overlapping section of the second HDMI-CEC cluster tree from receiving the CEC messages initiated by the first HDMI-CEC cluster tree, and preventing the first HDMI-CEC cluster tree from receiving the CEC messages initiated by the non-overlapping section of the second HDMI-CEC cluster tree.
- step 252 preventing propagation of EDID associated with the non-overlapping section of the HDMI-CEC cluster tree to the first HDMI-CEC cluster tree.
- step 253 utilizing the CEC ⁇ Report Physical Address> messages resulting from the physical address discovery process of the first and the second HDMI-CEC cluster trees for learning the first and the second HDMI-CEC network views.
- step 254 spoofing CEC ⁇ Report Physical Address> messages from the overlapping section of the HDMI-CEC cluster tree towards the non-overlapping section of the second HDMI-CEC cluster tree.
- step 255 determining the preferred physical and logical addresses to be acquired by the HDMI-CEC devices in the overlapping section of the HDMI-CEC cluster tree.
- the manipulating switch may intercept one or more of the CEC blocks, and answer with an ACK (the message may be directed downstream or upstream). Then the manipulating switch may transmit an appropriately modified or generated CEC blocks to the message recipient. If the message recipient does not accept the message or cannot perform the request, the manipulating switch may transmit a ⁇ feature abort> message to notify the message sender of the failure to execute the message.
- FIG. 11A illustrates a symmetric communication channel 112 connecting between the manipulating switches 114 and 116 .
- the symmetric communication channel 112 was a unidirectional communication channel and not a symmetric communication channel
- display device 61 may have had access to source devices 65 and 66
- display device 62 may have had access only to source device 66 .
- display device 62 may also access source device 65 .
- the symmetric communication channel 112 does not influence the HDMI-CEC network view of display device 61 .
- FIG. 11B illustrates the physical addresses allocated to the HDMI-CEC network view of display device 61 .
- manipulating switch 114 may have manipulating switch 116 and source device 65 as its upstream devices.
- manipulating switch 114 receives the physical address of (1.0.0.0)
- manipulating switch 116 receives the physical address of (1.1.0.0)
- source device 65 receives the physical address of (1.1.1.0)
- source device 66 receives the physical address of (1.2.0.0).
- the symmetric channel may also be a multi-stream symmetric channel.
- a multi-stream symmetric channel may utilize the above described methods and devices for utilizing a multi-stream channel within an HDMI-CEC cluster trees, operating a multi-stream manipulating switch, calculating the residue bandwidth, ensuring enough bandwidth in advance, and/or operating a multi-stream daisy chain supporting HDMI-CEC.
- connection 12 a may be an HDMI cable while connection 12 b may be an optical fiber, 12 c may be a CAT6 cable, 15 a may be a coax cable, and 15 b may be a wireless link.
- connection 12 a may be an HDMI cable while connection 12 b may be an optical fiber, 12 c may be a CAT6 cable, 15 a may be a coax cable, and 15 b may be a wireless link.
- connection 12 a may be an HDMI cable while connection 12 b may be an optical fiber, 12 c may be a CAT6 cable, 15 a may be a coax cable, and 15 b may be a wireless link.
- the various disclosed embodiments are not limited to some specific HDMI cable but may be implemented using any appropriate communication medium.
- FIG. 10 illustrates a manipulating switch 180 having an HDMI cable input 183 that may be connected to an HDMI source device, a CAT5e input 184 that may be connected to an HDMI source device over a twisted pair system, wireless output 181 that may communicate with an HDMI display device over a wireless system and coax output 182 that may be connected to an HDMI display device over coax cable system.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
- This application also claims the benefit of U.S. Provisional Patent Application No. 61/056,432, filed on May 27, 2008, incorporated herein by reference.
- The HDMI™ (High-Definition Multimedia Interface) standard, of the HDMI consortium, is a digital interface for audio and video signals. HDMI-CEC refers to an HDMI device that supports CEC (Consumer Electronics Control). HDMI-CEC devices enable a user to manage a plurality of sources connected via HDMI with no special programming needed and to run operations such as ‘one touch play’. Using HDMI-CEC, the user may, for example, use one remote control to turn on the TV, DVD, and receiver at the same time, and to adjust the system volume using one button.
- The HDMI-CEC protocol uses a one-wire shared bus that includes automatic mechanisms for logical address allocation based on product type, arbitration, retransmission, broadcasting, and switching control. Operation code (opcode) supports both device specific and general features. CEC devices have both physical and logical addresses. Normally, upon hot-plugging, each CEC source device obtains a physical address by reading the EDID of the display device to which it is attached.
- In some embodiments, an HDMI-CEC message, shortly referred to as “CEC message”, includes the following CEC blocks: a special start ‘bit’, a header block containing source and destination addresses, a first data block containing optional opcode, and a second data block containing optional operands specific to the opcode. The maximum CEC message size (header block plus opcode block plus operand blocks) is 16*10 bits. Each CEC block includes 8 bits of data, one End-Of-Message (EOM) bit, and one acknowledge (ACK) bit transmitted by the receiver. A CEC message includes a series of CEC blocks wherein only the EOM bit of the last block in the message is on. Each CEC message starts with a block having 4 bits of source address (also referred to as nibble), 4 bits of destination address, an EOM bit, and an ACK bit. A polling message includes the same source and destination addresses with the EOM bit on.
- CEC includes an option for customized commands. This enables different vendors to create CEC based networks between products of the specific vendor. Examples of such modified CEC base networks include: Anynet (Samsung), Aquos Link (Sharp), BRAVIA Theatre Sync (Sony), Regza Link (Toshiba), RIHD (Onkyo), Simplink (LG), Viera Link/EZ-Sync (Panasonic/JVC), Easylink (Philips) and NetCommand for HDMI (Mitsubishi).
- In one embodiment, a method for operating a network including at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, including: communicating with the various HDMI-CEC cluster trees using HDMI-CEC; creating a control menu which includes the HDMI-CEC display devices; sending the control menu to at least one of the HDMI-CEC display devices for display; and operating the control menu according to a user's selection.
- In one embodiment, a method for operating a network including at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, including: communicating with the various HDMI-CEC cluster trees using HDMI-CEC; creating a control menu for each of the HDMI-CEC display devices; and sending the control menus to the HDMI-CEC display devices for display.
- In one embodiment, a manipulating switch coupled to at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap; the manipulating switch including means for enabling the at least two HDMI-CEC display devices to communicate with their HDMI-CEC cluster trees using HDMI-CEC, and means for creating a control menu including at least two of the HDMI-CEC display devices.
- In one embodiment, a manipulating switch coupled to at least two HDMI-CEC display devices; the manipulating switch also coupled to at least one HDMI-CEC source device; the manipulating switch communicates with the HDMI-CEC display devices and the HDMI-CEC source devices using HDMI-CEC; the manipulating switch operative to enable each of the HDMI-CEC display devices to control the available HDMI-CEC source devices using at least one menu created by the manipulating switch and displayed on at least one of the HDMI-CEC display devices.
- Implementations of the disclosed embodiments involve performing or completing selected tasks or steps manually, semi-automatically, fully automatically, and/or a combination thereof. Moreover, depending upon actual instrumentation and/or equipment used for implementing the disclosed embodiments, several embodiments could be achieved by hardware, by software, by firmware, or a combination thereof. In particular, with hardware, embodiments of the invention could exist by variations in the physical structure. Additionally, or alternatively, with software, selected functions of the invention could be performed by a data processor, such as a computing platform, executing a software instructions or protocols using any suitable computer operating system.
- The embodiments of the present invention are herein described, by way of example only, with reference to the accompanying drawings. No attempt is made to show structural details of the embodiments in more detail than is necessary for a fundamental understanding of the embodiments. In the drawings:
- The embodiments of the present invention are herein described, by way of example only, with reference to the accompanying drawings. No attempt is made to show structural details of the embodiments in more detail than is necessary for a fundamental understanding of the embodiments. In the drawings:
-
FIG. 1A illustrates a multi display network in accordance with one embodiment of the invention; -
FIG. 1B illustrates a multi port display device in accordance with one embodiment of the invention; -
FIG. 1C illustrates a manipulating switch inside a display device in accordance with one embodiment of the invention; -
FIG. 2 illustrates a multi port display device in accordance with one embodiment of the invention; -
FIG. 3 illustrates a multi stream network in accordance with one embodiment of the invention; -
FIG. 4 illustrates a multi stream network in accordance with one embodiment of the invention; -
FIG. 5A illustrates a daisy chain in accordance with one embodiment of the invention; -
FIG. 5B illustrates a multi stream manipulating switch inside a source device in accordance with one embodiment of the invention; -
FIG. 5C illustrates a multi stream manipulating switch inside a source device in accordance with one embodiment of the invention; -
FIG. 5D illustrates a multi stream network in accordance with one embodiment of the invention; -
FIG. 5E illustrates a multi stream manipulating switch inside a source device in accordance with one embodiment of the invention; -
FIGS. 6A-C illustrate HDMI-CEC network views in accordance with one embodiment of the invention; -
FIG. 7 illustrates a multi display network in accordance with one embodiment of the invention; -
FIG. 8 illustrates a multi display network in accordance with one embodiment of the invention; -
FIG. 9 illustrates a multi display network in accordance with one embodiment of the invention; -
FIG. 10 illustrates a manipulating switch in accordance with one embodiment of the invention; -
FIGS. 11A-11B illustrate symmetric communication channels in accordance with one embodiment of the invention; -
FIG. 12 is a flow diagram of one method in accordance with one embodiment of the invention; -
FIG. 13 is a flow diagram of a routing method in accordance with one embodiment of the invention; -
FIG. 14 is a flow diagram of an emulating method in accordance with one embodiment of the invention; -
FIG. 15 is a flow diagram of a menu creation method in accordance with one embodiment of the invention; -
FIG. 16 is a flow diagram of a menu creation method in accordance with one embodiment of the invention; -
FIG. 17 is a flow diagram of a propagation control method in accordance with one embodiment of the invention; -
FIG. 18 is a flow diagram of a propagation control method in accordance with one embodiment of the invention; -
FIG. 19 is a flow diagram of a CEC on the fly modification method in accordance with one embodiment of the invention; -
FIG. 20 is a flow diagram of a CEC block termination method in accordance with one embodiment of the invention; -
FIG. 21 is a flow diagram of a method in accordance with one embodiment of the invention; -
FIG. 22 is a flow diagram of an addresses allocation method in accordance with one embodiment of the invention; -
FIG. 23 is a flow diagram of a logical addresses acquiring method in accordance with one embodiment of the invention; -
FIG. 24 is a flow diagram of a logical addresses acquiring method in accordance with one embodiment of the invention; and -
FIG. 25 is a flow diagram of a physical addresses assignment method in accordance with one embodiment of the invention. - In the following description, numerous specific details are set forth. However, the embodiments of the invention may be practiced without these specific details. In other instances, well-known hardware, software, materials, structures and techniques have not been shown in detail in order not to obscure the understanding of this description. In this description, references to “one embodiment” or “an embodiment” mean that the feature being referred to is included in at least one embodiment of the invention. Moreover, separate references to “one embodiment” in this description do not necessarily refer to the same embodiment. Illustrated embodiments are not mutually exclusive, unless so stated and except as will be readily apparent to those of ordinary skill in the art. Thus, the invention may include any variety of combinations and/or integrations of the embodiments described herein. Also herein, flow diagrams illustrate non-limiting embodiment examples of the methods, and block diagrams illustrate non-limiting embodiment examples of the devices. Some flow diagrams operations are described with reference to the embodiments illustrated by the block diagrams. However, the methods of the flow diagrams could be performed by embodiments of the invention other than those discussed with reference to the block diagrams, and embodiments discussed with reference to the block diagrams could perform operations different from those discussed with reference to the flow diagrams. Moreover, although the flow diagrams may depict serial operations, certain embodiments could perform certain operations in parallel and/or in different orders from those depicted. Moreover, the use of repeated reference numerals and/or letters in the text and/or drawings is for the purpose of simplicity and clarity and does not in itself dictate a relationship between the various embodiments and/or configurations discussed.
- In the following description, numerous specific details are set forth. However, the embodiments of the invention may be practiced without these specific details. In other instances, well-known hardware, software, materials, structures and techniques have not been shown in detail in order not to obscure the understanding of this description. In this description, references to “one embodiment” or “an embodiment” mean that the feature being referred to is included in at least one embodiment of the invention. Moreover, separate references to “one embodiment” in this description do not necessarily refer to the same embodiment. Illustrated embodiments are not mutually exclusive, unless so stated and except as will be readily apparent to those of ordinary skill in the art. Thus, the invention may include any variety of combinations and/or integrations of the embodiments described herein. Also herein, flow diagrams illustrate non-limiting embodiment examples of the methods, and block diagrams illustrate non-limiting embodiment examples of the devices. Some operations in the flow diagrams may be described with reference to the embodiments illustrated by the block diagrams. However, the methods of the flow diagrams could be performed by embodiments of the invention other than those discussed with reference to the block diagrams, and embodiments discussed with reference to the block diagrams could perform operations different from those discussed with reference to the flow diagrams. Moreover, although the flow diagrams may depict serial operations, certain embodiments could perform certain operations in parallel and/or in different orders from those depicted. Moreover, the use of repeated reference numerals and/or letters in the text and/or drawings is for the purpose of simplicity and clarity and does not in itself dictate a relationship between the various embodiments and/or configurations discussed.
- DVI™ (Digital Visual Interface) is a video interface standard designed by the Digital Display Working Group consortium. HDMI™ (High-Definition Multimedia Interface) is a digital interface for audio and video signals designed by the HDMI consortium. DisplayPort™ is a digital display interface standard put forth by the Video Electronics Standards Association (VESA)™.
- Conventional CEC networks assume a network topology including only one display device. A display device may be any kind of video display, television, or projector. Some of the following embodiments discuss the operation of novel methods and systems for utilizing HDMI-CEC in a network including more than one display device and novel methods and systems for multi-display networks supporting HDMI-CEC. The embodiments may operate with standard HDMI-CEC devices and/or with partially compatible devices.
- An HDMI-CEC input port is associated with an “HDMI-CEC cluster tree” which includes all the upstream devices having HDMI physical paths to that HDMI-CEC input port. Herein, the upstream direction is from a sink device to a source device, and the downstream direction is from a source device to a sink device.
- The term “HDMI-CEC network view” includes the network topology and the linkage between HDMI physical addresses and CEC logical addresses as exposed to a device through the CEC <report physical address> messages that it receives. It is to be understood that the “HDMI-CEC cluster tree” represents the actual physical topology while the “HDMI-CEC network view” may be manipulated, for example, by a manipulating switch as described below. The HDMI-CEC network view of device ‘X’ enables device ‘X’ to communicate with the various devices available in its HDMI-CEC network view.
- In some of the embodiments, “manipulating switch” denotes a component comprising at least one input port supporting HDMI-CEC and at least two output ports supporting HDMI-CEC transactions. A manipulating switch may also be any component comprising at least one input and at least two outputs which capable of delivering HDMI-CEC data. A manipulating switch may utilize any physical transmission that can be converted to HDMI-CEC. Optionally, the manipulating switch may be located within or integrated with one of the HDMI-CEC source devices. Optionally, the manipulating switch may be located within or integrated with one of the HDMI-CEC display devices. The manipulating switch may be implemented as a single component. Alternatively, the manipulating switch may be implemented as two or more interconnected components, optionally forming a cluster and/or network, whereby the described functionality of the manipulating switch may refer to the functionality accomplished by a part or the whole of the cluster and/or network.
FIG. 3 illustrates a manipulatingswitch 41 representing two or more components forming the manipulating switch functionality together. - It is to be understood that “HDMI-CEC cluster tree” may refer to an entire network or refer just to a sub-network. Referring to
FIG. 1A as an example, in one case, source devices 13-17 form a first HDMI-CEC cluster tree coupled to displaydevice 21, and the same source devices 13-17 form a second HDMI-CEC cluster tree coupled to displaydevice 22. In another example,display device 21 and source devices 13-17 form a first HDMI-CEC cluster tree, anddisplay device 22 and source devices 13-17 form a second HDMI-CEC cluster tree. The manipulatingswitch 23 may or may not be regarded as included in one or more of the HDMI-CEC cluster trees. - In prior art HDMI-CEC devices every CEC message is received by all devices connected to the HDMI-CEC cluster tree and only one output port may be connected to the HDMI-CEC cluster tree.
-
FIG. 1A illustrates one embodiment of a manipulatingswitch 23 that includes logic that enables a plurality of HDMI-CEC display devices (21, 22) to control an HDMI-CEC cluster tree, comprised of standard HDMI-CEC sources (13, 14, 16, 17) and standard HDMI-CEC switch 15. - The manipulating
switch 23 dynamically manipulates the HDMI-CEC network views, such that when none of the source devices is active, each display device may control all source devices. And when a first display device communicates with a first source device using HDMI-CEC, the second display device can still communicate with the other source device using HDMI-CEC. For example, when none of the source devices is active,display device 21 may control, through its CEC bus,source devices Display device 22 may also control, through its CEC bus, thesame source devices display device 21 activatessource device 16, the manipulatingswitch 23 manipulates the HDMI-CEC network view ofdisplay device 22 to reflectonly source devices Source device 17 is also erased from the HDMI-CEC network view ofdisplay device 22 because it is connected though HDMI link 23 c which is already used bysource device 16. -
FIG. 12 is a flow diagram illustrating one method comprising the following steps: Instep 120, manipulating HDMI-CEC messages transmitted over a network comprising at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap. And in step 121, enabling each of the HDMI-CEC display devices to communicate using HDMI-CEC with its associated HDMI-CEC cluster tree according to its current HDMI-CEC network view. -
FIGS. 1B-1C illustrate one embodiment wherein the manipulating switch 1 c 1 is located within the display device 1 b 1. The manipulating switch 1 c 1 includes logic that enables a plurality of HDMI-CEC display devices (1 b 1, 1 b 3) to control an HDMI-CEC cluster tree, comprised of standard HDMI-CEC sources (13, 14). The embodiment illustrated byFIG. 1B enables a user to chain two or more display devices such that when none of the source devices is active, each display device may control all source devices, and when a first display device communicates with a first source device using HDMI-CEC, the second display device can still communicate with the second source device using HDMI-CEC. -
FIG. 2 illustrates one embodiment of a display device with a manipulatingswitch 12 that includes logic for controlling overlapping or partially overlapping HDMI-CEC networks. By using the manipulatingswitch 12, and assuming that the CEC buses of 11 a and 11 b are not physically connected, both HDMI-CEC ports (11 a, 11 b) may control the HDMI-CEC sources (13, 14, 16, 17). The HDMI-CEC ports (11 a, 11 b) may be coupled to a standard HDMI-CEC display device 11 as illustrated. In the specific non-limiting example ofFIG. 2 , the manipulatingswitch 12 resides within a display box 10 (such as a television, a monitor or a projector), but it is to be understood that the manipulatingswitch 12 may reside within any other display device, source device, or as a stand-alone device. The manipulatingswitch 12 selects and manipulates the data to be transmitted over the different HDMI-CEC networks connected to HDMI-CEC ports -
FIG. 13 is a flow diagram illustrating one method for enabling picture-in-picture in a display device comprising two HDMI-CEC input ports, each of the HDMI-CEC input ports associated with an HDMI-CEC cluster tree, and the HDMI-CEC cluster trees at least partially overlapping, the method comprising the following steps: Instep 130, defining an HDMI-CEC network view for each HDMI-CEC input port. Instep 131, controlling the HDMI-CEC messages transmitted between each HDMI-CEC input port of the HDMI-CEC display device and its HDMI-CEC cluster tree. Instep 132, controlling the HDMI-CEC messages transmitted between the HDMI-CEC cluster trees. And instep 133, enabling selecting which of the HDMI-CEC source devices to route to which of the HDMI-CEC input ports using HDMI-CEC messages. - Referring again to
FIG. 2 , the manipulatingswitch 12 includes logic that enables it to communicate withsource devices source devices switch 15, using HDMI-CEC, and still output one or more pictures throughports display device 11 to have, for example, a picture-in-picture feature, while it is possible to control each picture's source through the HDMI-CEC network view. It may also be possible to operate all the sources (13, 14, 16, 17), using the display's remote control, through standard HDMI-CEC, while having the picture-in-picture feature. - In one embodiment, the physical addresses, and optionally the logical addresses, of the HDMI-CEC network are approximately duplicated by the manipulating
switch 12, such that thedisplay device 11 is able to control sources (13, 14, 16, and 17) either through HDMI-CEC port 11 a or through HDMI-CEC port 11 b. - In one embodiment, the manipulating
switch 12 transmits some data between the two HDMI-CEC networks. It is possible to control what data will be transferred between the HDMI-CEC cluster trees and when. - Prior art HDMI-CEC networks having one display device enable the user to: (i) operate the HDMI-CEC cluster tree using a display device, optionally utilizing the set-stream-path message, and (ii) operate the HDMI-CEC cluster tree using a source device, optionally utilizing the one touch play feature.
- In one embodiment, at least one source device is connected through at least one manipulating switch to at least two display devices, and a user operates the HDMI-CEC network through a display device utilizing the set-stream-path message. The display device is able to operate the required source device using the standard set-stream-path message because the manipulating switch makes each display device believe it is connected to a standard HDMI-CEC network having one display device.
- In one embodiment, at least one source device is connected through at least one manipulating switch to at least two display devices, and a user operates the HDMI-CEC network through a source device utilizing the one touch play feature. In this embodiment, when a source device activates a display device, for example, by utilizing the ‘one-touch play’ CEC feature, for example as described in HDMI spec 1.3 paragraph “CEC 13.1 One Touch Play”, the manipulating switch should select which of the available display devices to connect with the source device. The logic for selecting the display device to be connected to the source device may be predefined, dynamically selected, and/or manually selected.
- For example, the display device on which the content is to be displayed may be selected according to one of the following non-limiting examples: displaying the content on a display device that is defined as the primary display device; displaying the content on a display device that is already active; or displaying the content on a display device that is not active.
- Referring again to
FIG. 1A as an example, ifsource 16 is operating a ‘one-touch play’ whiledisplay device 21 plays content fromsource device 13, manipulatingswitch 23 may connectsource device 16, instead ofsource device 13, to displaydevice 21; or connectsource device 16 to displaydevice 22; or display a menu ondisplay device 21 and/or ondisplay device 22 in order to enable the user to select the desired display device; or connectsource device 16 to the display device it was last connected to; or operate according to any other reasonable logic. - In one embodiment, when the user tries to operate the HDMI-CEC cluster tree from the source device, optionally using the one touch play feature, the manipulating switch takes over and the HDMI-CEC cluster tree is operated from the switch as discussed in the next paragraphs. In other words, operation from a source device may cause operation from the manipulating switch.
- In one embodiment, at least one source device is connected through at least one manipulating switch to at least two display devices, and a user operates the network, which supports HDMI-CEC, through a manipulating switch that performs one or more of the following operations: (i) communicating with the various HDMI devices using the HDMI-CEC protocol, including spoofing when needed and as explained below, (ii) creating a control menu, which includes the display devices, and (iii) sending the control menu to at least one of the display devices for displaying.
- Optionally, the user operates the control menu, created by the manipulating switch, through the remote control of the manipulating switch. Alternatively, the user operates the control menu, created by the manipulating switch, through any other appropriate means such as a multifunctional remote control communicating with the manipulating switch, or though the remote control of one of the display devices, wherein the display device forwards the user's selections to the manipulating switch. The display device may forward the user's selections to the manipulating switch directly or following a manipulation by the manipulating switch. One example of such a manipulation is when the manipulating switch emulates a source device that displays its menu on the display device using CEC available mechanisms for displaying menu and retrieves remote control actions. Examples of such CEC mechanisms are described in HDMI specification 1.3 paragraph “CEC 13.12 Device Menu Control” and include messages such as <User Control Pressed>, <User Control Released>, <Menu Request>, or <Menu Status>.
- In one embodiment, in order to operate the HDMI-CEC cluster tree through the manipulating switch, the manipulating switch supplies the user with the devices available in the manipulated HDMI-CEC cluster tree (i.e. not bounded by the standard CEC rules).
-
FIG. 15 is a flow diagram illustrating one method for operating a network comprising at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, comprising the following steps: Instep 150, communicating with the various HDMI-CEC cluster trees using HDMI-CEC. Instep 151, creating a control menu which comprises the HDMI-CEC display devices. Instep 152, sending the control menu to at least one of the HDMI-CEC display devices for display. And instep 153, operating the control menu according to a user's selection. -
FIG. 16 is a flow diagram illustrating one method for operating a network comprising at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, comprising: Instep 160, communicating with the various HDMI-CEC cluster trees using HDMI-CEC. Instep 161, creating a control menu for each of the HDMI-CEC display devices. Instep 162, sending the control menus to the HDMI-CEC display devices for display. Inoptional step 163, operating each control menu by a remote control of the HDMI-CEC display device on which it is displayed. And inoptional step 164, forwarding the user's selections from the HDMI-CEC display device to a manipulating switch. - Utilizing a Multi-Stream Channel Within an HDMI-CEC Cluster Tree.
- Standard HDMI interface supports only one stream. A channel that is capable of transferring more than one HDMI stream is referred to herein as a multi-stream channel supporting HDMI-CEC. In some embodiments, the multi-stream channel supporting HDMI-CEC may be coupled to two or more HDMI output ports and therefore is somehow similar to a device having multiple HDMI inputs and multiple HDMI outputs.
- A multi-stream manipulating switch refers to a switch that supports at least one multi stream channel. In one embodiment, the multi-stream manipulating switch is capable of manipulating at least some of the HDMI and CEC control transactions. A source device supporting a multi-stream daisy chain is referred to herein as a source device supporting multi-stream.
- In one embodiment, one or more multi-stream channel supporting HDMI-CEC are embedded within an HDMI-CEC network, or within a network that is compatible or partially compatible with HDMI-CEC. As a result of using the multi-stream channel, it is possible to operate more than one source device connected to the HDMI-CEC cluster tree spanned by the multi-stream channel. Moreover, the system has to manipulate the HDMI-CEC cluster trees connected to the different display devices in order to be able to operate the source devices using CEC messages.
-
FIG. 3 illustrates one embodiment of a multi-display network supporting HDMI-CEC with amulti-stream channel 41 c. The display devices (21, 22) are connected to multi-stream manipulatingswitch 41 that is connected to multi-stream manipulatingswitch 42 through a multi-stream channel supporting HDMI-CEC 41 c. In the illustrated embodiment, manipulatingswitch 41 is implemented as two or more interconnected components, optionally forming a cluster and/or network, whereby the described functionality of the manipulatingswitch 41 may refer to the functionality accomplished by a part or the whole of the cluster and/or network. In one embodiment, aftersource device 16 starts transmitting to displaydevice 21,display device 22 may only accessdevices CEC 41 c decreases and therefore themulti-stream manipulating switch 41 has to make sure that future transmissions fromsource device 17 will be limited to the available bandwidth of 41 c. The throughput fromsource device 17 may be limited, for example, by implementing the following method: - Multi-stream manipulating
switch 42 removes the HPD signal to sourcedevice 17; - Then source
device 17 initiates a read EDID transaction; - Multi-stream manipulating
switch 42 replies the read EDID transaction with a prefetched, manipulated, EDID ofdisplay device 22, such that only video formats that match the available bandwidth of themulti-stream channel 41 c are exposed tosource device 17. -
FIG. 4 illustrates an embodiment wheredisplay box 30 includes amulti-stream manipulating switch 31 outputting two standard HDMI output signals throughports display device 11. Multi-stream manipulatingswitch 31 communicates with multi-stream manipulatingswitch 42 through a multi-stream channel supporting HDMI-CEC 31 c. Multi-stream manipulatingswitch 42 communicates with the source devices (16, 17) through standard HDMI-CEC interface (32 a, 32 b). When none of the source devices is active, and assuming that the CEC buses ofports display device 11 in one or two HDMI-CEC network views (becausedisplay device 11 has only two HDMI-CEC inputs, 11 a and 11 b, it cannot have more than two HDMI-CEC network views). - After
source device 16 is activated throughport 11 a, and becausechannel 31 c is a multi-stream channel supporting HDMI-CEC, it is still possible to communicate withsource device 17 throughport 11 b. Therefore,multi-stream manipulating switch 31 manipulates the HDMI-CEC network view such thatsource devices port 11 b, and therefore HDMI-CEC display device 11 is still able to communicate with one of the remaining source devices (13, 14, and 17). - When initializing the two HDMI-CEC network views of
ports multi-stream manipulating switch 31 may place thesource devices channel 31 c is a multi-stream channel supporting HDMI-CEC, themulti-stream manipulating switch 31 may manipulate the HDMI-CEC network views as needed and locatesource devices port 11 a or in the HDMI-CEC network view ofport 11 b. - In one embodiment, after
source device 16 starts transmitting to port 11 a,source device 17 is manipulated by multi-stream manipulatingswitch 31 to be in the HDMI-CEC network view of port lb. But the available bandwidth of the multi-stream channel supporting HDMI-CEC 31 c decreases and therefore themulti-stream manipulating switch 31 has to make sure that future transmissions fromsource device 17 will be limited to the available bandwidth of the multi-stream channel supporting HDMI-CEC 31 c. The throughput fromsource device 17 may be limited, for example, by implementing the following method: - Multi-stream manipulating
switch 42 removes and restores the HPD signal to sourcedevice 17, in order to causesource 17 to read the EDID; - Then source
device 17 initiates a read EDID transaction; and then - Multi-stream manipulating
switch 42 replies the read EDID transaction with a prefetched, manipulated, EDID ofdisplay device 11 such that only video formats that match the available bandwidth of the multi-stream channel supporting HDMI-CEC 31 c are exposed tosource device 17. For example, assuminglink 31 c is a multi-stream channel supporting HDMI-CEC that is capable of transporting a total throughput of 8 Gbps, which is suitable for transmitting 1080p, 60 Hz, 48 bit per pixel (bpp); Ifsource device 16 transmits 1080p 60 Hz 24 bpp to port 11 a, the multi-stream channel supporting HDMI-CEC 31 c still has enough bandwidth to transmit another 1080p 60 Hz 24 bpp stream. Assumingdisplay device 11 EDID indicates it can support 1080 p 60 Hz 36 bpp, then ifsource device 17 tries to transmit this kind of video format, the multi-stream channel supporting HDMI-CEC 31 c will not have enough capacity. Therefore,multi-stream manipulating switch 42 removes and restores the HPD signal to sourcedevice 17, so thatsource 17 reads the manipulated EDID ofdisplay device 11, such that no other formats requiring higher bandwidth than the available bandwidth seem to be supported byport 11 b. - In another example, it is required to ensure in advance that there is enough bandwidth for a predefined number of source devices capable of transmitting over a multi-stream channel supporting HDMI-CEC. In this case, before the first source device starts transmitting, the EDID of the appropriate display device is manipulated such that the total maximum bandwidth consumed by the predefined number of the source devices communicating in parallel through the multi-stream channel supporting HDMI-CEC is supported by the multi-stream channel. For example, if 31 c is a multi-stream channel supporting HDMI-CEC capable of transmitting a total throughput of 8Gbps, each of
source devices - Multi-Stream Daisy Chain Supporting HDMI-CEC.
-
FIG. 5A illustrates a multi-stream sub network within a multi-display network supporting HDMI-CEC having a multi-stream daisy chain including sourcedevices supporting multi-stream source device 54, connected through the multi-stream channels supporting HDMI-CEC multi-stream manipulating switch 51, that is connected to displaydevices multi-stream manipulating switch 51 and each of the source devices supporting multi-stream (52, 53) have to calculate their upstream residue bandwidth, and then expose only the video formats that match the available bandwidth of the chain's bottleneck. - For example, multi-stream channels supporting HDMI-
CEC display device 56 requests from sourcedevice supporting multi-stream 52 to start transmitting a 6 Gbps stream over the multi-stream channel supporting HDMI-CEC 51 a, then the multi-stream channel supporting HDMI-CEC 51 a has a residue bandwidth of 2 Gbps. Therefore, sourcedevice supporting multi-stream 52 transmits to sourcedevice supporting multi-stream 53 a message informing it that the residue bandwidth is 2 Gbps. In one embodiment, the multi-stream channel supporting HDMI-CEC includes an internal control channel between its nodes. Optionally,device 52 utilizes the internal control channel for transmitting todevice 53 the message informing that the residue bandwidth is 2 Gbps. Thereafter, assumingdisplay device 57 requests fromsource device 54 to start transmitting, then sourcedevice supporting multi-stream 53 removes and restores the HPD signal to sourcedevice 54, in order to make it read the EDID of a virtual display device supporting up to 2 Gbps. -
FIG. 5B illustrates one embodiment of a sourcedevice supporting multi-stream 53, including: (i) anHDMI input port 53 a, (ii) adata source 58 a, and (iii) amulti-stream manipulating switch 58 b having two HDMI inputs ports and one multi-stream channel supporting HDMI-CEC 52 a output. Optionally, the sourcedevice supporting multi-stream 53 is capable of utilizing the multi-stream channel supporting HDMI-CEC 52 a for data received from thedata source 58 a, or data received from theHDMI input port 53 a, or for data received from both inputs. -
FIG. 5C illustrates one embodiment of a sourcedevice supporting multi-stream 52, including: (i) an input for receiving a multi-stream channel supporting HDMI-CEC 52 a, (ii) adata source 58 c, and (iii) amulti-stream manipulating switch 58 d having one HDMI stream input, one multi-stream channel supporting HDMI-CEC input, and one multi-stream channel supporting HDMI-CEC 51 a output. Optionally, the sourcedevice supporting multi-stream 52 is capable of utilizing the multi-stream channel supporting HDMI-CEC 51 a for data received from thedata source 58 c, or data received from the multi-stream channel supporting HDMI-CEC 52 a, or for data received from both inputs. -
FIGS. 5D-5E illustrate one embodiment wherein themulti-stream manipulating switch 552 a is located within adisplay device 552. Themulti-stream manipulating switch 552 a includes logic which enables a plurality of HDMI-CEC display devices (552, 56) to control an HDMI-CEC cluster tree, comprising a standard HDMI-CEC source 54 and a sourcedevice supporting multi-stream 53. The embodiment illustrated byFIG. 5D enables a user to connect a chain of source devices (linked using at least one multi-stream channel supporting HDMI-CEC) to a chain of display devices, such that when none of the source devices is active, each display device may control all of the source devices, and when a first display device communicates with a first source device using HDMI-CEC, a second display device can still communicate with the other source devices using HDMI-CEC. - Methods for Implementing a Multi-Stream Link.
- A multi-stream manipulating switch may be connected to a multi-stream channel supporting CEC. The multi-stream channel supporting HDMI-CEC may be implemented using any appropriate technique, as long as the transmitted streams are HDMI-CEC compatible. A multi-stream channel supporting HDMI-CEC may be created using solutions for transmitting HDMI-CEC signals over media such as twisted-pair cables, coax cables, optical fibers, and/or implemented using a wireless solution.
- Some examples of methods and systems suitable for HDMI-CEC compatible transmissions over a twisted pair cable are available in U.S. patent application Ser. No. 11/703,080, filed on Feb. 7, 2007, which is incorporated herein by reference in its entirety for all that it teaches without exclusion of any part thereof.
- Some examples of methods and systems suitable for HDMI-CEC compatible transmissions over optical fibers are available in US patent application publication number US20070233906, which is incorporated herein by reference in its entirety for all that it teaches without exclusion of any part thereof.
- Some examples of methods and systems suitable for HDMI-CEC compatible transmissions through wireless communication are available in PCT patent application publication number WO/2006/101801, which is incorporated herein by reference in its entirety for all that it teaches without exclusion of any part thereof.
- In one embodiment, the manipulating switch utilizes one or more of the following four CEC manipulation functions.
- 1) CEC Propagation Control.
- The CEC propagation control function enables the manipulating switch to receive a CEC block which was initiated by a certain device; and pass or intercept the received CEC block to a certain device(s), optionally on the fly, and without modifying the received block. For example, the manipulating switch may divide the HDMI-CEC cluster tree into multiple HDMI-CEC cluster trees and may control the propagation of the CEC blocks between the multiple HDMI-CEC cluster trees; the multiple HDMI-CEC cluster trees may partially overlap.
- Referring to
FIG. 6A , assume that manipulatingswitch 64 controls two HDMI-CEC cluster trees. The first HDMI-CEC cluster tree includessource devices display device 62. The second HDMI-CEC cluster tree includessource devices display device 61. Utilizing the CEC propagation control function, the manipulatingswitch 64 controls the propagation of CEC blocks within each of the HDMI-CEC cluster trees and the propagation of CEC blocks between the various HDMI-CEC cluster trees. This means that the manipulating switch may forward certain CEC blocks to some source or display devices and not forward the certain CEC blocks to other source or display devices it is connected to. -
FIG. 17 is a flow diagram illustrating one method comprising the following steps: Instep 170, receiving a CEC block which was initiated by a first HDMI-CEC device. Instep 171, passing the received CEC block to a second HDMI-CEC device. And instep 172, preventing a third HDMI-CEC device from receiving the CEC block -
FIG. 18 is a flow diagram illustrating one method comprising the following steps: Instep 180, dividing a plurality of devices into at least a first HDMI-CEC cluster tree coupled to a first display device, and a second HDMI-CEC cluster tree coupled to a second display device, wherein the HDMI-CEC cluster trees partially overlap. Instep 181, receiving a first CEC block which was initiated by the first HDMI-CEC cluster tree. Instep 182, passing the first CEC block to the first display device not passing the first CEC block to the second display device. - 2) CEC on the Fly Modification.
- The CEC on the fly modification function enables the manipulating switch to: (i) receive a CEC block which was initiated by a certain device, (ii) modify one or more bits in the received CEC block, optionally on the fly, and (iii) supply the modified CEC block to a certain device(s).
- For example, a source device is associated with two HDMI-CEC network views through a manipulating switch, and the source device holds different logical addresses for each HDMI-CEC network view. When a display device, associated with the first HDMI-CEC network view, transmits a CEC message to the source device, that stores a logical address matching the second HDMI-CEC network view, the manipulating switch may replace the CEC destination address with the address matching the second HDMI-CEC network view, such that the source device will identify the CEC message as addressed to it. When, or immediately after, the manipulating switch receives the CEC block containing the four bits of source address and the four bits of destination address, it can determine whether the block was correctly or incorrectly modified. If the block was incorrectly modified, the manipulating switch drops the CEC message, optionally by changing one or more of the address bits or using a <feature abort> message. On the fly modification may also be applied to downstream CEC messages (e.g. from the source device to the display device). In this case, the source device transmits a CEC message using the logical addresses it stores. Then, the manipulating switch may modify the source and/or destination addresses according to addresses matching the recipient's HDMI-CEC network view.
- As explained in the HDMI spec 1.3, a transaction on a CEC line involves an initiator and one or more followers. The initiator is responsible for sending the message structure and the data (sometimes both of them referred to herein as data). The follower is the recipient of the data and is responsible for setting any acknowledgement bits.
-
FIG. 19 is a flow diagram illustrating one method comprising the following steps: - In
step 190, receiving a CEC message from a first HDMI-CEC port, the CEC message comprising data according to the initiator's HDMI-CEC network view. Instep 191, modifying the CEC data, approximately on the fly, to match the follower's HDMI-CEC network view. Optionally, the data is selected from the group of CEC source logical address, or CEC destination logical address, or CEC source logical address and CEC destination logical address. And instep 192, transmitting the modified CEC message through a second HDMI-CEC port. - 3) CEC Block Termination.
- The CEC block termination function enables the manipulating switch to receive a CEC block which was initiated by a certain device; optionally acknowledge (ACK) the block; modify the received block; and supply the modified blocks to a certain device(s). Optionally, a few blocks or all the blocks comprising the CEC may be partially or completely modified. Alternatively, only a section of the block may be modified, for example, only the header containing the logical addresses may be modified.
- In one embodiment, although the manipulating switch modifies the received block, the source address still matches the source address of the original initiator of the block and not the source address of the manipulating switch.
- In one embodiment, a transmission is stopped using CEC Line Error Handling, such as defined in HDMI spec 1.3 paragraph CEC 7.4. CEC line error handling enables a device acting as follower to notify all other devices (primarily the initiator) that a potential error has occurred, where an error is defined as a period between falling edges that is shorter than a minimum data bit period.
-
FIG. 20 is a flow diagram illustrating one method comprising the following steps: Instep 200, receiving a CEC block through a first HDMI-CEC port and instep 201, acknowledging the CEC block. Instep 202 modifying one or more bits in the received CEC block. And instep 203, sending the modified CEC block through at least a second HDMI-CEC port. -
FIG. 21 is a flow diagram illustrating one method comprising the following steps: Instep 210, receiving a CEC block comprising a destination logical address matching the initiator's HDMI-CEC network view. Instep 211, acknowledging the CEC block. Instep 212, modifying the destination logical address to match the follower's HDMI-CEC network view. And inoptional step 213, forwarding the modified block to the follower. - 4) CEC Message Generation.
- The CEC message generation function enables the manipulating switch to self generate one or more CEC blocks or one or more CEC messages, and supply the generated CEC message to a certain device(s). Optionally, the self generated CEC message is not initiated directly by a CEC message received by the manipulating switch. For example, the manipulating switch may generate a CEC message in order to perform one or more of the following: create an HDMI-CEC network view for a device, emulate a CEC message from a device, assign physical address to a CEC device, or spoof the HDMI-CEC cluster tree. By learning the HDMI network, the manipulating switch may create spoofed CEC transactions and/or spoof the address allocation process.
- For example, referring again to
FIG. 6A as an illustration of an HDMI-CEC network with twodisplay devices display device 61 may be accessed by all source devices in the network anddisplay device 62 may be accessed only bysource devices display device 61 retrieves its HDMI-CEC network view using the normal HDMI-CEC procedure, manipulatingswitch 64 preventsdisplay device 62 from receiving the CEC transactions used for creating the HDMI-CEC network view exposed todisplay device 61, optionally using the CEC propagation control function. During that process, manipulatingswitch 64 may learn the HDMI-CEC network topology and create spoofed CEC transactions used for creating the HDMI-CEC network view exposed todisplay device 62, optionally using the CEC message generation function. - As another example, the manipulating switch may create an appropriate HDMI-CEC network view for each downstream and/or upstream path. In one embodiment, the manipulating switch creates the appropriate HDMI-CEC network view by spoofing CEC transactions using the CEC <report physical address> message that causes the addressed CEC device to report, to the other CEC devices in the HDMI-CEC cluster tree, the connection between its HDMI physical address and its CEC logical address.
- In one example,
FIGS. 6A-C illustrate manipulatingswitch 64 spoofing the CEC transactions fordisplay device 62, optionally using the CEC “report physical address” message. In this example,display device 61 receives an HDMI-CEC network view as if it were the only display device connected to the HDMI-CEC cluster tree, whiledisplay device 62 also receives an HDMI-CEC network view as if it were the only display device connected to the HDMI-CEC cluster tree. -
FIG. 6B illustrates the HDMI-CEC network view ofdisplay device 61, where the physical addresses are denoted by a four digit number and the logical addresses are denoted inside brackets. The manipulatingswitch 64 makes sure that the various source devices receive the right physical addresses using the HDMI EDID distribution process with the EDID ofdisplay device 61. After retrieving its physical address, each source device may assign itself a CEC logical address as known in the art. Then, each source device reports the connection between its logical and physical addresses using the <report physical address> CEC message. In the HDMI-CEC network view ofdisplay device 61 illustrated byFIG. 6B , switch 63 receives the physical address 1.0.0.0,DVD 65 receives the physical address 1.1.0.0 and thelogical address 4, switch 64 receives the physical address 1.2.0.0,STB 66 receives the physical address 1.2.1.0 and thelogical address 3, andgame console 67 receives the physical address 1.2.2.0 and thelogical address 8. -
FIG. 6C illustrates the spoofed HDMI-CEC network view ofdisplay device 62, where the physical addresses are denoted by a four digit number and the logical addresses are denoted inside brackets. HDMI-CEC does not support a multiple display architecture, therefore, the manipulatingswitch 64 spoofs the HDMI-CEC network view ofdisplay device 61 by self generating the appropriate CEC blocks that are supposed to be received and transmitted bysource devices display device 62 illustrated byFIG. 6C , switch 64 receives the physical address 1.0.0.0,STB 66 receives the physical address 1.1.0.0 and thelogical address 3, andgame console 67 receives the physical address 1.2.0.0 and thelogical address 8. - In one embodiment, the manipulating switch tries to maintain the same physical address and/or logical address assigned to each device in each of the HDMI-CEC network views. For example,
source devices FIGS. 6B and 6C have the same logical addresses. - In some embodiments, one or more of the four basic CEC manipulation functions described above are used for the following CEC manipulation operations.
- Manipulating the HDMI-CEC Network View.
- In one embodiment, the manipulating switch manipulates the active sources existing in the HDMI-CEC network view of each display device.
FIG. 7 illustrates a case wheredisplay device 61 receives data fromsource device 73. Because HDMI link 64 a can carry only one stream, manipulatingswitch 64 has to disconnect the entire HDMI-CEC cluster tree connected by HDMI link 64 a from the HDMI-CEC network view ofdisplay device 62. In other words, the HDMI-CEC network view ofdisplay device 62 is manipulated according to the source-display stream activity and network topology. - In one embodiment, when a source device starts transmitting to a first display device, the manipulating switch may change the physical addresses of the rest of the network such that the rest of the network will be ready to transmit to the second display device. Alternatively, when a source device starts transmitting to a first display device, updating the physical addresses of the specific source device and its downstream devices is sufficient and there is no need to update the entire network regarding the change in the physical address of the active source device.
-
FIG. 22 is a flow diagram illustrating one method for discovering the CEC logical addresses of HDMI-CEC devices coupled to at least two HDMI-CEC ports of a manipulating switch, the method comprising performing the following steps for each HDMI-CEC port: Instep 220, generating CEC messages, wherein the generated CEC messages are optionally CEC polling messages. Instep 221, transmitting the generated CEC messages through the HDMI-CEC port. Instep 222, receiving replies to the transmitted CEC messages. Instep 223, not transmitting the received replies through the other HDMI-CEC ports. Instep 224, determining the CEC logical addresses of the HDMI-CEC devices coupled to the HDMI-CEC port from the received replies. And inoptional step 225, discovering the physical addresses of the HDMI-CEC devices coupled to the HDMI-CEC ports using CEC <Give Physical Address> messages. - In one embodiment, the following method steps are performed: Maintaining, by a manipulating switch, a first HDMI-CEC network view of a first HDMI-CEC display device and a second HDMI-CEC network view of a second HDMI-CEC display device, wherein the first and the second HDMI-CEC network views comprise a first HDMI-CEC source device that is common to both HDMI-CEC network views, whereby the common device defines the overlapping HDMI-CEC cluster tree. And approximately while there is TMDS communication between the first HDMI-CEC source device and the first HDMI-CEC display device, disconnecting the HDMI-CEC sub cluster tree associated with a first HDMI-CEC input port of the manipulating switch, which comprises the first HDMI-CEC source device, from the HDMI-CEC devices located in a second non-overlapping HDMI-CEC cluster tree. Optionally, the step of disconnecting the HDMI-CEC sub cluster tree may occur approximately when identifying one or more of the following CEC messages: <set stream path>, <active source>, <image view on>, or <text view on>.
- Assigning the Same Physical Addresses to Different HDMI-CEC Cluster Trees.
- In one embodiment, CEC propagation control is used with CEC broadcast messages, such as “report physical address”, and when at least two subsets of at least two overlapping or partially overlapping HDMI-CEC network views share the same physical and logical addresses or share the same logical addresses. Therefore, the manipulating switch tries to create a situation where the same device holds the same physical and logical addresses, or just the same logical address, in two or more HDMI-CEC network views.
- Referring to
FIG. 7 as an example, the manipulatingswitch 64 may identify the more complicated physical address tree of the two HDMI-CEC cluster trees, optionally by comparing the physical address received in the HDMI output port connected to 63 b with the physical address received in the HDMI output port connected to 62 a. Then the manipulating switch assigns its upstream devices physical addresses meeting the more complicated physical address tree. In the example ofFIG. 7 the more complicated physical address tree is the HDMI-CEC cluster tree ofdisplay device 61. Then the manipulating switch generates spoofed report physical address CEC messages that are transferred to the less complicated physical address tree, which is the HDMI-CEC cluster tree ofdisplay device 62 in the example ofFIG. 7 . The manipulatingswitch 64 may create the HDMI-CEC network view ofdisplay device 62 by generating “report physical address” CEC messages that are transferred to thedisplay device 62. - In one embodiment, a method for assigning a required physical address to an HDMI-CEC device, comprising: determining by a manipulating switch the required HDMI physical address to be assigned to an upstream HDMI-CEC device, and providing the required HDMI physical address to the upstream HDMI-CEC device. Wherein the required HDMI physical address is different from the true HDMI physical address that should have been assigned according to the standard HDMI procedure for computing an HDMI physical address.
- In one embodiment, a method operating a network comprising at least two HDMI-CEC display devices with their associated at least two HDMI-CEC cluster trees that at least partially overlap, comprising: identifying a set of HDMI physical addresses to be assigned to the HDMI-CEC devices in at least one upstream HDMI-CEC sub cluster tree of a manipulating switch, whereby these HDMI physical addresses will be consistent in the HDMI-CEC network views of the first and the second HDMI-CEC display devices.
- Manipulating the Logical Address of a Device in the HDMI-CEC Cluster Tree.
- The logical address of a device describes the device's functionality. The HDMI-CEC cluster tree is limited in the total number of devices it can contain (for example up to 10 devices) and in the number of devices of the same type it can contain (for example one audio system and four tuners). For example, section “CEC 10.2 Logical Addressing” in the HDMI specification version 1.3a describes the available logical addresses.
- Referring again to
FIG. 7 , assumingsource devices display device 61 should see only three source devices, whiledisplay device 62, which cannot receive streams from source device 65 (because HDMI link 63 b is asymmetric), should see all the three source devices from which it can receive streams (72, 73, 74). Assumingsource device 72 is disconnected from the HDMI-CEC cluster tree,source devices device 61, while only sourcedevices device 62. Whensource device 72 is connected to the HDMI-CEC cluster tree, manipulatingswitch 64 seessource devices display device 61 cannot include 4 playback devices in a standard HDMI-CEC cluster tree and this may be solved by one of the following two non-limiting examples. - A first example of assigning a valid logical address includes the following steps:
-
Playback device 72 wakes up and because HDMI-CEC cluster tree ofdisplay device 61 already contains three playback devices,playback device 72 cannot allocate a playback device CEC logical address. - While
playback device 72 tries to receive its appropriate logical address, the other sources identify themselves, and as a result the manipulatingswitch 64 holds an updated network topology of the source devices having the same function. - Then manipulating
switch 64 checks if it is possible to assign to playback device 72 a logical address in the HDMI-CEC cluster tree ofdisplay device 62, so that the HDMI-CEC network view ofdisplay device 62 will includeplayback device 72 with its true logical address. This may be possible becausesource device 65 is underswitch 63 and therefore is not accessible bydisplay device 62. - If it is possible, the manipulating
switch 64 causesplayback device 72 to reinitialize itself using the HPD signal, and then the manipulatingswitch 64 emulates the entire HDMI-CEC cluster tree ofdisplay device 62 in order forplayback device 72 to receive the appropriate logical address. One example of an address allocation process includes the following steps:playback device 72 attempts to acquire a logical address by sending polling message to that address, and the manipulatingswitch 64 generates an answer for the logical addresses it does not wantplayback device 72 to acquire. - After
source device 72 receives its appropriate logical address, the manipulatingswitch 64 may emulatesource device 72 in order to notifydisplay device 62 of the logical address ofsource device 72. - A second example of assigning a valid logical address includes the following steps:
- Still referring to
FIG. 7 , manipulatingswitch 64 creates for itself the downstream HDMI-CEC network view through his HDMI outputs, and calculates the logical addresses it should assign to the upstream devices (72, 73, and 74). -
Source device 72 wakes up as an HDMI-CEC device and the manipulatingswitch 64 assigns to sourcedevice 72 an address according to its preferences, by emulating the entire HDMI-CEC cluster tree. - Then the manipulating
switch 64 checks whether a downstream device already owns the address assigned to sourcedevice 72. If a downstream device already owns the address, manipulatingswitch 64 repeats the process so thatsource device 72 will receive a different address. -
FIG. 8 illustrates a network example where a maximum number of 3 playback devices (having CEClogical addresses playback devices playback device 84 connects to the network, the manipulatingswitch 64 has no available playback device logical address that is valid for both HDMI-CEC cluster trees. Therefore, the manipulatingswitch 64 assigns playback device 84 a logical address that meets one of the HDMI-CEC cluster trees and spoofs the other HDMI-CEC cluster tree. For example, manipulatingswitch 64 may actually assign thelogical address 9 toplayback device 84, which is accepted by the HDMI-CEC network view ofdisplay device 61, and spoof the HDMI-CEC network view ofdisplay device 62 to believe thatplayback device 84 holds thelogical address 8. -
FIG. 24 is a flow diagram illustrating one method for assigning a required CEC logical address to an HDMI-CEC source device, comprising the following steps: Instep 240, determining the required CEC logical address to be acquired by the HDMI-CEC source device. Instep 241, reinitializing the HDMI-CEC source device to acquire a CEC logical address utilizing polling messages. And instep 242, spoofing the acknowledgements to polling messages containing CEC logical addresses other than the required CEC logical address. -
FIG. 23 is a flow diagram illustrating one method comprising the following steps: Instep 230, dividing, by a manipulating switch, a plurality of HDMI-CEC devices into at least a first HDMI-CEC cluster tree coupled to a first HDMI-CEC display device, and a second HDMI-CEC cluster tree coupled to a second HDMI-CEC display device, wherein the HDMI-CEC cluster trees partially overlap. Instep 231, determining a first and a second HDMI-CEC network view for the first and the second HDMI-CEC display devices, whereby the two HDMI-CEC network views partially overlap. And instep 232, enabling a second HDMI-CEC source device in the second HDMI-CEC cluster tree to acquire a required CEC logical address already in use by a first HDMI-CEC source device in the first HDMI-CEC cluster tree, wherein the first and the second HDMI-CEC source devices are located in the non-overlapping parts of the HDMI-CEC network views. - Assigning the Correct EDID to an Active Source.
- In one embodiment, if a first display device sends a CEC <set stream path> message to a source device but the source device does not store the correct EDID of the first display device, the manipulating switch emulates the HDMI-CEC cluster tree in order to cause the active source device to have the correct EDID of the first display device. The manipulating switch is capable of knowing the correct EDID of the first display device using the 12 c interface. Moreover, if the physical address assigned to the source device does not meet the HDMI-CEC network view of the first display device, the manipulating switch may also emulate the HDMI-CEC cluster tree in order to cause the active source device to have the required physical address.
- Elimination of a Hierarchic Level in an HDMI-CEC Network View.
- HDMI limits the network view to include up to 4 hierarchic levels. In one embodiment, the manipulating switch eliminates one or more hierarchic levels from the HDMI-CEC network view of a display device.
FIG. 9 illustrates an example where the HDMI-CEC network views of bothdisplay devices source device 94 using CEC, the manipulatingswitch 64 may eliminate, for example, the existence ofswitch 71 from the HDMI-CEC network views ofdisplay devices FIG. 9 illustrates a case where the manipulatingswitch 64 spoofs the physical addresses of its upstream and downstream devices. As a result of implementing the physical address spoofing of eliminating the existence ofswitch 71, the HDMI-CEC network views of bothdisplay devices switch 64, it is possible to controldevices - In one embodiment, the manipulating switch uses polling messages to verify, maintain and/or discover the CEC logical addresses of the network devices. The manipulating switch may check the logical address(es) from time to time in order to make sure that it stores an updated view of the network.
- When the manipulating switch receives a polling message it knows whether it should answer with an ACK or not according to the stored HDMI-CEC network view(s). Referring again to
FIG. 8 , assume that the manipulatingswitch 64 receives a polling message fromdisplay device 62 containing the logical address ofsource device 73 in the HDMI-CEC network view ofdisplay device 62. The manipulating switch replies with an ACK and does not forward the original message to sourcedevice 73 because it actually holds a different logical address in accordance with the HDMI-CEC network view ofdisplay device 61. If needed, the manipulating switch may transmit to source device 73 a modified polling message containing its actual address. Similarly, the manipulatingswitch 64 may process polling messages from an upstream device to a downstream device. For example, a polling message fromsource device 73 containing the logical address ofplayback device 83 in the HDMI-CEC network view ofdisplay device 62 may be forwarded through HDMI link 62 a if the message's address meets the actual address. Alternatively, the manipulating switch replies with an ACK and does not forward the original message to playbackdevice 83. If needed, the manipulating switch may transmit to playback device 83 a modified polling message containing its actual address. -
FIG. 14 is a flow diagram illustrating one method for emulating an HDMI-CEC sub network, comprising the following steps: Instep 140, determining the properties of the HDMI-CEC sub network. Instep 141, generating CEC messages that emulate the CEC messages initiated by the HDMI-CEC sub network. And instep 142, answering CEC messages addressed to the emulated HDMI-CEC sub network. -
FIG. 25 is a flow diagram illustrating one method for manipulating HDMI-CEC messages transmitted over a network comprising at least a first and a second HDMI-CEC display device with their associated first and second HDMI-CEC cluster trees that at least partially overlap, the method comprising the following steps: Instep 250, monitoring the CEC <Report Physical Address> messages resulting from the physical address discovery process of the first and the second HDMI-CEC cluster trees. Instep 251, preventing the non-overlapping section of the second HDMI-CEC cluster tree from receiving the CEC messages initiated by the first HDMI-CEC cluster tree, and preventing the first HDMI-CEC cluster tree from receiving the CEC messages initiated by the non-overlapping section of the second HDMI-CEC cluster tree. Instep 252, preventing propagation of EDID associated with the non-overlapping section of the HDMI-CEC cluster tree to the first HDMI-CEC cluster tree. Instep 253, utilizing the CEC <Report Physical Address> messages resulting from the physical address discovery process of the first and the second HDMI-CEC cluster trees for learning the first and the second HDMI-CEC network views. Instep 254, spoofing CEC <Report Physical Address> messages from the overlapping section of the HDMI-CEC cluster tree towards the non-overlapping section of the second HDMI-CEC cluster tree. And inoptional step 255, determining the preferred physical and logical addresses to be acquired by the HDMI-CEC devices in the overlapping section of the HDMI-CEC cluster tree. - In one embodiment, when a message sender transmits a CEC message to a message recipient, the manipulating switch may intercept one or more of the CEC blocks, and answer with an ACK (the message may be directed downstream or upstream). Then the manipulating switch may transmit an appropriately modified or generated CEC blocks to the message recipient. If the message recipient does not accept the message or cannot perform the request, the manipulating switch may transmit a <feature abort> message to notify the message sender of the failure to execute the message.
-
FIG. 11A illustrates asymmetric communication channel 112 connecting between the manipulatingswitches symmetric communication channel 112 was a unidirectional communication channel and not a symmetric communication channel,display device 61 may have had access tosource devices display device 62 may have had access only to sourcedevice 66. As a result of using thesymmetric communication channel 112,display device 62 may also accesssource device 65. In the illustrated embodiment, thesymmetric communication channel 112 does not influence the HDMI-CEC network view ofdisplay device 61.FIG. 11B illustrates the physical addresses allocated to the HDMI-CEC network view ofdisplay device 61. As illustrated, manipulatingswitch 114 may have manipulatingswitch 116 andsource device 65 as its upstream devices. Therefore, manipulatingswitch 114 receives the physical address of (1.0.0.0), manipulatingswitch 116 receives the physical address of (1.1.0.0),source device 65 receives the physical address of (1.1.1.0), andsource device 66 receives the physical address of (1.2.0.0). - It is to be understood that the symmetric channel may also be a multi-stream symmetric channel. A multi-stream symmetric channel may utilize the above described methods and devices for utilizing a multi-stream channel within an HDMI-CEC cluster trees, operating a multi-stream manipulating switch, calculating the residue bandwidth, ensuring enough bandwidth in advance, and/or operating a multi-stream daisy chain supporting HDMI-CEC.
- There are solutions for transmitting HDMI-CEC over non-standard HDMI cables, such as CAT5x, CAT6, coax, or fiber, wirelessly, or using any other solution that may be available today as well as in the future. The embodiments of the manipulating switch cover all of these alternative solutions and all of the alternative multimedia interfaces. For example, in
FIG. 2 ,connection 12 a may be an HDMI cable whileconnection 12 b may be an optical fiber, 12 c may be a CAT6 cable, 15 a may be a coax cable, and 15 b may be a wireless link. In other words, the various disclosed embodiments are not limited to some specific HDMI cable but may be implemented using any appropriate communication medium. -
FIG. 10 illustrates a manipulatingswitch 180 having anHDMI cable input 183 that may be connected to an HDMI source device, aCAT5e input 184 that may be connected to an HDMI source device over a twisted pair system,wireless output 181 that may communicate with an HDMI display device over a wireless system and coaxoutput 182 that may be connected to an HDMI display device over coax cable system. - Although the embodiments have been described in considerable detail with reference to certain embodiments thereof, other embodiments are possible.
- Certain features of the embodiments, which may, for clarity, be described in the context of separate embodiments, may also be provided in various combinations in a single embodiment. Conversely, various features of the embodiments, which may, for brevity, be described in the context of a single embodiment, may also be provided separately or in any suitable sub-combination.
- The embodiments are not limited in their applications to the details of the order or sequence of steps of operation of methods, or to details of implementation of devices, set in the description, drawings, or examples.
- While the methods disclosed herein have been described and shown with reference to particular steps performed in a particular order, it will be understood that these steps may be combined, sub-divided, or reordered to form an equivalent method without departing from the teachings of the embodiments. Accordingly, unless specifically indicated herein, the order and grouping of the steps is not a limitation of the embodiments.
- Any citation or identification of any reference in this application shall not be construed as an admission that such reference is available as prior art to the embodiments of the present invention.
- While the embodiments have been described in conjunction with specific examples thereof, it is to be understood that they have been presented by way of example, and not limitation. Moreover, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art. Accordingly, it is intended to embrace all such alternatives, modifications and variations that fall within the spirit and scope of the appended claims and their equivalents. In the claims, means-plus-function clauses are intended to cover the structures described herein as performing the recited function and not only structural equivalents, but also equivalent structures.
Claims (24)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/193,021 US20090295680A1 (en) | 2008-05-27 | 2008-08-17 | Operating a multi display network supporting hdmi-cec |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US5643208P | 2008-05-27 | 2008-05-27 | |
US12/193,021 US20090295680A1 (en) | 2008-05-27 | 2008-08-17 | Operating a multi display network supporting hdmi-cec |
Publications (1)
Publication Number | Publication Date |
---|---|
US20090295680A1 true US20090295680A1 (en) | 2009-12-03 |
Family
ID=41379145
Family Applications (9)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/193,027 Active 2029-05-13 US7822879B2 (en) | 2008-05-27 | 2008-08-17 | Methods for address assignment |
US12/193,022 Active 2029-02-08 US7987296B2 (en) | 2008-05-27 | 2008-08-17 | Methods and devices for CEC propagation control |
US12/193,018 Active 2033-05-16 US8788718B2 (en) | 2008-05-27 | 2008-08-17 | Multiple display network supporting HDMI-CEC |
US12/193,024 Active 2032-05-25 US8996732B2 (en) | 2008-05-27 | 2008-08-17 | Methods and devices for CEC block termination |
US12/193,021 Abandoned US20090295680A1 (en) | 2008-05-27 | 2008-08-17 | Operating a multi display network supporting hdmi-cec |
US12/193,026 Active 2031-03-11 US8255202B2 (en) | 2008-05-27 | 2008-08-17 | Methods and devices for spoofing CEC messages |
US12/193,025 Active 2029-02-17 US7979591B2 (en) | 2008-05-27 | 2008-08-17 | Network views for a multi display network supporting CEC |
US12/193,020 Active 2029-01-28 US7979590B2 (en) | 2008-05-27 | 2008-08-17 | Multiple sink configuration supporting HDMI-CEC |
US12/193,023 Active 2029-02-07 US7984197B2 (en) | 2008-05-27 | 2008-08-17 | Methods and devices for on the fly CEC modification |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/193,027 Active 2029-05-13 US7822879B2 (en) | 2008-05-27 | 2008-08-17 | Methods for address assignment |
US12/193,022 Active 2029-02-08 US7987296B2 (en) | 2008-05-27 | 2008-08-17 | Methods and devices for CEC propagation control |
US12/193,018 Active 2033-05-16 US8788718B2 (en) | 2008-05-27 | 2008-08-17 | Multiple display network supporting HDMI-CEC |
US12/193,024 Active 2032-05-25 US8996732B2 (en) | 2008-05-27 | 2008-08-17 | Methods and devices for CEC block termination |
Family Applications After (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/193,026 Active 2031-03-11 US8255202B2 (en) | 2008-05-27 | 2008-08-17 | Methods and devices for spoofing CEC messages |
US12/193,025 Active 2029-02-17 US7979591B2 (en) | 2008-05-27 | 2008-08-17 | Network views for a multi display network supporting CEC |
US12/193,020 Active 2029-01-28 US7979590B2 (en) | 2008-05-27 | 2008-08-17 | Multiple sink configuration supporting HDMI-CEC |
US12/193,023 Active 2029-02-07 US7984197B2 (en) | 2008-05-27 | 2008-08-17 | Methods and devices for on the fly CEC modification |
Country Status (1)
Country | Link |
---|---|
US (9) | US7822879B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090278985A1 (en) * | 2008-05-09 | 2009-11-12 | Nexcom International Co., Ltd. | Video control system, display system control device and video controlling method |
US8260975B1 (en) | 2011-06-14 | 2012-09-04 | Hydra Connect LLC | Consumer electronics control (CEC) processor |
US8799496B2 (en) | 2009-07-21 | 2014-08-05 | Eloy Technology, Llc | System and method for video display transfer between video playback devices |
US11151965B2 (en) * | 2019-08-22 | 2021-10-19 | Qualcomm Incorporated | Methods and apparatus for refreshing multiple displays |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7502929B1 (en) * | 2001-10-16 | 2009-03-10 | Cisco Technology, Inc. | Method and apparatus for assigning network addresses based on connection authentication |
JP4172498B2 (en) * | 2006-05-16 | 2008-10-29 | ソニー株式会社 | Transmission system, transmission method, video output device, and video input device |
US9208679B2 (en) | 2006-09-05 | 2015-12-08 | Universal Electronics Inc. | System and method for configuring the remote control functionality of a portable device |
US8812629B2 (en) * | 2008-04-18 | 2014-08-19 | Universal Electronics Inc. | System and method for configuring the remote control functionality of a portable device |
US8659400B2 (en) | 2006-09-05 | 2014-02-25 | Universal Electronics Inc. | System and method for configuring the remote control functionality of a portable device |
JP2008276067A (en) * | 2007-05-02 | 2008-11-13 | Canon Inc | Video display device and its control method |
JP4251460B2 (en) * | 2007-07-10 | 2009-04-08 | シャープ株式会社 | Display system and display device |
JP2009077045A (en) * | 2007-09-19 | 2009-04-09 | Toshiba Corp | Address list updating device and method |
EP2107466A1 (en) * | 2008-03-31 | 2009-10-07 | Sony Corporation | Electronic device for emulating other electronic devices and method for operating an electronic device |
US9088663B2 (en) | 2008-04-18 | 2015-07-21 | Universal Electronics Inc. | System for appliance control via a network |
US7822879B2 (en) * | 2008-05-27 | 2010-10-26 | Valens Semiconductor Ltd. | Methods for address assignment |
US8200473B1 (en) * | 2008-08-25 | 2012-06-12 | Qlogic, Corporation | Emulation of multiple MDIO manageable devices |
TW201012225A (en) * | 2008-09-02 | 2010-03-16 | Weltrend Semiconductor Inc | Multimedia system with CEC right transferring mechanism and method thereof |
US8248421B2 (en) * | 2008-09-30 | 2012-08-21 | Apple Inc. | DisplayPort control and data registers |
TWI460995B (en) | 2008-12-11 | 2014-11-11 | Silicon Image Inc | Power delivery over digital interaction interface for video and audio (diiva) |
CN102860030B (en) * | 2010-01-12 | 2017-02-08 | 美国莱迪思半导体公司 | Video management and control in home multimedia network |
US8782237B2 (en) | 2010-01-28 | 2014-07-15 | Intel Corporation | Audio/video streaming in a topology of devices |
GB2477415B (en) * | 2010-01-28 | 2012-03-28 | Intel Corp | Message passing framework for audio/video streaming in a topology of devices |
JP4772908B2 (en) * | 2010-01-29 | 2011-09-14 | 株式会社東芝 | Communication device |
WO2011105770A2 (en) * | 2010-02-23 | 2011-09-01 | Lg Electronics Inc. | A method and an apparatus for transmitting messages in home network system |
JP5590377B2 (en) * | 2010-02-24 | 2014-09-17 | ソニー株式会社 | COMMUNICATION DEVICE, COMMUNICATION CONTROL METHOD, AND PROGRAM |
US20150082355A1 (en) * | 2010-04-11 | 2015-03-19 | Mark Tiddens | Method and Apparatus for Interfacing Broadcast Television and Video Displayed Media with Networked Components |
US9113190B2 (en) | 2010-06-04 | 2015-08-18 | Microsoft Technology Licensing, Llc | Controlling power levels of electronic devices through user interaction |
WO2012001616A2 (en) * | 2010-06-27 | 2012-01-05 | Valens Semiconductor Ltd. | Methods and systems for time sensitive networks |
US10047259B2 (en) | 2010-08-13 | 2018-08-14 | Prc-Desoto International, Inc. | Methods for making cured sealants by actinic radiation and related compositions |
JP5608475B2 (en) * | 2010-08-30 | 2014-10-15 | 日立コンシューマエレクトロニクス株式会社 | Transmission system and source device |
JP5460530B2 (en) * | 2010-09-06 | 2014-04-02 | 日立コンシューマエレクトロニクス株式会社 | Display system, display device, and relay device |
US20120070019A1 (en) * | 2010-09-21 | 2012-03-22 | Barry Corlett | Methods for addressing equipment in tree networks |
US20120131245A1 (en) * | 2010-11-19 | 2012-05-24 | Silicon Image, Inc. | Transfer of control bus signaling on packet-switched network |
JP2014504085A (en) * | 2010-12-09 | 2014-02-13 | トムソン ライセンシング | Method and apparatus for blocking HDMI (registered trademark) CEC broadcast message |
US8793408B2 (en) * | 2010-12-21 | 2014-07-29 | Nikon Corporation | Electronic device and program |
US8620113B2 (en) | 2011-04-25 | 2013-12-31 | Microsoft Corporation | Laser diode modes |
US8760395B2 (en) | 2011-05-31 | 2014-06-24 | Microsoft Corporation | Gesture recognition techniques |
JP2013005265A (en) * | 2011-06-17 | 2013-01-07 | Sony Corp | Content reproducing device and content reproduction control method |
JP2013005407A (en) * | 2011-06-21 | 2013-01-07 | Funai Electric Co Ltd | Video display device |
US10044598B2 (en) * | 2011-07-11 | 2018-08-07 | Sony Corporation | Network proxying technology |
KR20130017058A (en) * | 2011-08-09 | 2013-02-19 | 삼성전자주식회사 | A image processing apparatus and hdmi ethernet channel connection method the same |
US11295603B2 (en) | 2011-10-28 | 2022-04-05 | Universal Electronics Inc. | System and method for optimized appliance control |
US8635637B2 (en) | 2011-12-02 | 2014-01-21 | Microsoft Corporation | User interface presenting an animated avatar performing a media reaction |
US9100685B2 (en) | 2011-12-09 | 2015-08-04 | Microsoft Technology Licensing, Llc | Determining audience state or interest using passive sensor data |
US20130173835A1 (en) * | 2011-12-29 | 2013-07-04 | Broadcom Corporation | Controlling HDMI Devices Via Intelligent Emulation of Consumer Electronics Control (CEC) Protocol |
US8898687B2 (en) | 2012-04-04 | 2014-11-25 | Microsoft Corporation | Controlling a media program based on a media reaction |
CA2775700C (en) | 2012-05-04 | 2013-07-23 | Microsoft Corporation | Determining a future portion of a currently presented media program |
CN103425440B (en) * | 2012-05-14 | 2017-05-24 | 联想(北京)有限公司 | Display method and electronic device |
CN102740128B (en) * | 2012-06-12 | 2017-12-22 | 康佳集团股份有限公司 | A kind of video transmission device and its implementation with function of surfing the Net |
KR101369146B1 (en) | 2012-07-16 | 2014-03-06 | 옵티시스 주식회사 | Image system |
TWI494848B (en) * | 2012-09-17 | 2015-08-01 | Delta Electronics Inc | Display-controlling method and displaying device |
JP6123212B2 (en) | 2012-10-02 | 2017-05-10 | セイコーエプソン株式会社 | Image display device and control method of image display device |
CN103002226B (en) * | 2012-11-27 | 2016-04-13 | 广东欧珀移动通信有限公司 | A kind of playback equipment changing method and device |
TW201430575A (en) * | 2013-01-29 | 2014-08-01 | Hon Hai Prec Ind Co Ltd | HDMI-CEC device and address assignment method |
CN103973822A (en) * | 2013-01-29 | 2014-08-06 | 鸿富锦精密工业(深圳)有限公司 | HDMI-CEC devices and address allocation method thereof |
CN104348889B (en) * | 2013-08-09 | 2019-04-16 | 鸿富锦精密工业(深圳)有限公司 | Switching switch and electronic device |
US8935433B1 (en) | 2013-10-15 | 2015-01-13 | Sony Corporation | Connection of more than three playback devices to HDMI CEC link |
CN104156187B (en) * | 2014-07-24 | 2018-11-23 | 惠州Tcl移动通信有限公司 | A kind of multi-screen display equipment |
JP2016177701A (en) * | 2015-03-20 | 2016-10-06 | ソニー株式会社 | Network system, information processing method and hdmi device |
WO2017173377A1 (en) * | 2016-04-01 | 2017-10-05 | Caavo Inc | Method and apparatus for implementing hdmi cec |
TWM534482U (en) | 2016-09-06 | 2016-12-21 | Aten Int Co Ltd | Media switch device, media switch system and media switch method |
KR20180068470A (en) * | 2016-12-14 | 2018-06-22 | 삼성전자주식회사 | Display apparatus consisting a multi display system and control method thereof |
TWI700930B (en) * | 2018-12-04 | 2020-08-01 | 宏正自動科技股份有限公司 | Switching device and system and method for switching video signal |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060067690A1 (en) * | 2004-09-29 | 2006-03-30 | Tatum Jimmy A | Optical cables for consumer electronics |
US20080068287A1 (en) * | 2006-09-15 | 2008-03-20 | Rgb Spectrum | Intelligent video graphics switcher |
US20080126577A1 (en) * | 2006-11-27 | 2008-05-29 | Samsung Electronics Co., Ltd. | Method for managing address and video apparatus using the same |
US20090251605A1 (en) * | 2008-04-07 | 2009-10-08 | Mediatek Inc. | System, method and devices for hdmi transmission |
US20100115433A1 (en) * | 2007-01-26 | 2010-05-06 | Lg Electronics Inc. | Method for displaying device connected media signal sink and media signal sink thereof |
Family Cites Families (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5859596A (en) * | 1996-08-30 | 1999-01-12 | Csi Technology, Inc. | Switchyard equipment monitoring system and communications network therefor |
US6122676A (en) * | 1998-01-07 | 2000-09-19 | National Semiconductor Corporation | Apparatus and method for transmitting and receiving data into and out of a universal serial bus device |
US6185520B1 (en) * | 1998-05-22 | 2001-02-06 | 3Com Corporation | Method and system for bus switching data transfers |
GB0210488D0 (en) * | 2002-05-08 | 2002-06-12 | Koninkl Philips Electronics Nv | Control of an AV content source component |
AU2003239385A1 (en) * | 2002-05-10 | 2003-11-11 | Richard R. Reisman | Method and apparatus for browsing using multiple coordinated device |
US8605623B2 (en) * | 2002-05-31 | 2013-12-10 | Koninklijke Philips N.V. | Determining and configuring a communication path in a network |
KR100459539B1 (en) * | 2002-11-29 | 2004-12-03 | 한국전자통신연구원 | Router and method for controlling maximum transmission unit of external network interface |
US7620062B2 (en) * | 2003-05-01 | 2009-11-17 | Genesis Microchips Inc. | Method of real time optimizing multimedia packet transmission rate |
US7398345B2 (en) * | 2003-06-12 | 2008-07-08 | Hewlett-Packard Development Company, L.P. | Inter-integrated circuit bus router for providing increased security |
US7854009B2 (en) * | 2003-06-12 | 2010-12-14 | International Business Machines Corporation | Method of securing access to IP LANs |
FR2862835B1 (en) * | 2003-11-24 | 2006-04-14 | Medialive | SECURED AND CUSTOMIZED DIFFUSION OF AUDIOVISUAL FLOWS BY A UNICAST / MULTICAST HYBRID SYSTEM |
US20050120383A1 (en) * | 2003-12-02 | 2005-06-02 | Ozaki Arthur H. | System for saving settings of an audiovisual system |
US8018936B2 (en) * | 2004-07-19 | 2011-09-13 | Brocade Communications Systems, Inc. | Inter-fabric routing |
US7433473B2 (en) * | 2004-09-10 | 2008-10-07 | Nagracard S.A. | Data transmission method between a broadcasting center and a multimedia unit |
US20060106968A1 (en) * | 2004-11-15 | 2006-05-18 | Wooi Teoh Gary C | Intelligent platform management bus switch system |
US20060182110A1 (en) * | 2005-02-17 | 2006-08-17 | Bomhoff Matthew D | Apparatus, system, and method for fibre channel device addressing |
US8553716B2 (en) * | 2005-04-20 | 2013-10-08 | Jupiter Systems | Audiovisual signal routing and distribution system |
US8547997B2 (en) * | 2005-04-20 | 2013-10-01 | Jupiter Systems | Capture node for use in an audiovisual signal routing and distribution system |
JP4912296B2 (en) * | 2005-04-28 | 2012-04-11 | パナソニック株式会社 | Lip sync correction system, lip sync correction device, and lip sync correction method |
US20070061414A1 (en) * | 2005-07-21 | 2007-03-15 | Steve Bakke | Ethernet interconnection and interoperability of disparate send and receive devices |
US20070089157A1 (en) * | 2005-10-18 | 2007-04-19 | Clark Christopher M | Television advertising number system |
US7418524B2 (en) * | 2005-12-06 | 2008-08-26 | Avocent Corporation | Universal serial bus (USB) extension |
EP1968239B1 (en) * | 2005-12-26 | 2019-01-30 | Panasonic Corporation | Address managing method and communication device |
WO2007091706A1 (en) * | 2006-02-10 | 2007-08-16 | Matsushita Electric Industrial Co., Ltd. | Radio communication system |
US20070192500A1 (en) * | 2006-02-16 | 2007-08-16 | Infoexpress, Inc. | Network access control including dynamic policy enforcement point |
US20070192858A1 (en) * | 2006-02-16 | 2007-08-16 | Infoexpress, Inc. | Peer based network access control |
WO2007101236A1 (en) * | 2006-03-01 | 2007-09-07 | Cypress Semiconductor Corp. | Source switching method for multimedia interface |
JP4925697B2 (en) * | 2006-03-23 | 2012-05-09 | ソニー株式会社 | Video signal encoding system, video signal encoding method, and signal converter for network transmission |
US20070242062A1 (en) * | 2006-04-18 | 2007-10-18 | Yong Guo | EDID pass through via serial channel |
US7386641B2 (en) * | 2006-04-18 | 2008-06-10 | Owlink Technology, Inc. | Protocol for uncompressed multimedia data transmission |
KR101366912B1 (en) * | 2006-05-16 | 2014-02-24 | 소니 주식회사 | Communication system, transmission device, reception device, communication method, and program |
JP4772867B2 (en) * | 2006-05-19 | 2011-09-14 | パナソニック株式会社 | Logical address assignment method |
JP3952077B1 (en) * | 2006-06-06 | 2007-08-01 | オンキヨー株式会社 | Hot plug signal detection device, source device and repeater device |
US20070292135A1 (en) * | 2006-06-09 | 2007-12-20 | Yong Guo | Integrated remote control signaling |
TW200835303A (en) * | 2006-09-07 | 2008-08-16 | Avocent Huntsville Corp | Point-to-multipoint high definition multimedia transmitter and receiver |
US20080098433A1 (en) * | 2006-10-23 | 2008-04-24 | Hardacker Robert L | User managed internet links from TV |
US8296808B2 (en) * | 2006-10-23 | 2012-10-23 | Sony Corporation | Metadata from image recognition |
US8077263B2 (en) * | 2006-10-23 | 2011-12-13 | Sony Corporation | Decoding multiple remote control code sets |
JP2008113198A (en) * | 2006-10-30 | 2008-05-15 | Sony Corp | Transmission method, transmission system, transmitting device, and receiving device |
WO2008070061A2 (en) * | 2006-12-05 | 2008-06-12 | Thomson Licensing | Method, apparatus and system for playout device control and optimization |
US7765323B2 (en) * | 2006-12-29 | 2010-07-27 | Intel Corporation | Sink device addressing mechanism |
US10338694B2 (en) * | 2007-01-22 | 2019-07-02 | Sony Corporation | Multiple focus control |
US8462759B2 (en) * | 2007-02-16 | 2013-06-11 | Semtech Canada Corporation | Multi-media digital interface systems and methods |
EP2057793A1 (en) * | 2007-03-14 | 2009-05-13 | Hewlett-Packard Development Company, L.P. | Synthetic bridging |
US8180929B2 (en) * | 2007-04-24 | 2012-05-15 | Samsung Electronics Co., Ltd. | Method for managing logical address and device thereof |
US8156256B2 (en) * | 2007-04-24 | 2012-04-10 | Samsung Electronics Co., Ltd. | Method for managing logical address and device thereof |
KR101385537B1 (en) * | 2007-05-08 | 2014-04-17 | 삼성전자주식회사 | The method of managing address and the image device thereof |
US20080288870A1 (en) * | 2007-05-14 | 2008-11-20 | Yu Brian Zheng | System, methods, and apparatus for multi-user video communications |
US8873453B2 (en) * | 2007-05-14 | 2014-10-28 | Sigma Group, Inc. | Method and apparatus for wireless transmission of high data rate streams |
US20090015723A1 (en) * | 2007-06-18 | 2009-01-15 | Sony Corporation Of Japan | Media switching device |
JP4251460B2 (en) * | 2007-07-10 | 2009-04-08 | シャープ株式会社 | Display system and display device |
US8644162B2 (en) * | 2007-07-16 | 2014-02-04 | Echostar Technologies L.L.C. | Network performance assessment apparatus, systems, and methods |
US8599315B2 (en) * | 2007-07-25 | 2013-12-03 | Silicon Image, Inc. | On screen displays associated with remote video source devices |
US9866785B2 (en) * | 2007-08-15 | 2018-01-09 | Advanced Micro Devices, Inc. | Automatic reduction of video display device power consumption |
JP2009065391A (en) * | 2007-09-05 | 2009-03-26 | Toshiba Corp | Video processing apparatus and video processing method |
US8477793B2 (en) * | 2007-09-26 | 2013-07-02 | Sling Media, Inc. | Media streaming device with gateway functionality |
US8527771B2 (en) * | 2007-10-18 | 2013-09-03 | Sony Corporation | Wireless video communication |
US7861017B2 (en) * | 2007-10-19 | 2010-12-28 | Sony Corporation | Consumer electronics control (CEC) line enhancement method for HDMI network that selects a transfer rate from a plurality of transfer rates |
US8625029B2 (en) * | 2007-12-17 | 2014-01-07 | Sony Corporation | HDMI source detection |
US8725582B2 (en) * | 2008-03-04 | 2014-05-13 | Sony Corporation | Multimedia system based E-commerce |
US20090248909A1 (en) * | 2008-03-26 | 2009-10-01 | Sony Corporation | Method and Apparatus for Simulating Consumer Electronic Control Functionality for Devices |
US20090285138A1 (en) * | 2008-05-13 | 2009-11-19 | Tzero Technologies, Inc. | Maintaining wireless communication between Consumer Electronic Control devices |
US7822879B2 (en) * | 2008-05-27 | 2010-10-26 | Valens Semiconductor Ltd. | Methods for address assignment |
JP5295662B2 (en) * | 2008-07-03 | 2013-09-18 | パナソニック株式会社 | CEC communication apparatus, audiovisual apparatus using the same, and CEC communication method |
JP4645697B2 (en) * | 2008-08-07 | 2011-03-09 | ソニー株式会社 | Video transmission device and output destination switching control method by video transmission device |
TW201012225A (en) * | 2008-09-02 | 2010-03-16 | Weltrend Semiconductor Inc | Multimedia system with CEC right transferring mechanism and method thereof |
JP2010098699A (en) * | 2008-10-20 | 2010-04-30 | Canon Inc | Receiving apparatus, and control method thereof |
EP2280542A1 (en) * | 2009-07-21 | 2011-02-02 | Nxp B.V. | Fast HDMI switching with conditional reset mechanism |
-
2008
- 2008-08-17 US US12/193,027 patent/US7822879B2/en active Active
- 2008-08-17 US US12/193,022 patent/US7987296B2/en active Active
- 2008-08-17 US US12/193,018 patent/US8788718B2/en active Active
- 2008-08-17 US US12/193,024 patent/US8996732B2/en active Active
- 2008-08-17 US US12/193,021 patent/US20090295680A1/en not_active Abandoned
- 2008-08-17 US US12/193,026 patent/US8255202B2/en active Active
- 2008-08-17 US US12/193,025 patent/US7979591B2/en active Active
- 2008-08-17 US US12/193,020 patent/US7979590B2/en active Active
- 2008-08-17 US US12/193,023 patent/US7984197B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060067690A1 (en) * | 2004-09-29 | 2006-03-30 | Tatum Jimmy A | Optical cables for consumer electronics |
US20080068287A1 (en) * | 2006-09-15 | 2008-03-20 | Rgb Spectrum | Intelligent video graphics switcher |
US20080126577A1 (en) * | 2006-11-27 | 2008-05-29 | Samsung Electronics Co., Ltd. | Method for managing address and video apparatus using the same |
US20100115433A1 (en) * | 2007-01-26 | 2010-05-06 | Lg Electronics Inc. | Method for displaying device connected media signal sink and media signal sink thereof |
US20090251605A1 (en) * | 2008-04-07 | 2009-10-08 | Mediatek Inc. | System, method and devices for hdmi transmission |
Non-Patent Citations (1)
Title |
---|
HDMI, Consumer Electronics Control (CEC), High-Definition Multimedia Interface Specification Ver 1.3a, 2006, Pages 1-104. * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090278985A1 (en) * | 2008-05-09 | 2009-11-12 | Nexcom International Co., Ltd. | Video control system, display system control device and video controlling method |
US8358253B2 (en) * | 2008-05-09 | 2013-01-22 | Nexcom International Co., Ltd. | Video control system, display system control device and video controlling method |
US8799496B2 (en) | 2009-07-21 | 2014-08-05 | Eloy Technology, Llc | System and method for video display transfer between video playback devices |
US8260975B1 (en) | 2011-06-14 | 2012-09-04 | Hydra Connect LLC | Consumer electronics control (CEC) processor |
US11151965B2 (en) * | 2019-08-22 | 2021-10-19 | Qualcomm Incorporated | Methods and apparatus for refreshing multiple displays |
Also Published As
Publication number | Publication date |
---|---|
US20090295996A1 (en) | 2009-12-03 |
US20090295997A1 (en) | 2009-12-03 |
US8788718B2 (en) | 2014-07-22 |
US20090296731A1 (en) | 2009-12-03 |
US7984197B2 (en) | 2011-07-19 |
US20090295990A1 (en) | 2009-12-03 |
US7979591B2 (en) | 2011-07-12 |
US7979590B2 (en) | 2011-07-12 |
US20090296003A1 (en) | 2009-12-03 |
US20090295679A1 (en) | 2009-12-03 |
US20090296002A1 (en) | 2009-12-03 |
US7822879B2 (en) | 2010-10-26 |
US8996732B2 (en) | 2015-03-31 |
US20090296712A1 (en) | 2009-12-03 |
US8255202B2 (en) | 2012-08-28 |
US7987296B2 (en) | 2011-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7979590B2 (en) | Multiple sink configuration supporting HDMI-CEC | |
US7937501B2 (en) | Displayport CE system control functionality | |
US7861017B2 (en) | Consumer electronics control (CEC) line enhancement method for HDMI network that selects a transfer rate from a plurality of transfer rates | |
TWI531961B (en) | Identifying devices in a topology of devices for audio/video streaming | |
WO2015137717A1 (en) | Device and method for transmitting and receiving data using hdmi | |
US8897304B2 (en) | Packet generating method in wireless HDMI CEC | |
JP6684802B2 (en) | Virtualized display output port configuration | |
KR20150074195A (en) | Flexible implementation of serial bus support over display interface | |
US9554179B2 (en) | Method and apparatus for transmitting and receiving data using HDMI | |
US20150134860A1 (en) | System for improving hdmi cec performance, and method for controlling same | |
KR20090100341A (en) | Method, apparatus and system for playout device control and optimization | |
US10162769B2 (en) | Method and apparatus for transmitting and receiving data using HDMI | |
WO2021125055A1 (en) | Reception apparatus, method for controlling reception apparatus, and transceiving system | |
CN101873461B (en) | Image documentation equipment | |
JP4970607B1 (en) | Transmitting apparatus, receiving apparatus, and transmission method | |
KR20240054263A (en) | Audio video receiver with simultaneous multi-zone 8K video routing | |
JP5315083B2 (en) | Display device, method and program | |
US20170238050A1 (en) | Method for transmitting and receiving data using hdmi and device therefor | |
CN204707216U (en) | Three screen output systems | |
US20240073355A1 (en) | Sink device, source device, and method for controlling the same | |
US20160088234A1 (en) | Video relay device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: VALENS SEMICONDUCTOR LTD., ISRAEL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LIDA, EYRAN;BANET, NADAV;REEL/FRAME:021879/0455 Effective date: 20081016 |
|
AS | Assignment |
Owner name: KREOS CAPITAL II LIMITED Free format text: U.S. INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNOR:VALENS SEMICONDUCTOR LTD.;REEL/FRAME:022025/0344 Effective date: 20081222 Owner name: BANK LEUMI LE-ISRAEL B.M., ISRAEL Free format text: U.S. INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNOR:VALENS SEMICONDUCTOR LTD.;REEL/FRAME:022025/0344 Effective date: 20081222 Owner name: KREOS CAPITAL II LIMITED, JERSEY Free format text: U.S. INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNOR:VALENS SEMICONDUCTOR LTD.;REEL/FRAME:022025/0344 Effective date: 20081222 |
|
AS | Assignment |
Owner name: VALENS SEMICONDUCTOR LTD, ISRAEL Free format text: RELEASE OF SECURITY AGREEMENT;ASSIGNOR:KREOS CAPITAL II LIMITED;REEL/FRAME:027167/0521 Effective date: 20110901 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |