TWI521939B - 用於低頻寬顯示資訊傳輸之系統及方法 - Google Patents

用於低頻寬顯示資訊傳輸之系統及方法 Download PDF

Info

Publication number
TWI521939B
TWI521939B TW098106489A TW98106489A TWI521939B TW I521939 B TWI521939 B TW I521939B TW 098106489 A TW098106489 A TW 098106489A TW 98106489 A TW98106489 A TW 98106489A TW I521939 B TWI521939 B TW I521939B
Authority
TW
Taiwan
Prior art keywords
display system
remote display
video
digital video
encoding format
Prior art date
Application number
TW098106489A
Other languages
English (en)
Other versions
TW200948087A (en
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 TW200948087A publication Critical patent/TW200948087A/zh
Application granted granted Critical
Publication of TWI521939B publication Critical patent/TWI521939B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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 or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
    • H04N21/2358Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages for generating different versions, e.g. for different recipient devices
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4113PC
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4122Peripherals receiving signals from specially adapted client devices additional display device, e.g. video projector
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42607Internal components of the client ; Characteristics thereof for processing the incoming bitstream
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42653Internal components of the client ; Characteristics thereof for processing graphics
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4516Management of client data or end-user data involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/454Content or additional data filtering, e.g. blocking advertisements
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Graphics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

用於低頻寬顯示資訊傳輸之系統及方法
本發明係關於精簡型用戶端(thin-client)之領域。特定言之,但並非作為限制的係,本發明揭示用於對用於精簡型用戶端終端機系統的視訊進行編碼之技術。
集中式電腦系統(具有用於存取該集中式電腦系統之多個終端機系統)曾經係主要的電腦架構。此等主機電腦或迷你電腦系統係由多個電腦使用者共享,其中每一電腦使用者可存取耦合至該主機電腦之一終端機系統。
在1970年代晚期及1980年代早期,半導體微處理器及記憶體器件允許建立便宜的個人電腦系統。個人電腦系統藉由允許每一個別電腦使用者可存取其自己的整個電腦系統來革命化電腦產業。每一個人電腦使用者可運行其自己的軟體應用程式而無需與任何其他電腦使用者共享該個人電腦的任何資源。
儘管個人電腦系統已成為主要的計算形式,但具有多個終端機形式的計算之集中式電腦已再現。終端機系統可具有減小的維護成本,因為終端機使用者無法容易地將病毒引入至主電腦系統中或載入未經授權的電腦程式。此外,現代個人電腦系統已變成十分強大以至於在此等現代個人電腦系統中的計算資源一般在絕大部分時間中保持閒置。
以下詳細說明內容包括對附圖之參考,其形成該詳細說明內容之一部分。該等圖式顯示依據範例性具體實施例之圖解。此等具體實施例(其在本文中亦稱為「範例」)係充分詳細地說明以使得熟習此項技術者能夠實施本發明。熟習此項技術者會明白該等範例性具體實施例中的特定細節並非實施本發明所必須。例如,儘管該等範例性具體實施例主要係參考一精簡型用戶端系統來揭示,但該等教導內容可用於其他環境中。可組合該等範例性具體實施例,可利用其他具體實施例,或可進行結構、邏輯及電性變化而不脫離申請專利範圍。因此,以下詳細說明內容不應從一限制意義來看待,而本發明的範疇係藉由隨附申請專利範圍及其等效範圍予以定義。
在本文中,如專利文獻中之常用情形,術語「一」或「一個」係用於包括一或多於一個。在本文中,附另有指示外,術語「或」係用於表示一非唯一性或使得「A或B」包括「A而非B」、「B而非A」及「A與B」。此外,本文中參考的所有公告案、專利案及專利文獻之全部內容係以引用的方式併入於此,猶如以引用的方式個別併入。在本文與以如此引用方式併入的該些文獻之間的用法不一致的情況下,應將在該(等)併入的參考文獻中之用法視為對本文之用法的補充,對於無法調和的不一致,以本文中之用法為準。
電腦系統
本揭示內容係關於電腦系統。圖1解說以可用於實施本揭示內容之部分的一電腦系統100作為範例形式的機器之一概略表示。在電腦系統100內存在一組指令124,可執行該組指令124以用於造成該機器實行本文所述方法中的一或多者。在一網路化的部署中,該機器可依主從式網路環境中之一伺服器機器或一用戶端機器之能力操作,或作為在一同級式(或分散式)網路環境中之一同級機器操作。該機器可以係一個人電腦(PC)、一平板型PC、一視訊轉換器(STB)、一個人數位助理(PDA)、一蜂巢式電話、一網站器具、一網路路由器、交換器或橋接器,或能夠執行指定欲由該機器採取之動作的一組電腦指令(循序或其他方式)之任何機器。此外,雖然僅解說一單一機器,但術語「機器」還應視為包括個別或共同執行一組(或多組)指令以實行本文所述方法中的一或多者的機器之任何集合。
該範例性電腦系統100包括一處理器102(例如,一中央處理單元(CPU)、一圖形處理單元(GPU)或兩者)、一主記憶體104與一靜態記憶體106(其經由一匯流排108彼此通信)。該電腦系統100可進一步包括一視訊顯示配接器110,該視訊顯示配接器110驅動一視訊顯示系統115,例如一液晶顯示器(LCD)或一陰極射線管(CRT)。該電腦系統100亦包括一文數字輸入器件112(例如,一鍵盤)、一游標控制器件114(例如,一滑鼠或軌跡球)、一碟片驅動單元116、一信號產生器件118(例如,一揚聲器)及一網路介面器件120。
該碟片驅動單元116包括一機器可讀取媒體122,在該機器可讀取媒體122上儲存體現本文所說明的方法或功能中的任何一或多者或供該任何一或多者利用之一或多組電腦指令及資料結構(例如,亦稱為「軟體」之指令124)。該等指令124在其藉由電腦系統100執行期間亦可完全或至少部分地駐留於該主記憶體104內及/或於該處理器102內,該主記憶體104與該處理器102亦構成機器可讀取媒體。
可進一步經由電腦介面器件120透過一電腦網路126來傳送或接收該等指令124。此類傳送可利用數個熟知的傳輸協定(例如,熟知的檔案傳輸協定(FTP))之任一協定來發生。
儘管在一範例性具體實施例中將該機器可讀取媒體122顯示為一單一媒體,但術語「機器可讀取媒體」應視為包括儲存該一或多組指令之一單一媒體或多個媒體(例如,一集中式或分散式資料庫及/或相關聯的快取記憶體及伺服器)。術語「機器可讀取媒體」還應視為包括能夠儲存、編碼或載送用於藉由該機器來執行的一組指令且造成該機器實行本文所說明的方法中的一或多者或能夠儲存、編碼或載送供此類一組指令利用或與其相關聯的資料結構之任何媒體。術語「機器可讀取媒體」應相應地視為包括但不限於固態記憶體、光學媒體及磁性媒體。
基於本說明書之目的,術語「模組」包括一可識別的碼部分、運算或可執行的指令、資料或計算物件以實現一特定功能、操作、處理或程序。無需在軟體中實施一模組,可在軟體、硬體/電路或軟體與硬體之一組合中實施一模組。
端機系統之再現
在便宜的個人電腦出現之前,計算產業大多使用主機電腦或耦合至許多「無聲」終端機之迷你電腦。此類終端機係稱為「無聲」終端機,因為駐留於該主機電腦或迷你電腦與該終端機內的計算能力僅顯示一輸出及已接受的文數字輸入。無任何使用者應用程式運行於該終端機系統本端上。電腦操作者讓各使用耦合至該主機電腦的個別終端機之多個個別使用者共享該主機電腦。此等終端機系統一般具有十分有限的圖形能力而大多數僅將文數字字元視覺化於該終端機之顯示螢幕上。
隨著現代個人電腦系統之引入,無聲終端機之使用大多因個人電腦之成本效益遠遠更高而消失。若需要一無聲終端機之服務來介接一基於一舊有終端機的電腦系統,則個人電腦可能容易地以與一專用無聲終端機的成本十分類似之一成本來模擬一無聲終端機之操作。
在個人電腦革命期間,個人電腦將高解析度圖形引入至個人電腦使用者。此類高解析度圖形允許與一唯文字顯示器相比直覺性遠遠更強之電腦使用者介面。例如,使用多個不同視窗、圖示及下拉功能表之所有當前使用者介面係實施於高解析度圖形中。此外,高解析度圖形允許使用照片、視訊及圖形影像之應用程式。
近年來,已將新一代終端機系統引入至電腦市場,因為人們已發現基於一終端機的電腦系統之某些優點。例如,電腦終端機允許更大安全性及減少的維護成本,因為電腦終端機系統之使用者無法容易地藉由下載或安裝新軟體來引入電腦病毒。在基於終端機的電腦系統中僅需要密切監視該主電腦伺服器系統。此新一代電腦終端機系統包括個人電腦使用者已習以為常之高解析度圖形能力、音訊輸出及游標控制系統(滑鼠、軌跡墊、軌跡球等)輸入。
現代的基於終端機之電腦系統允許處在個別高解析度終端機系統的多個使用者共享一單一的個人電腦系統及所有安裝於該個人電腦系統上之應用程式軟體。以此方式,一現代高解析度終端機系統能夠向每一使用者提供一個人電腦系統之幾乎全部功能性而並無對用於每一使用者之一個別個人電腦系統的成本及維護要求。此等現代終端機系統之一類別係稱為「精簡型用戶端」系統,因為該等終端機系統係設計成十分簡單而有限(因此係「精簡型」)而因此主要取決於用於應用程式處理活動之一精簡型用戶端伺服器系統。該精簡型用戶端終端機系統因此僅主要集中於在該使用者與該集中式伺服器系統之間傳遞輸入與輸入。應注意,儘管將參考精簡型用戶端終端機系統來揭示本文所提出之技術,但本文所說明之技術亦適用於IT產業之其他領域。例如,遠端顯示視訊資訊之任何系統可使用本文所揭示之教導內容。
精簡型用戶端系統
圖2A解說耦合至一個(可以係多者中的一個)精簡型用戶端終端機系統之一精簡型用戶端伺服器電腦系統220之一具體實施例的一高階方塊圖。該精簡型用戶端伺服器電腦系統220及精簡型用戶端終端機系統240係耦合至一雙向數位通信通道230(其可以係一串資料連接)、一乙太網路連接或任何其他合適的雙向數位通信構件。
圖2B解說一精簡型用戶端環境之一概念圖。參考圖2B,一單一的精簡型用戶端電腦系統220向許多精簡型用戶端終端機系統240提供電腦處理資源。在圖2B之具體實施例中,該等個別精簡型用戶端終端機系統240之每一者係使用區域網路230作為一雙向通信通道而耦合至該精簡型用戶端伺服器電腦系統220。
精簡型用戶端終端機系統240之目的係向該精簡型用戶端終端機系統240之使用者提供一個人電腦系統的標準輸入及輸出特徵之大多數或全部特徵。但是,此目的將係以不在精簡型用戶端終端機系統240內提供一個人電腦系統之全部計算資源或軟體為條件來實現,因為該些特徵將係藉由將與該精簡型用戶端終端機系統240相互作用之精簡型用戶端伺服器系統220來提供。
回過來參考圖2A,該精簡型用戶端終端機系統240使用一高解析度視訊顯示系統與一音訊輸出系統來提供視覺與聽覺輸出兩者。該高解析度視訊顯示系統係由一圖框解碼器261、一螢幕緩衝器260及一視訊配接器265組成。該圖框解碼器261解碼來自在該伺服器中之相關聯的精簡型用戶端螢幕緩衝器215之數位視訊資訊並將該數位視訊資訊放置入螢幕緩衝器260內,由此形成螢幕緩衝器260。螢幕緩衝器260包含在精簡型用戶端螢幕緩衝器215中的位元映射顯示之一副本。視訊配接器265從螢幕緩衝器260讀取該視訊顯示資訊並產生一視訊顯示信號來驅動顯示系統267。藉由視訊顯示資訊來填充該螢幕緩衝器260,該視訊顯示資訊係藉由精簡型用戶端控制系統250使用視訊資訊(其係藉由該精簡型用戶端伺服器系統220橫跨雙向通信通道230作為輸出221來發送)來提供。明確言之,在該精簡型用戶端伺服器系統220中的視訊圖框編碼器217從一精簡型用戶端螢幕緩衝器215向該精簡型用戶端終端機系統240發送資訊以便該精簡型用戶端終端機系統240可在其螢幕緩衝器260中建立一副本。
精簡型用戶端終端機系統240之音訊聲音系統以一類似方式操作。該音訊系統係由耦合至一音訊連接器272用於建立一聲音信號之一聲音產生器271組成。藉由音訊資訊精簡型用戶端控制系統250使用音訊資訊(其係藉由該精簡型用戶端伺服器系統220橫跨雙向通信通道230作為輸出221來發送)來供應該聲音產生器271。
從一輸入觀點來看,精簡型用戶端終端機系統240允許向該精簡型用戶端電腦系統220供應來自一終端機系統使用者之文數字輸入與游標控制輸入兩者。該文數字輸入係藉由耦合至一鍵盤連接器282(其向一鍵盤控制系統281供應信號)之一鍵盤283來提供。精簡型用戶端控制系統250編碼來自鍵盤控制系統281之鍵盤輸入並將該鍵盤輸入作為輸入225發送至該精簡型用戶端伺服器系統220。同樣,該精簡型用戶端控制系統250編碼來自游標控制系統284之游標控制輸入並將該游標輸入作為輸入225發送至該精簡型用戶端伺服器系統220。該游標控制輸入係經由一滑鼠連接器285從一電腦滑鼠286或任何其他合適的游標控制器件(例如一軌跡球、軌跡墊等)接收。
該精簡型用戶端終端機系統240可包括其他輸入、輸出或組合的輸入/輸出系統以便向該精簡型用戶端終端機系統240之使用者提供額外的功能性。例如,圖2A所解說之精簡型用戶端終端機系統240包括耦合至輸入/輸出連接器275之輸入/輸出控制系統274。輸入/輸出控制系統274可以係一通用序列匯流排(USB)控制器,而輸入/輸出連接器275可以係一USB連接器,以便向精簡型用戶端終端機系統240之使用者提供通用序列匯流排(USB)能力。
精簡型用戶端伺服器電腦系統220係配備有多任務軟體用於與多個精簡型用戶端系統相互作用。如圖2A所解說,在精簡型用戶端伺服器系統220中的精簡型用戶端介面軟體210支援該精簡型用戶端終端機系統240以及耦合至精簡型用戶端伺服器系統220之任何其他精簡型用戶端終端機系統。每一精簡型用戶端終端機系統240將在該精簡型用戶端伺服器系統220中具有其自己的螢幕緩衝器(例如精簡型用戶端終端機螢幕緩衝器215)。
向終端機系統傳輸視訊資訊
為提供一完整的高解析度視訊圖框緩衝器而需要之頻寬可能相當大。在使用一共享電腦網路來傳輸該視訊顯示資訊之一環境(例如圖2B之精簡型用戶端環境)中,向每一精簡型用戶端終端機系統240傳送的大量視訊顯示資訊可能對該電腦網路230造成不利影響。當運行於該精簡型用戶端伺服器系統220上的應用程式係典型的辦公軟體應用程式(例如文字處理器、資料庫、試算表)時,則存在可用於減少必須透過該電腦網路230輸送的視訊顯示資訊量而同時保持針對每一終端機系統使用者之一高品質的使用者體驗之某些簡單的方法。例如,當針對該特定精簡型用戶端終端機系統240之視訊顯示資訊改變時,該精簡型用戶端伺服器系統220可橫跨該電腦網路230向一精簡型用戶端終端機系統240僅發送視訊資訊。以此方式,當用於一精簡型用戶端終端機系統之顯示螢幕係靜態時,不需要向該精簡型用戶端終端機系統傳送任何資訊。
因此,只要由精簡型用戶端終端機系統的使用者運行之軟體應用程式不十分頻繁地改變該顯示螢幕資訊,則圖2A中所解說之精簡型用戶端系統便將充分工作。但是,若某些精簡型用戶端終端機系統使用者運行向該顯示螢幕顯示完全運動的視訊之軟體應用程式,則透過該電腦網路230的網路訊務之體積將大大增加。若數個使用者運行顯示完全運動的視訊之應用程式,則針對該通信通道230之頻寬要求可變得相當苛刻以至於可能丟失資料封包。丟失的封包將大大減小使用者體驗。
向終端機系統傳輸完全運動的視訊資訊之困難
當以數位方式傳送完全運動的視訊時,可使用視訊壓縮系統來最小化傳輸該視訊資訊所需要之頻寬量。可在發起地點編碼(壓縮)該完全運動視訊,將其以其經編碼形式橫跨一數位通信通道(例如一電腦網路)來傳送、在目的地地點解碼(解壓縮),而接著在該目的地地點顯示於一顯示系統上。存在許多數位視訊編碼系統,例如MPEG-1、MPEG-2、MPEG-4及H.264。此等數位視訊編碼系統係用於數位衛星電視系統、DVD、地面HDTV(High Definition Television;高清晰度電視)傳送系統及數位電纜系統中。
在現代個人電腦系統上實施數位視訊編碼及數位視訊編碼系統相對較容易,因為存在大量可用於該任務之處理能力及記憶體容量。但是,在一精簡型用戶端終端機系統環境中,主要目的之一係將該等精簡型用戶端終端機系統保持為盡可能簡單且便宜。因此,組態具有該處理能力、記憶體及軟體之一精簡型用戶端終端機系統來以在一個人電腦系統中一般實行的方式類似之方式來處理數位視訊解碼可能並不實際。可以此一方式處理數位視訊解碼之一精簡型用戶端終端機系統可能需要大量記憶體以便緩衝傳入的數位視訊資料及處理能力以執行複雜的數位視訊解碼器常式而使得該精簡型用戶端終端機系統可能變得過於昂貴。
在終端機系統中實施完全運動的視訊解碼器
為在精簡型用戶端終端機系統中實施完全運動的數位視訊解碼,本揭示內容建議將一或多個便宜的視訊解碼器併入至一終端機系統內。此等便宜的視訊解碼器可以係離散的積體電路、實施於一特定應用積體電路(ASIC)內之經許可的智慧財產,或採用其他形式。可藉由轉碼來處理用於其他視訊編碼系統之視訊解碼。以此方式,可以低成本地實施一低成本的精簡型用戶端終端機系統,其處理多種視訊編碼系統。
將參考圖3及圖4來揭示所建議之視訊傳輸系統。圖3解說類似於圖2A之環境的一精簡型用戶端環境,其不同之處係已在該精簡型用戶端伺服器220與該精簡型用戶端終端機系統240兩者中實施高級視訊系統。圖4解說一說明圖3中的精簡型用戶端伺服器220如何操作以向該精簡型用戶端終端機系統240輸送視訊資訊之流程圖。
參考圖3,顯示一精簡型用戶端伺服器系統220及一精簡型用戶端終端機系統240。圖3之精簡型用戶端終端機係與圖2A之精簡型用戶端終端機系統240相同,其不同之處係已添加兩個視訊解碼器262與263。其他具體實施例可具有僅一單一視訊解碼器或複數個視訊解碼器。應注意,藉由停用該等視訊解碼器262及263,圖3之精簡型用戶端終端機系統240可在一向後相容模式中操作以使其顯示為與圖2A之精簡型用戶端終端機系統240相同。
在一精簡型用戶端終端機系統架構中,為普及與低實施成本而選擇該等視訊解碼器262及263。若一特定的視訊解碼器係普及但實施起來較昂貴,則該視訊解碼器可能因成本而不實際。但是,由於將大大增強使用者體驗,而可能應選擇用於十分普遍的視訊編碼系統之解碼器。若一特定的視訊解碼器十分昂貴但僅支援一極少使用的數位視訊編碼系統,則不可能選擇此一視訊解碼器,因為添加將極少使用之一視訊解碼器的成本對其而言係物非所值。
可採用運行於一處理器上的軟體來實施該等視訊解碼器,作為離散的現成硬體零件,或作為藉由一特定應用積體電路(ASIC)或一場可程式閘極陣列來實施之合法的數位視訊解碼器核心。在一具體實施例中,選擇一經許可的數位視訊解碼器作為一特定應用積體電路之一部分,因為該精簡性用戶端終端機系統之其他部分亦可能係實施於同一ASIC內。
針對該視訊傳輸系統之伺服器側支援
儘管向該等精簡型用戶端終端機系統添加之視訊解碼器將改良針對該精簡型用戶端終端機使用者之數位視訊體驗,但該視訊傳輸系統若無自圖3之精簡型用戶端伺服器電腦系統220提供之一相當大量的視訊系統支援便將無法操作。為將該精簡型用戶端終端機系統之複雜性及成本保持較低,為針對多種數位視訊編碼系統提供支援而需要的大量工作係在該精簡型用戶端伺服器系統220內處理。此方法之一優點係更新單一的精簡型用戶端伺服器系統220將向受該精簡型用戶端伺服器系統220支援的所有精簡型用戶端終端機系統提供改良的效能。
參考圖3之精簡型用戶端伺服器系統220,用於支援該等精簡型用戶端終端機系統之視訊系統可包括一虛擬圖形卡331、數位視訊解碼器332、數位視訊轉碼器333、精簡型用戶端螢幕緩衝器215及視訊圖框編碼器系統217。應注意,並非所有此等元件在所揭示的視訊傳輸系統之各個具體實施例中皆為必需。
該虛擬圖形卡331用作一用於針對該等精簡型用戶端終端機系統之每一系統而建立視訊顯示之控制系統。在一具體實施例中,一虛擬圖形卡331係針對受該精簡型用戶端伺服器系統220支援的每一精簡型用戶端終端機系統而建立。該虛擬圖形卡331之目的係輸出欲放置入用於一精簡型用戶端終端機系統的精簡型用戶端螢幕緩衝器215中之經位元映射的圖形或輸出受在一精簡型用戶端終端機系統內的視訊解碼器支援之一經編碼的視訊串流。
在該精簡型用戶端伺服器系統220內的視訊解碼器332及視訊轉換器333係用於在處理數位視訊串流時支援該虛擬圖形卡331。明確言之,該等視訊解碼器332及視訊轉碼器333輔助該虛擬圖形卡331處理不受在精簡型用戶端終端機系統中的數位視訊解碼器(前提係存在任何數位視訊解碼器)原生地支援之數位視訊編碼串流。該等解碼器332係用於解碼視訊串流並放置該資料精簡型用戶端螢幕緩衝器215。該等轉碼器333係用於從一第一數位視訊編碼格式轉換成一第二數位視訊編碼格式。在此情況下,該第二數位視訊編碼格式將係受一目標精簡型用戶端終端機器件原生地支援之一數位視訊編碼格式。
該等轉碼器333可以係實施為:數位視訊解碼器,用於將一第一數位視訊串流解碼成個別的經解碼視訊圖框;一圖形緩衝器記憶體空間,用於儲存經解碼的視訊圖框;及一數位解碼器,用於將經解碼的視訊圖框重新編碼成一第二數位視訊格式。此使得該等轉碼器333能夠使用在該個人電腦系統上之現存視訊解碼器。此外,該等轉碼器333可能共享用於實施視訊解碼器332之相同的視訊解碼軟體。
該視訊傳輸系統之操作
為最清楚地說明該精簡型用戶端伺服器系統220及精簡型用戶端終端機系統240之數位視訊系統傳輸系統,將參考圖3之方塊圖及圖4所解說之一流程圖兩者來說明該數位視訊傳輸系統之操作。參考圖4之流程圖之初始階段410,當在該精簡型用戶端伺服器系統220內建立用於精簡型用戶端終端機系統240之一精簡型用戶端終端機會話時,該精簡型用戶端伺服器系統220詢問該精簡型用戶端終端機系統240來揭示其圖形能力,因此該精簡型用戶端伺服器系統220將知道如何處理用於該特定精簡型用戶端終端機系統240之輸出。例如,該精簡型用戶端伺服器系統220可得到關於顯示螢幕解析度、色彩位元深度及該薄膜用戶端終端機系統240所支援的視訊解碼器之通知。在階段420中該精簡型用戶端伺服器系統220使用從該精簡型用戶端終端機系統240接收之視訊顯示資訊來針對與該精簡型用戶端終端機系統240之一終端機會話來初始化該虛擬圖形卡331。
在已將該終端機會話初始化並已建立該虛擬圖形卡331後,該虛擬圖形卡331準備好接受來自該作業系統222(或其他負責輸送終端機會話顯示請求之實體)之顯示請求。當在圖4中的階段430中接收一顯示請求時,該虛擬圖形卡331首先在階段440中決定該顯示請求是否係關於一數位視訊串流或經位元映射的圖形。經位元映射的圖形可以係與一數位視訊串流(例如一線之繪製或文字之顯示)無關之任何顯示請求。若接收一經位元映射的圖形顯示請求,則該虛擬圖形卡331進行到階段445並將經位元映射的像素寫入至與該終端會話相關聯之精簡型用戶端螢幕緩衝器215中。圖3中將此解說為自虛擬圖形卡331至該精簡型用戶端螢幕緩衝器215之「經位元映射的」圖形箭頭。該精簡型用戶端伺服器電腦系統220之視訊圖框編碼器217將讀取該經位元映射的螢幕緩衝器215並編碼來自經位元映射的螢幕緩衝器215之資訊用於傳輸至該精簡型用戶端終端機系統240。該精簡型用戶端終端機系統240將使用該資訊在該精簡型用戶端終端機系統240之螢幕緩衝器260內重建經位元映射的螢幕緩衝器215之一副本。
回過來參考階段440,若藉由該虛擬圖形卡331接收之顯示請求係一數位視訊串流,則該虛擬圖形卡331進行到圖4中的階段450。在階段450中,該虛擬圖形卡331決定與該數位視訊串流請求相關聯之精簡型用戶端終端機系統240是否具有適當的視訊解碼器能力來原生地處置該特定的數位視訊串流。若該相關聯的精簡型用戶端終端機系統240確實具有適當的視訊解碼器能力,則該虛擬圖形卡331進行到階段455,在此階段中其可將該數位視訊串流直接發送至該相關聯的精簡型用戶端終端機系統240,因為該精簡型用戶端終端機系統240可使用其本端解碼器來解碼該數位視訊串流並在本端將其呈現。在圖3上,將此解說為自該虛擬圖形卡331至該精簡型用戶端介面軟體210的經編碼視訊之一箭頭,該精簡型用戶端介面軟體210將該經編碼的視訊傳遞至該相關聯的精簡型用戶端終端機系統240。
回過來參考階段450,若與一數位視訊串流請求相關聯之精簡型用戶端終端機系統240不具有用於該數位視訊串流之適當的視訊解碼器,則該虛擬圖形卡331進行到階段460來以一替代性方式處理該數位視訊串流。在階段460中,該虛擬圖形卡331決定該數位視訊串流之轉碼是否可行且適合。若該精簡型用戶端伺服器系統220缺少適當的視訊轉碼器333來將該數位視訊串流轉碼成在該精簡型用戶端終端機系統240中的視訊解碼器可處理之一經編碼的視訊串流,則一數位視訊串流之轉碼係不可行。
若該視訊串流之轉碼經視為可行且適合,則該虛擬圖形卡331進行到階段465,在此階段中將該視訊串流發送至一適當的轉碼器333以將該數位視訊串流轉碼成在該精簡型用戶端終端機系統240中的視訊解碼器可處理之一經編碼的視訊串流。圖3將此描繪為自該虛擬圖形卡331至該視訊轉碼器333之一箭頭。接著,如階段455中所提出,將該經轉碼的視訊串流發送至該精簡型用戶端終端機系統240。在圖3上,將此描繪為自該視訊轉碼器333至該精簡型用戶端介面軟體210的經編碼視訊之一箭頭,該精簡型用戶端介面軟體210將該經編碼的視訊傳遞至該相關聯的精簡型用戶端終端機系統240。
應注意,在某些情形下,可能可以將一數位視訊串流從一不受支援的視訊編碼格式轉碼為受在該精簡型用戶端終端機系統240中的視訊解碼器支援之一視訊編碼格式,但並不適合如此。數位視訊轉碼可能係一很難的任務,此需要大量記憶體及相當多的處理器資源。因此,若該精簡型用戶端伺服器電腦系統220已經承受一沈重的處理負擔,則其可能不適合轉碼該數位視訊串流。在此類情況下,該系統可拒絕藉由以下替代方法來處理數位視訊串流請求或處理該數位視訊串流。
回過來參考階段460,若視訊串流轉碼係視為不可行或不適合(可能係由於在精簡型用戶端伺服器電腦系統220上已經承受一沈重的處理負擔),則該虛擬圖形卡331可進行到階段470來以一不同方式處理該數位視訊串流。在階段470,該虛擬圖形卡331向一視訊解碼器332發送該數位視訊串流以解碼該視訊串流。圖3中將此描繪為自該虛擬圖形卡331至該視訊轉碼器332的經編碼視訊之一箭頭。該視訊解碼器332解碼該視訊串流並將視訊資訊之連續圖框寫入至用於終端機會話之適當的精簡型用戶端螢幕緩衝器215。圖3中將此描繪為自該視訊解碼器332至精簡型用戶端螢幕緩衝器215之經位元映射的圖形之一箭頭。
當該視訊解碼器332將顯示資訊寫入至該精簡型用戶端螢幕緩衝器215時,該精簡型用戶端伺服器系統220之視訊圖框編碼器217將讀取經位元映射的精簡型用戶端螢幕緩衝器215並將該顯示資訊傳輸至該相關聯的精簡型用戶端終端機系統240。應注意,該視訊圖框編碼器217一般並非設計用以將完全運動視訊處理成使得視訊圖框可能丟失,從而在該精簡型用戶端終端機系統240處造成一時斷時續的視訊顯示。此外,該視訊圖框編碼器217可從該精簡型用戶端螢幕緩衝器215讀取而該視訊解碼器332同時寫入至該精簡型用戶端螢幕緩衝器215,從而使得可能發生視訊圖框撕裂。因此,此處理數位視訊之特定方法並非最佳,但可在該精簡型用戶端伺服器系統220缺少一適當的視訊轉碼器333或該相關聯的精簡型用戶端終端機系統240不具有嵌入式視訊解碼器之情況下使用。
應注意,所有具體實施例不必具有所揭示的所有各種不同組件。例如,可能僅採用視訊轉碼器333來構造一精簡型用戶端伺服器系統220。或者可能僅藉由解碼器332來建造一精簡型用戶端伺服器系統220。不具有任一者之一精簡型用戶端伺服器系統220僅會支援受在該等終端機系統中之原生視訊解碼器支援之視訊編碼系統。一精簡型用戶端伺服器系統220之一較佳實施方案將係藉由視訊轉碼器333與視訊解碼器332兩者之一混合物來實施。
應注意,圖3及4之系統提供最佳效能及最佳效率,因為取決於情況而使用不同的編碼系統。當藉由不頻繁的更新來顯示標準的經位元映射之圖形時,使用該視訊圖框編碼器217,因為當不存在正對該精簡型用戶端螢幕緩衝器215作的任何改變時,其不會在該通信通道上發送任何資訊。但是,當需要顯示完全運動數位視訊時,若該精簡型用戶端終端機系統240原生地支援該特定視訊編碼系統,則會將經編碼的數位視訊串流直接發送至該精簡型用戶端終端機系統240。若該視訊編碼系統並不受該精簡型用戶端終端機系統240原生地支援,則該視訊系統會將該數位視訊串流轉碼成受在該精簡型用戶端終端機系統中的視訊解碼器支援之一數位視訊編碼系統。僅在該精簡型用戶端終端機系統240不具有視訊解碼器系統或該精簡型用戶端伺服器系統220缺少適當的轉碼器之情況下,才會使用一視訊解碼器。因此,所揭示之系統但凡在可行之時總會嘗試藉由一原生視訊解碼器或一適當的視訊轉碼器來處理完全運動視訊。
前面的技術揭示內容旨在解說而非限制。例如,可在使用上述具體實施例(及其一或多個態樣)時將其彼此組合。於審閱以上說明內容後,其他具體實施例對於熟習此項技術者而言即為顯然可知的。因此,本發明之範疇應參考隨附申請專利範圍且連同此類申請專利範圍被賦予權利之等效物之完全範疇而決定。在隨附申請專利範圍中,術語「包括」及「其中」係用以當作該等個別術語「包含」及「其中」之白話英語等效物。而且,在隨附申請專利範圍中,術語「包括」及「包含」係開放式,亦即,包括在一如一請求項中之此一術語後所列元件以外之元件的一系統、器件、物品或程序仍然係視為屬於該申請專利範圍之範疇內。再者,在隨附申請專利範圍中,術語「第一」、「第二」及「第三」等僅用以當作標記,而並非旨在對其標的強加數字要求。
發明摘要係提供以符合37 C.F.R. §1.72(b),其要求其允許讀者快速地確定該技術揭示內容之性質。在提交該發明摘明摘要之同時應瞭解並非用於解釋或限制申請專利範圍之範疇或含義。此外,在前述實施方式中,可將各種特徵分組於一起,以便使該揭示內容流暢。不應將此解釋為期望一未主張的所揭示特徵係任何請求項之關鍵。相反,本發明之標的可見諸於比一特定所揭示具體實施例之所有特徵更少的特徵。因此,下列申請專利範圍係據以併入實施方式中,且各請求項本身獨立為一分離具體實施例。
100...電腦系統
102...處理器
104...主記憶體
106...靜態記憶體
108...匯流排
110...視訊顯示配接器
112...文數字輸入器件
114...游標控制器件
115...視訊顯示系統
116...碟片驅動單元
118...信號產生器件
120...網路介面器件
122...機器可讀取媒體
124...指令
126...電腦網路
210...精簡型用戶端介面軟體
215...精簡型用戶端螢幕緩衝器
217...視訊圖框編碼器(系統)
220...精簡型用戶端伺服器電腦系統
221...輸出
225...輸入
230...雙向數位通信通道/區域網路
240...精簡型用戶端終端機系統
250...精簡型用戶端控制系統
260...螢幕緩衝器
261...圖框解碼器
262...視訊解碼器
263...視訊解碼器
265...視訊配接器
267...顯示系統
271...聲音產生器
272...音訊連接器
274...輸入/輸出控制系統
275...輸入/輸出連接器
282...鍵盤連接器
283...鍵盤
284...游標控制系統
285...滑鼠連接器
286...電腦滑鼠
331...虛擬圖形卡
332...數位視訊解碼器
333...數位視訊轉碼器
在未必係按比例繪製之圖式中,該數個圖式中各處相同的數字說明實質上類似的組件。具有不同字母後置字之相同數字表示實質上類似組件之不同實例。該等圖式一般作為範例但並非作為限制來解說本文中所述之各項具體實施例。
圖1解說採用一電腦系統之範例形式的機器之一概略表示,在該電腦系統內可執行用於造成該機器實行本文所述方法中的任何一或多個方法的一組指令。
圖2A解說耦合至一精簡型用戶端伺服器電腦系統之一精簡型用戶端終端機系統之一具體實施例的一高階方塊圖。
圖2B解說使用一區域網路支援多個個別精簡型用戶端終端機系統之一單一精簡型用戶端伺服器電腦系統之一高端方塊圖。
圖3解說支援在該精簡型用戶端處的視訊串流解碼之一精簡型用戶端伺服器電腦系統及精簡型用戶端終端機系統。
圖4解說說明圖3所解說之經改良的伺服器與用戶端視訊系統之操作的一流程圖。
(無元件符號說明)

Claims (20)

  1. 一種將視訊資訊傳達至一遠端顯示系統之方法,該方法包含:藉由一伺服器系統上之一虛擬圖形卡接收針對在該遠端顯示系統上顯示之顯示資料;該虛擬圖形卡經指派給於該伺服器系統上執行以用於該遠端顯示系統之一應用程式會話;識別該顯示資料是否包含數位視訊或經位元映射的圖形,該數位視訊係以一第一編碼格式而被編碼;回應於識別出該顯示資料包含經位元映射的圖形,則將該顯示資料寫入至與該遠端顯示系統相關聯之一圖框緩衝器;及回應於識別出該顯示資料包含數位視訊,則進行下列動作:決定該遠端顯示系統是否可解碼該第一編碼格式之該數位視訊;回應於該遠端顯示系統可解碼以該第一編碼格式編碼之該數位視訊之一決定,藉由繞過該圖框緩衝器而將該第一編碼格式之該數位視訊傳輸至該遠端顯示系統;回應於該遠端顯示系統無法解碼該第一編碼格式之該數位視訊之一決定,則進行下列動作:決定該遠端顯示系統是否支援一第二編碼格式;回應於該遠端顯示系統支援該第二編碼格式之一決定且回應於轉碼係為可用,則進行下列動作: 將該數位視訊轉碼為該第二編碼格式;及藉由繞過該圖框緩衝器而將該經轉碼之數位視訊傳輸至該遠端顯示系統;及回應於該第二編碼格式不被該遠端顯示系統所支援或轉碼係為不可用之決定中之至少一者,則將該數位視訊解碼為經位元映射的圖形,且將該經解碼之經位元映射的圖形寫入至經指派至該遠端顯示系統之該圖框緩衝器以傳輸至該遠端顯示系統。
  2. 如請求項1之將視訊資訊傳達至一遠端顯示系統之方法,該方法進一步包含:將顯示資料從用於該遠端顯示系統之該圖框緩衝器傳送至該遠端顯示系統。
  3. 如請求項1之將視訊資訊傳達至一遠端顯示系統之方法,該方法進一步包含:決定轉碼是否可用。
  4. 如請求項3之將視訊資訊傳達至一遠端顯示系統之方法,其中決定轉碼是否為可用係基於須用以執行轉碼之資源並未出現。
  5. 如請求項3之將視訊資訊傳達至一遠端顯示系統之方法,其中決定轉碼是否為可用包含決定存在足夠用於實行轉碼之資源。
  6. 如請求項1之將視訊資訊傳達至一遠端顯示系統之方法,該方法進一步包含:查詢該遠端顯示系統以決定該遠端顯示系統之視訊解 碼能力。
  7. 一種將視訊資訊傳達至一遠端顯示系統之系統,該系統包含:一虛擬圖形卡,其係經指派給於伺服器系統上所執行以用於該遠端顯示系統之一應用程式會話,該虛擬圖形卡接收針對在該遠端顯示系統上顯示之該應用程式會話所產生之顯示資料;一視訊轉碼器,該視訊轉碼器係將數位視訊從一第一編碼格式轉碼為一第二編碼格式;及一視訊解碼器,該視訊解碼器將數位視訊解碼為經位元映射的圖形,且將該經解碼之經位元映射的圖形儲存於該伺服器系統上所存之一螢幕緩衝器中,且被指派至該遠端顯示系統,其中回應於接收顯示資料,該虛擬圖形卡係:識別該顯示資料是否包含數位視訊或經位元映射的圖形;回應於識別出該顯示資料包含經位元映射的圖形,則將該顯示資料寫入至與該遠端顯示系統相關聯之該螢幕緩衝器;及回應於識別出該顯示資料包含以該第一編碼格式所編碼之數位視訊且該第一編碼格式不被該遠端顯示系統支援而該第二編碼格式係被該遠端顯示系統支援且該視訊轉碼器係為可用,則使用該視訊轉碼器轉碼該第二編碼格式之該數位視訊且藉由繞過該螢幕緩衝器而將該經轉 碼之數位視訊傳輸至該遠端顯示系統;及回應於識別出該顯示資料包含以該第一編碼格式所編碼之數位視訊以及該等第一及第二編碼格式不被該遠端顯示系統支援或該視訊轉碼器係為不可用之決定中之至少一者,則使用該視訊解碼器將該數位視訊解碼為經位元映射的圖形且將該經解碼之經位元映射的圖形寫入至經指派至該遠端顯示系統之該螢幕緩衝器以傳輸至該遠端顯示系統。
  8. 如請求項7之將視訊資訊傳達至一遠端顯示系統之系統,該系統進一步包含:一介面模組,其用於將顯示資料從該螢幕緩衝器或該視訊轉碼器傳送至該遠端顯示系統。
  9. 如請求項7之將視訊資訊傳達至一遠端顯示系統之系統,其中:該虛擬圖形卡執行該視訊轉碼器是否為不可用之決定。
  10. 如請求項9之將視訊資訊傳達至一遠端顯示系統之系統,其中決定該等第一及第二編碼格式不被支援係包含決定不存在適當的視訊轉碼器。
  11. 如請求項9之將視訊資訊傳達至一遠端顯示系統之系統,其中該視訊轉碼器為不可用之決定係至少基於不存在足夠用於實行轉碼之資源。
  12. 如請求項7之將視訊資訊傳達至一遠端顯示系統之系統,其中該虛擬圖形卡查詢該遠端顯示系統以決定該遠 端顯示系統之視訊解碼能力。
  13. 如請求項12之將視訊資訊傳達至一遠端顯示系統之系統,其中該虛擬圖形卡查詢到該遠端顯示系統要求被該遠端顯示系統本端地支援之一編碼格式表。
  14. 如請求項7之將視訊資訊傳達至一遠端顯示系統之系統,其中該伺服器系統對應於該遠端顯示系統之一精簡型用戶端伺服器。
  15. 一種裝置可讀儲存媒體,其具體化指令,當該等指令被一裝置執行時,致使該裝置執行下列操作:藉由一伺服器系統上之一虛擬圖形卡接收針對在遠端顯示系統上顯示之顯示資料,該虛擬圖形卡經指派給於該伺服器系統上執行以用於該遠端顯示系統之一應用程式會話;識別該顯示資料是否包含數位視訊或經位元映射的圖形,該數位視訊係以一第一編碼格式而被編碼;回應於識別出該顯示資料包含經位元映射的圖形,則將該顯示資料寫入至與該遠端顯示系統相關聯之一圖框緩衝器;及回應於識別出該顯示資料包含數位視訊,則進行下列動作:決定該遠端顯示系統是否可解碼該第一編碼格式之該數位視訊;回應於該遠端顯示系統可解碼該第一編碼格式之該數位視訊之一決定,藉由繞過該圖框緩衝器而將該第一編 碼格式之該數位視訊傳輸至該遠端顯示系統;回應於該遠端顯示系統無法解碼該第一編碼格式之該數位視訊之一決定,則進行下列動作:決定該遠端顯示系統是否支援一第二編碼格式;回應於該遠端顯示系統支援該第二編碼格式之一決定且回應於轉碼係為可用,則進行下列動作:將該數位視訊轉碼為該第二編碼格式;及藉由繞過該圖框緩衝器而將該經轉碼之數位視訊傳輸至該遠端顯示系統;及回應於該第二編碼格式不被該遠端顯示系統所支援或轉碼係為不可用之決定中之至少一者,則將該數位視訊解碼為經位元映射的圖形,且將該經解碼之經位元映射的圖形寫入至經指派至該遠端顯示系統之該圖框緩衝器以傳輸至該遠端顯示系統。
  16. 如請求項15之裝置可讀儲存媒體,其進一步具體化指令,當該等指令被該裝置執行時,致使該裝置執行下列操作:將顯示資料從用於該遠端顯示系統之該圖框緩衝器傳送至該遠端顯示系統。
  17. 如請求項15之裝置可讀儲存媒體,其進一步具體化指令,當該等指令被該裝置執行時,致使該裝置執行下列操作:決定轉碼是否可用。
  18. 如請求項17之裝置可讀儲存媒體,其中決定轉碼是否為 可用係基於須用以執行轉碼之資源並未出現。
  19. 如請求項17之裝置可讀儲存媒體,其中決定轉碼是否為可用包含決定存在足夠用於實行轉碼之資源。
  20. 如請求項15之裝置可讀儲存媒體,其進一步具體化指令,當該等指令被該裝置執行時,致使該裝置執行下列操作:查詢該遠端顯示系統以決定該遠端顯示系統之視訊解碼能力。
TW098106489A 2008-02-27 2009-02-27 用於低頻寬顯示資訊傳輸之系統及方法 TWI521939B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US6751608P 2008-02-27 2008-02-27

Publications (2)

Publication Number Publication Date
TW200948087A TW200948087A (en) 2009-11-16
TWI521939B true TWI521939B (zh) 2016-02-11

Family

ID=41016654

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098106489A TWI521939B (zh) 2008-02-27 2009-02-27 用於低頻寬顯示資訊傳輸之系統及方法

Country Status (4)

Country Link
US (2) US9161063B2 (zh)
CN (1) CN102007487A (zh)
TW (1) TWI521939B (zh)
WO (1) WO2009108345A2 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009108345A2 (en) 2008-02-27 2009-09-03 Ncomputing Inc. System and method for low bandwidth display information transport
US8723891B2 (en) 2009-02-27 2014-05-13 Ncomputing Inc. System and method for efficiently processing digital video
US20110154214A1 (en) * 2009-12-18 2011-06-23 Microsoft Corporation Offloading Content Retrieval And Decoding In Pluggable Content-Handling Systems
US8799405B2 (en) * 2010-08-02 2014-08-05 Ncomputing, Inc. System and method for efficiently streaming digital video
US9311158B2 (en) * 2010-09-03 2016-04-12 Adobe Systems Incorporated Determining a work distribution model between a client device and a cloud for an application deployed on the cloud
US8907987B2 (en) 2010-10-20 2014-12-09 Ncomputing Inc. System and method for downsizing video data for memory bandwidth optimization
US8749566B2 (en) 2010-11-16 2014-06-10 Ncomputing Inc. System and method for an optimized on-the-fly table creation algorithm
US8896612B2 (en) 2010-11-16 2014-11-25 Ncomputing Inc. System and method for on-the-fly key color generation
US9063691B2 (en) * 2011-06-07 2015-06-23 National Instruments Corporation Zero client device with multi-boot capability supporting multiple zero client protocols
JP5631832B2 (ja) * 2011-09-27 2014-11-26 株式会社東芝 画像中継装置、画像中継方法及び画像中継プログラム
KR101467430B1 (ko) * 2011-12-12 2014-12-01 주식회사 케이티 클라우드 컴퓨팅 기반 어플리케이션 제공 방법 및 시스템
US9372737B2 (en) * 2012-02-08 2016-06-21 Vmware, Inc. Video stream management for remote graphical user interfaces
CN102833794A (zh) * 2012-08-02 2012-12-19 广州市花都区中山大学国光电子与通信研究院 利用智能终端配置瘦客户机设备无线网络设置的方法
EP3255895B1 (en) * 2015-02-02 2023-05-31 Maxell, Ltd. Broadcast receiving apparatus and content outputting method
US9560393B2 (en) * 2015-02-20 2017-01-31 Disney Enterprises, Inc. Media processing node
US10993069B2 (en) * 2015-07-16 2021-04-27 Snap Inc. Dynamically adaptive media content delivery
US10592417B2 (en) 2017-06-03 2020-03-17 Vmware, Inc. Video redirection in virtual desktop environments

Family Cites Families (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5402147A (en) 1992-10-30 1995-03-28 International Business Machines Corporation Integrated single frame buffer memory for storing graphics and video data
US5682179A (en) 1993-07-01 1997-10-28 Intel Corporation Horizontally scaling image signals according to a selected scaling mode
US5469223A (en) * 1993-10-13 1995-11-21 Auravision Corporation Shared line buffer architecture for a video processing circuit
US5838334A (en) 1994-11-16 1998-11-17 Dye; Thomas A. Memory and graphics controller which performs pointer-based display list video refresh operations
US6014125A (en) * 1994-12-08 2000-01-11 Hyundai Electronics America Image processing apparatus including horizontal and vertical scaling for a computer display
US5598525A (en) * 1995-01-23 1997-01-28 Cirrus Logic, Inc. Apparatus, systems and methods for controlling graphics and video data in multimedia data processing and display systems
US5859651A (en) * 1996-08-19 1999-01-12 International Business Machines Corporation Method and apparatus for block data transfer to reduce on-chip storage for interpolative video resizing
US6278645B1 (en) * 1997-04-11 2001-08-21 3Dlabs Inc., Ltd. High speed video frame buffer
US6247050B1 (en) * 1997-09-12 2001-06-12 Intel Corporation System for collecting and displaying performance improvement information for a computer
US6184936B1 (en) * 1997-10-06 2001-02-06 Sigma Designs, Inc. Multi-function USB capture chip using bufferless data compression
US6362836B1 (en) * 1998-04-06 2002-03-26 The Santa Cruz Operation, Inc. Universal application server for providing applications on a variety of client devices in a client/server network
US6313822B1 (en) * 1998-03-27 2001-11-06 Sony Corporation Method and apparatus for modifying screen resolution based on available memory
US6563517B1 (en) * 1998-10-02 2003-05-13 International Business Machines Corp. Automatic data quality adjustment to reduce response time in browsing
US7446774B1 (en) * 1998-11-09 2008-11-04 Broadcom Corporation Video and graphics system with an integrated system bridge controller
US6519283B1 (en) 1999-01-25 2003-02-11 International Business Machines Corporation Integrated video processing system having multiple video sources and implementing picture-in-picture with on-screen display graphics
US6448974B1 (en) * 1999-02-26 2002-09-10 Antonio Asaro Method and apparatus for chroma key data modifying insertion without video image fragmentation
US6411333B1 (en) * 1999-04-02 2002-06-25 Teralogic, Inc. Format conversion using patch-based filtering
US6753865B1 (en) * 1999-06-30 2004-06-22 Realnetworks, Inc. System and method for generating video frames and post filtering
US7194032B1 (en) 1999-09-03 2007-03-20 Equator Technologies, Inc. Circuit and method for modifying a region of an encoded image
US7191462B1 (en) * 1999-11-08 2007-03-13 Kendyl A. Román System for transmitting video images over a computer network to a remote receiver
JP3694888B2 (ja) * 1999-12-03 2005-09-14 ソニー株式会社 復号装置および方法、符号化装置および方法、情報処理装置および方法、並びに記録媒体
US6674479B2 (en) * 2000-01-07 2004-01-06 Intel Corporation Method and apparatus for implementing 4:2:0 to 4:2:2 and 4:2:2 to 4:2:0 color space conversion
DE10022331A1 (de) * 2000-05-10 2001-11-15 Bosch Gmbh Robert Verfahren zur Transformationscodierung von Bewegtbildsequenzen
WO2001093525A2 (en) * 2000-05-26 2001-12-06 Citrix Systems, Inc. Method and system for efficiently reducing graphical display data for transmission over a low bandwidth transport protocol mechanism
TW577975B (en) 2000-07-25 2004-03-01 American Gnc Corp Core inertial measurement unit
US6704024B2 (en) * 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
US6633765B1 (en) 2000-08-28 2003-10-14 Qualcomm, Incorporated Method and apparatus for performing coverage control for multicast services in a wireless network
JP2002112268A (ja) * 2000-09-29 2002-04-12 Toshiba Corp 圧縮画像データ復号装置
US7305697B2 (en) * 2001-02-02 2007-12-04 Opentv, Inc. Service gateway for interactive television
US6828987B2 (en) * 2001-08-07 2004-12-07 Ati Technologies, Inc. Method and apparatus for processing video and graphics data
US7376695B2 (en) * 2002-03-14 2008-05-20 Citrix Systems, Inc. Method and system for generating a graphical display for a remote terminal session
JP2004221836A (ja) * 2003-01-14 2004-08-05 Ricoh Co Ltd 画像処理装置、プログラム、記憶媒体及び符号伸長方法
US7733915B2 (en) * 2003-05-01 2010-06-08 Genesis Microchip Inc. Minimizing buffer requirements in a digital video system
US7508448B1 (en) * 2003-05-29 2009-03-24 Nvidia Corporation Method and apparatus for filtering video data using a programmable graphics processor
FR2857198B1 (fr) * 2003-07-03 2005-08-26 Canon Kk Optimisation de qualite de service dans la distribution de flux de donnees numeriques
US7250983B2 (en) * 2004-08-04 2007-07-31 Trident Technologies, Inc. System and method for overlaying images from multiple video sources on a display device
US7515766B2 (en) * 2004-09-22 2009-04-07 Intel Corporation Apparatus and method for edge handling in image processing
US7433931B2 (en) 2004-11-17 2008-10-07 Raytheon Company Scheduling in a high-performance computing (HPC) system
US7400328B1 (en) 2005-02-18 2008-07-15 Neomagic Corp. Complex-shaped video overlay using multi-bit row and column index registers
US20060282855A1 (en) * 2005-05-05 2006-12-14 Digital Display Innovations, Llc Multiple remote display system
US7364306B2 (en) 2005-06-20 2008-04-29 Digital Display Innovations, Llc Field sequential light source modulation for a digital display system
US8074248B2 (en) * 2005-07-26 2011-12-06 Activevideo Networks, Inc. System and method for providing video content associated with a source image to a television in a communication network
TWI291622B (en) 2005-08-11 2007-12-21 Ic Plus Corp Controller and method for per-flow rate
US7483037B2 (en) * 2005-10-27 2009-01-27 Apple, Inc. Resampling chroma video using a programmable graphics processing unit to provide improved color rendering
KR100682456B1 (ko) 2006-02-08 2007-02-15 삼성전자주식회사 렌더링 영역을 최소화하는 3d 그래픽스 데이터의 렌더링방법 및 시스템
US8694684B2 (en) * 2006-08-21 2014-04-08 Citrix Systems, Inc. Systems and methods of symmetric transport control protocol compression
WO2008023316A2 (en) 2006-08-21 2008-02-28 Nxp B.V. Motion-compensated processing of image signals
WO2008144930A1 (en) * 2007-06-01 2008-12-04 Research In Motion Limited Interactive compression with multiple units of compression state information
US7933946B2 (en) * 2007-06-22 2011-04-26 Microsoft Corporation Detecting data propagation in a distributed system
US9024966B2 (en) * 2007-09-07 2015-05-05 Qualcomm Incorporated Video blending using time-averaged color keys
US8365153B2 (en) * 2007-10-26 2013-01-29 Qualcomm Incorporated Server-based code compilation
WO2009108345A2 (en) 2008-02-27 2009-09-03 Ncomputing Inc. System and method for low bandwidth display information transport
US8723891B2 (en) * 2009-02-27 2014-05-13 Ncomputing Inc. System and method for efficiently processing digital video
US8907987B2 (en) 2010-10-20 2014-12-09 Ncomputing Inc. System and method for downsizing video data for memory bandwidth optimization
US8749566B2 (en) 2010-11-16 2014-06-10 Ncomputing Inc. System and method for an optimized on-the-fly table creation algorithm
US8896612B2 (en) 2010-11-16 2014-11-25 Ncomputing Inc. System and method for on-the-fly key color generation

Also Published As

Publication number Publication date
US20160080754A1 (en) 2016-03-17
US20160381370A9 (en) 2016-12-29
US20090303156A1 (en) 2009-12-10
CN102007487A (zh) 2011-04-06
US9161063B2 (en) 2015-10-13
WO2009108345A3 (en) 2009-12-30
TW200948087A (en) 2009-11-16
US9635373B2 (en) 2017-04-25
WO2009108345A2 (en) 2009-09-03

Similar Documents

Publication Publication Date Title
TWI521939B (zh) 用於低頻寬顯示資訊傳輸之系統及方法
US9973557B2 (en) Media acceleration for virtual computing services
US20090322784A1 (en) System and method for virtual 3d graphics acceleration and streaming multiple different video streams
KR101120796B1 (ko) 세션 기술 메시지 확장
CN107209693B (zh) 缓冲器优化
US8681811B2 (en) System and method for obtaining cross compatibility with a plurality of thin-client platforms
US8902967B2 (en) Systems and methods for distributed media stream transcoding and sharing
CN107592551B (zh) 用于云流服务的方法和设备
KR20080089134A (ko) 원격 제어 장치 및 그 제어 방법
TWI495330B (zh) 有效地串流數位視訊的系統及方法
JP2007043673A (ja) アプリケーション・メタデータを用いるグラフィカル・ユーザ・インターフェースの適応ビデオ圧縮法
KR20140034603A (ko) 멀티 세션 관리 방법 및 장치
JP2006295586A (ja) コンテンツ変換装置及びトランスコードシステム
US8736629B1 (en) System and method for an efficient display data transfer algorithm over network
US20120218292A1 (en) System and method for multistage optimized jpeg output
JP2016143236A (ja) 配信制御装置、配信制御方法、及びプログラム
CN102770827A (zh) 用于在终端的屏幕上显示多媒体内容的方法
CA3155494A1 (en) System and method for constructing filter graph-based media processing pipelines in a browser
CN115052043B (zh) 一种云桌面的视频传输方法、电子设备、装置及介质
US20120219070A1 (en) System and method for a thin-client terminal system with a local screen buffer using a serial bus
US9317891B2 (en) Systems and methods for hardware-accelerated key color extraction
WO2022126280A1 (en) System and method for decimation of image data for multiviewer display
CN101291432A (zh) 图像处理系统、图像处理设备、图像处理方法以及程序
JP2012124886A (ja) 映像情報処理ファイルシステム

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees