Compressed blanking interval transmission over a multimedia connection
By employing a transmission apparatus with encryption and compression circuits, compressed video can be effectively transmitted over HDMI and MHL connections, addressing bandwidth constraints and enabling higher resolution video transmission.
Patent Information
- Application Number
- DE112015001136
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2014-08-27
- Filing Date
- 2015-02-10
- Publication Date
- 2025-04-30
- Estimated Expiration
- 2035-02-10
AI Technical Summary
Conventional HDMI and MHL connections are not configured for transmission of compressed video content, making it difficult to transmit high-resolution video such as 8K due to bandwidth constraints.
A transmission apparatus that includes an encryption circuit for island data, a compression circuit for blank data to generate compressed blank interval data, and an interface for transmitting island data and compressed blank data over HDMI and MHL connections, allowing for increased bandwidth for video data transmission.
Enables the transmission of higher resolution video content, such as 8K, over existing HDMI and MHL connections while reducing power consumption and requiring fewer physical terminals or wires.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
BACKGROUND 1. AREA OF REVELATION
[0001] Embodiments of the present disclosure relate generally to the field of electronic devices, and in particular to compressed video blanking interval transmission via a High-Definition Multimedia Interface (HDMI) and a Mobile High-Definition Link (MHL). 2. DESCRIPTION OF THE RELATED TECHNOLOGY
[0002] HDMI (e.g., HDMI1 and HDMI2) and MHL (e.g., MHL1, MHL2, and MHL3) were designed to transmit uncompressed video (and audio) content from source devices to receiving devices. Uncompressed video provides the best video quality as long as the connection (e.g., HDMI and MHL) can support the full bandwidth (BW) required. Recent advances in display technology have increased the demand for high-resolution video (e.g., 8K). However, bandwidth limitations make it difficult to transmit such high-resolution video over conventional HDMI and MHL connections. In particular, HDMI and MHL are not designed to transmit compressed video content. Therefore, there is a need for a solution to transmit compressed video content over HDMI and MHL connections.
[0003] US 2010 / 0 309 382 A1 describes a video data transmission in which blanking interval data and data island data are compressed using a predefined codec.
[0004] WO 2013 / 112926A2 describes a method for estimating error rates over an HDMI multimedia connection using data islands in blanking intervals.
[0005] EP 1 241 884 A2 describes a transmission device wherein a blanking interval signal is shortened by multiplexing to be transmitted in a subsection T1 of a video blanking interval T0, and wherein audio data is compressed by encoders and then multiplexed to be transmitted in the remaining subsection T2 of the video blanking interval T0. WO 2013 / 076 777 A1 describes the adjustment of the compression rate of image data depending on a transmission error rate. BRIEF DESCRIPTION OF THE INVENTION
[0006] Embodiments of the present disclosure generally relate to compressed video transmission via HDMI and MHL. In some embodiments, a transmission device, a receiving device, or a non-transmittal computer-readable medium that stores an embodiment of the transmission device or the receiving device is disclosed for compressed video transmission via HDMI and MHL.The transmission device comprises: an encryption circuit for receiving data island data associated with one or more video blanking intervals, wherein the data island data includes audio data and / or additional data; a compression circuit for receiving blanking interval data associated with one or more video blanking intervals, wherein the blanking interval data describes gap states of one or more video blanking intervals, the compression circuit compressing the blanking interval data into compressed blanking interval data to provide increased bandwidth (BW) for video data transmission, but not compressing the data island data; and an interface for transmitting the data island data and the compressed blanking interval data via one or more multimedia channels of the multimedia communication link.The transmission device may include: a link layer circuit for receiving video data and compressing the video data into compressed video data; a compression information circuit for generating video compression control information that describes a compression of the video data; and the interface for transmitting signals corresponding to the compressed video data via one or more multimedia channels of the multimedia communication link, and for transmitting signals corresponding to the video compression control information via the multimedia communication link.
[0007] In one embodiment, the video compression control information includes compression parameters that are used during the compression of the video data. In another embodiment, the video compression control information is transmitted as a preamble or a preceding guard band that precedes a video transmission time range of the compressed video data. In another embodiment, the video compression control information is transmitted in a data island during a blanking interval. In another embodiment, the video compression control information is transmitted via one or more multimedia channels of the multimedia communication link. In yet another embodiment, the video compression control information is transmitted via a control channel of the multimedia communication link.
[0008] In one embodiment, the active video data has a plurality of color components, and the interconnect layer circuit is designed to compress lines of the color components into compressed lines of the color components of equal length. In another embodiment, the active video data has a plurality of color components, and the interconnect layer circuit is designed to compress lines of the color components into compressed lines of the color components and to pad the compressed lines of the color components with one or more filler parts, the compressed lines of which have equal length.In one embodiment, the active video data has a plurality of color components, and the interconnection layer circuit is designed to compress lines of the color components into compressed lines of the color components and to encrypt the compressed lines of the color components in successive order into encrypted video data, and the signals corresponding to the compressed video data transmitted through the interface are signals corresponding to the encrypted video data.
[0009] Other embodiments of the present disclosure include a receiving device for communicating via a multimedia communication link. The receiving device has an interface for receiving signals corresponding to compressed video data via one or more multimedia channels of the multimedia communication link and for receiving signals corresponding to video compression control information via the multimedia communication link, wherein the video compression control information describes a compression of the compressed video data, and a link layer circuit for decompressing the compressed video data to video data based on the video compression control information, which describes a compression of the compressed video data.
[0010] In one embodiment, the video compression control information includes compression parameters that are used during video data compression. In another embodiment, the video compression control information is received as a preamble or a preceding guard band that precedes a video transmission time range of the compressed video data. In another embodiment, the video compression control information is received in a data island during a blanking interval. In another embodiment, the video compression control information is received via one or more multimedia channels of the multimedia communication link. In yet another embodiment, the video compression control information is received via a control channel of the multimedia communication link.
[0011] In one embodiment, the compressed video data consists of compressed lines of color components of equal length. In another embodiment, the compressed video data consists of compressed lines of color components containing padding, which the link layer circuitry removes when it decompresses the compressed video data. In yet another embodiment, the signals corresponding to the compressed video data are signals corresponding to encrypted video data, and the link layer circuitry decrypts the encrypted video data into decrypted video data and splits the decrypted video data into lines for different color components.
[0012] According to a further embodiment of the present disclosure, a non-transient, computer-readable medium storing an embodiment of a transmission device is provided. The transmission device comprises a link layer circuit for receiving active video data and for compressing the active video data into compressed video data, a compression information circuit for generating video compression control information describing the compression of the active video data, and an interface for transmitting signals corresponding to the compressed video data via one or more multimedia channels of the multimedia communication link, and for transmitting signals corresponding to the video compression control information via the multimedia communication link.
[0013] According to yet another embodiment of the present disclosure, a non-transitional, computer-readable medium storing an embodiment of a receiving device is provided. The receiving device has an interface for receiving signals corresponding to compressed video data via one or more multimedia channels of the multimedia communication link and for receiving signals corresponding to video compression control information via the multimedia communication link, wherein the video compression control information describes a compression of the compressed video data, and a link layer circuit for decompressing the compressed video data to video data based on the video compression control information, which describes a compression of the compressed video data.
[0014] According to further embodiments of the present disclosure, a transmission device for communication via a multimedia communication link is provided. The transmission device comprises a compression circuit for receiving blanking interval data corresponding to the gap states of video blanking intervals, wherein the compression circuit compresses the blanking interval data into compressed blanking interval data, and an interface for transmitting signals corresponding to the compressed blanking interval data via one or more multimedia channels of the multimedia communication link.
[0015] In one embodiment, the compression circuit generates gap compression information, which describes the compression of the compressed blanking interval data, and the interface transmits this gap compression information via the multimedia communication link. In another embodiment, the compressed blanking interval data contains gap events that indicate state changes within the data. In yet another embodiment, the compression circuit compresses the blanking interval data by applying run-length encoding to the data to generate the compressed blanking interval data.
[0016] In one embodiment, for at least one video blanking interval, the compression circuit compresses the blanking interval data of the video blanking interval by splitting the blanking interval data into different parts, which are separated by data islands, and compressing each of the different parts separately. In another embodiment, for at least one video blanking interval that has data islands, the compression circuit compresses the blanking interval data of the video blanking interval by compressing the blanking interval data into a single set of time information that describes the states of the blanking interval data. In another embodiment, the transmission device replaces additional video blanking intervals with compressed video data, wherein the interface transmits signals corresponding to the compressed video data via one or more multimedia channels of the multimedia communication link.
[0017] According to further embodiments of the present disclosure, a receiving device for communication via a multimedia communication link is provided. The receiving device has an interface for receiving, via one or more multimedia channels of the multimedia communication link, signals corresponding to compressed blanking interval data, and a decompression circuit for decompressing the compressed blanking interval data to blanking interval data corresponding to video blanking interval states.
[0018] In one embodiment, the interface also receives gap compression information via the multimedia communication link, which describes the compression of the compressed blanking interval data, and the decompression circuit decompresses the compressed blanking interval data based on this gap compression information. In another embodiment, the compressed blanking interval data contains gap events that indicate state changes within the blanking interval data. In yet another embodiment, the compressed blanking interval data is decompressed by applying run-length decoding to the compressed blanking interval data used to generate the blanking interval data.
[0019] In one embodiment, for at least one video blanking interval, the compressed blanking interval data of the video blanking interval has different parts, which are separated by data islands, and the decompression circuit decompresses the parts to the blanking interval data. In another embodiment, for at least one video blanking interval that has data islands, the compressed blanking interval data of the video blanking interval has a single set of time information, which corresponds to the states of the blanking interval data, and the decompression circuit decompresses the single set of time information to the blanking interval data.
[0020] According to a further embodiment of the present disclosure, a non-transient, computer-readable medium storing an embodiment of a transmission device is provided. The transmission device comprises a compression circuit for receiving blanking interval data corresponding to the gap states of video blanking intervals, wherein the compression circuit compresses the blanking interval data into compressed blanking interval data, and an interface for transmitting signals corresponding to the compressed blanking interval data via one or more multimedia channels of the multimedia communication link.
[0021] In one embodiment, the compression circuit generates gap compression information, which describes the compression of the compressed blanking interval data, and the interface transmits this gap compression information via the multimedia communication link. In another embodiment, the compressed blanking interval data contains gap events that indicate state changes within the data. In yet another embodiment, the compression circuit compresses the blanking interval data by applying run-length encoding to generate the compressed data.
[0022] In one embodiment, for at least one video blanking interval, the compression circuit compresses the blanking interval data of the video blanking interval by splitting the blanking interval data into different parts, separated by data islands, and compressing each of the different parts separately. In another embodiment, for at least one video blanking interval that has data islands, the compression circuit compresses the blanking interval data of the video blanking interval by compressing the blanking interval data into a single set of time information that describes the states of the blanking interval data.
[0023] According to yet another embodiment of the present disclosure, a non-transitional, computer-readable medium, which stores an embodiment of a receiving device, is provided. The receiving device has an interface for receiving, by means of one or more multimedia channels of the multimedia communication link, signals corresponding to compressed blanking interval data; and a decompression circuit for decompressing the compressed blanking interval data to blanking interval data corresponding to states of video blanking intervals.
[0024] In one embodiment, the interface also receives gap compression information via the multimedia communication link, which describes a compression of the compressed blanking interval data, and the decompression circuit decompresses the compressed blanking interval data based on the gap compression information.
[0025] Exemplary embodiments of the present disclosure describe how to transmit compressed video data over a connection such as HDMI or MHL. This will enable MHL3 and HDMI2 to carry higher resolutions of content (such as 8K) with current physical layers (PHYs) and enable lower energy consumption for the same resolution. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] The teaching of the embodiments disclosed herein can be easily understood by taking into account the following detailed description in conjunction with the accompanying drawings. Fig. Figure 1 is a high-level block diagram of a data communication system according to an exemplary implementation. Fig. Figure 2 is a detailed view of a computer device suitable for use as the source device or the sink device from Fig. 1 according to an exemplary embodiment. Fig. Figure 3 is a flowchart that represents a data path for transmitting compressed data via HDMI and MHL according to an exemplary implementation. Fig. Figure 4A is a circuit diagram representing a transmitter for transmitting compressed data via HDMI according to an exemplary embodiment. Fig. Figure 4B is a circuit diagram showing a receiver for decompressing received compressed data transmitted via HDMI, according to an exemplary embodiment. Fig. Figure 5 is a diagram that represents a first way to handle compressed video data according to an exemplary implementation. Fig. Figure 6 is a diagram that represents a second way to handle compressed video data according to an exemplary implementation. Fig. Figure 7 is a diagram that represents a third way to handle compressed video data according to an exemplary implementation. Fig. Figure 8 is a diagram that represents a fourth way to handle compressed video data according to an exemplary implementation. Fig. Figure 9 represents a compression of blanking intervals to gap events according to an exemplary implementation. Fig. 9D represents a compression of times between gap events according to one exemplary implementation. Fig. Diagrams 9A-9C show three examples of blanking interval compression according to one embodiment. Fig. Figure 10 is a diagram illustrating the advantage of blanking interval compression according to one embodiment. Fig. Figure 11 is a diagram illustrating the effect of blanking interval compression on the required bandwidth for a 4K video solution according to an exemplary implementation. Fig. Figure 12 is a diagram that represents the HDMI stream with compressed data according to an exemplary implementation. Fig. Figure 13 is a graphic that represents the packet header bytes of an MHL3 stream packet according to an exemplary implementation. DETAILED DESCRIPTION
[0027] The figures (FIG.) and the following description refer to various embodiments for illustrative purposes only. It should be noted that alternative embodiments of the structures and methods disclosed herein are readily apparent from the following discussion as possible alternatives that can be applied without deviating from the principles discussed herein. Several embodiments, examples of which are shown in the accompanying figures, are now described in detail. It should be noted that, wherever practical, similar or identical numbers may be used in the figures to indicate similar or identical functionality.
[0028] Embodiments of the present disclosure utilize compression for transmitting video data and blanking interval data over multimedia communication links, which offers several advantages. First, a higher resolution can be supported using the same connection technology (e.g., the same bandwidth); for example, 4K resolution is possible for the current 1080p connection with 4x compression. Second, compression can enable lower energy consumption for the same resolution. Third, fewer physical connections or wires are required to transmit compressed data than uncompressed data for the same resolution. In particular, the first advantage is especially beneficial for consumer electronics (CE) products, while the second and third advantages are important for mobile devices.The following figures in the description show how compressed video data and blanking interval data can be transmitted over a multimedia communication link.
[0029] Fig. Figure 1 is a high-level block diagram of a system 100 for data communication according to an exemplary embodiment. The system 100 comprises a source device 110, which communicates with a sink device 115 via one or more interface cables 120, 150, 180. The source device 110 transmits multimedia data streams (e.g., audio / video streams) to the sink device 115 and also exchanges control data with the sink device 115 via the interface cables 120, 150, 180. In one exemplary embodiment, the source device 110 and / or the sink device 115 can be repeater devices.
[0030] Source device 110 has physical communication ports 112, 142, 172, connected to interface cables 120, 150, 180. Sink device 115 also has physical communication ports 117, 147, 177, connected to interface cables 120, 150, 180. Signals exchanged between source device 110 and sink device 115 via the interface cables pass through the physical communication ports.
[0031] Source device 110 and sink device 115 exchange data using different protocols. In one embodiment, the interface cable 120 is a High Definition Multimedia Interface (HDMI) cable. The HDMI cable 120 supports differential signals, which are transmitted via the 'data0+' line 121, 'data0-' line 122, 'data1+' line 123, 'data1-' line 124, 'data2+' line 125, and 'data2-' line 126. Each pair of differential data lines represents a single multimedia communication channel. The HDMI cable 120 may further include differential clock lines 'clock+' 127 and 'clock-' 128, a Consumer Electronics Control (CEC) control bus 129, a Display Data Channel (DDC) bus 130, supply voltage 131, ground 132; hot-plug detection 133; and four shield lines 844 for the differential signals.In some embodiments, the sinking device 115 can use the CEC control bus 129 for the transmission of closed feedback control data to the source device 110.
[0032] In one embodiment, the interface cable 150 is a Mobile High-Definition Link (MHL) cable. The MHL cable 150 supports differential signals, which are transmitted via the 'data0+' line 151 and the 'data0-' line 152. In the illustrated embodiment of MHL, there is only a single pair of differential data lines (e.g., 151 and 152). Integrated common-mode clocks are transmitted via the differential data lines. The MHL cable 150 can further include a control bus (CBUS) 159, a supply voltage 160, and ground 161. The CBUS 159 carries control information, such as discovery data, configuration data, and remote control commands.
[0033] Embodiments of the present disclosure relate to the transmission of compressed video data and compressed video blanking interval data over the multimedia channels of a multimedia communication link such as HDMI or MHL. This will enable MHL3 and HDMI2 to carry higher-resolution content (such as 8K) with current PHYs and enable lower energy consumption for the same resolutions.
[0034] In one embodiment, an embodiment of the source device 110, the sink device 115, or of components within the source device 110 or the sink device 115 can be stored as data in a non-transient, computer-readable medium (e.g., a hard drive, a flash drive, an optical drive). These embodiments can be descriptions at a behavioral level, a register-transfer level, a logic block level, a transistor level, and an array geometry level.
[0035] Fig. Figure 2 is a detailed view of a computer device 200, which is suitable for use as the source device 110 or the sink device 115. Fig. 1 according to an exemplary embodiment. The computer device 200 can be, for example, a mobile phone, a television, a laptop, a tablet, etc. The computer device 200 has components such as a processor 202, a memory 203, a memory module 204, an input module (e.g., keyboard, mouse, and the like) 206, a display module 207 (e.g., a liquid crystal display, an organic light-emitting display, and the like), and a transmitter or receiver 205, which exchange data and control signals with each other via a bus 201.
[0036] The memory module 204 is designed as one or more non-transient, computer-readable media (e.g., hard disk, solid-state storage, etc.) and stores software instructions that are executed by the processor 202 in conjunction with the memory 203. Operating system software and other application software can also be stored in the memory module 204 in order to run on the processor 202.
[0037] The transmitter or receiver 205 is coupled with ports for receiving or transmitting multimedia and control data. Multimedia data received or transmitted can include video or audio-video streams, such as HDMI and MHL data. The multimedia data can be encrypted for transmission using an encryption scheme, such as HDCP (High-Bandwidth Digital Content Protection). The transmitter or receiver can include various circuits, such as interface circuits to connect to the MHL / HDMI links and a compression unit for compressing and decompressing video data.
[0038] Now, referring to Fig. Figure 3 shows a flowchart illustrating a data path for transmitting compressed data via HDMI and MHL according to an exemplary implementation. The illustrated implementation of the data path in Fig. Figure 3 shows a data flow for handling compressed video data as well as a data flow for handling compressed blanking interval data.
[0039] Initially, the data path for video compression begins with active video data 302. Active video data 302 can be data or a data stream that embodies the video. For example, active video data 302 can contain video data for multiple video frames. The active video data 303 is compressed to compressed video data 304. The compressed video data 304 is then encrypted 305 to encrypted video data 306.
[0040] The data path for blanking interval compression begins with blanking interval data and data islands DIs 312, which together form a blanking interval. A blanking interval can have a vertical blanking interval and / or a horizontal blanking interval. A vertical blanking interval contains a vertical sync pulse, which signifies a new frame, and a horizontal blanking interval contains a horizontal sync pulse, which signifies a new line within the frame. States within the vertical and horizontal blanking intervals are represented by the blanking interval data. In one embodiment, data islands can occur during the horizontal and / or vertical blanking interval. During a data island, audio and / or additional data can be transmitted within a series of packets. The blanking interval data 312 is compressed 313, resulting in compressed blanking interval data with data islands 314.The data islands are encrypted using HDCP to obtain encrypted data islands. The result is compressed blanking interval data with encrypted data islands.
[0041] Furthermore, according to the data flow shown in Fig. 3, the encrypted video 306 can be packetized 307 to create a packetized video 308. The compressed blanking interval data with encrypted DIs 316 can be packetized 307 to create a packetized blanking interval 318. The packetization phase (e.g., indicated by 307) can only be included in embodiments that use MHL3, whereas embodiments that use HDMI and earlier versions of MHL cannot include the packetization phase.
[0042] Now referring to Fig. Figure 4A is a circuit diagram of a transmitter 400 for transmitting compressed data over HDMI according to an exemplary embodiment. The transmitter 400 shown comprises a video compression circuit 402, a video HDCP encryption circuit 404a, a data island HDCP encryption circuit 404b, a transition minimized differential signaling (TMDS) encryption circuit 406, a blanking interval compression circuit 408, a compression info circuit 410, and a transmit interface circuit 412. In one exemplary embodiment, one or more components of the transmitter 400 can be part of a data link layer of HDMI or MHL. Therefore, the one or more components can also be referred to as "a link layer circuit." Those skilled in the art will recognize that other exemplary embodiments of the transmitter 400 are described in Fig. 4A may have other and / or additional circuits than those described herein, and that the functions may be distributed among the modules in various ways.
[0043] The video compression circuit 402 receives active video data 401 and compresses the video data 401 into compressed video data 403. The active video data 401 can consist of separate R, G, and B video data 401, which are compressed into compressed R, G, B video data 403. In one embodiment, the video compression circuit 402 can be controlled by the compression information circuit 410 to perform the compression of the video data 401. For example, the video compression circuit 402 receives video compression control information 411 from the compression information circuit 410, which describes compression parameters relating to the compression of the video data. Examples of compression parameters include a compression rate, which defines a compression level, and a compression algorithm, which specifies a particular compression algorithm to be used.The video compression circuit 402 compresses the video data 401 based on the video compression control information 411.
[0044] The video HDCP encryption circuit 404a receives the compressed video data 403 from the video compression circuit 402 and encrypts the compressed video data 403 using HDCP to produce encrypted video data 405.
[0045] The data island HDCP encryption circuit 404b receives data for one or more data islands 421 of a blanking interval and encrypts the data islands 421 using HDCP. The data island HDCP encryption circuit 404b also receives video compression control information 411 from the compression information circuit 410 and uses the received video compression control information 411 to generate information frames that describe the compression parameters used by the video compression circuit 402. For example, the data island HDCP encryption circuit 404b generates data islands for compression parameters 423 based on the video compression control information 411. In one embodiment, the video HDCP encryption circuit 404a and the data island HDCP encryption circuit 404b can be the same circuit, performing both the encryption of the video data 401 and the data islands 421.
[0046] The TMDS encryption circuit 406 receives encrypted video data 405 and encodes the encrypted video data 405 into TMDS data words 407 for transmission through the transmit interface circuit 412 and the multimedia communication link. For example, the TMDS encryption circuit 406 performs 8b / 10b encoding of the video data 401, mapping 8-bit data words to 10-bit symbols. In one embodiment, the TMDS encryption circuit 406 also receives the data islands for compression parameters 423 and other compressed blanking intervals 427, which are output by the blanking interval compression circuit 408, and converts these into 10-bit data words. In some embodiments, the TMDS encryption circuit 406 also receives the video compression control information 411 and uses this information to generate preambles or preceding protective tapes which contain the video compression information 411.
[0047] The blanking gap compression circuit 408 receives blanking gap data 425 and compresses it to generate compressed blanking gap data 427. The blanking gap data 425 indicates the gap state (e.g., front blanking shoulder, synchronization pulse, rear blanking shoulder) in which the blanking gap is currently located. The blanking gap data 425 is transmitted by one or more signals, such as a vertical sync (VS) signal, a horizontal sync (HS) signal, and a data enable (DE) signal. The blanking gap can also be referred to as a "sync period," and the gap states can also be referred to as "sync states."
[0048] As in Fig. As shown in Figure 4A, the compressed blanking interval data 427 is output to the TMDS encryption circuit 406, which encodes the compressed blanking interval data 427 into TMDS data words for transmission via the transmit interface circuit 412 using a multimedia communication link between the transmitter 400 and the receiver 450. In one embodiment, the blanking interval compression circuit 408 can also generate gap compression information that describes the compression of the compressed blanking interval data 427. The gap compression information can be transmitted to the receiver via the interface circuit 412 and the multimedia communication link.
[0049] The transmit interface circuit 412 serializes TMDS data words 407 into differential signals n for each multimedia communication channel and transmits the differential signals over different multimedia communication channels of a multimedia communication link. The transmit interface circuit 412 thus sends signals representing compressed video data 403, compression control information 411, compressed blanking interval data 427, gap compression information and data islands, as well as other types of information, within the receiver 400.
[0050] In one embodiment, the transmit interface circuit 412 can also receive the video compression control information 411 from the compression information circuit 410 (represented by a dashed arrow in Fig. 4A) and the video compression control information 411 as a signal are transmitted via a DDC channel 430 of the multimedia communication link. For example, channel 430 is a separate control channel that is distinct from the multimedia channel or channels used to transmit TMDS data words 407.
[0051] In the case of MHL, the compressed R, G, B video data, represented by the TMDS data words 407, are transmitted serially over a single multimedia channel. Additionally, the video compression control information 411 can be transmitted over a CBUS channel instead of a DDC.
[0052] Fig. Figure 4B is a circuit diagram showing a receiver 450 for decompressing received compressed data transmitted via HDMI, according to one embodiment. The receiver 450 shown comprises a receiver interface circuit 452, a compression control circuit 454, a TMDS decoding circuit 456, a video HDCP decoding circuit 458a, a data island HDCP decoding circuit 458b, a video decompression circuit 460, and a blanking interval decompression circuit 464. In one embodiment, one or more of the components of the receiver 450 may be located in the data link layer of HDMI or MHL. Therefore, the one or more components may also be referred to as "a link layer circuit." Those skilled in the art will recognize that other embodiments of the receiver 450 are located in Fig. 4B may have other and / or additional circuits than those described herein, and that the functions may be distributed among the modules in various ways.
[0053] The receiver interface circuit 452 receives incoming signals from the transmitter 400 via multimedia channels of the multimedia communication link. The signals represent TMDS data words, which are used to transmit information such as compressed video data, compressed blanking interval data 465, video compression control information 411, which describes the compression of the active video data 401, and gap compression information, which describes the compression of the compressed blanking interval data 465. The receiver interface circuit 452 deserializes the signals into TMDS data words.
[0054] The TMDS decoding circuit 456 receives the TMDS data words and applies TMDS decoding to them. The TMDS decoding circuit 456 outputs the decoded video data 457 to the video HDCP decoding circuit 458a, the decoded data islands 459 to the data island HDCP decoding circuit 458b, and the compressed blanking interval data 465 to the blanking interval decompression circuit 464. The video HDCP decoding circuit 458a and the data island HDCP decoding circuit 458b each decode the data (e.g., the decoded video data 457, the decoded DI 463) received by the TMDS decoding circuit 456. The video HDCP decoding circuit 458a outputs the decrypted video data 461 to the video decompression circuit 460. The data island HDCP decoding circuit 458b outputs the decrypted data islands 463 to the compression control circuit 454.
[0055] In one embodiment, the decrypted data islands 463 can contain video compression control information 411, which is provided to the compression control circuit 454. In another embodiment, the video compression control information 411 (represented by a dashed arrow) can instead be received by the DDC. In yet another embodiment, the video compression control information 411 (represented by a dashed arrow) is contained in a preamble of a control period or in a preceding guard band of a video data period, which is extracted by the TMDS decoding circuit 456. The compression control circuit 454 uses the compression parameters in the compression control information 411 to control how the video decompression circuit 460 decompresses the decrypted video data 461.
[0056] The blanking interval decompression circuit 464 decompresses the compressed blanking interval data 465 received by the TMDS decoding circuit 456 to generate the blanking interval data 469. The video decompression circuit 460 decompresses the decoded video data 461 under control by the compression control circuit 454 and outputs the video data 471.
[0057] In the case of MHL, the R, G, B video data is received as a series over a single multimedia communication channel. Furthermore, the video compression control information 411 can be transmitted over a CBUS channel instead of DDC.
[0058] To enable video transmission, several technical problems arise, which are addressed by this revelation. Some are common to all connections (HDMI and MHL), while others are specific to each connection. This revelation begins with the common aspects: video compression and gap compression. The revelation then describes the connection-specific aspects, including the handling of compressed videos.
[0059] Handling compressed videos refers to how to adapt the compressed data to the data path that contains a 24-bit data block (e.g., HDCP step in). Fig. 3) expected. There are at least four possible ways to compress video data. In one embodiment, the first two ways are used, as in Fig. 5 and Fig. Shown in section 6, HDMI and MHL are preferred, while the last two methods, as shown in Fig. 7 and Fig. 8 shown, are preferred for MHL3.
[0060] Fig. Figure 5 is a diagram illustrating a first approach to handling compressed video data according to an exemplary implementation. For example, the original video has 500 color components R 501, G 503, B 505 and / or other color components such as Y, Cb, and Cr (not shown). Each component 501, 503, 505 represents one line of video data, such as 8 bits × 1000 pixels = 8000 data bits per line.
[0061] A video compression circuit, such as 402 shown in Fig. 4A can compress the original video data 500, resulting in a compressed video 510, which contains lines of compressed video components R 511, G 513, B 515, and / or other compressed components, such as Y, Cb, and Cr (not shown). The compressed video components R 511, G 513, and B 515 each have the same compressed line size and can be aligned to a byte boundary 517. For example, a video component R 501 with 8000 bits in a line can be compressed using 2:1 compression to a compressed video component R 511 with 4000 bits in a line. A 4000-bit line is an exact multiple of 8 bits, meaning the line is aligned to a byte boundary.
[0062] In such a case, a video HDCP encryption circuit, such as 404a, can be used, as shown in Fig. 4A, performs HDCP encryption of compressed video data 510 at the 24-bit block level without knowing that the data is compressed. In other words, HDCP encryption can be applied to 24-bit blocks of compressed data, each containing 8 bits of R, 8 bits of G, and 8 bits of B. This allows conventional HDCP circuits to be reused with compression without redesigning the HDCP logic.
[0063] In another embodiment, a video compression circuit, such as 402 in Fig. Figure 4A shows the original video 500, including RGB components, being compressed separately, resulting in different line lengths for each component (R, G, B). For example, the compressed video might have compressed R, G, and B components with different line lengths. In such a case, there can be three different approaches to handling compressed video data, as now explained with reference to... Fig. 6, Fig. 7 and Fig. 8 is explained.
[0064] Fig. Figure 6 is a diagram illustrating one way to handle compressed video data according to a further embodiment. In the diagram shown in Fig. In the embodiment shown in Figure 6, an HDCP encryption circuit, such as the Video HDCP Encryption Circuit 404a, is used. Fig. 4A, Fig. The 0s 617a, 617b of one or more components (e.g., R, G) of the compressed video are used to obtain a compressed video with padding 610, which contains components (with padded zero parts) 611, 613, 615. Padding ensures that each component row has the same line size and is byte-aligned. In this way, an HDCP encryption circuit, such as 404a, can be represented in Fig. 4A, perform HDCP encryption of the compressed video with 610 padding at the 24b block level. However, this approach can lead to wasting some bandwidth by padding video data components with zeros.
[0065] At the receiver end, the video decompression circuit 460 removes the filler parts 617a and 617b when decompressing the decoded video data. The lines of compressed components R, G, and B can then be decompressed to the original video 500.
[0066] Fig. Figure 7 is a diagram illustrating a third way to handle compressed video data according to a further embodiment. This embodiment arranges lines of compressed R, G, and B components in a row 720. HDCP encryption is then applied to the row 720, so that the lines of compressed R, G, and B components are encrypted serially, one 24-bit block at a time. In such a case, a boundary marker 710a, 710b, 710c is inserted between the components, indicating a boundary between two adjacent components.
[0067] This implementation is typically used with MHL, where all color components R, G, and B are transmitted serially over a single communication channel using packets. Furthermore, in an MHL environment, the encrypted video data would be packetized before being transmitted over a single MHL communication channel. In other implementations of MHL, which can have multiple communication channels, the resulting packets can be distributed across these channels.
[0068] At the receiver end, the decryption circuit 458a decodes the video data to generate line 702 of the compressed video. Line 720 of the compressed video is then split into several compressed lines of color components R, G, B by identifying the boundary markers 710a, 710b, 710c and separating the color components R, G, B along these boundary markers. The separated compressed lines of color components R, G, B are then decompressed by the video decompression circuit 460.
[0069] Fig. Figure 8 is a diagram illustrating one way to handle compressed video data, according to yet another embodiment. In the illustrated embodiment, the compressed video 710 has compressed components R 811, G 813, and B 815 with different line sizes. HDCP encryption is performed in a 24b block layer on the compressed video 710. For the portion of the compressed components, e.g., R 811, G, and 813, that do not contain data to encrypt, the corresponding bits of the HDCP cipher values generated by the HDCP encryption circuit 404a are simply discarded. The result is an encrypted video 810 with three encrypted video components R 821, G 823, and B 825, which have different line sizes. Each component can be packetized and sent one after the other over a single MHL communication channel.In other implementations of MHL, which may have multiple communication channels, the resulting packets can be distributed across multiple communication channels. Blanking gap compression
[0070] Video compression engines only process the active video portion of the data. However, the overall compression rate of data transmitted over a multimedia connection (e.g., HDMI or MHL) is also affected by the blanking interval. For example, if the blanking interval uses 20% of the bandwidth, a 2:1 compression of video data will result in a compression rate of 0.2 + 0.8 × 0.5 = 0.6, i.e., 40%, which is lower than a 2:1 compression rate. There are a few ways to mitigate this problem by compressing the blanking interval.
[0071] The first way to compress the blanking interval is (1) to replace the blanking interval data with gap events that indicate state changes within a blanking interval and (2) to shorten the time between the gap events. As defined above, the blanking intervals can be horizontal blanking intervals or vertical blanking intervals, which can also be referred to as horizontal SYNC (HS) time spans and vertical SYNC (VS) time spans. In one embodiment, the blanking interval compression circuit 408, as shown in Fig. 4A, Blanking gap data for one or more of a blanking gap start (BS) event, a horizontal sync start (HSS) event, a horizontal sync end (HSE) event, a vertical sync start (VSS) event, and a vertical sync end (VSE) event. The BS event, HSS event, HSE event, VSS event, and VSE event indicate the start or end of different specific gap states (i.e., changes between states). Therefore, these events can be collectively referred to as gap events.
[0072] Fig. Figure 9 shows a compression of blanking interval data to gap events according to an exemplary implementation. Fig. 9 has three signals, DE, HS, and VS, which are used to carry blanking interval data 425. Blanking intervals 970 and 980 occur when the DE signal is low, and active video periods occur when the DE signal is high. Data islands are in Fig. Numbers 9 are not displayed, but would be transmitted at some point during blanking intervals 970 and 980.
[0073] The horizontal blanking interval (HBLK) 970 begins when DE goes low. The HBLK interval 970 ends when DE goes high. The HBLK interval 970 has several states: a front blanking shoulder 971, an HS pulse 972, which indicates a new line within a frame, and a back blanking shoulder 973. Each of these states can have a length of several clock cycles. The HBLK interval 970 is compressed into a BS event, which indicates the start of a front blanking shoulder 971, an HSS event, which indicates the start of the HS pulse 972, and an HSE event, which indicates the end of the HS pulse 972.
[0074] The vertical blanking interval (HBLK) 980 begins when DE goes low. The VBLK interval 980 ends when DE goes high. The VBLK interval 980 has several states: a front blanking shoulder 981, a high blanking pulse 982, which indicates a new line within a frame, and a back blanking shoulder 983. Each of these states can have a length of several clock cycles. The VBLK interval can be compressed into a front blanking shoulder event, which indicates the start of a front blanking shoulder 981, a front blanking slash event, which indicates the start of the rear blanking pulse 982, and a rear blanking slash event, which indicates the end of the rear blanking pulse 982.
[0075] Fig. 9D represents a compression of times between gap events according to one exemplary implementation. Initially, after the event generation, which occurs in Fig. As shown in Figure 9, the times of the gap events correspond to the times of gap state changes. As in Fig. As shown in Figure 9D, the BS event is separated from the HSS event by 16 clock cycles, and HSS is separated from HSE by 18 clock cycles. The interval between events is then reduced according to a predetermined 2:1 compression ratio. As a result, the BS event is separated from the HSS event by only 8 clock cycles, and the HSS event is separated from the HSE event by 9 clock cycles. This halves the total time required to transfer data for a blanking interval, from 34 clock cycles to 17 clock cycles. In other embodiments, the predetermined compression ratio can be a different ratio, such as 3:1 or 4:1.
[0076] In one embodiment, the blanking gap compression circuit 408 compresses the blanking gap data using an adaptation table 900, as shown in Fig. Figure 9A illustrates this. Table 900 shows a list of gap events on the left. Once a gap event is identified in the blanking gap data 425, it can be encoded into an event code, which is then transmitted as the compressed blanking gap data 427.
[0077] The gap events can be transmitted in less time than the actual blanking interval data used to generate them. In a conventional system, during a 970 or 980 Hz blanking interval, the source device must transmit data words for blanking interval data throughout the entire interval, which can consume a significant amount of bandwidth. Therefore, by replacing the actual blanking interval data with the gap events and reducing the time between them, the blanking intervals are compressed. This results in a good compression ratio (e.g., the same as or higher than the video portion) while still providing the exact blanking interval times.
[0078] On the receiving end, receiver 450 can reconstruct the blanking interval data based on the provided times of the gap events. Specifically, receiver 450 identifies the gap events, expands the time between gap events according to a predetermined compression ratio (1:2, 1:3) to reconstruct the times between gap events, and then reconstructs the blanking interval data.
[0079] The second way to compress the blanking interval is to apply run-length encoding to the blanking interval data while preserving the position of the data islands. Now, referring to Fig. In embodiment 9B, run-length coding (RLC) is applied to the blanking interval 920, while the respective positions of the data islands (DIs) 921a and 921b are preserved in the compressed blanking interval 922. The blanking interval 920 has interval segments during which no data is transmitted (indicated by a large B) and data island segments during which data islands are transmitted (indicated by a crossed hatch and the letter DI). The interval segments B and data island segments P are intermingled.
[0080] The blanking gap compression circuit 408 can, as in Fig. Figure 4A shows the blanking interval 920 being compressed by applying RLC to the blanking interval 920 to generate the compressed blanking interval 922. Specifically, the blanking interval compression circuit 408 divides the blanking interval data into different parts, separated by the DIs. The interval parts are compressed separately with RLC, and the data island parts are not compressed. The compressed interval parts (indicated by a small b) are then mixed with the data island parts 921a and 921b to form the compressed blanking interval 922.
[0081] RLC is a form of data compression in which sequences of the same data values are stored as a single data value and a count indicating the number of times the data value is repeated. When applied to blanking interval data, RLC produces timing information specifying the states within the blanking interval data and the duration of those states. For example, a blanking interval typically has a front blanking shoulder duration before a SYNC pulse, a SYNC pulse itself, and then a rear blanking shoulder following the SYNC pulse. The states within a blanking interval can thus be compressed into three states and three numbers: a front blanking shoulder time, which specifies the duration of the front blanking shoulder (e.g., 4 cycles), a SYNC time, which specifies the length of the SYNC pulse (e.g., 3 cycles), and a back blanking shoulder time, which specifies the duration of the back blanking shoulder (e.g., 5 cycles).In practice, the RLC information transmitted between adjacent DIs 921a and 921b typically specifies one or two states (e.g., front blanking shoulder, SYNC pulse, or rear blanking shoulder) and the duration of these states.
[0082] By preserving the positions of the DIs, this embodiment also retains preambles, which are special indicators used in HDMI and MHL to indicate whether the information following the preamble is a DI 921a, 921b, or a gap section with no DI. This allows the receiving device 115 to seamlessly convert the received information back to the original gap data 920 of an active video stream.
[0083] At the receiver end, the blanking interval decompression circuit 464 receives compressed blanking interval data 465, which contains various compressed gap segments separated by data islands. The blanking interval decompression circuit 464 decompresses the compressed gap segments to the blanking interval data 469 using run-length decoding to restore the correct times for a blanking interval.
[0084] The third way to compress the blanking interval is to reproduce the blanking interval using gap time information and send all DIs together. Referring to Fig. In the illustrated embodiment, 9C compresses the blanking interval 920 into a compressed blanking interval 924. The states of the blanking interval 920 are represented as a single set of gap time information 926, and several DIs 921a, 921b are transmitted together. The blanking interval compression circuit 408 can, as in Fig. Figure 4A shows how the blanking interval 920 (which has different parts 920a, 920b, 920c) is compressed by counting the duration of the interval states and then generating the interval time information 926 from the duration of the interval states. The interval time information 926 describes the duration of different states of the blanking interval 920a, 920b, 920c. For example, the interval time information 926 can specify a 4-cycle front blanking shoulder, a 5-cycle HS pulse, and a 6-cycle rear blanking shoulder.
[0085] The states of the entire blanking interval 920 are thus represented by a single block of gap time information 926, which is sent at the beginning of the compressed blanking interval 924. All DIs 921a and 921b are combined and sent together at the end of the compressed blanking interval 924.
[0086] On the receiver side, the blanking interval decompression circuit 464 receives compressed blanking interval data 465, which contains a single set of interval time information 926 for each blanking interval. The blanking interval decompression circuit 464 decompresses the interval time information 926 into the blanking interval data 469 to restore the correct times for a blanking interval.
[0087] This embodiment allows for a better degree of compression for the compression of the blanking interval 920 than the embodiment described in Fig. 9B is shown. However, although this is in Fig. Not shown in Figure 9C, the gap sections B can also contain preambles that precede and follow the DIs. These preambles are lost and must be restored at the receiver. Therefore, this embodiment can include time-act generators on the receiver side (e.g., receiver 450) for restoring the preambles. The time-act generator restores the preambles by assuming that each DI has a fixed size. The time-act generator divides the combined data island into individual DIs 921a and 921b of fixed size and then inserts preambles before and after DIs 921a and 921b.
[0088] Fig. Figure 10 is a diagram illustrating the advantages of video and blanking interval compression according to an exemplary embodiment. In the illustrated embodiment, line 1002 represents uncompressed active video data 1010 with uncompressed blanking intervals 1012. The blanking intervals 1012 and their states can be displayed using various signal components, such as DE 1012x, HS 1012y, and VS 1012z. Line 1004 represents the 2:1 compression of video data without blanking interval compression. For example, the active video data 1010 is compressed at a 2:1 compression ratio to obtain compressed video data 1020. That is, 100 kbits of video data are compressed to 50 kbits of video data. However, the blanking interval 1012 is not yet compressed.
[0089] Line 1006 represents the compressed video data 1020 with blanking interval compression using gap events (e.g., BS 1022a, HSS 1022b, HSE 1022c). This means that blanking interval data within the blanking interval 1012 is replaced by gap events BS 1022a, HSS 1022b, and HSE 1022c. The timing of the gap events is also compressed, allowing them to be transmitted in a smaller number of clock cycles (e.g., 25 cycles).
[0090] Furthermore, transmitter 400 can reduce the blanking intervals and use them for active video instead. There are two ways to achieve this: reducing the HBLK duration and using the saved bandwidth (BW) to transmit active video data, or reducing the VBLK duration and using the saved BW to transmit active video data. Line 1008 represents the compressed video data 1020 with blanking interval compression, which has no HBLK duration or horizontal sync (HSYNC) at all. Block 1024 represents the portion of the BW currently used to transmit compressed active video data 1020, which was previously used to transmit blanking intervals. As shown, because of the removal of the first two horizontal blanking intervals and the transmission of active video data instead of blanking intervals, additional BW is now available to transmit compressed video data.
[0091] This procedure in line 1008 is typically appropriate when the blanking intervals have no DIs. This procedure may include a time clock generator on the receiver side 450 to restore the correct timing of the gap states. Resolution information is provided to the time clock generator, describing the resolution of the active video data. Since each resolution is typically associated with a line size, number of pixels in each line, and synchronization times, the resolution can be used to restore the correct timing of the gap states.
[0092] Fig. Figure 11 is a diagram illustrating the impact of blanking interval compression on the bandwidth required for a 4K video solution according to one embodiment. In the illustrated embodiment, the original scheme 1102 has uncompressed active video data and uncompressed blanking intervals. The original scheme 1102 requires a 14.3 Gbps PHY to transmit all data in 16 ms. The second scheme 1104 has video data compressed at a 2:1 ratio without blanking interval compression. It requires a 7.1 Gbps PHY to transmit the data. The third scheme 1106 compresses the blanking intervals by shortening the horizontal gap HBLK durations and requires a 6.5 Gbps PHY to transmit all data. The fourth scheme, 1108, further compresses the blanking intervals by also shortening the vertical gap (VBLK) time intervals and requires 6.3 Gbps PHY to send the data.
[0093] It is also necessary that HBLK and VBLK are large enough to allow DI transmission. The compression level of blanking intervals containing DI packets cannot be guaranteed, as DI is not compressed at all. To solve this problem, the DIs in each line are limited to the amount that can be accommodated within the compressed AV stream, i.e., the blanking interval in the target stream format, which will carry the compressed data. For example, if a 4K video is compressed by a 4:1 ratio to fit into a 1080p stream, the amount of DIs is limited to a value that can be accommodated within a 1080p stream. Alternatively, after compressing the active video portion, the compressed video is inserted into the active video time span of the target HDMI stream, while the audio portion is inserted into the blanking interval of the target HDMI stream (1080p in this example) without any compression.This guarantees the correct amount of audio data in the compressed HDMI stream because the audio is inserted directly into the target (compressed) HDMI stream instead of being inserted into the original HDMI stream, which undergoes compression.
[0094] Next, the connection-specific part of the compression will be described with reference to Fig. 12, i.e., how to introduce the compressed video stream and how to inform the receiver about compression vs. no compression. Connection-specific - HDMI1, HDMI2, MHL1, MHL2
[0095] The transmitting side of an HDMI system will introduce the compressed video data instead of the active video time span of the HDMI stream. Fig. Figure 12 is a diagram illustrating the HDMI stream with compressed data according to an exemplary embodiment. In the illustrated embodiment, the "Video Encoding" section contains the compressed video data. The transmitter 400 can inform the receiver 450 that the data is compressed video data. Furthermore, the transmitter 400 can also transmit video compression control information 411 to the receiver 450 to inform the receiver 450 which compression algorithm was used by the transmitter 400 (e.g., using an algorithm ID) and any possible parameters used by the specific algorithm to support different compression mechanisms. This can be implemented in several ways.
[0096] First, a secondary channel, such as DDC in HDMI and CBUS in MHL, can be used to transmit the compression control information 411. The transmitter 400 writes specific values to registers in the receiver 450 via the DDC or CBUS, and the receiver 450 can determine that the input stream is a compressed stream by interpreting the values in the registers. After this information processing, the transmitter 400 sends compressed video data to the receiver 450, and the receiver 450 can correctly interpret the input stream of compressed video data as a compressed stream.
[0097] Secondly, a “preamble” and / or “preceding protective band (LGB)” can be used to transmit the video compression control information 411. As in Fig. As shown in Figure 12, the preambles and / or the LGBs precede a video data time span for the compressed video data. By introducing a specific value into one or both of these, the transmitter 400 can inform the receiver 450 that the input stream is a compressed stream. Referring again to Fig. 4A The video compression control information 411 can be transmitted as a preamble or a leading guard band (LGB) preceding a video transmission period for the compressed video data 403, by means of the transmit interface circuit 412 and a multimedia communication link (not shown) between the transmitter 400 and a receiver 450. The TMDS encryption circuit 406 can be responsible for generating the preamble or leading guard band (LGB) from the video compression control information 411.
[0098] Third, an information frame can be used to transmit the video compression control information 411. For example, the information frame can be a data island (carrying audio and other information during the blanking interval) within the blanking interval. The information frame is not compressed, so that information in the information frame can be correctly decoded on the receiving end, regardless of any compression of active video data. Referring again to Fig. In steps 4A-4B, the transmitter 400 transmits the video compression control information 411 in an information frame to the receiver 450 during a blanking interval. Accordingly, the receiver 450 can determine whether the input video is compressed or not, based on the information frame.
[0099] If receiver 450 detects that the input stream is compressed, it forwards the compressed video data to video decompression circuit 460 to extract the original video data. After extraction, the HDMI stream becomes the same as a normal, uncompressed HDMI stream, and all normal receiver-side processes will proceed.
[0100] For the blanking interval, as mentioned previously, the transmitter 400 inserts the DIs into the compressed destination HDMI stream to avoid introducing too many DIs into the blanking interval. If RLC (run-length coding) and / or gap events were used to compress the blanking interval, the transmitter 400 informs the receiver 450 by using a different "preamble" and / or combination of blanking interval letters. These different preamble and / or blanking interval letters can be used to inform the receiver 450 whether the following data is a normal blanking interval or a compressed blanking interval.
[0101] The transmitter 400 can also inform the receiver about the target resolution (i.e., resolution after decompression), specifically whether any gap reduction is being used. Using the target resolution, the receiver 450 can restore correct blanking intervals. This information can reach the receiver 450 either through DIs and / or sideband registers (similar to the scheme used for compression notification).
[0102] In one embodiment, the receiver 450 restores the normal (uncompressed) HDMI / MHL stream. For example, the receiver 450 can perform the following steps and also compress the video data. First, the receiver 450 restores all gap times if gap reduction was used on the transmitter side, i.e., a shortened blanking interval to a normal blanking interval. Second, the receiver 450 extracts DIs, such as those carrying audio content or additional information, from the input (compressed) stream and transmits them via the destination stream (e.g., 4K HDMI / MHL) along with decompressed video data. Therefore, the content of DIs (e.g., audio data) is preserved.
[0103] Thirdly, for some other DIs (e.g., AVI, AIF), the receiver 450 drops them from the input stream and fully reconstructs them through the destination stream. This is because the contents of such DIs are stream-specific, and DIs in the compressed stream cannot be reused for the destination stream output due to differing resolutions.
[0104] Fourth, a latency aligner can align the latency between a video path passing through the 460 video decompression circuit and audio DIs. Other DIs that are time-critical per target stream (e.g., GCP, VSI, etc.) are fully restored by the target stream timings. Connection-specific - MHL3
[0105] MHL3 is a packet-based stream, and one of its packets (i.e., the AV stream packet) can carry both HDMI and MHL streams because it utilizes tunneling technology. Furthermore, it supports side-channel tunneling, which tunnels a side channel of both HDMI and MHL. Therefore, all the methods mentioned above for HDMI and MHL can be used with MHL3 without modification. In addition, MHL3's packet-based scheme provides several extra options for transmitting compressed information. For example, compression information about whether the input data is compressed or not can be placed in a packet header. Fig.Figure 13 is a graphic representing the packet header bytes of a stream packet according to an example implementation. If a packet contains uncompressed video data, the `pkt_type` field can be set to 0b0001 to indicate that the packet contains uncompressed video data. If a packet contains compressed video data, the `pkt_type` field can be set to 0b0111 to indicate that the packet contains uncompressed video data.
[0106] The compression algorithm ID, which indicates the specific compression algorithm used for the input stream, and corresponding compression parameters can be included in several places. First, they can be included in an MHL Vendor Specific Info Frame (VSIF) that is part of the AV stream packet. Second, a separate packet can be used instead of an AV stream packet. For example, this separate packet could be MHL's Content Protection (CP) packet, which is included with every frame. This approach does not affect the AV stream packet at all and can also minimize synchronization issues.
[0107] In the above description, several specific details are presented for illustrative purposes to provide a thorough understanding of the present invention. However, it will be apparent to those skilled in the art that the present invention can be carried out without some of these specific details. In other examples, well-known structures and devices are represented as block diagrams. Intermediate structures may exist between the components shown. The components described or illustrated herein may have additional inputs or outputs that are not shown or described. The elements or components shown may also be arranged in other configurations or sequences, including rearranging any fields or changing field sizes.
[0108] The present invention can comprise various processes. The processes of the present invention can be executed by means of hardware components or can be embodied in computer-readable instructions, which can be used to cause a general-purpose or special-purpose processor or logic circuits programmed with the instructions to execute the processes. Alternatively, the processes can be executed by means of a combination of hardware and software.
[0109] Many of the methods are described in their most basic form, but processes can be added to or removed from any of the methods, and information can be added to or subtracted from any of the described messages without departing from the basic scope of the present invention. It will be apparent to the person skilled in the art that many further modifications and adaptations can be made. The specific embodiments are provided not to limit the invention, but to illustrate it.
[0110] When it is said that an element "A" is coupled to, with, or together with element "B," element A can be directly coupled to element B, or indirectly coupled, for example, through element C. If the description states that a component, feature, structure, process, or property A "causes" a component, feature, structure, process, or property B, this means that "A" is at least a partial cause of "B," but that there may also be at least one other component, feature, structure, process, or property that supports the causation of "B."If the description indicates that a component, feature, structure, process, or property "may" or "could" be included, it is not necessary that this specific component, feature, structure, process, or property is actually present. Similarly, if the description refers to "one" element, this does not mean that only one of the described elements is present.
[0111] An embodiment is a realization or example of the invention. Reference in the description to "an embodiment," "a single embodiment," "some embodiments," or "other embodiments" means that a particular feature, structure, or property described in connection with the embodiments is included in at least some embodiments, but not necessarily in all embodiments. The various occurrences of "an embodiment," "a single embodiment," or "some embodiments" do not necessarily all refer to the same embodiments.It should be noted that in the above description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, a single figure or a description thereof for the purpose of streamlining the disclosure and aiding the understanding of one or more of the various aspects of the invention.
[0112] Upon reading this disclosure, those skilled in the art will become aware of additional alternative configurations for transmitting compressed video content via HDMI and MHL. While specific embodiments and applications of the present disclosure have thus been presented and described, it is to be understood that the embodiments are not limited to the exact construction and components disclosed herein, and that various modifications, changes, and variations, which will be apparent to those skilled in the art, may be made to the arrangement, operation, and details of the method and apparatus of the present disclosure without departing from the spirit and scope of the disclosure as defined in the appended claims.
Claims
[1] A transmission device for communicating by means of a multimedia communication link, the transmission device comprising: an encryption circuit (404b) for receiving data island data (421) associated with one or more video blanking intervals, the data island data (421) comprising audio data and / or additional data; a compression circuit (408) for receiving blanking interval data (425) associated with the one or more video blanking intervals, the blanking interval data (425) describing gap states of the one or more video blanking intervals, the compression circuit (408) compressing the blanking interval data (425) into compressed blanking interval data (427) to provide increased bandwidth (BW) for video data transmission, but not compressing the data island data (421); and an interface for transmitting the data island data (421) and the compressed blanking interval data (427) by means of one or more multimedia channels of the multimedia communication link. [2] The transmission device according to claim 1, wherein the compression circuit (408) generates gap compression information describing a compression of the compressed blanking interval data (427), and the interface transmits the gap compression information via the multimedia communication link. [3] The transmission device according to claim 1, wherein the compressed blanking interval data (427) comprises gap events indicating state changes within the blanking interval data (425). [4] The transmission device according to claim 1, wherein the compression circuit (408) compresses the blanking interval data (425) by applying run-length coding to the blanking interval data (425) to generate the compressed blanking interval data (427). [5] The transmission device according to claim 4, wherein for at least one of the video blanking intervals, the compression circuit (408) compresses the blanking interval data (425) by dividing the blanking interval data (425) into different parts separated by the data island data and separately compressing each of the different parts. [6] The transmission device according to claim 1, wherein for at least one of the video blanking intervals, the compression circuit (408) compresses the blanking interval data (425) by compressing the blanking interval data (425) into a single set of gap time information describing a duration of the gap states of the blanking interval data (425). [7] The transmission device according to claim 1, wherein the transmission device replaces additional video blanking intervals with compressed video data, and wherein the interface transmits signals corresponding to the compressed video data by means of the one or more multimedia channels of the multimedia communication link. [8] A receiving device for communicating by means of a multimedia communication link, the receiving device comprising: an interface for receiving, via one or more multimedia channels of the multimedia communication link, data island data (421) and compressed blanking interval data (427) to provide an increased bandwidth (BW) for the video data transmission, wherein the data island data (421) and the compressed blanking interval data (427) are associated with one or more video blanking intervals; and a decompression circuit (464) for decompressing the compressed blanking interval data (427) but not the data island data (421), wherein the compressed blanking interval data (427) is decompressed into blanking interval data (425) corresponding to gap states of the one or more video blanking intervals. [9] The receiving device according to claim 8, wherein the interface also receives, via the multimedia communication link, gap compression information describing a compression of the compressed blanking interval data (427), and wherein the decompression circuit (464) decompresses the compressed blanking interval data (427) based on the gap compression information. [10] The receiving device according to claim 8, wherein the compressed blanking interval data (427) comprises gap events indicating state changes within the gap data. [11] The receiving apparatus according to claim 8, wherein the compressed blanking interval data (427) is decompressed by applying run-length decoding to the compressed blanking interval data (427) to generate the blanking interval data (425). [12] The receiving apparatus according to claim 11, wherein, for at least one of the video blanking intervals, the compressed blanking interval data (427) comprises different parts separated by the data island data, and the decompression circuit (464) decompresses the parts to the blanking interval data (425). [13] The receiving apparatus of claim 8, wherein for at least one of the video blanking intervals, the compressed blanking interval data (427) comprises a single set of gap time information corresponding to the gap states of the blanking interval data (425), and the decompression circuit (464) decompresses the single set of gap time information into the blanking interval data (425). [14] The transmission device according to claim 1, further comprising: a link layer circuit for receiving video data and compressing the video data into compressed video data; a compression information circuit for generating video compression control information describing compression of the video data; wherein the interface transmits signals corresponding to the compressed video data via the one or more multimedia channels of the multimedia communication link, and transmits signals corresponding to the video compression control information via the multimedia communication link. [15] The receiving device according to claim 8, wherein the interface receives signals corresponding to compressed video data via the multimedia communication link, and receives signals corresponding to video compression control information via the multimedia communication link, the video compression control information describing a compression of the compressed video data; and the receiving device further comprises: a link layer circuit for decompressing the compressed video data into video data based on the video compression control information describing compression of the compressed video data. [16] A method for communicating via a multimedia communication link, the method comprising: Receiving data island data associated with one or more video blanking intervals, the data island data comprising audio data and / or additional data; Receiving blanking interval data describing gap states of the one or more video blanking intervals; Compressing the blanking interval data to compressed blanking interval data to provide increased bandwidth (BW) for video data transmission, but not compressing the data island data; and Transmitting the data island data and the compressed blanking interval data via one or more multimedia channels of the multimedia communication link. [17] The method of claim 16, wherein compressing the blanking interval data comprises: Compressing the blanking interval data by applying a run-length encoding to the blanking interval data to generate the compressed blanking interval data. [18] The method of claim 17, wherein compressing the blanking interval data comprises, for at least one of the video blanking intervals: Dividing the blanking interval data into different parts separated by the data island data; and separately compressing each of the different parts of the blanking interval data using run-length encoding. [19] A method for communicating by means of a multimedia communication link, the method comprising: Receiving, by means of one or more multimedia channels of the multimedia communication link, data island data and compressed blanking interval data to provide increased bandwidth (BW) for the video data transmission, wherein the data island data and the compressed blanking interval data are associated with one or more video blanking intervals; and Decompressing the compressed blanking interval data but not the data island data, wherein the compressed blanking interval data is compressed into blanking interval data corresponding to gap states of the one or more video blanking intervals. [20] The method of claim 19, wherein decompressing the compressed blanking interval data comprises: Applying run-length decoding to the compressed blanking interval data to generate the blanking interval data. [21] The method of claim 20, wherein for at least one of the video blanking intervals, the compressed blanking interval data comprises different parts separated by the data island data, the method further comprising separately decompressing the different parts to the blanking interval data using the run-length decoding.
Citation Information
Patent Citations
Transmission and reception of an audio signal using the video blanking period
EP1241884A2
Transmission apparatus, reception apparatus, communication system, transmission method, reception method and programs therefor
US20100309382A1
Image transmission device, image transmission method, image reception device, and image reception method
WO2013076777A1
Methods and apparatus for error rate estimation
WO2013112926A2