zoukankan      html  css  js  c++  java
  • HDMI基础知识,包括InfoFrame的简单介绍

    在這高畫質數位視訊的時代裡,相信已經有不少人對HDMI端子都略有所聞了吧!一些特別喜愛AV的玩家們,也應該早已品嘗到HDMI端子所帶來的震撼影音效果了。高畫質數位視訊的美麗畫面,透過HDMI端子的傳送,由於減少了類比與數位之間的傳輸格式轉換,確實帶給了消費者們對影音享受的另一番美麗新天地。從最早期的數位電視廣播,到可以預錄的數位電視錄放影機DVHS,以及新科技的藍光DVD等等,都已經可以將高解析度的數位電視節目透過HDMI端子呈現在消費者面前,這些節目的解析度從720P、1080i甚至是1080P所呈現出來的畫質都是極富立體感、透明的、栩栩如生的,宛如透過一扇窗來欣賞我們這真實美妙的世界。不過,當然少不了一個高階的數位視訊顯示器來搭配演出,因此這些搭配著HDMI端子的數位顯示器也隨著這股風潮開始在市面上爭奇鬥艷一番了,包括電漿電視、液晶電視,投影機、各種技術的內投影電視等等,真是不勝枚舉啊!

            談到這裡,讀者們應該發現了,對於帶領著高畫質數位視訊時代的來臨,HDMI端子著實扮演著一個重要的關鍵角色。其實HDMI端子簡單的說就是一種連接線啦!現在市面上常見的一些訊號連接線,從AV端子、S Video到色差線,都是類比傳輸的連接線,如果使用這些線材來傳遞訊號,一定少不了從數位轉類比再從類比轉數位的轉換過程;一旦訊號經過轉換,必然會有失真產生,也就是說無法到達原影重現的最高境界了。DVI端子可說是HDMI的前輩,是最早用來傳送數位視訊的,但是由於體積大,又只能傳送影像訊號,因此並不適合應用在消費性電子產品上,不過由於大家對高畫質數位視訊的渴望,HDMI傳輸介面便在眾人的努力下問世了。除了傳輸方式的不同外,另外還有一個相當被重視並廣泛探討的問題,那就是著作權保護的技術,這些技術也慢慢的走出檯面運用在數位傳輸上。在影音娛樂這個業界裡,都贊同數位傳輸的介面是將來發展的趨勢,原因有二:一是它提供了比現在類比傳輸介面更優越的內容重現能力,也就是幾無失真的傳輸方法。另一個原因就是它提供內容保護的機制(HDCP),以防止高畫質數位訊號遭受盜拷。在這篇文章中,筆者想要為大家進一步介紹新數位影音傳輸介面HDMI (High Definition Multimedia Interface, 高畫質多媒體傳輸介面)。

    HDMI端子概觀
            首先在為各位介紹HDMI端子的規格跟演進的種類前,我們先總觀一下HDMI端子連結訊號的系統架構。HDMI系統包含著兩個單元,訊號發送端(Source)與訊號接收端(Sink),Source端必須遵守有關Source端的規範,而Sink端就必須遵守有關Sink端的規範,這兩者的規範都是相當嚴謹而具體的。Source端與Sink端之間,是利用TMDS資料格式(TMDS Channel)來傳輸影音資料的,TMDS序列傳輸技術,一個獨立的TMDS 「資料鏈」(link)包括了三對數位訊號通道,分別傳遞紅、綠、藍三個顏色的資料,再加上同步訊號與時脈。在傳遞前,系統會先將8-bit的數位資料轉成10-bit的TMDS序列,然後接收端再將10-bit的序列資料轉成8-bit的可用資料。因此,為了傳輸數位的RGB資料必須使用三個TMDS訊號,最後形成一個TMDS「資料鏈」。在傳遞的時候,因為每個數位訊號通道已經形成TMDS序列,便可以很方便的一個位元一個位元的傳遞出去,而每個通道的傳輸速率可以達到每秒1.65個Gigabits (Gbps)。以一個獨立的「資料鏈」其傳輸的頻寬可以高達每秒4.95個Gbps(R + G + B),如果說用RGB構成一個畫素的話,可用的頻寬就是1.65 Gpixels/sec,這樣夠快了吧!

            事實上,HDMI是可以支援在同一條連接線上傳輸兩個「資料鏈」的,這樣做只需要多三個數位視訊通道,而同步訊號與時脈是可以被共用的,這樣一來可用的頻寬又加倍了,這樣的線我們稱做Dual-link,而只支援一個資料鏈的線通常稱做Single-link。另外,HDMI端子提供了一組DDC通道,是用來交換資料建立出正確的影音連結(Link)用的,Source端會透過DDC通道來讀取Sink端的延伸顯示器辯識資料區(E-EDID),EDID包含了有關顯示器的詳細資料,例如顯示器名稱、可支援的解析度等等。HDMI還包括了一個可用的控制信號,它是一個雙向的通道,當連結所有具有HDMI介面的設備時,很自然的便可以形成一個鏈環,所有的設備都可以互相溝通,有一點像iLink的味道,它的通訊協定是以在歐洲相當流行的AV.Link標準為基礎的,叫做CEC (Consumer Electronics Control)。CEC是相當有用的信號,可以讓我們家裡獨立的一些影音設備如DVD播放器,擴大機,電視等等設備,只需要一個遙控器,就可以讓它們合作無間的工作在一起,非常方便,並且它可以將一連串的控制命令組合成單一指令,例如下達一個指令叫「播放DVD」,那麼就會有一連串的動作產生,包括按下DVD的播放鍵,打開電視,選擇電視到正確的影像來源等等,如配圖所示,可讓讀者對HDMI介面有個概觀的認識。

    HDMI端子的規格
            HDMI端子的規格基本上是由幾家大廠共同制定的,有Hitachi,Matsushita,Sony,Silicon Image、Toshiba、Philips、Thomson等等。最早制定出來的規格HDMI 1.0,是HDMI端子的基礎規格,可以說是一棵大樹的根吧!它是在2002年的12月公佈出來的,吸引著許多消費性電子大廠的目光並躍躍欲試。在Silicon Image的傳收IC出現的帶動下,研發搭載HDMI端子的產品,便默默地在各家廠商的研發中心裡進行著。HDMI 1.0的內容主要包含著六大部分: 1. 實體層(Physical Layer),2. 資料的傳收格式(Signaling and Encoding),3. 相容的視訊格式(Video),4. 支援的音訊種類(Audio),5. 訊號格式的控制(Control and Configuration),6. CEC通道的支援(Consumer Electronics Control)。在實體層,首先談到的,便是HDMI端子的接頭與接線,傳輸訊號的實體物件。在HDMI1.0的規範裡,接頭分為兩種:Type A跟Type B。對於端子接頭的規範,第一點便是可搭載的視訊不同,Type A的端子只能搭載在HDMI 1.0規範中有提到可支援的視訊訊號,而Type B便沒有限制,可以傳輸任何的視訊訊號,此項規範對於Source端或Sink端皆相同。第二個不同是:Type A的HDMI端子只支援Single TMDS Link,而Type B可以支援Dual-Link,因此Type A的速度可達165Mpixels/sec;若要傳送速度高於165Mpixles/sec就必須使用Type B的端子接頭了,也就是說大於1080p的訊號只能用Type B端子。在規範裡,HDMI端子是可以相容DVI訊號(DVI-D)的。讓我們看看下圖,實際見識一下HDMI Type A與Type B端子的不同之處。
    在資料的傳收格式方面,HDMI 1.0規定使用TMDS Link來傳送資料,以一個Single Link來看,共有四個TMDS通道,包括三個資料通道(Data Channel)以及一個辨別解析度用的時脈通道(Clock Channel),HDMI可以透過TMDS Link來傳送影像資料、聲音資料以及控制用資料。對於傳送格式方面,由於比較偏向細節的技術層面,在此筆者便點到為止。接下來,為了保證HDMI機器的相容性,也就是說只要有HDMI設計的機器在訊號的傳送與接收方面,都不會發生問題,HDMI 1.0在相容的視訊格式上有明白的規定。

    第一、傳送的任何視訊格式必須符合EIA/CEA-861B標準。
    第二、所有的HDMI傳送端(Source)必須至少支援下面三種視訊中的其中一種:
    640x480p @ 59.94/60Hz
    720x480p @ 59.94/60Hz
    720x576p @ 50Hz
    第三、有搭載HDMI輸出的機器,只要有任何輸出端子能夠輸出下列其中之一的視訊格式,都必須能夠從HDMI輸出該視訊格式(無論是色差端子或S端子等等)
    1280x720p @ 59.94/60Hz
    1920x1080i @ 59.94/60Hz
    720x480p @ 59.94/60Hz
    1280x720p @ 50Hz
    1920x1080i @ 50Hz
    720x576p @ 50Hz
    第四、只要能支援60Hz輸入的HDMI設備,都必須支援640x480 @ 59.94/60Hz跟480p @ 59.94/60Hz,若進一步有支援HDTV的話,便必須支援1280x720p @ 59.94/60Hz 或 1920x1080i @ 59.94/60Hz其中一種。
    第五、只要能支援50Hz輸入的HDMI設備,都必須支援640x480 @ 59.94/60Hz跟576p @ 50Hz,若進一步有支援HDTV的話,便必須支援1280x720p @ 50Hz 或 1920x1080i @ 50Hz其中一種。
    第六、有搭載HDMI輸入的機器,只要有任何輸入端子能夠輸入下列其中之一的視訊格式,都必須能夠從HDMI輸入該視訊格式(無論是類比或數位的端子)
    1280x720p @ 59.94/60Hz
    1920x1080i @ 59.94/60Hz
    1280x720p @ 50Hz
    1920x1080i @ 50Hz

            有了這些規格,讀者們便可以簡單自我檢視一下,自己的設備是不是真正符合HDMI的規範了,下表為HDMI 1.0規定HDMI需支援的視訊種類:
    在影像畫素傳送的壓縮方式上,一條HDMI線可以傳送三種不同的壓縮方式:YCbCr 4:4:4, YCbCr 4:2:2以及RGB 4:4:4。一個HDMI的接收端必須能夠接受這三種不同的方式,而在HDMI 1.0則只有8 bits資料的傳輸。在色彩表現空間(Color Space)的定義上,HDMI 1.0也規範的相當清楚,首先對480i/p、576i/p、 240p與288p,HDMI採用的標準是以SMPTE 170M為基礎的,SMPTE 170M基本上是針對Analog Composite NTSC訊號的規範,?而這些屬於SMPTE 170M的SD訊號,在色彩表現空間的座標轉換上,如YCbCr轉RGB,是使用ITU-R BT.601-5中規範的方式來轉換,除非在資料交換的封包裡(AVI InfoFrame)有特別的色座標定義。針對HD的訊號如1080i,1080p及720p,HDMI 1.0則是使用ITU-R BT.709-4。
    接下來,讓我們談談支援的音訊種類(Audio)部分,HDMI在音訊資料的傳送上,它的封包格式是接近IEC 60958或IEC 61938標準的,IEC是一個國際性的標準制定組織,主要範圍是與電氣技術相關的標準。HDMI 1.0對音訊主要的規範如下:
    第一、有搭載HDMI輸出端子的設備,只要有任何的聲音輸出端子,就必須能夠在HDMI端子輸出聲音。(此項規定只有在Type B的端子上有例外)
    第二、任何有音訊從HDMI端子輸出的設備,都要有支援兩聲道L-PCM輸出,取樣頻率可以是32kHz、44.1kHz或48kHz,取樣大小至少要為16 bits。
    第三、HDMI端子在L-PCM或經過編碼的聲音資料輸出上,可以支援32kHz、44.1kHz、48kHz、88.2kHz、96kHz、176.4kHz跟192kHz的取樣頻率。
    第四、有搭載HDMI輸入端子的設備,只要有任何的聲音輸入端子,就必須能夠在HDMI端子輸入聲音。
    第五、可以接收音訊輸入的設備,都要在搭載的HDMI端子上有支援兩聲道L-PCM輸入,取樣頻率可以是32kHz、44.1kHz或48kHz。
    第六、HDMI接收端必須在E-EDID資料裡定義可以接收的音訊資料。

            在此要特別提出的一點是,HDMI對音訊的傳送其實跟視訊的解析度息息相關的,這是因為音訊資料並沒有專用的解碼時脈(Clock),必須借用視訊資料的時脈,因此並非所有的解析度都能夠支援到八聲道/192kHz。基本上,對於Audio的支援,在EIA CEA-861B裡,都有詳細的規範,包括聲道,喇叭的配置等等,因此在HDMI 1.0裡,便可以支援到最多8個聲道/192kHz,以及壓縮多聲道音訊包括AC3、MPEG1、MP3、MPEG2、AAC、DTS以及ATRAC等。

            最後筆者要提到的是,訊號格式的控制以及CEC通道的運用,在HDMI的交換資料裡,有三個不同的交換通道,TMDS、DDC跟CEC通道。在TMDS通道裡,除了攜帶的影音資料外,有所謂的InfoFrame扮演著重要的角色,來描述幫助HDMI訊號的建立。在此筆者想特別提出來談的InfoFrame有兩個,一個叫做AVI InfoFrame,專門掌控Video訊號,另一個是Audio InfoFrame,用來定義音訊格式,AVI InfoFrame的全文是Auxiliary Video information InfoFrame;若要筆者翻譯的話,顧名思義就是『輔助視訊建立的資料』。這個資料裡面,包含著傳送的視訊訊號解析度的完整資料(與定義在EIA/CEA-861B規範裡面的相同),因此HDMI可以更精確的將視訊重建起來。同理Audio InfoFrame也是在重建音訊上,扮演著相同的角色,可以提供的資料有聲道的個數、音訊的壓縮格式(AC3或DTS等)、取樣頻率等等。有了這兩個InfoFrame,使得HDMI在訊號的重建上,又更健全完整了。

            在DDC通道上,HDMI的傳送端會去讀取儲存HDMI的接收端的E-EDID資料,用來判斷接收端可以接收的訊號種類、訊號格式有哪些。這些資料是很重要的,一旦HDMI端子無法正確交換這些資料,就不會有HDMI訊號傳送了,另外,也會影響到可輸出的解析度,例如原本DVD播放機可以輸出HDMI 1080i的訊號,當EDID有錯誤時,就不能輸出了。最後CEC通道,CEC在HDMI的訊號的傳送裡,其實是不需要的,也就是說HDMI設備們可以選擇要不要用到這個通道,CEC通道的主要目的是讓一個HDMI設備可以去控制其他的HDMI設備,有點像iLink的控制功能,因此可以衍生出來的功能便有一鍵播放(One touch play)、控制選台器、抓取設備系統資料等等,不過目前筆者還沒真正看到此CEC通道的運用。以上是HDMI最初版的大概內容,因為HDMI後續發展的版本眾多,筆者在這先讓讀者了解HDMI規範的根本,接下來要描述更多的HDMI規格,會著重在版本的不同之處,可以讓讀者們知道自己的設備可以支援到哪些HDMI的功能。

    HDMI 1.1
            在2004年5月20日制訂完成,與1.0版的不同處主要有以下幾項:
    第一、將端子的電器特性與尺寸定義的更清楚完整,並且對支援的視訊定義的更嚴謹,主要為Type A端子上的限制,限制只能傳送在規範中的視訊訊號或者EDID裡面有定義的視訊,Type B則無限制。
    第二、定義DVD-Audio的支援,並新增控制封包ACP(Audio Content Protection)、ISRC等,以及將InfoFrame與CEC通道定義得更明確。
    第三、加入數位內容保護機制(HDCP版本1.10)的描述定義,並在EDID裡,新定義欄位HDMI VSDB,可用來更清楚區分DVI與HDMI的機器。
    基本上,HDMI1.1本著1.0的規範,對於視訊種類的支援能力是一樣的,並沒有改變。

    HDMI 1.2
            在2005年8月22日完成,與前版的主要不同點如下:
    第一、HDMI端子在1.2版有一個新增的音訊支援,就是Super Audio CD,在1.2中將Super Audio CD定義出來,可支援高達八聲道的音訊資料,讓Super Audio CD在HDMI端子上,也得到了發展空間。
    第二、移除掉在Type A端子上只能傳送規範中的視訊訊號的限制,如此一來Type A端子也可以自由自在的傳送PC訊號了。當然頻寬還是限制在165Mpixels/sec以下。
    第三、對於端子與線材的機構、電氣需求特性規定的更嚴謹清楚。

    HDMI 1.2a
            在2005年12月14日提出,主要為完成CEC通道的所有應用層面的定義,包括特色、指令集和相關的相容性測試規定(Compliance Test)。

    HDMI 1.3
            在2006年6月22日正式提出,此版本為目前最新的正式版本,有七個特別重要的更新,也是有重大突破的一次改版,筆者在此提出如下:
    第一、可攜帶的影音資料頻寬加倍(Higher-speed single-link),因此一個Single Link的端子(如Type A)就可以支援到高達340Mpixels/sec。
    第二、新端子Type C迷你端子的出現,此端子Type A端子相同,都是Single Link,只是更小,可用在行動式裝置上如PDA、手機等等。大小及外觀如下所示:
    第三、在三種類型的端子上,所有可以動作的功能與可以傳輸的資料皆相同了。再也沒有特定端子才能傳輸特定HDMI訊號的限制了。
  • 相关阅读:
    PHP保留小数的相关方法
    ASP.NET Core MVC 之过滤器(Filter)
    ASP.NET Core MVC 之控制器(Controller)
    ASP.NET Core MVC 之视图组件(View Component)
    ASP.NET Core MVC 之局部视图(Partial Views)
    标签助手(TagHelper)
    ASP.NET Core MVC 之布局(Layout)
    ASP.NET Core MVC 之视图(Views)
    ASP.NET Core MVC 之模型(Model)
    九卷读书:淘宝从小到大的发展 -重读《淘宝技术这十年》
  • 原文地址:https://www.cnblogs.com/super119/p/2782043.html
Copyright © 2011-2022 走看看