KR20160132070A - 멀티미디어 링크를 통한 압축된 비디오 전송 - Google Patents

멀티미디어 링크를 통한 압축된 비디오 전송 Download PDF

Info

Publication number
KR20160132070A
KR20160132070A KR1020167027951A KR20167027951A KR20160132070A KR 20160132070 A KR20160132070 A KR 20160132070A KR 1020167027951 A KR1020167027951 A KR 1020167027951A KR 20167027951 A KR20167027951 A KR 20167027951A KR 20160132070 A KR20160132070 A KR 20160132070A
Authority
KR
South Korea
Prior art keywords
video data
compressed
data
video
compression
Prior art date
Application number
KR1020167027951A
Other languages
English (en)
Other versions
KR102232017B1 (ko
Inventor
훈 최
주 환 이
Original Assignee
래티스세미컨덕터코퍼레이션
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 래티스세미컨덕터코퍼레이션 filed Critical 래티스세미컨덕터코퍼레이션
Publication of KR20160132070A publication Critical patent/KR20160132070A/ko
Application granted granted Critical
Publication of KR102232017B1 publication Critical patent/KR102232017B1/ko

Links

Images

Classifications

    • H04L65/607
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/4084
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234363Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
    • H04N21/43632Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network involving a wired protocol, e.g. IEEE 1394
    • H04N21/43635HDMI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440263Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the spatial resolution, e.g. for displaying on a connected PDA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/025Systems for the transmission of digital non-picture data, e.g. of text during the active part of a television frame
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • H04N7/083Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical and the horizontal blanking interval, e.g. MAC data signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • H04N7/084Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the horizontal blanking interval only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • H04N7/084Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the horizontal blanking interval only
    • H04N7/085Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the horizontal blanking interval only the inserted signal being digital
    • H04N7/0855Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the horizontal blanking interval only the inserted signal being digital the signal being time-compressed before its insertion and subsequently decompressed at reception
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • H04N7/087Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • H04N7/087Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only
    • H04N7/088Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only the inserted signal being digital
    • H04N7/0881Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division with signal insertion during the vertical blanking interval only the inserted signal being digital the signal being time-compressed before its insertion and subsequently decompressed at reception
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length coding

Abstract

멀티미디어 통신 링크를 통해 통신하기 위한 송신 디바이스는, 비디오 데이터를 수신하고, 비디오 데이터를 압축된 비디오 데이터로 압축하기 위한 링크 계층 회로부를 포함한다. 송신 디바이스는 또한, 비디오 데이터의 압축을 설명하는 비디오 압축 제어 정보를 생성하기 위한 압축 정보 회로를 포함한다. 송신 디바이스는, 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 비디오 데이터에 대응하는 신호들을 송신하고, 멀티미디어 통신 링크를 통해 비디오 압축 제어 정보에 대응하는 신호들을 송신하는 인터페이스를 더 포함한다.

Description

멀티미디어 링크를 통한 압축된 비디오 전송{COMPRESSED VIDEO TRANSFER OVER A MULTIMEDIA LINK}
본 개시의 실시예들은 전반적으로 전자 디바이스들의 분야에 관한 것으로서, 더 구체적으로, 고-화질 멀티미디어 인터페이스(High-Definition Multimedia Interface; HDMI) 및 모바일 고-화질 링크(Mobile High-Definition Link; MHL)를 통한 압축된 비디오 컨텐츠 전송에 관한 것이다.
HDMI(예를 들어, HDMI1, 및 HDMI2) 및 MHL(예를 들어, MHL1, MHL2, 및 MHL3)은 소스 디바이스들로부터 싱크 디바이스들로 압축되지 않은 비디오(및 오디오) 컨텐츠를 전송하도록 설계되었다. 압축되지 않은 비디오는, 링크(예를 들어, HDMI 및 MHL)가 필요한 전(full) 대역폭(bandwidth; BW)을 지원할 수 있는 한 최상의 비디오 품질을 제공한다. 디스플레이 기술에 있어서의 최근의 진보들이 고 해상도 비디오들(예를 들어, 8k)에 대한 수요를 증가시켜 왔다. 그러나, 대역폭 제한들에 기인하여 이러한 고 해상도 비디오들을 통상적인 HDMI 및 MHL 링크들에 걸쳐 전송하는 것이 어렵다. 특히, HDMI 및 MHL은 압축된 비디오 컨텐츠 전송을 위해 설계되지 않았다. 따라서, HDMI 및 MHL 링크들을 통해 압축된 비디오 컨텐츠를 전송하기 위한 해법에 대한 필요성이 존재한다.
본 개시의 실시예들은 전반적으로 HDMI 및 MHL을 통한 압축된 비디오 전송에 관한 것이다. 일부 실시예들에 있어서, HDMI 및 MHL을 통한 압축된 비디오 전송을 위한 송신 디바이스, 수신 디바이스, 또는 송신 디바이스 또는 수신 디바이스의 표현(representation)을 저장하는 비-일시적인 컴퓨터 판독가능 매체가 개시된다. 송신 디바이스는, 비디오 데이터를 수신하고 비디오 데이터를 압축된 비디오 데이터로 압축하기 위한 링크 계층 회로부(circuitry); 비디오 데이터의 압축을 설명하는 비디오 압축 제어 정보를 생성하기 위한 압축 정보 회로; 및 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 비디오 데이터에 대응하는 신호들을 송신하고, 멀티미디어 통신 링크를 통해 비디오 압축 제어 정보에 대응하는 신호들을 송신하기 위한 인터페이스를 포함한다.
일 실시예에 있어서, 비디오 압축 제어 정보는 비디오 데이터의 압축 동안 사용된 압축 파라미터들을 포함한다. 일 실시예에 있어서, 비디오 압축 제어 정보는 압축된 비디오 데이터의 비디오 송신 기간에 선행하는 리딩(leading) 보호 대역 또는 프리앰블(preamble)로서 송신된다. 일 실시예에 있어서, 비디오 압축 제어 정보는 블랭킹(blanking) 기간 동안 데이터 아일랜드(data island) 내에서 송신된다. 일 실시예에 있어서, 비디오 압축 제어 정보는 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 송신된다. 일 실시예에 있어서, 비디오 압축 제어 정보는 멀티미디어 통신 링크의 제어 채널을 통해 송신된다.
일 실시예에 있어서, 활성(active) 비디오 데이터는 복수의 컬러 컴포넌트들을 포함하며, 링크 계층 회로부는 컬러 컴포넌트들의 라인들을 동일한 길이를 갖는 컬러 컴포넌트들의 압축된 라인들로 압축하도록 구성된다. 일 실시예에 있어서, 활성 비디오 데이터는 복수의 컬러 컴포넌트들을 포함하며, 링크 계층 회로부는 컬러 컴포넌트들의 라인들을 컬러 컴포넌트들의 압축된 라인들로 압축하고, 압축된 라인들이 동일한 길이를 가질 때까지 컬러 컴포넌트들의 압축된 라인들 상에 하나 이상의 패딩(padding) 비트들을 패딩하도록 구성된다. 일 실시예에 있어서, 활성 비디오 데이터는 복수의 컬러 컴포넌트들을 포함하며, 링크 계층 회로부는 컬러 컴포넌트들의 라인들을 컬러 컴포넌트들의 압축된 라인들로 압축하고, 컬러 컴포넌트들의 압축된 라인들을 직렬적인 순서(serial order)로 암호화된 비디오 데이터로 암호화하도록 구성되며, 인터페이스에 의해 송신되는 압축된 비디오 데이터에 대응하는 신호들은 암호화된 비디오 데이터에 대응하는 신호들이다.
본 개시의 다른 실시예들은 멀티미디어 통신 링크를 통해 통신하기 위한 수신 디바이스이다. 수신 디바이스는, 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 비디오 데이터에 대응하는 신호들을 수신하고, 멀티미디어 통신 링크를 통해 비디오 압축 제어 정보에 대응하는 신호들을 수신하기 위한 인터페이스로서, 상기 비디오 압축 제어 정보는 압축된 비디오 데이터의 압축을 설명하는, 상기 인터페이스; 및 압축된 비디오 데이터의 압축을 설명하는 비디오 압축 제어 정보에 기초하여 압축된 비디오 데이터를 비디오 데이터로 압축 해제하기 위한 링크 계층 회로부를 포함한다.
일 실시예에 있어서, 비디오 압축 제어 정보는 비디오 데이터의 압축 동안 사용된 압축 파라미터들을 포함한다. 일 실시예에 있어서, 비디오 압축 제어 정보는 압축된 비디오 데이터의 비디오 송신 기간에 선행하는 리딩 보호 대역 또는 프리앰블로서 수신된다. 일 실시예에 있어서, 비디오 압축 제어 정보는 블랭킹 기간 동안 데이터 아일랜드 내에서 수신된다. 일 실시예에 있어서, 비디오 압축 제어 정보는 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 수신된다. 일 실시예에 있어서, 비디오 압축 제어 정보는 멀티미디어 통신 링크의 제어 채널을 통해 수신된다.
일 실시예에 있어서, 압축된 비디오 데이터는 동일한 길이를 갖는 컬러 컴포넌트들의 압축된 라인들을 포함한다. 일 실시예에 있어서, 압축된 비디오 데이터는 패딩 비트들을 갖는 컬러 컴포넌트들의 압축된 라인들을 포함하며, 링크 계층 회로부는 압축된 비디오 데이터를 압축 해제할 때 패딩 비트들을 제거한다. 일 실시예에 있어서, 압축된 비디오 데이터에 대응하는 신호들은 암호화된 비디오 데이터에 대응하는 신호들이며, 링크 계층 회로부는 암호화된 비디오 데이터를 복호화된 비디오 데이터로 복호화하고, 복호화된 비디오 데이터를 상이한 컬러 컴포넌트들에 대한 라인들로 분리한다.
본 개시의 다른 실시예에 따르면, 송신 디바이스의 표현을 저장하는 비-일시적인 컴퓨터 판독가능 매체가 제공된다. 송신 디바이스는, 활성 비디오 데이터를 수신하고 활성 비디오 데이터를 압축된 비디오 데이터로 압축하기 위한 링크 계층 회로부; 활성 비디오 데이터의 압축을 설명하는 비디오 압축 제어 정보를 생성하기 위한 압축 정보 회로; 및 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 비디오 데이터에 대응하는 신호들을 송신하고, 멀티미디어 통신 링크를 통해 비디오 압축 제어 정보에 대응하는 신호들을 송신하기 위한 인터페이스를 포함한다.
본 개시의 또 다른 실시예에 따르면, 수신 디바이스의 표현을 저장하는 비-일시적인 컴퓨터 판독가능 매체가 제공된다. 수신 디바이스는, 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 비디오 데이터에 대응하는 신호들을 수신하고, 멀티미디어 통신 링크를 통해 비디오 압축 제어 정보에 대응하는 신호들을 수신하기 위한 인터페이스로서, 상기 비디오 압축 제어 정보는 압축된 비디오 데이터의 압축을 설명하는, 상기 인터페이스; 및 압축된 비디오 데이터의 압축을 설명하는 비디오 압축 제어 정보에 기초하여 압축된 비디오 데이터를 비디오 데이터로 압축 해제하기 위한 링크 계층 회로부를 포함한다.
본 개시의 추가적인 실시예들에 따르면, 멀티미디어 통신 링크를 통해 통신하기 위한 송신 디바이스가 제공된다. 송신 디바이스는, 비디오 블랭킹 기간들의 블랭킹 상태들에 대응하는 블랭킹 기간 데이터를 수신하기 위한 압축 회로부로서, 상기 압축 회로부는 블랭킹 기간 데이터를 압축된 블랭킹 기간 데이터로 압축하는, 상기 압축 회로부; 및 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 블랭킹 기간 데이터에 대응하는 신호들을 송신하기 위한 인터페이스를 포함한다.
일 실시예에 있어서, 압축 회로부는 압축된 블랭킹 기간 데이터의 압축을 설명하는 블랭킹 압축 정보를 생성하며, 인터페이스는 멀티미디어 통신 링크를 통해 블랭킹 압축 정보를 송신한다. 일 실시예에 있어서, 압축된 블랭킹 기간 데이터는 블랭킹 기간 데이터 내의 상태 변화들을 나타내는 블랭킹 이벤트들을 포함한다. 일 실시예에 있어서, 압축 회로부는, 압축된 블랭킹 데이터를 생성하기 위하여 런 길이 코딩을 블랭킹 기간 데이터에 적용함으로써 블랭킹 기간 데이터를 압축한다.
일 실시예에 있어서, 적어도 하나의 비디오 블랭킹 기간에 대하여, 압축 회로부는, 블랭킹 기간 데이터를 데이터 아일랜드들에 의해 분리된 상이한 부분들로 분할하고, 상이한 부분들의 각각을 개별적으로 압축함으로써 비디오 블랭킹 기간에 대한 블랭킹 기간 데이터를 압축한다. 일 실시예에 있어서, 데이터 아일랜드들을 포함하는 적어도 하나의 비디오 블랭킹 기간에 대하여, 압축 회로부는, 블랭킹 기간 데이터를 블랭킹 기간 데이터의 상태들을 설명하는 타이밍 정보의 단일 세트로 압축함으로써 비디오 블랭킹 기간에 대한 블랭킹 기간 데이터를 압축한다. 일 실시예에 있어서, 송신 디바이스는 추가적인 비디오 블랭킹 기간들을 압축된 비디오 데이터로 대체하며, 인터페이스는 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 비디오 데이터에 대응하는 신호들을 송신한다.
본 개시의 다른 추가적인 실시예들에 따르면, 멀티미디어 통신 링크를 통해 통신하기 위한 수신 디바이스가 제공된다. 수신 디바이스는, 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 블랭킹 기간 데이터에 대응하는 신호들을 수신하기 위한 인터페이스; 및 압축된 블랭킹 기간 데이터를 비디오 블랭킹 기간들의 상태들에 대응하는 블랭킹 기간 데이터로 압축 해제하기 위한 압축 해제 회로부를 포함한다.
일 실시예에 있어서, 인터페이스는 또한 멀티미디어 통신 링크를 통해 압축된 블랭킹 기간 데이터의 압축을 설명하는 블랭킹 압축 정보를 수신하며, 여기에서 압축 해제 회로부는 블랭킹 압축 정보에 기초하여 압축된 블랭킹 기간 데이터를 압축 해제한다. 일 실시예에 있어서, 압축된 블랭킹 기간 데이터는 블랭킹 데이터 내의 상태 변화들을 나타내는 블랭킹 이벤트들을 포함한다. 일 실시예에 있어서, 압축된 블랭킹 기간 데이터는, 블랭킹 기간 데이터를 생성하기 위하여 런 길이 디코딩을 압축된 블랭킹 기간 데이터에 적용함으로써 압축 해제된다.
일 실시예에 있어서, 적어도 하나의 비디오 블랭킹 기간에 대하여, 비디오 블랭킹 기간에 대한 압축된 블랭킹 기간 데이터는 데이터 아일랜드들에 의해 분리된 상이한 부분들을 포함하며, 압축 해제 회로는 부분들을 블랭킹 기간 데이터로 압축 해제한다. 일 실시예에 있어서, 데이터 아일랜드들을 포함하는 적어도 하나의 비디오 블랭킹 기간에 대하여, 비디오 블랭킹 기간에 대한 압축된 블랭킹 기간 데이터는 블랭킹 기간 데이터의 상태들에 대응하는 타이밍 정보의 단일 세트를 포함하며, 압축 해제 회로는 타이밍 정보의 단일 세트를 블랭킹 기간 데이터로 압축 해제한다.
본 개시의 다른 실시예에 따르면, 송신 디바이스의 표현을 저장하는 비-일시적인 컴퓨터 판독가능 매체가 제공된다. 송신 디바이스는, 비디오 블랭킹 기간들의 블랭킹 상태들에 대응하는 블랭킹 기간 데이터를 수신하기 위한 압축 회로부로서, 상기 압축 회로부는 블랭킹 기간 데이터를 압축된 블랭킹 기간 데이터로 압축하는, 상기 압축 회로부; 및 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 블랭킹 기간 데이터에 대응하는 신호들을 송신하기 위한 인터페이스를 포함한다.
일 실시예에 있어서, 압축 회로부는 압축된 블랭킹 기간 데이터의 압축을 설명하는 블랭킹 압축 정보를 생성하며, 인터페이스는 멀티미디어 통신 링크를 통해 블랭킹 압축 정보를 송신한다. 일 실시예에 있어서, 압축된 블랭킹 기간 데이터는 블랭킹 기간 데이터 내의 상태 변화들을 나타내는 블랭킹 이벤트들을 포함한다. 일 실시예에 있어서, 압축 회로부는, 압축된 블랭킹 데이터를 생성하기 위하여 런 길이 코딩을 블랭킹 기간 데이터에 적용함으로써 블랭킹 기간 데이터를 압축한다.
일 실시예에 있어서, 적어도 하나의 비디오 블랭킹 기간에 대하여, 압축 회로부는, 블랭킹 기간 데이터를 데이터 아일랜드들에 의해 분리된 상이한 부분들로 분할하고, 상이한 부분들의 각각을 개별적으로 압축함으로써 비디오 블랭킹 기간에 대한 블랭킹 기간 데이터를 압축한다. 일 실시예에 있어서, 데이터 아일랜드들을 포함하는 적어도 하나의 비디오 블랭킹 기간에 대하여, 압축 회로부는, 블랭킹 기간 데이터를 블랭킹 기간 데이터의 상태들을 설명하는 타이밍 정보의 단일 세트로 압축함으로써 비디오 블랭킹 기간에 대한 블랭킹 기간 데이터를 압축한다.
본 개시의 또 다른 실시예에 따르면, 수신 디바이스의 표현을 저장하는 비-일시적인 컴퓨터 판독가능 매체가 제공된다. 수신 디바이스는, 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 블랭킹 기간 데이터에 대응하는 신호들을 수신하기 위한 인터페이스; 및 압축된 블랭킹 기간 데이터를 비디오 블랭킹 기간들의 상태들에 대응하는 블랭킹 기간 데이터로 압축 해제하기 위한 압축 해제 회로부를 포함한다.
일 실시예에 있어서, 인터페이스는 또한 멀티미디어 통신 링크를 통해 압축된 블랭킹 기간 데이터의 압축을 설명하는 블랭킹 압축 정보를 수신하며, 여기에서 압축 해제 회로부는 블랭킹 압축 정보에 기초하여 압축된 블랭킹 기간 데이터를 압축 해제한다.
본 개시의 실시예들은 HDMI 또는 MHL과 같은 링크를 통해 압축된 비디오 데이터를 전송하는 방법을 설명한다. 이는, MHL3 및 HDMI2가 현재의 물리 계층(physical layer; PHY)들을 가지고 (8K와 같은) 더 높은 해상도의 컨텐츠들을 전달하는 것을 가능하게 할 것이며, 동일한 해상도에 대하여 더 낮은 전력 소모를 가능하게 할 것이다.
본원에 개시된 실시예들의 교시들은 첨부된 도면들과 함께 다음의 상세한 설명을 고려함으로써 용이하게 이해될 수 있다.
도 1은 일 실시예에 따른 데이터 통신을 위한 시스템의 고-레벨 블록도이다.
도 2는 일 실시예에 따른 도 1로부터의 소스 디바이스 또는 싱크 디바이스로서 사용하기에 적절한 컴퓨팅 디바이스의 상세도이다.
도 3은 일 실시예에 따른 HDMI 또는 MHL을 통해 압축된 데이터를 전송하기 위한 데이터 경로를 예시하는 순서도이다.
도 4a는 일 실시예에 따른 HDMI를 통해 압축된 데이터를 전송하기 위한 송신기를 예시하는 회로도이다.
도 4b는 일 실시예에 따른 HDMI를 통해 송신되어 수신된 압축된 데이터를 압축 해제하기 위한 수신기를 예시하는 회로도이다.
도 5는 일 실시예에 따른 압축된 비디오 데이터를 처리하기 위한 제 1 방식을 예시하는 도면이다.
도 6은 일 실시예에 따른 압축된 비디오 데이터를 처리하기 위한 제 2 방식을 예시하는 도면이다.
도 7은 일 실시예에 따른 압축된 비디오 데이터를 처리하기 위한 제 3 방식을 예시하는 도면이다.
도 8은 일 실시예에 따른 압축된 비디오 데이터를 처리하기 위한 제 4 방식을 예시하는 도면이다.
도 9는 일 실시예에 따른 블랭킹 이벤트들로의 블랭킹 기간들의 압축을 예시한다.
도 9d는 일 실시예에 따른 블랭킹 이벤트들 사이의 타이밍의 압축을 예시한다.
도 9a 내지 도 9c는 일 실시예에 따른 블랭킹 기간 압축에 대한 3개의 예들을 예시하는 도면들이다.
도 10은 일 실시예에 따른 블랭킹 기간 압축의 이점을 예시하는 도면이다.
도 11은 일 실시예에 따른 4K 비디오 해법에 대해 요구되는 대역폭에 대한 블랭킹 기간 압축의 영향을 예시하는 도면이다.
도 12는 일 실시예에 따른 압축된 데이터를 갖는 HDMI 스트림을 예시하는 도면이다.
도 13은 일 실시예에 따른 MHL3 스트림 패킷의 패킷 헤더 바이트들을 예시하는 차트이다.
도면들 및 다음의 설명은 오로지 예시적으로 다양한 실시예들과 관련된다. 다음의 논의로부터, 본원에 개시되는 구조들 및 방법들의 대안적인 실시예들이 본원에서 논의되는 원리들로부터 벗어나지 않고 이용될 수 있는 실행 가능한 대안들로서 용이하게 인식될 것이라는 것을 주의해야만 한다. 이제 몇몇 실시예들에 대해 상세한 참조가 이루어질 것이며, 이들의 예들은 첨부된 도면들에 예시된다. 어디에서든지 동일하거나 또는 유사한 실용적인 참조 번호들이 도면들에서 사용될 수 있으며, 동일하거나 또는 유사한 기능성을 표시할 수 있다는 것을 주의해야 한다.
본 개시의 실시예들은 멀티미디어 통신 링크에 걸쳐서 비디오 데이터 및 블랭킹 데이터를 전송하기 위하여 압축을 사용하며, 이는 몇몇 이점들을 갖는다. 첫째로, 동일한 링크 기술(예를 들어, 동일한 BW)을 가지고, 더 높은 해상도가 지원될 수 있으며, 예를 들어, 4K 해상도가 4배 압축으로 현재의 1080p 링크에 대하여 가능하다. 둘째로, 동일한 해상도에 대하여, 압축은 더 적은 전력 소모를 가능하게 만든다. 셋째로, 동일한 해상도에 대하여, 압축되지 않은 데이터보다 압축된 데이터를 전송하기 위하여 더 적은 물리적인 핀들 또는 와이어들이 요구된다. 특히, 제 1 이점은 가전(Customer Electronic; CE) 제품들에 특히 이익이 되며, 반면 제 2 및 제 3 이점들은 모바일 디바이스들에 대해 중요하다. 다음의 설명 및 도면들은 압축된 비디오 데이터 및 블랭킹 데이터가 멀티미디어 통신 링크를 통해 전송될 수 있는 방법을 보여준다.
도 1은 일 실시예에 따른 데이터 통신을 위한 시스템(100)의 고-레벨 블록도이다. 시스템(100)은 하나 이상의 인터페이스 케이블들(120, 150, 180)을 통해 싱크 디바이스(115)와 통신하는 소스 디바이스(110)를 포함한다. 소스 디바이스(110)는 인터페이스 케이블들(120, 150, 180)을 통해 멀티미디어 데이터 스트림들(예를 들어, 오디오/비디오 스트림들)을 싱크 디바이스(115)로 송신하고, 또한 싱크 디바이스(115)와 제어 데이터를 교환한다. 일 실시예에 있어서, 소스 디바이스(110) 및/또는 싱크 디바이스(115)는 리피터(repeater) 디바이스들일 수 있다.
소스 디바이스(110)는 인터페이스 케이블들(120, 150, 180)에 결합된 물리적인 통신 포트들(112, 142, 172)을 포함한다. 싱크 디바이스(115)가 또한 인터페이스 케이블들(120, 150, 180)에 결합된 물리적인 통신 포트들(117, 147, 177)을 포함한다. 인터페이스 케이블들을 통해 소스 디바이스(110)와 싱크 디바이스(115) 사이에서 교환되는 신호들은 물리적인 통신 포트들을 통해 전달된다.
소스 디바이스(110) 및 싱크 디바이스(115)는 다양한 프로토콜들을 사용하여 데이터를 교환한다. 일 실시예에 있어서, 인터페이스 케이블(120)은 고 화질 멀티미디어 인터페이스(High Definition Multimedia Interface; HDMI) 케이블을 나타낸다. HDMI 케이블(120)은 데이터0+ 라인(121), 데이터0- 라인(122), 데이터1+ 라인(123), 데이터1- 라인(124), 데이터2+ 라인(125), 및 데이터2- 라인(126)을 통해 송신되는 차동 신호들을 지원한다. 차동 데이터 라인들의 각각의 쌍이 단일 멀티미디어 통신 채널을 나타낸다. HDMI 케이블(120)은, 차동 클럭 라인 클럭+(127) 및 클럭-(128); 가전 제품 제어(Consumer Electronics Control; CEC) 제어 버스(129); 디스플레이 데이터 채널(Display Data Channel; DDC) 버스(130); 파워(131), 접지(132); 핫 플러그 검출(hot plug detect)(133); 및 차동 신호들에 대한 4개의 차폐 라인들(844)을 더 포함할 수 있다. 일부 실시예들에 있어서, 싱크 디바이스(115)는 소스 디바이스(110)로의 폐루프 피드백 제어 데이터의 송신을 위하여 CEC 제어 버스(129)를 사용할 수 있다.
일 실시예에 있어서, 인터페이스 케이블(150)은 모바일 고-화질 링크(Mobile High-Definition Link; MHL) 케이블을 나타낸다. MHL 케이블(150)은 데이터0+ 라인(151) 및 데이터0- 라인(152)을 통해 송신되는 차동 신호들을 지원한다. MHL의 예시된 실시예에 있어서, 오로지 차동 데이터 라인들(예를 들어, 151 및 152)의 단일 쌍만이 존재한다. 내장된 공통 모드 클럭들이 차동 데이터 라인들을 통해 송신된다. MHL 케이블(150)은 제어 버스(control bus; CBUS)(159), 파워(160) 및 접지(161)를 더 포함할 수 있다. CBUS(159)는 탐지(discovery) 데이터, 구성 데이터 및 원격 제어 명령들과 같은 제어 명령을 전달한다.
본 개시의 실시예들은 HDMI 또는 MHL과 같은 멀티미디어 통신 링크의 멀티미디어 채널들을 통한 압축된 비디오 데이터 및 압축된 비디오 블랭킹 기간 데이터의 전송에 관한 것이다. 이는, MHL3 및 HDMI2가 현재의 PHY들을 가지고 (8K와 같은) 더 높은 해상도의 컨텐츠를 전달하는 것을 가능하게 할 것이며, 동일한 해상도에 대하여 더 낮은 전력 소모를 가능하게 할 것이다.
일 실시예에 있어서, 소스 디바이스(110), 싱크 디바이스(115), 또는 소스 디바이스(110) 또는 싱크 디바이스(115) 내의 컴포넌트들의 표현이 비-일시적인 컴퓨터-판독가능 매체(예를 들어, 하드 디스크 드라이브, 플래시 드라이브, 광 드라이브) 내에 데이터로서 저장될 수 있다. 이러한 표현들은 거동 레벨(behavioral level), 레지스터 전송 레벨, 로직 컴포넌트 레벨, 트랜지스터 레벨 및 레이아웃(layout) 기하구조-레벨 설명들일 수 있다.
도 2는 일 실시예에 따른 도 1로부터의 소스 디바이스(110) 또는 싱크 디바이스(115)로서 사용하기에 적절한 컴퓨팅 디바이스(200)의 상세도이다. 컴퓨팅 디바이스(200)는, 예를 들어, 셀 폰, 텔레비전, 랩탑, 태블릿 등일 수 있다. 컴퓨팅 디바이스(200)는, 프로세서(202), 메모리(203), 저장 모듈(204), 입력 모듈(예를 들어, 키보드, 마우스, 및 유사한 것)(206), 디스플레이 모듈(207)(예를 들어, 액정 디스플레이, 유기 발광 디스플레이, 및 유사한 것) 및 버스(201)를 통해 서로 데이터 및 제어 신호들을 교환하는 송신기 또는 수신기(205)를 포함한다.
저장 모듈(204)은 하나 이상의 비-일시적인 컴퓨터 판독가능 저장 매체(예를 들어, 하드 디스크 드라이브, 고체 상태 메모리, 등)로서 구현되며, 메모리(203)와 함께 프로세서(202)에 의해 실행되는 소프트웨어 명령어들을 저장한다. 운영 시스템 소프트웨어 및 다른 애플리케이션 소프트웨어는 프로세서(202) 상에서 구동되기 위하여 저장 모듈(204) 내에 저장될 수 있다.
송신기 또는 수신기(205)는 멀티미디어 데이터 및 제어 데이터의 송신 또는 수신을 위하여 포트들에 결합된다. 수신되거나 또는 송신되는 멀티미디어 데이터는 HDMI 및 MHL 데이터와 같은 비디오 데이터 스트림들 또는 오디오-비디오 데이터 스트림들을 포함할 수 있다. 멀티미디어 데이터는 고-대역폭 디지털-컨텐츠 보호(High-Bandwidth Digital-Content Protection; HDCP)와 같은 암호화 기법을 사용하여 송신을 위해 암호화될 수 있다. 송신기 또는 수신기는 MHL/HDMI 링크들과 인터페이스하기 위한 인터페이스 회로들과 같은 다양한 회로들 및 비디오 데이터를 압축하고 압축 해제하기 위한 압축 엔진을 포함할 수 있다.
이제 도 3을 참조하면, 일 실시예에 따른 HDMI 또는 MHL을 통해 압축된 데이터를 전송하기 위한 데이터 경로를 예시하는 순서도가 예시된다. 도 3의 데이터 경로의 예시된 실시예는, 압축된 비디오 데이터를 처리하기 위한 데이터 흐름뿐만 아니라 압축된 블랭킹 기간 데이터를 처리하기 위한 데이터 흐름을 도시한다.
처음에, 비디오 압축을 위한 데이터 경로는 활성 비디오 데이터(302)를 가지고 시작한다. 활성 비디오 데이터(302)는 비디오를 나타내는 데이터 또는 데이터 스트림일 수 있다. 예를 들어, 활성 비디오 데이터(302)는 복수의 비디오 프레임들에 대한 비디오 데이터를 포함할 수 있다. 활성 비디오 데이터는 압축된 비디오 데이터(304)로 압축된다(303). 그런 다음, 압축된 비디오 데이터(304)는 암호화된 비디오 데이터(306)로 암호화된다(305).
블랭킹 기간 압축을 위한 데이터 경로는, 블랭킹 기간을 함께 구성하는 블랭킹 기간 데이터 및 데이터 아일랜드(data island; DI)들(312)을 가지고 시작한다. 블랭킹 기간은 수직 블랭킹 기간 및/또는 수평 블랭킹 기간을 포함할 수 있다. 수직 블랭킹 기간은 새로운 프레임을 나타내는 수직 동기화 펄스(sync pulse)를 포함하며, 수평 블랭킹 기간은 프레임 내의 새로운 라인을 나타내는 수평 동기화 펄스를 포함한다. 수직 블랭킹 기간 및 수평 블랭킹 기간 내의 상태들이 블랭킹 기간 데이터에 의해 표현된다. 일 실시예에 있어서, 데이터 아일랜드들은 수평 및/또는 수직 블랭킹 기간들 중에 발생할 수 있다. 데이터 아일랜드 동안, 오디오 및/또는 보조 데이터가 일련의 패킷들 내에서 송신될 수 있다. 블랭킹 기간 데이터(312)가 압축되며(313), 이는 데이터 아일랜드들을 갖는 압축된 블랭킹 기간 데이터(314)를 야기한다. 데이터 아일랜드들은 암호화된 데이터 아일랜드들을 획득하기 위하여 HDCP를 사용하여 암호화된다(305). 그 결과는 암호화된 데이터 아일랜드들을 갖는 블랭킹 기간 데이터(316)이다.
이에 더하여, 도 3에 예시된 데이터 흐름에 따르면, 암호화된 비디오(306)는 패킷화된 비디오(308)를 생성하기 위하여 패킷화될 수 있다(307). 암호화된 DI들을 갖는 압축된 블랭킹 데이터(316)가 패킷화된 블랭킹 기간(318)을 생성하기 위하여 패킷화될 수 있다(307). (예를 들어, 307에 의해 표시되는) 패킷화 단계는 오로지 MHL3을 사용하는 실시예들에서만 포함될 수 있으며, 반면 HDMI 및 이전 버전의 MHL을 사용하는 실시예들은 패킷화 단계를 갖지 않을 수 있다.
이제 도 4a를 참조하면, 일 실시예에 따른 HDMI를 통해 압축된 데이터를 전송하기 위한 송신기(400)의 회로도가 예시된다. 예시된 송신기(400)는, 비디오 압축 회로(402), 비디오 HDCP 암호화 회로(404a), 데이터 아일랜드 HDCP 암호화 회로(404b), 변화-최소화 차분 시그널링(transition-minimized differential signaling; TMDS) 인코딩 회로(406), 블랭킹 압축 회로(408), 압축 정보 회로(압축 인포 회로)(410) 및 송신 인터페이스 회로(412)를 포함한다. 일 실시예에 있어서, 송신기(400)의 컴포넌트들 중 하나 이상이 HDMI 또는 MHL의 데이터 링크 계층의 부분일 수 있다. 따라서, 하나 이상의 컴포넌트들이 또한 "링크 계층 회로부"로서 지칭될 수도 있다. 당업자들은, 도 4a의 송신기(400)의 다른 실시예들이 여기에서 설명된 실시예들과는 상이한 및/또는 추가적인 회로들을 가질 수 있다는 것, 및 기능들이 상이한 방식으로 모듈들 사이에 분산될 수 있다는 것을 인식할 것이다.
비디오 압축 회로(402)는 활성 비디오 데이터(401)를 수신하고, 비디오 데이터(401)를 압축된 비디오 데이터(403)로 압축한다. 활성 비디오 데이터(401)는 별개의 R, G 및 B 비디오 데이터(401)를 포함할 수 있으며, 이는 압축된 R, G, B 비디오 데이터(403)로 압축된다. 일 실시예에 있어서, 비디오 압축 회로(402)는 비디오 데이터(401)의 압축을 구현하기 위하여 압축 정보 회로(410)에 의해 제어될 수 있다. 예를 들어, 비디오 압축 회로(402)는, 압축 정보 회로(410)로부터 비디오 데이터의 압축에 영향을 주는 압축 파라미터들을 설명하는 비디오 압축 제어 정보(411)를 수신한다. 압축 파라미터들의 예들은, 압축의 양을 정의하는 압축 레이트(rate) 및 사용될 특정 압축 알고리즘을 식별하는 압축 알고리즘을 포함한다. 비디오 압축 회로(402)는 비디오 압축 제어 정보(411)에 기초하여 비디오 데이터(401)를 압축한다.
비디오 HDCP 암호화 회로(404a)는 비디오 압축 회로(402)로부터 압축된 비디오 데이터(403)를 수신하고, 암호화된 비디오 데이터(405)를 생성하기 위하여 HDCP를 사용하여 압축된 비디오 데이터(403)를 암호화한다.
데이터 아일랜드 HDCP 암호화 회로(404b)는 블랭킹 기간의 하나 이상의 데이터 아일랜드들(421)에 대한 데이터를 수신하고, HDCP를 사용하여 데이터 아일랜드들(421)을 암호화한다. 데이터 아일랜드 HDCP 암호화 회로(404b)는 또한 압축 정보 회로(410)로부터 비디오 압축 제어 정보(411)를 수신하고, 비디오 압축 회로(402)에 의해 사용된 압축 파라미터들을 설명하는 정보 프레임들을 생성하기 위하여 수신된 비디오 압축 제어 정보(411)를 사용한다. 예를 들어, 데이터 아일랜드 HDCP 암호화 회로(404b)는 비디오 압축 제어 정보(411)에 기초하여 압축 파라미터들에 대한 데이터 아일랜드들(423)을 생성한다. 일 실시예에 있어서, 비디오 HDCP 암호화 회로(404a) 및 데이터 아일랜드 HDCP 암호화 회로(404b)는 비디오 데이터(401)뿐만 아니라 데이터 아일랜드들(421)의 암호화를 구현하는 동일한 회로일 수 있다.
TMDS 인코딩 회로(406)는 암호화된 비디오 데이터(405)를 수신하고, 암호화된 비디오 데이터(405)를 송신 인터페이스 회로(412) 및 멀티미디어 통신 링크를 통한 전송을 위한 TMDS 심볼들(407)로 인코딩한다. 예를 들어, TMDS 인코딩 회로(406)는 비디오 데이터(401)의 8b/10b 인코딩을 구현하며, 이는 8-비트 심볼들을 10-비트 심볼들에 매핑한다. 일 실시예에 있어서, TMDS 인코딩 회로(406)는 또한 블랭킹 압축 회로(408)에 의해 출력되는 압축 파라미터들에 대한 데이터 아일랜드들(423) 및 다른 압축된 블랭킹 기간들(427)을 수신하고, 이들을 10-비트 심볼들로 변환한다. 일부 실시예들에 있어서, TMDS 인코딩 회로(406)는 또한 비디오 압축 제어 정보(411)를 수신하고, 이러한 정보를 비디오 압축 정보(411)를 포함하는 프리앰블들 또는 리딩 보호 대역들을 생성하기 위해 사용한다.
블랭킹 압축 회로(408)는 블랭킹 기간 데이터(425)를 수신하고, 압축된 블랭킹 기간 데이터(427)를 생성하기 위하여 블랭킹 기간 데이터(425)를 압축한다. 블랭킹 기간 데이터(425)는 블랭킹 기간의 현재의 블랭킹 상태(예를 들어, 프런트 포치(front porch), 동기화 펄스, 백 포치(back porch))를 나타낸다. 블랭킹 기간 데이터(425)는, 수직 동기화(vertical sync; VS) 신호, 수평 동기화(horizontal sync; HS) 신호, 및 데이터 인에이블(data enable; DE) 신호와 같은 하나 이상의 신호들을 통해 전송된다. 블랭킹 기간은 또한 "동기화 기간"으로도 지칭될 수 있으며, 블랭킹 상태들은 또한 "동기화 상태들"로서도 지칭될 수 있다.
도 4a에 예시된 바와 같이, 압축된 블랭킹 기간 데이터(427)는, 압축된 블랭킹 기간 데이터(427)를 송신기(400)와 수신기(450) 사이의 멀티미디어 통신 링크를 통한 송신 인터페이스 회로(412)에 의한 송신을 위한 TMDS 심볼들로 인코딩하는 TMDS 인코딩 회로(406)로 출력된다. 일 실시예에 있어서, 블랭킹 압축 회로부(408)는 또한 압축된 블랭킹 기간 데이터(427)의 압축을 설명하는 블랭킹 압축 정보를 생성할 수 있다. 블랭킹 압축 정보는 인터페이스 회로(412) 및 멀티미디어 통신 링크를 통해 수신기로 송신될 수 있다.
송신 인터페이스 회로(412)는 TMDS 심볼들(407)을 각각의 멀티미디어 통신 채널에 대한 차동 신호들로 직렬화하고, 멀티미디어 통신 링크의 다양한 멀티미디어 통신 채널들을 통해 차동 신호들을 송신한다. 따라서, 송신 인터페이스 회로(412)는 송신기(400) 내의 다양한 유형들의 정보 중에서 압축된 비디오 데이터(403), 압축 제어 정보(411), 압축된 블랭킹 기간 데이터(427), 블랭킹 압축 정보, 및 데이터 아일랜드들을 나타내는 신호들을 송신한다.
일 실시예에 있어서, 송신 인터페이스 회로(412)는 또한 압축 정보 회로(410)로부터 (도 4a에서 점선 화살표로 도시된) 비디오 압축 제어 정보(411)를 수신하며, 비디오 압축 제어 정보(411)를 멀티미디어 통신 링크의 DDC 채널(430)을 통해 신호들로서 송신한다. 예를 들어, DDC 채널(430)은 TMDS 심볼들(407)을 송신하기 위해 사용되는 채널들 또는 멀티미디어 채널들과는 상이한 별개의 제어 채널이다.
MHL의 경우에 있어서, TMDS 심볼들(407)에 의해 표현되는 압축된 R, G, B 비디오 데이터는 단일 멀티미디어 채널에 걸쳐 직렬로 송신된다. 추가적으로, 비디오 압축 제어 정보(411)는 DDC 대신에 CBUS에 걸쳐서 송신될 수 있다.
도 4b는 일 실시예에 따른 HDMI를 통해 송신된 압축된 데이터를 압축 해제하기 위한 수신기(450)를 예시하는 회로도이다. 예시된 수신기(450)는, 수신 인터페이스 회로(452), 압축 제어 회로(454), TMDS 디코딩 회로(456), 비디오 HDCP 복호화 회로(458a), 데이터 아일랜드 HDCP 복호화 회로(458b), 비디오 압축 해제 회로(460), 및 블랭킹 압축 해제 회로(464)를 포함한다. 일 실시예에 있어서, 수신기(450)의 컴포넌트들 중 하나 이상이 HDMI 또는 MHL의 데이터 링크 계층 내에 저장될 수 있다. 따라서, 하나 이상의 컴포넌트들이 또한 "링크 계층 회로부"로서 지칭될 수도 있다. 당업자들은, 도 4b의 수신기(450)의 다른 실시예들이 여기에서 설명된 실시예들과는 상이한 및/또는 추가적인 회로들을 가질 수 있다는 것, 및 기능들이 상이한 방식으로 회로들 사이에 분산될 수 있다는 것을 인식할 것이다.
수신 인터페이스 회로(452)는 멀티미디어 통신 링크의 멀티미디어 채널들을 통해 송신기(400)로부터 인입(incoming) 신호들을 수신한다. 신호들은, 압축된 비디오 데이터, 압축된 블랭킹 기간 데이터(465), 활성 비디오 데이터(401)의 압축을 설명하는 비디오 압축 제어 정보(411), 및 압축된 블랭킹 기간 데이터(465)의 압축을 설명하는 블랭킹 압축 정보와 같은 정보를 전송하는데 사용된 TMDS 심볼들을 나타낸다. 수신 인터페이스 회로(452)는 신호들을 TMDS 심볼들로 역직렬화(deserialize)한다.
TMDS 디코딩 회로(456)는 TMDS 심볼들을 수신하고, TMDS 디코딩을 심볼들에 적용한다. TMDS 디코딩 회로(456)는, 디코딩된 비디오 데이터(457)를 비디오 HDCP 복호화 회로(458a)로 출력하고, 디코딩된 데이터 아일랜드들(459)을 데이터 아일랜드 HDCP 복호화 회로(458b)로 출력하며, 압축된 블랭킹 기간 데이터(465)를 블랭킹 압축 해제 회로(464)로 출력한다. 비디오 HDCP 복호화 회로(458a) 및 데이터 아일랜드 HDCP 복호화 회로(458b)는 각기 TMDS 디코딩 회로(456)로부터 수신된 데이터(예를 들어, 디코딩된 비디오 데이터(457), 디코딩된 DI(463))를 복호화한다. 비디오 HDCP 복호화 회로(458a)는 복호화된 비디오 데이터(461)를 비디오 압축 해제 회로(460)로 출력한다. 데이터 아일랜드 HDCP 복호화 회로(458b)는 복호화된 데이터 아일랜드들(463)을 압축 제어 회로(454)로 출력한다.
일 실시예에 있어서, 복호화된 데이터 아일랜드들(463)은 압축 제어 회로(454)에 제공되는 비디오 압축 제어 정보(411)를 포함할 수 있다. 다른 실시예에 있어서, 그 대신에 (점선 화살표로 도시된) 비디오 압축 제어 정보(411)가 DDC를 통해 수신된다. 또 다른 실시예에 있어서, (점선 화살표로 도시된) 비디오 압축 제어 정보(411)는 TMDS 디코딩 회로(456)에 의해 추출되는 비디오 데이터 기간의 리딩 보호 대역 내에 또는 제어 기간의 프리앰블 내에 존재한다. 압축 제어 회로(454)는 비디오 압축 해제 회로(460)가 복호화된 비디오 데이터(461)를 압축 해제하는 방법을 제어하기 위하여 압축 제어 정보(411) 내의 압축 파라미터들을 사용한다.
블랭킹 압축 해제 회로(464)는 블랭킹 기간 데이터(469)를 생성하기 위하여 TMDS 디코딩 회로(456)로부터 수신된 압축된 블랭킹 기간 데이터(465)를 압축 해제한다. 비디오 압축 해제 회로(460)는 압축 제어 회로(454)의 제어 하에서 복호화된 비디오 데이터(461)를 압축 해제하고, 비디오 데이터(471)를 출력한다.
MHL의 경우에 있어서, R, G, B 비디오 데이터는 단일 멀티미디어 채널에 걸쳐 직렬로 수신된다. 추가적으로, 비디오 압축 제어 정보(411)는 DDC 대신에 CBUS에 걸쳐서 송신될 수 있다.
비디오 전송을 가능하게 하기 위하여, 본 개시에 의해 해결되는 몇 가지의 문제들이 존재한다. 일부는 모든 링크들(HDMI 및 MHL)에 공통되며, 반면 일부는 각각의 링크에 대해 특유하다. 본 개시는 공통 부분들: 비디오 압축 및 블랭킹 압축부터 시작한다. 그런 다음 본 개시가 링크 특유 부분을 설명한다.
압축된 비디오 처리
압축된 비디오 처리는 압축된 데이터를 데이터 경로에 대하여 정렬시키는 방법에 관한 것(예를 들어, 도 3의 HDCP 단계)이며, 24b 데이터 청크(chunk)를 가정한다. 비디오 데이터를 압축하기 위하여 적어도 4개의 가능한 방식들이 존재한다. 일 실시예에 있어서, 도 5 및 도 6에 예시된 바와 같은 첫번째 2가지 방식들은 HDMI 및 MHL에 대해 선호되며, 반면 도 7 및 도 8에 예시된 마지막 2가지 방식들은 MHL3에 대해 선호된다.
도 5는 일 실시예에 따른 압축된 비디오 데이터를 처리하기 위한 제 1 방식을 예시하는 도면이다. 예를 들어, 원본 비디오(500)는 컬러 컴포넌트들 R(501), G(503), B(505) 및/또는 Y, Cb 및 Cr(미도시)과 같은 다른 컴포넌트들을 포함한다. 각각의 컴포넌트(501, 503, 505)는 비디오 데이터의 라인, 예컨대 라인 당 8 비트 x 1000 픽셀 = 8000 비트의 데이터를 포함한다.
도 4a에 예시된 402와 같은 비디오 압축 회로는 원본 비디오 데이터(500)를 압축할 수 있으며, 그에 따라서 압축된 비디오 컴포넌트들 R(511), G(513), B(515) 및/또는 Y, Cb 및 Cr(미도시)과 같은 다른 압축된 컴포넌트들의 라인들을 갖는 압축된 비디오(510)를 야기한다. 압축된 비디오 컴포넌트들 R(511), G(513), B(515)는 각기 동일한 압축된 라인 크기를 가지며, 바이트 경계(517)를 가지고 정렬될 수 있다. 예를 들어, 라인 내에 8000 비트를 갖는 비디오 컴포넌트 R(501)은 2:1 압축을 사용하여 라인 내에 4000 비트를 갖는 압축된 비디오 컴포넌트 R(511)로 압축될 수 있다. 4000 비트 라인이 8 비트의 정확한 배수이며, 이는 라인이 바이트 경계를 가지고 정렬된다는 것을 의미한다.
이러한 경우에 있어서, 도 4a에 예시된 404a와 같은 비디오 HDCP 암호화 회로는 데이터(510)가 압축된 데이터라는 것을 알고 있지 않은 상태에서 압축된 비디오 데이터(510)에 대한 HDCP 암호화를 24b 청크 레벨로 수행할 수 있다. 다시 말해서, HDCP 암호화는 R의 8 비트, G의 8 비트, 및 B의 8 비트를 포함하는 압축된 데이터의 24b 청크들에 대하여 수행될 수 있다. 이는, HDCP 로직을 재설계하지 않고 통상적인 HDCP 회로들이 압축과 함께 재-사용되는 것을 가능하게 한다.
다른 실시예에 있어서, 도 4a에 예시된 402와 같은 비디오 압축 회로는, RGB 컴포넌트들을 포함하는 원본 비디오(500)를 개별적으로 압축할 수 있으며, 이는 각각의 컴포넌트 R, G, B에 대하여 상이한 라인 크기들을 야기한다. 예를 들어, 압축된 비디오는 상이한 라인 길이들을 갖는 압축된 R, G, 및 B 컴포넌트들을 가질 수 있다. 이러한 경우에 있어서, 이제 도 6, 도 7 및 도 8을 참조하여 설명되는 바와 같은, 압축된 비디오 데이터를 처리하기 위한 3개의 상이한 접근방식들이 존재할 수 있다.
도 6은 다른 실시예에 따른 압축된 비디오 데이터를 처리하기 위한 방식을 예시하는 도면이다. 도 6에 예시된 실시예에 있어서, 도 4a의 비디오 HDCP 암호화 회로(404a)와 같은 HDCP 암호화 회로는, 각기 (패딩된 0(zero) 비트들을 갖는) 컴포넌트들(611, 613, 615)을 포함하는 패딩을 갖는 압축된 비디오(610)를 획득하기 위하여 압축된 비디오의 하나 이상의 컴포넌트들(예를 들어, R, G) 상에 0들(617a, 617b)을 패딩한다. 패딩은, 각각의 컴포넌트 라인이 동일한 라인 크기를 가지며 바이트 정렬되는 것을 보장한다. 이러한 방식으로, 도 4a에 예시된 404a와 같은 HDCP 암호화 회로가 패딩을 갖는 압축된 비디오(610)에 대하여 24b 청크 레벨로 HDCP 암호화를 수행할 수 있다. 그러나, 이러한 접근방식은 0들을 비디오 데이터의 컴포넌트들에 패딩함으로써 대역폭의 일 부분의 낭비를 야기할 수 있다.
수신 말단(receiving end) 상에서, 비디오 압축 해제 회로(460)는 복호화된 비디오 데이터를 압축 해제할 때 패딩 비트들(617a, 617b)을 제거한다. 그런 다음, 압축된 컴포넌트들 R, G 및 B의 라인들이 원본 비디오(500)로 압축 해제될 수 있다.
도 7은 추가적인 실시예에 따른 압축된 비디오 데이터를 처리하기 위한 방식을 예시하는 도면이다. 이러한 예시된 실시예는 압축된 R, G 및 B 컴포넌트들의 라인들을 로우(row)(720)로 놓는다. 그런 다음, 압축된 R, G 및 B 컴포넌트들의 라인들이 한번에 하나의 24b 청크씩 직렬적으로 암호화되도록, HDCP 암호화가 로우(720)에 적용된다. 이러한 경우에 있어서, 경계 마커(maker)(710a, 710b, 710c)가 컴포넌트들 사이에 삽입되며, 이는 2개의 인접한 컴포넌트들 사이의 경계를 나타낸다.
이러한 실시예는 전형적으로, 컬러 컴포넌트들 R, G 및 B가 줄곧 패킷들을 사용하여 단일 통신 채널에 걸쳐서 직렬적으로 송신되는 MHL에서 사용된다. 추가적으로, MHL 환경에서, 암호화된 비디오 데이터는 단일 MHL 통신 채널에 걸쳐 송신되기 이전에 패킷화될 것이다. 복수의 통신 채널들을 가질 수 있는 MHL의 다른 실시예들에 있어서, 결과적인 패킷들은 복수의 통신 채널들에 걸쳐 분산될 수 있다.
수신 말단 상에서, 복호화 회로(458a)는 압축된 비디오의 로우(702)를 생성하기 위하여 디코딩된 비디오 데이터를 복호화할 수 있다. 그런 다음, 압축된 비디오의 로우(720)는, 경계 마커들(710a, 710b, 710c)을 식별하고 경계 마커들(710a, 710b, 710c)을 따라 컬러 컴포넌트들 R, G, B를 분리함으로써 컬러 컴포넌트들 R, G, B의 상이한 압축된 라인들로 분리된다. 그런 다음, 컬러 컴포넌트들 R, G, B의 개별적인 압축된 라인들이 비디오 압축 해제 회로(460)에 의해 압축 해제된다.
도 8은 또 다른 실시예에 따른 압축된 비디오 데이터를 처리하기 위한 방식을 예시하는 도면이다. 예시된 실시예에 있어서, 압축된 비디오(710)는 상이한 라인 크기들을 갖는 압축된 컴포넌트들 R(811), G(813), B(815)를 갖는다. HDCP 암호화는 압축된 비디오(710) 상에서 24b 청크 레벨로 수행된다. 암호화될 어떠한 데이터도 갖지 않는 압축된 컴포넌트들의 부분, 예를 들어, R(811), G(813)에 대하여, HDCP 암호화 회로(404a)에 의해 생성된 HDCP 암호(cipher) 값의 대응하는 비트들이 바로 폐기된다. 그 결과는 상이한 라인 크기들을 갖는 3개의 암호화된 비디오 컴포넌트들 R(821), G(823), B(825)를 가진 암호화된 비디오(810)이다. 각각의 컴포넌트는 패킷화되고 단일 MHL 통신 채널에 걸쳐서 차례로 전송될 수 있다. 복수의 통신 채널들을 가질 수 있는 MHL의 다른 실시예들에 있어서, 결과적인 패킷들은 복수의 통신 채널들에 걸쳐 분산될 수 있다.
블랭킹 기간 압축
비디오 압축 엔진은 오로지 데이터의 활성 비디오 부분만을 처리한다. 그러나, 멀티미디어 링크(예를 들어, HDMI 또는 MHL)에 걸쳐서 전송되는 데이터의 전체 압축 비율이 또한 블랭킹 기간에 의해 영향을 받는다. 예를 들어, 블랭킹 기간이 대역폭의 20%를 사용하는 경우, 비디오 데이터의 2:1 압축은 0.2 + 0.8x0.5 = 0.6, 즉, 40% 압축 레이트를 야기하며, 이는 2:1 압축 레이트보다 더 작다. 블랭킹 기간을 압축함으로써 이러한 문제를 완화시키기 위한 몇몇 방식들이 존재한다.
블랭킹 기간을 압축하는 제 1 방식은, (1) 블랭킹 기간 데이터를 블랭킹 기간 내의 상태 변화들을 나타내는 블랭킹 이벤트들로 대체하고, (2) 블랭킹 이벤트들 사이의 시간을 감소시키는 것이다. 이상에서 정의된 바와 같이, 블랭킹 기간들은 수평 블랭킹 기간들 또는 수직 블랭킹 기간들을 포함할 수 있으며, 이들이 또한 수평 동기화(HS) 기간들 및 수직 동기화(VS) 기간들로서 지칭될 수 있다. 일 실시예에 있어서, 도 4a에 예시된 바와 같은 블랭킹 압축 회로(408)는 블랭킹 기간 데이터를 블랭킹 기간 시작(blanking period start; BS) 이벤트, 수평 동기화 시작(horizontal SYNC start; HSS) 이벤트, 수평 동기화 종료(horizontal SYNC end; HSE) 이벤트, 수직 동기화 시작(vertical SYNC start; VSS) 이벤트 및 수직 동기화 종료(vertical SYNC end; VSE) 이벤트 중 하나 이상으로 압축한다. BS 이벤트, HSS 이벤트, HSE 이벤트, VSS 이벤트 및 VSE 이벤트는 상이한 특정 블랭킹 상태들(즉, 상태들 사이의 변화들)의 시작 또는 종료를 나타낸다. 따라서, 이러한 이벤트들이 집합적으로 블랭킹 이벤트들로서 지칭될 수 있다.
도 9는 일 실시예에 따른 블랭킹 이벤트들로의 블랭킹 기간 데이터의 압축을 예시한다. 도 9는 블랭킹 기간 데이터(425)를 전달하기 위해 사용되는 3개의 신호들, DE, HS 및 VS를 포함한다. DE 신호가 로우(low)일 때 블랭킹 기간들(970, 980)이 발생하며, DE 신호가 하이(high)일 때 활성 비디오 기간들이 발생한다. 데이터 아일랜드들이 도 9에 도시되지 않았지만, 이는 블랭킹 기간들(970 및 980) 중에 언젠가 송신될 것이다.
DE가 로우가 될 때 수평 블랭킹 기간(Horizontal blanking period; HBLK)(970)이 시작한다. DE가 하이가 될 때 HBLK 기간(970)이 종료한다. HBLK 기간(970)은 상이한 상태들: 프런트 포치(971), 프레임 내의 새로운 라인을 나타내는 HS 펄스(972), 및 백 포치(973)를 포함한다. 이러한 상태들의 각각이 길이 내의 복수의 클럭 사이클들일 수 있다. HBLK 기간(970)은, 프런트 포치(971)의 시작을 나타내는 BS 이벤트, HS 펄스(972)의 시작을 나타내는 HSS 이벤트, 및 HS 펄스(972)의 종료를 나타내는 HSE 이벤트로 압축된다.
DE가 로우가 될 때 수직 블랭킹 기간(Vertical blanking period; VBLK)(980)이 시작한다. DE가 하이가 될 때 VBLK 기간(980)이 종료한다. VBLK 기간(980)은 상이한 상태들: 프런트 포치(981), 프레임 내의 새로운 라인을 나타내는 HS 펄스(982), 및 백 포치(983)를 포함한다. 이러한 상태들의 각각이 길이 내의 복수의 클럭 사이클들일 수 있다. VBLK 기간은, 프런트 포치(981)의 시작을 나타내는 BS 이벤트, VS 펄스(982)의 시작을 나타내는 VSS 이벤트, 및 VS 펄스(982)의 종료를 나타내는 VSE 이벤트로 압축된다.
도 9d는 일 실시예에 따른 블랭킹 이벤트들 사이의 타이밍의 압축을 예시한다. 처음에, 도 9에 도시된 이벤트 생성 이후, 블랭킹 이벤트들의 타이밍은 블랭킹 상태 변화들의 타이밍과 매칭된다. 도 9d에 도시된 바와 같이, BS 이벤트는 16 클럭 사이클들만큼 HSS로부터 분리되며, HSS는 18 클럭 사이클들만큼 HSE로부터 분리된다. 그런 다음, 이벤트들 사이의 간격(separation)이 미리-결정된 2:1 압축 비율에 따라 감소된다. 결과적으로, BS 이벤트는 HSS 이벤트로부터 8 클럭 사이클들만큼만 분리되며, HSS 이벤트는 HSE 이벤트로부터 9 클럭 사이클들만큼 분리된다. 이는 블랭킹 기간에 대한 데이터를 송신하기 위해 요구되는 총 시간을 34 클럭 사이클들로부터 17 클럭 사이클들로 절반으로 만든다. 다른 실시예들에 있어서, 미리-결정된 압축 비율은 상이한 비율, 예컨대 3:1 또는 4:1일 수 있다.
일 실시예에 있어서, 블랭킹 압축 회로(408)는 도 9a에 도시된 바와 같은 매칭 테이블(900)을 사용하여 블랭킹 기간 데이터를 압축한다. 테이블(900)에서, 블랭킹 이벤트들의 리스트가 좌측 편 상에 도시된다. 블랭킹 이벤트가 블랭킹 기간 데이터(425)로부터 식별되면, 블랭킹 이벤트는 압축된 블랭킹 기간 데이터(427)로서 송신되는 이벤트 코드로 인코딩될 수 있다.
블랭킹 이벤트들은 블랭킹 이벤트들을 생성하기 위해 사용된 실제 블랭킹 기간 데이터보다 더 적은 시간 내에 전송될 수 있다. 통상적인 시스템에 있어서, 블랭킹 기간(970 또는 980) 동안, 소스 디바이스가 블랭킹 기간 전체에 걸쳐 블랭킹 기간 데이터에 대한 심볼들을 반복적으로 송신해야만 하며, 이는 상당한 양의 대역폭을 소비할 수 있다. 따라서, 실제 블랭킹 기간 데이터를 블랭킹 이벤트들로 대체하고 블랭킹 이벤트들 사이의 시간의 양을 감소시킴으로써, 블랭킹 기간들이 압축된다. 이는 (예를 들어, 비디오 부분과 동일하거나 또는 그 이상의) 양호한 압축 비율을 야기하며, 계속해서 블랭킹 기간에 대한 정확한 타이밍을 제공한다.
수신 측 상에서, 수신기(450)는 제공된 블랭킹 이벤트들의 타이밍에 기초하여 블랭킹 기간 데이터를 재생성할 수 있다. 구체적으로, 수신기(450)는 블랭킹 이벤트들을 식별하고, 블랭킹 이벤트들 사이의 타이밍을 복원하기 위하여 미리-결정된 압축 비율(1:2, 1:3)에 따라 블랭킹 이벤트들 사이의 시간을 연장하며, 그런 다음 블랭킹 기간 데이터를 재생성한다.
블랭킹 기간을 압축하는 제 2 방식은, 데이터 아일랜드들의 위치를 보존하면서 블랭킹 기간 데이터 상에 런 길이 코딩을 적용하는 것이다. 이제 도 9b를 참조하면, 예시된 실시예는 압축된 블랭킹 기간(922) 내에서 데이터 아일랜드(DI)들(921a, 921b)의 위치들을 각기 보존하면서, 블랭킹 기간(920)에 대하여 런 길이 코딩(Run Length Coding; RLC)을 적용한다. 블랭킹 기간(920)은, (대문자 B에 의해 표시되는) 그 동안 어떠한 데이터도 전송되지 않는 블랭킹 부분들, 및 (십자 음영 및 문자 DI로 표시되는) 그 동안 데이터 아일랜드들이 전송되는 데이터 아일랜드 부분들을 포함한다. 블랭킹 부분들(B) 및 데이터 아일랜드 부분들(P)은 서로 혼합된다.
도 4a에 예시된 바와 같은 블랭킹 압축 회로(408)는, 압축된 블랭킹 기간(922)을 생성하기 위하여 블랭킹 기간(920)에 대하여 RLC를 적용함으로써 블랭킹 기간(920)을 압축할 수 있다. 구체적으로, 블랭킹 압축 회로(408)는 블랭킹 기간 데이터를 DI들에 의해 분리되는 상이한 부분들로 분할한다. 블랭킹 부분들은 RLC로 별개로 압축되며, 데이터 아일랜드 부분들은 압축되지 않는다. (소문자 b에 의해 표시되는) 압축된 블랭킹 부분들은 결국에는 압축된 블랭킹 부분(922)을 형성하기 위하여 데이터 아일랜드 부분들(921a 및 921b)과 혼합된다.
RLC는, 그 안에서 동일한 데이터 값의 시퀀스들이 단일 데이터 값 및 데이터 값이 반복되는 횟수를 나타내는 넘버 카운트(number count)로서 저장되는 데이터 압축의 형태이다. 블랭킹 기간 데이터에 적용될 때, RLC는 블랭킹 기간 데이터 내의 상태들 및 상태들의 지속기간을 명시하는 타이밍 정보를 생성한다. 예를 들어, 블랭킹 기간은 전형적으로 동기화 펄스 이전의 프런트 포치 기간, 동기화 펄스, 및 그 다음에 동기화 펄스를 따르는 백 포치를 포함한다. 따라서, 블랭킹 기간 내의 상태들은 3개의 상태들 및 3개의 숫자들로 압축될 수 있다: 프런트 포치의 지속기간을 명시하는 프런트 포치 타이밍(예를 들어, 4 사이클들), 동기화 펄스의 길이를 명시하는 동기화 타이밍(예를 들어, 3 사이클들), 및 종료 포치의 지속기간을 명시하는 종료 포치 타이밍(예를 들어, 5 사이클들). 실제로, 인접한 DI들(921a 및 921b) 사이에서 송신되는 RLC 정보는 전형적으로 하나 또는 2개의 상태들(예를 들어, 프런트 포치, 동기화 펄스, 또는 백 포치) 및 이러한 상태들의 지속기간을 명시한다.
DI들의 부분들을 보존함으로써, 이러한 실시예는 또한, 프리앰블 다음의 정보가 DI(921a, 921b)인지 또는 DI가 없는 블랭킹 부분인지 여부를 나타내기 위해 HDMI 및 MHL에서 사용되는 특별 지시자들인 프리앰블들도 보존한다. 이는, 싱크 디바이스(115)가 수신된 정보를 다시 활성 비디오 스트림의 원본 블랭킹 데이터(920)로 매끄럽게 변환하는 것을 가능하게 한다.
수신 말단 상에서, 블랭킹 압축 해제 회로(464)는, 데이터 아일랜드들에 의해 분리된 상이한 압축된 블랭킹 부분들을 포함하는 압축된 블랭킹 기간 데이터(465)를 수신할 것이다. 블랭킹 압축 해제 회로(464)는 블랭킹 기간에 대한 적절한 타이밍을 복원하기 위하여 런 길이 디코딩을 사용하여 압축된 블랭킹 부분들을 블랭킹 기간 데이터(469)로 압축 해제한다.
블랭킹 기간을 압축하는 제 3 방식은, 블랭킹 타이밍 정보를 사용하여 블랭킹 기간을 나타내고 모든 DI들을 함께 전송하는 것이다. 도 9c를 참조하면, 예시된 실시예에 있어서, 블랭킹 기간(920)은 압축된 블랭킹 기간(924)으로 압축된다. 블랭킹 기간(920)의 상태들은 블랭킹 타이밍 정보(926)의 단일 세트로서 표현되며, 몇몇 DI들(921a, 921b)이 함께 전송된다. 도 4a에 예시된 바와 같은 블랭킹 압축 회로(408)는, 블랭킹 상태들의 지속기간을 카운팅하고 그런 다음 블랭킹 상태들의 지속기간으로부터 블랭킹 타이밍 정보(926)를 생성함으로써 (상이한 부분들(920a, 920b, 920c)을 포함하는) 블랭킹 기간(920)을 압축할 수 있다. 블랭킹 타이밍 정보(926)는 블랭킹 기간들(920a, 920b, 920c)의 상이한 상태들의 지속기간을 설명한다. 예를 들어, 블랭킹 타이밍 정보(926)는 4 사이클 프런트 포치, 5 사이클 HS 펄스, 및 6 사이클 백 포치를 명시할 수 있다.
따라서, 전체 블랭킹 기간(920)이, 압축된 블랭킹 기간(924)의 개시 시에 전송되는 블랭킹 타이밍 정보(926)의 단일 청크를 가지고 표현된다. DI들(921a, 921b)의 전부가 결합되며, 압축된 블랭킹 기간(924)의 말단에서 함께 전송된다.
수신 측 상에서, 블랭킹 압축 해제 회로(464)는, 각각의 블랭킹 기간에 대한 블랭킹 타이밍 정보(926)의 단일 세트를 포함하는 압축된 블랭킹 기간 데이터(465)를 수신할 것이다. 블랭킹 압축 해제 회로(464)는 블랭킹 기간에 대한 적절한 타이밍을 복원하기 위하여 블랭킹 타이밍 정보(926)를 블랭킹 기간 데이터(469)로 압축 해제한다.
이러한 실시예는, 도 9b에 예시된 실시예보다 더 양호한 블랭킹 기간(920)의 압축에 대한 압축 비율을 가능하게 한다. 그러나, 도 9c에 도시되지는 않았지만, 블랭킹 부분들 B가 또한 DI들에 선행하고 DI들을 뒤따르는 프리앰블들을 포함할 수도 있다. 이러한 프리앰블들이 손실되며, 수신기에서 복원되어야만 한다. 따라서, 이러한 실시예는 프리앰블들을 복원하기 위하여 수신기 측(예를 들어, 수신기(450)) 상에서 타이밍 생성기를 사용할 수 있다. 타이밍 생성기는, DI들 각각이 고정된 크기를 갖는다고 가정함으로써 프리앰블을 복원한다. 타이밍 생성기는, 결합된 데이터 아일랜드를 별개의 고정된 크기의 DI들(921a 및 921b)로 분할하고, 그런 다음 프리앰블들을 DI들(921a 및 921b) 앞에 그리고 뒤에 삽입한다.
도 10은 일 실시예에 따른 비디오 및 블랭킹 기간 압축의 이점을 예시하는 도면이다. 예시된 실시예에 있어서, 로우(1002)는 압축되지 않은 블랭킹 기간들(1012)을 갖는 압축되지 않은 활성 비디오 데이터(1010)를 나타낸다. 블랭킹 기간들(1012) 및 그들의 상태들이 DE(1012x), HS(1012y), 및 VS(1012z)와 같은 차동 신호 컴포넌트들에 의해 표시될 수 있다. 로우(1004)는 블랭킹 기간 압축이 없는 상태의 비디오 데이터의 2:1 압축을 나타낸다. 예를 들어, 활성 비디오 데이터(1010)는 압축된 비디오 데이터(1020)를 획득하기 위하여 2:1 압축 비율로 압축된다. 즉, 100 Kbit의 비디오 데이터가 50 Kbit의 비디오 데이터로 압축된다. 그러나, 블랭킹 기간(1012)은 아직까지 압축되지 않는다.
로우(1006)는 블랭킹 이벤트들(예를 들어, BS(1022a), HSS(1022b), HSE(1022c))을 사용하여 블랭킹 기간 압축을 갖는 압축된 비디오 데이터(1020)를 나타낸다. 즉, 블랭킹 기간(1012) 내의 블랭킹 기간 데이터가 블랭킹 이벤트들 BS(1022a), HSS(1022b) 및 HSE(1022c)로 대체된다. 블랭킹 이벤트들의 타이밍이 또한, 블랭킹 이벤트들이 더 적은 수의 클럭 사이클들(예를 들어, 25 사이클들)로 송신될 수 있도록 압축된다.
또한, 송신기(400)는 블랭킹 기간들을 감소시키고 그 대신에 활성 비디오를 위해 블랭킹 기간들을 사용할 수 있다. 이를 달성하기 위한 2가지 방식들이 존재한다: HBLK 기간을 감소시키고 활성 비디오 데이터의 송신을 위하여 절약된 대역폭(BW)을 사용하는 것 또는 VBLK 기간을 감소시키고 활성 비디오 데이터의 송신을 위하여 절약된 BW를 사용하는 것. 로우(1008)는 HBLK 기간 또는 수평 동기화(HSYNC)를 전혀 갖지 않는 블랭킹 기간 압축을 가진 압축된 비디오 데이터(1020)를 나타낸다. 블록(1024)은 압축된 활성 비디오 데이터(1020)의 송신을 위해 현재 사용되는 그리고 블랭킹 기간들을 송신하기 위해 이전에 사용되었던 BW의 부분을 나타낸다. 도시된 바와 같이, 처음의 2개의 수평 블랭킹 기간들을 제거하고 블랭킹 기간들의 위치에서 활성 비디오 데이터를 송신함으로써, 이제 압축된 비디오 데이터를 송신하기 위한 추가적인 BW가 존재한다.
로우(1008) 내의 이러한 접근방식은 전형적으로, 블랭킹 기간들이 어떠한 DI들도 포함하지 않을 때 적절하다. 이러한 접근방식은 블랭킹 상태들의 정확한 타이밍을 복원하기 위하여 수신기(450) 측 상에서 타이밍 생성기를 사용할 수 있다. 타이밍 생성기에는 활성 비디오 데이터의 해상도를 설명하는 해상도 정보가 제공된다. 각각의 해상도가 전형적으로 라인 크기, 각각의 라인 내의 픽셀들의 수, 및 동기화 타이밍과 연관됨에 따라, 해상도가 블랭킹 상태들의 적절한 타이밍을 복원하기 위해 사용될 수 있다.
도 11은 일 실시에에 따른 4K 비디오에 대해 요구되는 대역폭에 대한 블랭킹 기간 압축의 영향을 예시하는 도면이다. 예시된 실시예에 있어서, 원래의 기법(1102)은 압축되지 않은 활성 비디오 데이터 및 압축되지 않은 블랭킹 기간들을 포함한다. 원래의 기법(1102)에 있어서, 모든 데이터를 16 ms 내에 전송하기 위하여 14.3 Gbps PHY가 요구된다. 제 2 기법(1104)은 블랭킹 기간 압축 없이 2:1 레이트로 압축된 비디오 데이터를 갖는다. 이는 데이터를 전송하기 위하여 7.1 Gbps PHY를 요구한다. 제 3 기법(1106)은 수평 블랭킹(HBLK) 기간들을 감소시킴으로써 블랭킹 기간들을 압축하고, 이는 모든 데이터를 전송하기 위하여 6.5 Gbps PHY를 요구한다. 제 4 기법(1108)은 수직 블랭킹(VBLK) 기간들을 또한 감소시킴으로써 블랭킹 기간들을 더 압축하고, 이는 데이터를 전송하기 위하여 6.3 Gbps PHY를 요구한다.
또한, HBLK 및 VBLK는 DI들의 전송을 가능하게 하도록 충분히 클 것이 요구된다. DI 패킷들을 갖는 블랭킹 기간들의 압축 비율은 보장될 수 없으며, 이는 DI가 전혀 압축되지 않기 때문이다. 이러한 문제를 해결하기 위하여, 각각의 라인 내의 DI들이, 압축된 AV 스트림, 즉, 압축된 데이터를 전달할 목표 스트림 포맷의 블랭킹 기간 내에 수용될 수 있는 양으로 제한된다. 예를 들어, 4K 비디오가 이를 1080p 스트림에 맞추기 위하여 4:1 비율로 압축되는 경우, DI들의 양은 1080p 스트림 내에 넣어질 수 있는 값으로 제한된다. 대안적으로, 활성 비디오 부분을 압축한 이후에, 압축된 비디오가 목표 HDMI 스트림의 활성 비디오 기간 내에 넣어지고, 반면 오디오 부분은 어떠한 압축도 없이 목표 HDMI 스트림(이러한 예에 있어서 1080p)의 블랭킹 기간 내로 넣어진다. 오디오가 압축을 겪는 원본 HDMI 스트림 내로 넣어지는 대신에 (압축된) 목표 HDMI 스트림 내로 직접적으로 넣어지기 때문에, 이는 압축된 HDMI 스트림 내의 적절한 양의 오디오 데이터를 보장한다.
다음으로, 압축의 링크 특유 부분, 즉, 압축된 비디오 스트림을 넣는 방법 및 압축 대 비-압축을 수신기에 통보하는 방법이 도 12를 참조하여 설명될 것이다.
링크 특유 - HDMI1, HDMI2, MHL1, MHL2
HDMI 시스템의 송신기 측은 압축된 비디오 데이터를 HDMI 스트림의 활성 비디오 기간의 위치에 넣을 것이다. 도 12는 일 실시예에 따른 압축된 데이터를 갖는 HDMI 스트림을 예시하는 도면이다. 예시된 실시예에 있어서, "비디오 인코딩" 부분은 압축된 비디오 데이터를 포함한다. 송신기(400)는 데이터가 압축된 비디오 데이터라는 것을 수신기(450)에 통보할 수 있다. 이에 더하여, 송신기(400)는 또한, (예를 들어, 알고리즘 ID를 사용하여) 송신기(400) 내에서 어떤 압축 알고리즘이 사용되었는지 및 다양한 압축 메커니즘들을 지원하기 위하여 특정 알고리즘 내에서 사용된 임의의 가능한 파라미터들에 대하여 수신기(450)로 통지하기 위하여 수신기(450)로 비디오 압축 제어 정보(411)를 송신할 수 있다. 이는 몇몇 방식들로 구현될 수 있다.
첫째로, HDMI에서의 DDC 및 MHL에서의 CBUS와 같은 사이드 채널(side channel)이 압축 제어 정보(411)를 전송하기 위하여 사용될 수 있다. 송신기(400)는 DDC 또는 CBUS를 통해 수신기(450) 내의 레지스터들에 특정 값들을 기입하고, 수신기(450)는 레지스터들 내의 값들을 해석(interpret)함으로써 입력 스트림이 압축된 스트림이라는 것을 결정할 수 있다. 이러한 통보 프로세스 이후에, 송신기(400)는 압축된 비디오 데이터를 수신기(450)로 전송하며, 수신기(450)는 압축된 스트림으로서 압축된 비디오 데이터의 인입 스트림을 정확하게 해석할 수 있다.
둘째로, "프리앰블" 및/또는 "리딩 보호 대역(Leading Guard Band; LGB)"이 비디오 압축 제어 정보(411)를 전송하기 위해 사용될 수 있다. 도 12에 도시된 바와 같이, 프리앰블들 및/또는 LGB들은 압축된 비디오 데이터에 대한 비디오 데이터 기간에 선행한다. 특정 값을 이들 둘 모두에 또는 어느 하나에 넣음으로써, 송신기(400)는 인입 스트림이 압축된 스트림이라는 것을 수신기(450)에 통지할 수 있다. 다시 도 4a를 참조하면, 비디오 압축 제어 정보(411)는, 송신 인터페이스 회로(412), 및 송신기(400)와 수신기(450) 사이의 멀티미디어 통신 링크(미도시)를 통해 압축 비디오 데이터(403)에 대한 비디오 송신 기간에 선행하는 프리앰블 또는 리딩 보호 대역(LGB)으로서 송신될 수 있다. TMDS 인코딩 회로(406)는 비디오 압축 제어 정보(411)로부터 프리앰블 또는 리딩 보호 대역(LGB)을 생성하는 것을 담당할 수 있다.
셋째로, 정보 프레임이 비디오 압축 제어 정보(411)를 전송하기 위하여 사용될 수 있다. 예를 들어, 정보 프레임은 블랭킹 기간 내의 (블랭킹 기간 동안 오디오 및 다른 정보를 전달하는) 데이터 아일랜드일 수 있다. 정보 프레임은 압축되지 않으며, 따라서 활성 비디오 데이터의 압축과 무관하게 정보 프레임 내의 정보가 수신기 측에서 정확하게 디코딩될 수 있다. 다시 도 4a 내지 도 4b를 참조하면, 송신기(400)는 블랭킹 기간 동안 정보 프레임 내의 비디오 압축 제어 정보(411)를 수신기(450)로 송신한다. 따라서, 수신기(450)는 정보 프레임에 기초하여 인입 비디오가 압축되었는지 또는 그렇지 않은지 여부를 결정할 수 있다.
수신기(450)가 인입 스트림이 압축된 스트림이라고 결정하는 경우, 수신기(450)는 원본 비디오 데이터를 추출하기 위하여 압축된 비디오 데이터를 비디오 압축 해제 회로(460)로 전달한다. 추출 이후, HDMI 스트림이 정상적인 비-압축된 HDMI 스트림과 동일하게 되며, 수신기 측의 모든 정상적인 프로세스들이 뒤따를 것이다.
이상에서 언급된 바와 같이, 블랭킹 기간 동안, 송신기(400)는 너무 많은 DI들을 블랭킹 기간 내에 넣지 않도록 하기 위하여 DI들을 압축된 목표 HDMI 스트림 내에 넣는다. RLC(런 길이 코딩) 및/또는 블랭킹 이벤트들이 블랭킹 기간을 압축하기 위하여 사용되었던 경우, 송신기(400)는 상이한 "프리앰블" 및/또는 블랭킹 기간 문자(blanking period character)들의 조합을 사용함으로써 수신기(450)에 이를 통보한다. 상이한 프리앰블 및/또는 블랭킹 기간 문자들은 다음의 데이터가 정상적인 블랭킹 기간인지 또는 압축된 블랭킹 기간인지 여부를 수신기(450)에 통지하기 위해 사용될 수 있다.
송신기(400)는 또한 목표 해상도(즉, 압축 해제 이후의 해상도)를 수신기에 통지할 수 있으며, 특히 임의의 블랭킹 감소가 사용된 경우에 그러하다. 목표 해상도를 사용하여, 수신기(450)는 정확한 블랭킹 기간 타이밍을 재생성할 수 있다. 이러한 정보는 (압축 통지를 위해 사용되는 기법과 유사하게) 사이드 대역 레지스터들 및/또는 DI들 중 하나를 통해 수신기(450)에 도달할 수 있다.
일 실시예에 있어서, 수신기(450)는 정상적인 (비-압축된) HDMI/MHL 스트림을 재생성한다. 예를 들어, 수신기(450)는 비디오 데이터를 압축 해제하는 것뿐만 아니라 다음의 단계들을 수행할 수 있다. 첫째로, 수신기(450)는, 블랭킹 감소가 송신기 측에서 사용되었던 경우 모든 블랭킹 타이밍을 재생성하며, 즉, 감소된 블랭킹 기간을 정상적인 블랭킹 기간으로 재생성한다. 둘째로, 수신기(450)는 인입 (압축된) 스트림으로부터 오디오 컨텐츠 또는 보조데이터를 운반하는 것과 같은 DI들을 추출하며, 이들을 압축 해제된 비디오 데이터와 함께 목표(예를 들어, 4K) HDMI/MHL 스트림마다 전송한다. 따라서, DI들(예를 들어, 오디오 데이터)의 컨텐츠가 보존된다.
셋째로, 일부 다른 DI들(예를 들어, AVI, AIF)에 대하여, 수신기(450)는 이들을 입력 스트림으로부터 드롭(drop)하며, 목표 스트림마다 이들을 완전히 재생성한다. 이는, 이러한 DI들의 컨텐츠들이 스트림 특유적이며 상이한 해상도들이 기인하여 압축된 스트림 내의 DI들이 목표 스트림 출력에 대해 재사용될 수 없기 때문이다.
넷째로, 레이턴시 정렬기(latency aligner)는 비디오 압축 해제 회로(460)를 통과하는 비디오 경로와 오디오 DI들 사이의 레이턴시를 정렬할 수 있다. 목표 스트림마다의 타이밍에 임계적인(critical) 다른 DI들(예를 들어, GCP, VSI, 등)은 목표 스트림의 타이밍마다 완전히 재생성된다.
링크 특유 - MHL3
MLH3은 패킷 기반 스트림이며, 이들의 패킷들 중 하나(즉, AV 스트림 패킷)는 이것이 터널링(tunneling) 기술을 사용함에 따라 HDMI 및 MHL 스트림을 전달할 수 있다. 이에 더하여, 이는 HDMI 및 MHL의 사이드 채널을 터널링하는 사이드 채널 터널링을 지원한다. 따라서, HDMI 및 MHL에 대하여 이상에서 언급된 모든 기술들이 MHL3에서 변화 없이 사용될 수 있다. 이에 더하여, MHL3의 패킷 기반 기법은 압축 정보를 전송하기 위한 어떤 추가적인 옵션들을 제공한다. 예를 들어, 인입 데이터가 압축된 데이터인지 또는 아닌지 여부에 대한 압축 정보가 패킷의 헤더 내에 위치될 수 있다. 도 13은 일 실시예에 따른 스트림 패킷의 패킷 헤더 바이트들을 예시하는 차트이다. 패킷이 압축되지 않은 비디오 데이터를 포함하는 경우, pkt_type 필드는, 패킷이 압축되지 않은 비디오 데이터를 포함하고 있다는 것을 나타내기 위하여 0b0001로 설정될 수 있다. 패킷이 압축된 비디오 데이터를 포함하는 경우, pkt_type 필드는, 패킷이 압축된 비디오 데이터를 포함하고 있다는 것을 나타내기 위하여 0b0111로 설정될 수 있다.
인입 스트림에 대해 사용된 특정 압축 알고리즘을 나타내는 압축 알고리즘 ID 및 대응하는 압축 파라미터들이 몇몇 위치들에 삽입될 수 있다. 첫째로, 이들은 AV 스트림 패킷 내에 들어가는 MHL 판매자 특정 정보 프레임(Vendor Specific Info Frame; VSIF) 내에 넣어질 수 있다. 둘째로, 별개의 패킷이 AV 스트림 패킷 대신에 사용될 수 있다. 예를 들어, 별개의 패킷은, 매 프레임마다 들어가는 MHL의 컨텐츠 보호(content protection; CP) 패킷일 수 있다. 이러한 접근방식은 AV 스트림 패킷 측에 전혀 영향을 주지 않으며, 또한 동기화 문제를 최소화할 수 있다.
이상의 설명에 있어서, 예시의 목적들을 위하여, 다수의 특정 세부사항들이 본 발명의 철저한 이해를 제공하기 위하여 기술된다. 그러나, 본 발명이 이러한 특정 상세내용들 중 일부가 없이 실시될 수 있다는 것이 당업자에게 자명할 것이다. 다른 사례들에 있어, 잘 알려진 구조들 및 디바이스들은 블록도의 형태로 도시된다. 예시된 컴포넌트들 사이에 중간 구조가 존재할 수 있다. 본원에서 설명되거나 또는 예시된 컴포넌트들이 예시되지 않거나 또는 설명되지 않은 추가적인 입력들 또는 출력들을 가질 수 있다. 예시된 엘러먼트들 또는 컴포넌트들은 또한, 임의의 필드들의 재순서화 또는 필드 크기들의 수정을 포함하여, 상이한 배열들 또는 순서들로 배열될 수 있다.
본 발명이 다양한 프로세스들을 포함할 수 있다. 본 발명의 프로세스들은 하드웨어 컴포넌트들에 위해 수행될 수 있거나 또는, 범용 또는 전용 프로세서 또는 로직 회로들이 프로세스들을 수행하기 위한 명령어들로 프로그래밍되게끔 하기 위하여 사용될 수 있는 컴퓨터-판독가능 명령어들로 구현될 수 있다. 대안적으로, 프로세스들은 하드웨어 및 소프트웨어의 조합에 의해 수행될 수 있다.
다수의 방법들이 그들의 가장 기본적인 형태로 설명되었지만, 본 발명의 기본적인 범위로부터 벗어나지 않으면서 프로세스들이 방법들 중 임의의 방법에 부가되거나 또는 이로부터 삭제될 수 있고 정보가 설명된 메시지들 중 임의의 메시지에 부가되거나 또는 이로부터 공제될 수 있다. 다수의 추가적인 수정들 및 적응들이 이루어질 수 있다는 것이 당업자들에게 자명할 것이다. 특정 실시예들은 본 발명을 제한하려는 것이 아니라 이를 예시하기 위해 제공된다.
엘러먼트 "A"가 엘러먼트 "B"에 결합되거나, 또는 이와 결합되거나, 또는 이와 함께 결합된다고 언급되는 경우, 엘러먼트 A는 직접적으로 엘러먼트 B에 결합될 수 있거나 또는, 예를 들어, 엘러먼트 C를 통해 간접적으로 결합될 수 있다. 명세서가 컴포넌트, 특징, 구조, 프로세스, 또는 특성 A가 컴포넌트, 특징, 구조, 프로세스, 또는 특성 B를 "야기"하는 것으로 명시할 때, 이는 "A"가 적어도 부분적으로 "B"의 원인이지만 "B"를 야기하는 것을 보조하는 적어도 하나의 다른 컴포넌트, 특징, 구조, 프로세스, 또는 특성이 또한 존재할 수 있다는 것을 의미한다. 명세서가 컴포넌트, 특징, 구조, 프로세스, 또는 특성이 포함될 "수" 있다고 표시하는 경우, 그 컴포넌트, 특징, 구조, 프로세스, 또는 특성이 포함되도록 요구되지는 않는다. 명세서 또는 청구항이 "일" 엘러먼트를 언급하는 경우, 이는 설명된 엘러먼트들 중 오직 하나만이 존재한다는 것을 의미하지는 않는다.
실시예는 본 발명의 구현예 또는 예이다. 명세서 내에서 "일 실시예", "하나의 실시예", "일부 실시예들", 또는 "다른 실시예들"에 대한 언급은, 실시예들과 함께 설명된 특정 특징, 구조, 또는 특성이 적어도 일부 실시예들에 포함되지만 반드시 모든 실시예들에 포함되는 것은 아니라는 것을 의미한다. "일 실시예", "하나의 실시예", 또는 "일부 실시예들"의 다양한 출현들은 반드시 모두 동일한 실시예들을 언급하지는 않는다. 본 발명의 예시적인 실시예들의 이상의 설명에 있어, 본 발명의 다양한 특징들이 때때로 본 개시를 간소화하고 다양한 진보적인 측면들 중 하나 이상의 이해를 보조하기 위하여 단일 실시예, 그것의 도면, 또는 설명으로 함께 그룹화된다는 것이 이해되어야만 한다.
본 개시를 숙독할 때, 당업자는 HDMI 및 MHL을 통한 압축된 비디오 컨텐츠 전송을 위한 또 다른 추가적이고 대안적인 설계들을 인식할 것이다. 따라서, 본 발명의 특정 실시예들 및 애플리케이션들이 예시되고 설명되었지만, 실시예들이 본원에 개시된 정확한 구성 및 컴포넌트들에 한정되지 않으며, 첨부된 청구항들에 정의된 본 발명의 사상 및 범위로부터 벗어나지 않고 본원에 개시된 본 개시의 방법 및 디바이스의 배열, 동작 및 세부사항들에 있어서 다양한 수정들, 변화들 및 변형들이 이루어질 수 있다는 것이 이해되어야만 한다.

Claims (20)

  1. 멀티미디어 통신 링크를 통해 통신하기 위한 송신 디바이스로서,
    비디오 데이터를 수신하고, 상기 비디오 데이터를 압축된 비디오 데이터로 압축하기 위한 링크 계층 회로부(circuitry);
    상기 비디오 데이터의 압축을 설명하는 비디오 압축 제어 정보를 생성하기 위한 압축 정보 회로; 및
    상기 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 상기 압축된 비디오 데이터에 대응하는 신호들을 송신하고, 상기 멀티미디어 통신 링크를 통해 상기 비디오 압축 제어 정보에 대응하는 신호들을 송신하기 위한 인터페이스를 포함하는, 송신 디바이스.
  2. 청구항 1에 있어서,
    상기 비디오 압축 제어 정보는 상기 비디오 데이터의 압축 동안 사용된 압축 파라미터들을 포함하는, 송신 디바이스.
  3. 청구항 1에 있어서,
    상기 비디오 압축 제어 정보는 상기 압축된 비디오 데이터의 비디오 송신 기간에 선행하는 리딩(leading) 보호 대역 또는 프리앰블(preamble)로서 송신되는, 송신 디바이스.
  4. 청구항 1에 있어서,
    상기 비디오 압축 제어 정보는 블랭킹(blanking) 기간 동안 데이터 아일랜드(data island) 내에서 송신되는, 송신 디바이스.
  5. 청구항 1에 있어서,
    상기 비디오 압축 제어 정보는 상기 멀티미디어 통신 링크의 상기 하나 이상의 멀티미디어 채널들을 통해 송신되는, 송신 디바이스.
  6. 청구항 1에 있어서,
    상기 비디오 압축 제어 정보는 상기 멀티미디어 통신 링크의 제어 채널을 통해 송신되는, 송신 디바이스.
  7. 청구항 1에 있어서,
    상기 활성(active) 비디오 데이터는 복수의 컬러 컴포넌트들을 포함하며, 상기 링크 계층 회로부는 상기 컬러 컴포넌트들의 라인들을 동일한 길이를 갖는 상기 컬러 컴포넌트들의 압축된 라인들로 압축하도록 구성되는, 송신 디바이스.
  8. 청구항 1에 있어서,
    상기 활성 비디오 데이터는 복수의 컬러 컴포넌트들을 포함하며, 상기 링크 계층 회로부는 상기 컬러 컴포넌트들의 라인들을 상기 컬러 컴포넌트들의 압축된 라인들로 압축하고, 상기 압축된 라인들이 동일한 길이를 가질 때까지 상기 컬러 컴포넌트들의 상기 압축된 라인들 상에 하나 이상의 패딩(padding) 비트들을 패딩하도록 구성되는, 송신 디바이스.
  9. 청구항 1에 있어서,
    상기 활성 비디오 데이터는 복수의 컬러 컴포넌트들을 포함하며,
    상기 링크 계층 회로부는 상기 컬러 컴포넌트들의 라인들을 상기 컬러 컴포넌트들의 압축된 라인들로 압축하고, 상기 컬러 컴포넌트들의 상기 압축된 라인들을 암호화된 비디오 데이터로 직렬적인 순서로 암호화하도록 구성되며, 및
    상기 인터페이스에 의해 송신되는 상기 압축된 비디오 데이터에 대응하는 상기 신호들은 상기 암호화된 비디오 데이터에 대응하는 신호들인, 송신 디바이스.
  10. 멀티미디어 통신 링크를 통해 통신하기 위한 수신 디바이스로서,
    상기 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 비디오 데이터에 대응하는 신호들을 수신하고, 상기 멀티미디어 통신 링크를 통해 비디오 압축 제어 정보에 대응하는 신호들을 수신하기 위한 인터페이스로서, 상기 비디오 압축 제어 정보는 상기 압축된 비디오 데이터의 압축을 설명하는, 상기 인터페이스; 및
    상기 압축된 비디오 데이터의 압축을 설명하는 상기 비디오 압축 제어 정보에 기초하여 상기 압축된 비디오 데이터를 비디오 데이터로 압축 해제(decompress)하기 위한 링크 계층 회로부를 포함하는, 수신 디바이스.
  11. 청구항 10에 있어서,
    상기 비디오 압축 제어 정보는 상기 비디오 데이터의 압축 동안 사용된 압축 파라미터들을 포함하는, 수신 디바이스.
  12. 청구항 10에 있어서,
    상기 비디오 압축 제어 정보는 상기 압축된 비디오 데이터의 비디오 송신 기간에 선행하는 리딩 보호 대역 또는 프리앰블로서 수신되는, 수신 디바이스.
  13. 청구항 10에 있어서,
    상기 비디오 압축 제어 정보는 블랭킹 기간 동안 데이터 아일랜드 내에서 수신되는, 수신 디바이스.
  14. 청구항 10에 있어서,
    상기 비디오 압축 제어 정보는 상기 멀티미디어 통신 링크의 상기 하나 이상의 멀티미디어 채널들을 통해 수신되는, 수신 디바이스.
  15. 청구항 10에 있어서,
    상기 비디오 압축 제어 정보는 상기 멀티미디어 통신 링크의 제어 채널을 통해 수신되는, 수신 디바이스.
  16. 청구항 10에 있어서,
    상기 압축된 비디오 데이터는 동일한 길이를 갖는 컬러 컴포넌트들의 압축된 라인들을 포함하는, 수신 디바이스.
  17. 청구항 10에 있어서,
    상기 압축된 비디오 데이터는 패딩 비트들을 갖는 컬러 컴포넌트들의 압축된 라인들을 포함하며, 상기 링크 계층 회로부는 상기 압축된 비디오 데이터를 압축 해제할 때 상기 패딩 비트들을 제거하는, 수신 디바이스.
  18. 청구항 10에 있어서,
    상기 압축된 비디오 데이터에 대응하는 상기 신호들은 암호화된 비디오 데이터에 대응하는 신호들이며,
    상기 링크 계층 회로부는 상기 암호화된 비디오 데이터를 복호화된 비디오 데이터로 복호화하고, 상기 복호화된 비디오 데이터를 상이한 컬러 컴포넌트들에 대한 라인들로 분리하는, 수신 디바이스.
  19. 멀티미디어 통신 링크를 통해 통신하기 위한 송신 디바이스의 표현(representation)을 저장하는 비-일시적인 컴퓨터 판독가능 매체로서, 상기 송신 디바이스는,
    활성 비디오 데이터를 수신하고, 상기 활성 비디오 데이터를 압축된 비디오 데이터로 압축하기 위한 링크 계층 회로부;
    상기 활성 비디오 데이터의 압축을 설명하는 비디오 압축 제어 정보를 생성하기 위한 압축 정보 회로; 및
    상기 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 상기 압축된 비디오 데이터에 대응하는 신호들을 송신하고, 상기 멀티미디어 통신 링크를 통해 상기 비디오 압축 제어 정보에 대응하는 신호들을 송신하기 위한 인터페이스를 포함하는, 비-일시적인 컴퓨터 판독가능 매체.
  20. 멀티미디어 통신 링크를 통해 통신하기 위한 수신 디바이스의 표현을 저장하는 비-일시적인 컴퓨터 판독가능 매체로서, 상기 수신 디바이스는,
    상기 멀티미디어 통신 링크의 하나 이상의 멀티미디어 채널들을 통해 압축된 비디오 데이터에 대응하는 신호들을 수신하고, 상기 멀티미디어 통신 링크를 통해 비디오 압축 제어 정보에 대응하는 신호들을 수신하기 위한 인터페이스로서, 상기 비디오 압축 제어 정보는 상기 압축된 비디오 데이터의 압축을 설명하는, 상기 인터페이스; 및
    상기 압축된 비디오 데이터의 압축을 설명하는 상기 비디오 압축 제어 정보에 기초하여 상기 압축된 비디오 데이터를 비디오 데이터로 압축 해제하기 위한 링크 계층 회로부를 포함하는, 비-일시적인 컴퓨터 판독가능 매체.
KR1020167027951A 2014-03-07 2015-02-19 멀티미디어 링크를 통한 압축된 비디오 전송 KR102232017B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461949901P 2014-03-07 2014-03-07
US61/949,901 2014-03-07
US14/470,613 2014-08-27
US14/470,613 US20150256842A1 (en) 2014-03-07 2014-08-27 Compressed Video Transfer over a Multimedia Link
PCT/US2015/016711 WO2015134203A1 (en) 2014-03-07 2015-02-19 Compressed video transfer over a multimedia link

Publications (2)

Publication Number Publication Date
KR20160132070A true KR20160132070A (ko) 2016-11-16
KR102232017B1 KR102232017B1 (ko) 2021-03-25

Family

ID=54018734

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020167027950A KR101996334B1 (ko) 2014-03-07 2015-02-10 멀티미디어 링크를 통한 압축된 블랭킹 기간 전송
KR1020167027951A KR102232017B1 (ko) 2014-03-07 2015-02-19 멀티미디어 링크를 통한 압축된 비디오 전송

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020167027950A KR101996334B1 (ko) 2014-03-07 2015-02-10 멀티미디어 링크를 통한 압축된 블랭킹 기간 전송

Country Status (7)

Country Link
US (3) US9800886B2 (ko)
JP (2) JP6684223B2 (ko)
KR (2) KR101996334B1 (ko)
CN (2) CN106105186B (ko)
DE (2) DE112015001136T5 (ko)
TW (2) TWI660627B (ko)
WO (2) WO2015134159A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170094289A1 (en) * 2015-09-29 2017-03-30 Lattice Semiconductor Corporation Dynamic Control of Pixel Color Formats Used to Encode Color Video Streams
WO2017176639A1 (en) * 2016-04-04 2017-10-12 Lattice Semiconductor Corporation Forward error correction and asymmetric encoding for video data transmission over multimedia link
US10630768B1 (en) * 2016-08-04 2020-04-21 Amazon Technologies, Inc. Content-based media compression
US10069511B2 (en) 2016-12-12 2018-09-04 Texas Instruments Incorporated Lossless data compression
CN108769795B (zh) * 2018-05-31 2020-12-25 福建星网智慧科技股份有限公司 视讯实现系统及方法
CN112788256B (zh) * 2019-11-06 2022-05-10 瑞昱半导体股份有限公司 自适应调整带宽的视频传输方法及其系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030063601A1 (en) * 1997-02-14 2003-04-03 Mitsuo Niida Communication apparatus and communication method
US8000350B2 (en) * 2003-09-22 2011-08-16 Inova Semiconductors Gmbh Reducing bandwidth of a data stream transmitted via a digital multimedia link without losing data
US20130195160A1 (en) * 2012-01-27 2013-08-01 Apple.Inc. Methods and apparatus for error rate estimation

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0946630A (ja) * 1995-07-28 1997-02-14 Matsushita Electric Ind Co Ltd 画像情報記録装置及び画像情報再生装置及び光ディスク
JPH0951489A (ja) * 1995-08-04 1997-02-18 Sony Corp データ符号化/復号化方法および装置
DE69711885D1 (de) * 1996-07-30 2002-05-16 Tiernan Communications Inc System und verfahren zur kodierung und kompression von digitalen vertikalaustastzeitsignalen
US20100321466A1 (en) 1998-12-21 2010-12-23 Roman Kendyl A Handheld Wireless Digital Audio and Video Receiver
JP3903721B2 (ja) * 2001-03-12 2007-04-11 ソニー株式会社 情報送信装置および方法、情報受信装置および方法、情報送受信システムおよび方法、記録媒体およびプログラム
US7236177B2 (en) 2001-12-04 2007-06-26 Qualcomm Incorporated Processing digital video data
EP1610553A4 (en) * 2003-04-02 2006-03-22 Matsushita Electric Ind Co Ltd DATA REPRODUCTION DEVICE, VIDEO DISPLAY DEVICE, AND SOFTWARE UPDATE SYSTEM AND METHOD FOR UPDATING SOFTWARE USING THE SAME
US8068485B2 (en) 2003-05-01 2011-11-29 Genesis Microchip Inc. Multimedia interface
JP4459590B2 (ja) * 2003-10-10 2010-04-28 パナソニック株式会社 Dtvデータ処理装置
US7009533B1 (en) 2004-02-13 2006-03-07 Samplify Systems Llc Adaptive compression and decompression of bandlimited signals
US7333555B2 (en) * 2004-03-30 2008-02-19 Intel Corporation Device, system and method for wireless combined-signal communication
JP4385841B2 (ja) * 2004-04-22 2009-12-16 ソニー株式会社 画像処理装置
DE602005021393D1 (de) * 2004-11-25 2010-07-01 Panasonic Corp Verstärkungsvorrichtung und verfahren zu ihrer steuerung
US8615038B2 (en) * 2004-12-06 2013-12-24 Nokia Corporation Video coding, decoding and hypothetical reference decoder
US20060209880A1 (en) 2004-12-10 2006-09-21 Mediatek Incorporation Method of audio data transmission and system thereof
US20060140268A1 (en) * 2004-12-29 2006-06-29 Samsung Electronics Co., Ltd. Method and apparatus for reduction of compression noise in compressed video images
US7599439B2 (en) * 2005-06-24 2009-10-06 Silicon Image, Inc. Method and system for transmitting N-bit video data over a serial link
JP5082209B2 (ja) * 2005-06-27 2012-11-28 株式会社日立製作所 送信装置、受信装置、及び映像信号送受信システム
US7844762B2 (en) * 2006-02-24 2010-11-30 Silicon Image, Inc. Parallel interface bus to communicate video data encoded for serial data links
US8204104B2 (en) 2006-03-09 2012-06-19 Sony Corporation Frame rate conversion system, method of converting frame rate, transmitter, and receiver
US20080101467A1 (en) * 2006-10-27 2008-05-01 Radiospire Networks, Inc. Method and system for secure and efficient wireless transmission of HDCP-encrypted HDMI/DVI signals
JP2008113198A (ja) * 2006-10-30 2008-05-15 Sony Corp 伝送方法、伝送システム、送信装置及び受信装置
CN101627625A (zh) * 2007-03-13 2010-01-13 索尼株式会社 通信系统、发送装置、发送方法、接收装置以及接收方法
JP2008252834A (ja) * 2007-03-30 2008-10-16 Toshiba Corp 音声再生装置
JP4971881B2 (ja) * 2007-06-20 2012-07-11 キヤノン株式会社 画像符号化装置及び画像復号装置、並びにそれらの制御方法
JP5358931B2 (ja) * 2007-11-28 2013-12-04 ソニー株式会社 送信装置及び受信装置
JP5593596B2 (ja) * 2008-02-04 2014-09-24 ソニー株式会社 映像信号送信装置および映像信号送信方法
JP2009206696A (ja) * 2008-02-27 2009-09-10 Mitsubishi Electric Corp 伝送システム
US20090295987A1 (en) * 2008-05-30 2009-12-03 Mediatek Inc. Apparatus and Method for Processing a Vertical Blanking Interval Signal
EP2146343A1 (en) * 2008-07-16 2010-01-20 Deutsche Thomson OHG Method and apparatus for synchronizing highly compressed enhancement layer data
JP5131101B2 (ja) * 2008-09-09 2013-01-30 富士通株式会社 動画像編集装置および動画像編集プログラム
WO2010073299A1 (en) * 2008-12-25 2010-07-01 Thomson Licensing Transmitting apparatus, receiving apparatus, system, and method used therein
JP5332773B2 (ja) 2009-03-18 2013-11-06 ソニー株式会社 画像処理装置および方法
US8341168B1 (en) * 2009-06-04 2012-12-25 Workday, Inc. System for displaying hierarchical data
US8705623B2 (en) * 2009-10-02 2014-04-22 Texas Instruments Incorporated Line-based compression for digital image data
JP5460405B2 (ja) * 2010-03-24 2014-04-02 キヤノン株式会社 画像表示装置およびその制御方法
US8930692B2 (en) * 2010-07-23 2015-01-06 Silicon Image, Inc. Mechanism for internal processing of content through partial authentication on secondary channel
JP2012039476A (ja) * 2010-08-09 2012-02-23 Sony Corp 送受信装置および送受信方法
JP5655562B2 (ja) * 2010-12-28 2015-01-21 ソニー株式会社 電子機器、電子機器の制御方法、送信装置および受信装置
EP2785051A4 (en) * 2011-11-25 2015-11-25 Hitachi Maxell IMAGE TRANSMISSION DEVICE, IMAGE TRANSMISSION METHOD, IMAGE RECEPTOR AND IMAGE RECEPTION PROCESS
WO2013122385A1 (en) * 2012-02-15 2013-08-22 Samsung Electronics Co., Ltd. Data transmitting apparatus, data receiving apparatus, data transreceiving system, data transmitting method, data receiving method and data transreceiving method
JP6541933B2 (ja) * 2012-12-28 2019-07-10 ヤマハ株式会社 信号処理装置及び信号処理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030063601A1 (en) * 1997-02-14 2003-04-03 Mitsuo Niida Communication apparatus and communication method
US8000350B2 (en) * 2003-09-22 2011-08-16 Inova Semiconductors Gmbh Reducing bandwidth of a data stream transmitted via a digital multimedia link without losing data
US20130195160A1 (en) * 2012-01-27 2013-08-01 Apple.Inc. Methods and apparatus for error rate estimation

Also Published As

Publication number Publication date
TW201536040A (zh) 2015-09-16
JP2017512030A (ja) 2017-04-27
TWI662837B (zh) 2019-06-11
WO2015134159A1 (en) 2015-09-11
TWI660627B (zh) 2019-05-21
DE112015001136T5 (de) 2016-11-24
KR101996334B1 (ko) 2019-07-04
CN106105186A (zh) 2016-11-09
WO2015134203A1 (en) 2015-09-11
KR102232017B1 (ko) 2021-03-25
JP6684223B2 (ja) 2020-04-22
KR20160131083A (ko) 2016-11-15
US20180035122A1 (en) 2018-02-01
TW201536041A (zh) 2015-09-16
US9800886B2 (en) 2017-10-24
CN106105186B (zh) 2019-04-19
US20150256842A1 (en) 2015-09-10
JP2017512031A (ja) 2017-04-27
US10027971B2 (en) 2018-07-17
CN106256113A (zh) 2016-12-21
DE112015001145T5 (de) 2016-11-17
US20150256863A1 (en) 2015-09-10

Similar Documents

Publication Publication Date Title
US10027971B2 (en) Compressed blanking period transfer over a multimedia link
JP5797267B2 (ja) データストリームの部分暗号化のためのメカニズム
EP2421262B1 (en) Video signal receiption device and video signal transmission system
US20110103472A1 (en) Methods, systems and devices for compression of data and transmission thereof using video transmission standards
US9258603B2 (en) Method and system for achieving higher video throughput and/or quality
US9262988B2 (en) Radio frequency interference reduction in multimedia interfaces
US9413985B2 (en) Combining video and audio streams utilizing pixel repetition bandwidth
US9191700B2 (en) Encoding guard band data for transmission via a communications interface utilizing transition-minimized differential signaling (TMDS) coding
US20020097869A1 (en) System and method for increased data capacity of a digital video link
KR20170059757A (ko) 영상 신호 송신 장치, 그의 영상 신호 송신 방법, 영상 신호 수신 장치 및 그의 영상 신호 수신 방법
US11962847B1 (en) Channel hiatus correction method and HDMI device
CN107950032B (zh) 用于修改加密多媒体数据流的装置和方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right