TWI513257B - Graphic sharing method, system and terminal - Google Patents

Graphic sharing method, system and terminal Download PDF

Info

Publication number
TWI513257B
TWI513257B TW100128687A TW100128687A TWI513257B TW I513257 B TWI513257 B TW I513257B TW 100128687 A TW100128687 A TW 100128687A TW 100128687 A TW100128687 A TW 100128687A TW I513257 B TWI513257 B TW I513257B
Authority
TW
Taiwan
Prior art keywords
graphics
graphic
information
terminal
switching center
Prior art date
Application number
TW100128687A
Other languages
English (en)
Other versions
TW201244432A (en
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of TW201244432A publication Critical patent/TW201244432A/zh
Application granted granted Critical
Publication of TWI513257B publication Critical patent/TWI513257B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • 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/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/10Multimedia information
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • 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/24Negotiation of communication capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6175Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via Internet

Description

圖形共用方法、系統與終端
本申請案係有關互聯網技術領域,尤其有關一種圖形共用方法、系統與終端。
HTML5是Web瀏覽器支援的下一代HTML規範,其能為開發者提供更多更豐富的功能。HTML5包含幾個子規範,比如WebSocket、Worker、WebSQL、Canvas(畫布)等等。目前,已經有包括IE、Firefox、Chrome、Safari等在內的眾多瀏覽器支援該些規範。
在上述規範中,Canvas(畫布)是HTML5中的繪圖子規範,其主要是用來產生各種3D、2D圖形,因此開發者可以使用Canvas製作遊戲,甚至製作一個系統平臺。近年來Web瀏覽器應用的越來越廣泛,其對於圖形的繪製等需求也越來越高,從而對於Canvas的開發應用也得到了深入研究。目前,基於Canvas的圖形產生技術還屬於比較前沿技術,其實現方式也在不斷進步,現在已經開始採用硬體圖形加速,以使其對圖形的操作更加迅速。
在現有技術中,某些情況下會有遠端共用圖形的需求(比如,需要遠端共用桌面圖像)。目前已有技術提出透過控制項來實現在不同電腦之間實現圖形的共用。該技術的具體實現方式是首先在電腦上下載一個專用於進行圖形共用的控制項,然後再利用該控制項捕獲該電腦上的圖形並傳輸給另一電腦。但由於該技術不能實現跨瀏覽器的圖形傳輸,需要針對不同瀏覽器單獨開發不同的控制項,從而會存在耗費較多的人力、物力資源的缺陷。
本申請案之實施例提供一種圖形共用方法、系統,用以解決採用現有技術提供的圖形共用方案無法實現跨瀏覽器的圖形傳輸,且存在耗費較多的人力、物力資源的缺陷。
本申請案之實施例還提供一種終端。
本申請案之實施例採用以下技術方案:一種圖形共用方法,包括:圖形提供方終端根據預設取樣率,透過Canvas規範提供的圖形介面對圖形提供方終端上的瀏覽器基於Canvas規範所產生的圖形進行取樣而得到圖形資訊;圖形提供方終端根據預先約定的圖形共用協定對獲取到的圖形資訊進行封裝而得到資訊包後,透過與圖形交換中心伺服器之間的長連接而發送給圖形交換中心伺服器,以使所述圖形交換中心伺服器解封裝所述資訊包而得到所述圖形資訊,並透過與圖形接收方終端之間的長連接而將所述圖形資訊發送給圖形接收方終端。
較佳地,所述瀏覽器係安裝有互動式向量圖和Web動畫標準Flash;以及圖形提供方終端將資訊包透過所述長連接而發送給圖形交換中心伺服器,具體包括:圖形提供方終端透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接,將資訊包發送給圖形交換中心伺服器。
較佳地,圖形提供方終端將資訊包透過所述長連接而發送給圖形交換中心伺服器,具體包括:圖形提供方終端對資訊包進行編碼後,透過基於所述瀏覽器支援的資訊通訊規範提供的WebSocket介面建立的長連接而發送給圖形交換中心伺服器。
較佳地,圖形交換中心伺服器透過與圖形接收方終端之間的長連接而將所述圖形資訊發送給圖形接收方終端,具體包括:圖形交換中心伺服器從圖形接收方終端發送的交握資訊中確定圖形接收方終端所支援的資訊通訊規範;在確定出圖形接收方終端所支援的資訊通訊規範為Flash支援的資訊通訊規範時,根據所述圖形共用協定將所述圖形資訊封裝成資訊包後,透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接而發送給圖形接收方終端;在確定出圖形接收方終端所支援的資訊通訊規範為圖形接收方終端的瀏覽器支援的資訊通訊規範時,根據所述圖形共用協定將所述圖形資訊封裝成資訊包並對資訊包進行編碼後,透過基於圖形接收方終端的瀏覽器支援的資訊通訊規範提供的WebSocket介面而建立的長連接發送給圖形接收方終端。
較佳地,所述取樣率是圖形提供方終端根據圖形交換中心伺服器發送來的交握資訊中包含的圖形接收方終端的頻率刷新率來予以設定的。
一種圖形共用系統,包括圖形提供方終端、圖形接收方終端、圖形交換中心伺服器,其中:圖形提供方終端,用以根據預設取樣率,透過Canvas規範提供的圖形介面對圖形提供方終端上的瀏覽器基於Canvas規範所產生的圖形進行取樣而得到圖形資訊,並根據預先約定的圖形共用協定對獲取到的圖形資訊進行封裝而得到資訊包後,透過與圖形交換中心伺服器之間的長連接而發送給圖形交換中心伺服器;圖形交換中心伺服器,用以透過解封裝圖形提供方終端發送來的資訊包而得到所述圖形資訊,並透過與圖形接收方終端之間的長連接而將所述圖形資訊發送給圖形接收方終端。
一種終端,包括:取樣單元,用以根據預設取樣率,透過Canvas規範提供的圖形介面對終端上的瀏覽器基於Canvas規範所產生的圖形進行取樣而得到圖形資訊;封裝單元,用以根據預先約定的圖形共用協定對取樣單元得到的圖形資訊進行封裝而得到資訊包;發送單元,用以透過與圖形交換中心伺服器之間的長連接,將封裝單元得到的資訊包發送給圖形交換中心伺服器。
本申請案之實施例的有益效果如下:本申請案之實施例提供的方案透過圖形提供方終端透過Canvas(畫布)規範提供的圖形介面對基於Canvas規範所產生的圖形進行取樣而得到圖形資訊,並透過與圖形交換中心伺服器之間的長連接而發送給圖形交換中心伺服器,而圖形交換中心伺服器透過與圖形接收方終端之間的長連接將所述圖形資訊發送給圖形接收方終端,從而利用終端之間的長連接來實現圖形資訊的共用,無需開發、下載控制項即能實現對圖形資訊的共用,並且可以實現跨瀏覽器的圖形傳輸,克服了現有技術中需針對不同瀏覽器單獨開發不同的控制項而存在的耗費較多人力、物力資源的缺陷。並且,本申請案之實施例提供的方案還實現了針對Canvas這一新規範所產生的圖形的共用,填補了該規範下的圖形共用技術的空白。
為了解決採用現有技術提供的圖形共用方案無法實現跨瀏覽器的圖形傳輸,且存在耗費較多人力、物力資源的缺陷,本申請案之實施例提供了一種新的圖形共用方案,該圖形共用方案無需共用圖形的終端下載控制項即可實現對圖形的共用,在能夠方便、簡單地實現圖形共用的同時,還能夠實現跨瀏覽器的圖形傳輸,不會存在無法相容不同瀏覽器的缺陷。
以下結合附圖對本申請案之實施例提供的方案進行詳細描述。
本申請案之實施例首先提供一種圖形共用方法,該方法的具體流程示意圖如圖1所示,包括以下步驟:
步驟11,圖形提供方終端透過Canvas(畫布)規範提供的圖形介面,獲得圖形提供方終端上的瀏覽器基於Canvas規範所產生的圖形資訊;這裏的圖形資訊包括可以基於Canvas規範產生的任意虛擬可見圖形,一般可以理解為基於電腦而繪製的畫面,例如,直線、圓、圓弧、任意曲線和圖表等。
由於後續在圖形提供方終端與圖形接收方終端上實現圖形資訊共用後,圖形接收方終端還可能有顯示圖形資訊的需求,因此,圖形提供方在每秒內提供給圖形接收方終端的圖形資訊總量一般應滿足圖形接收方的顯示螢幕刷新率的要求,這樣才能保證圖形接收方終端對圖形資訊的顯示品質。為了達到該目的,在一個較佳的實施例中,本申請案之實施例中描述的上述步驟11中可以根據圖形交換中心伺服器發送來的交握資訊中包含的圖形接收方終端的顯示螢幕刷新率來設定取樣率,並根據該取樣率而對上述圖形資訊進行取樣。其中,對圖形資訊進行取樣的含義可以是對圖形資訊包含的圖素點進行取樣。比如,若圖形資訊包含1280×1024個圖素點,而圖形接收方終端的顯示螢幕也支援顯示1024×768個圖素點,且圖形接收方終端的顯示螢幕的刷新率為75 Hz,則需要設定能滿足:在每秒鐘對包含1280×1024個圖素點的圖形資訊進行取樣,並得到分別包含1024×768個圖素點的75個圖形資訊的取樣率。
步驟12,圖形提供方終端根據預先定義的圖形共用協定(基於該協定的資料/資訊包結構請參見後文中的表1)對獲取到的圖形資訊進行封裝而得到資訊包後,透過與圖形交換中心伺服器之間的長連接而發送給圖形交換中心伺服器;本申請案之實施例中,圖形交換中心伺服器是基於分別與圖形提供方終端和圖形接收方終端之間的長連接,為圖形提供方終端和圖形接收方終端提供資訊交互、並實現圖形資訊路由、封裝等功能的伺服器。其中,本步驟12圖形提供方終端將獲取到的圖形資訊發送給圖形交換中心伺服器,以使圖形交換中心完成步驟13的動作。
步驟13,圖形交換中心伺服器解封裝所述資訊包而得到所述圖形資訊,並透過與圖形接收方終端之間的長連接而將所述圖形資訊發送給圖形接收方終端。
在本申請案之實施例中,當圖形提供方終端的瀏覽器係安裝有互動式向量圖和Web動畫標準(亦即,Flash,由Adobe公司提供的一款軟體)時,若圖形提供方終端需要將資訊包透過所述長連接而發送給圖形交換中心伺服器,則可以是透過基於Flash支援的資訊通訊規範提供的FlashSocket(Flash套接字)介面建立的長連接來發送該資訊包的,也可以是在對資訊包進行Base64編碼後,透過基於瀏覽器支援的資訊通訊規範提供的WebSocket(網頁套接字)介面建立的長連接進行發送。前一種發送方式的好處在於,無需對資訊包進行Base64編碼,因此發送效率較高;而後一種發送方式的好處在於,對終端的瀏覽器是否安裝有Flash不做限定,因此相容性較強。
類似地,當圖形交換中心伺服器透過與圖形接收方終端之間的長連接而將所述圖形資訊發送給圖形接收方終端時也有兩種方式供選擇。圖形交換中心伺服器在欲發送圖形資訊給圖形接收方終端時,可以先從圖形接收方終端發送的交握資訊中確定圖形接收方終端所支援的資訊通訊規範;然後,在確定出圖形接收方終端所支援的資訊通訊規範為Flash支援的資訊通訊規範時,根據預先約定的圖形共用協定而將圖形資訊封裝成資訊包後,透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接發送給圖形接收方終端;而在確定出圖形接收方終端所支援的資訊通訊規範為圖形接收方終端的瀏覽器支援的資訊通訊規範時,根據預先約定的圖形共用協定將圖形資訊封裝成資訊包並對資訊包進行Base64編碼後,透過基於圖形接收方終端的瀏覽器支援的資訊通訊規範提供的WebSocket介面而建立的長連接而發送給圖形接收方終端。
在實際應用中,本申請案之實施例提供的上述方法可以是在如圖2所示的系統中實施的。圖2中,C1為圖形提供方終端,C2為圖形接收方終端,位於兩者之間的是圖形交換中心伺服器。按照本申請案之實施例提供的方法,C1、C2與圖形交換中心伺服器可以合作實現對圖形的共用。簡單來說,實現圖形共用的流程為:首先,C1期望把自己的瀏覽器基於Canvas所產生的圖形資訊傳輸給C2,從而C1獲取圖形資訊並將其發送至圖形交換中心伺服器;圖形交換中心伺服器對接收到的圖形資訊執行圖形資訊壓縮的操作,並利用圖形過濾集群對壓縮後的圖形資訊進行處理(比如,進行灰度化等)而得到處理後的圖形資訊;最終,圖形交換中心伺服器將處理後的圖形資訊發送給C2,C2對圖形資訊進行渲染顯示,以實現圖形資訊在C1、C2之間的共用以及在C2上的顯示。
上述步驟進行進一步擴展後,一個具體的圖形資訊共用流程的示意圖可以如圖3所示,該流程主要包括下述步驟:C1與圖形交換中心伺服器之間建立長連接;C1向圖形交換中心伺服器發起預先約定的圖像共用協定(該圖形共用協定的包體結構可以參考下表1)交握,並註冊到圖形交換中心伺服器,圖形交換中心伺服器接受交握,並保存交握資訊到TT Server(TokeyTyrant Server),該TT Server是一種高效率的Key:Value(鍵值對)資料庫系統,其中,交握資訊中可以包括C1所支援的資訊通訊規範、C1的螢幕刷新率FPS等;其中,由於C1和C2的身份是可以轉換的,亦即,C1還可能作為圖形接收方終端,而C2則可以作為相應的圖形提供方終端,因此,FPS的作用體現在當C1的身份轉換為圖形接收方終端時,可以作為對應的圖形提供方終端C2進行取樣時依照的取樣頻率的參考依據,而C1所支援的資訊通訊規範則可以在C1作為圖形接收方終端時作為圖形交換中心伺服器向C1發送圖形資訊所依據的資訊通訊規範。
圖形交換中心伺服器在交握成功後向C1反饋回應消息;C1進入圖形分享Ready狀態,即進入準備發送圖形資訊的狀態;C2與圖形交換中心伺服器之間建立長連接;C2向圖形交換中心伺服器發起圖形共用協定交握,並在交握資訊中攜帶C2所支援的資訊通訊規範、C2的FPS、C2所支援的圖形資訊格式等資訊;在交握成功後,C2進入圖形分享Ready狀態,並發送圖形資訊獲取請求給圖形交換中心伺服器,請求獲取C1基於Canvas所產生的圖形資訊;圖形交換中心伺服器通知C1打開共用通道發送圖形資訊;圖形交換中心伺服器接收C1發送來的圖形資訊,並將圖形資訊轉發給圖形過濾集群,運行圖像壓縮和資料最佳化等處理(根據實際情況,也可以不用發送給圖形過濾集群進行處理);圖形過濾集群處理後得到的圖形資訊被反饋給圖形交換中心伺服器;圖形交換中心伺服器將圖形過濾集群反饋的圖形資訊發送給C2;C2對圖形交換中心伺服器發送來的圖形資訊進行渲染與顯示。
值得說明的是,本申請案之實施例中需要使用WebSocket或者FlashSocket來保持C1與圖形交換中心伺服器之間以及C2與圖形交換中心伺服器之間的長連接,並以該長連接充當圖形資訊的傳輸通道。針對長連接基於FlashSocket或基於WebSocket建立的兩種情況,在下文中分別透過實施例1、2而分別對其進行具體說明。
實施例1
實施例1是針對共用圖形資訊的終端的瀏覽器係安裝了Flash的情況,該情況下的圖形共用模式也可以稱為“高速模式”。在高速模式下,圖形共用的流程請參考附圖4,各步驟如下:首先,C1中用以執行調用圖素讀取程式PIX_Reader.js等操作的圖像共用程式Image_Share1.swf按照與圖形交換中心伺服器交握時圖形交換交換中心發送來的C2的FPS,利用Flash的計時器Timer調用PIX_Reader.js中用以對圖形資訊進行取樣的方法(方法名為[ReaderCanvas]);PIX_Reader.js調用Canvas API讀取基於Canvas產生的圖形資訊,並將讀取到的圖形資訊以陣列形式返回給Image_Share1.swf;Image_Share1.swf基於預先約定的圖形共用協定,將圖形資訊封裝在該圖形共用協定包中,假設C1的瀏覽器係安裝了Flash,則C1透過基於FlashSocket建立的長連接而將該圖形共用協定包發送至圖形交換中心伺服器;圖形交換中心伺服器從協定包中解析出圖形資訊並對其進行灰度化等處理後,假設根據C2的交握資訊獲知C2的瀏覽器也安裝了Flash,則圖形交換中心伺服器將處理後的圖形資訊封裝成預先約定的圖形共用協定包後,透過基於FlashSocket建立的長連接發送該圖形共用協定包給C2;C2在接收到協定包後,利用用於對圖形資訊進行進行一系列處理的Image_Share2.swf對協定包進行解封裝而得到圖形資訊,並調用PIX_Reader.js而將圖形資訊傳入圖形資訊資料陣列;C2利用PIX_Reader.js調用Canvas API完成對圖形資訊的渲染與顯示。
實施例2
實施例2是針對共用圖形資訊的終端的瀏覽器沒有安裝Flash的情況,該情況下的圖形共用模式也可以稱為“相容模式”。有別於高速模式,由於相容模式下的終端的瀏覽器沒有安裝Flash,因此,就不存在FlashSocket和Timer,而是以WebSocket和線程Worker來實現相應的功能。在相容模式下,圖形共用的流程請參考附圖5,各步驟如下:首先,C1中的Worker調用用以執行對圖形資訊進行取樣的程式Image_Share1.js,按照與圖形交換中心伺服器交握時圖形交換中心伺服器發送來的C2的FPS而對基於Canvas產生的圖形資訊進行取樣;Image_Share1.js根據預先約定的圖形共用協定而將圖形資訊封裝在該圖形共用協定包中,由於C1的瀏覽器沒有安裝Flash,所以C1需要對所述圖形共用協定包進行Base64編碼後透過基於WebSocket建立的長連接而發送至圖形交換中心伺服器;圖形交換中心伺服器從解碼得到的圖形共用協定包中解析出圖形資訊並對其進行灰度化等處理後,假設根據C2的交握資訊獲知C2的瀏覽器也沒有安裝Flash,則圖形交換中心伺服器進一步將處理後的圖形資訊封裝成圖形共用協定包並對其進行Base64編碼後,透過基於WebSocket建立的長連接而發送給C2;C2在對接收到的編碼後的圖形共用協定包進行解碼處理後,利用用以對圖形資訊進行進行一系列處理的Image_Share2.js對協定包進行解封裝而得到圖形資訊;C2調用Canvas API完成對圖形資訊的渲染與顯示。
由上述步驟可知,相容模式下的圖形共用流程和高速模式下的圖形共用流程是非常相似的。不同的是,在相容模式下,由於基於WebSocket建立的長連接上暫時還不能發送二進位資料,所以需要將組織好的圖形共用協定包進行Base64編碼後進行發送。但這樣勢必使得資訊的傳輸效率受到影響。因此,相比於相容模式,高速模式的發送效率更高,但前提是共用圖形資訊的兩個終端中至少有一方安裝了Flash。
對應於本申請案之實施例提供的圖形共用方法,本申請案之實施例還提供一種圖形共用系統,該系統的具體結構示意圖如圖6所示,包括圖形提供方終端61、圖形接收方終端62和圖形交換中心伺服器63,其中,各部分的具體功能如下:圖形提供方終端61,用以根據預設取樣率,透過Canvas規範提供的圖形介面對圖形提供方終端61上的瀏覽器基於Canvas規範所產生的圖形進行取樣而得到圖形資訊,並根據預先約定的圖形共用協定對獲取到的圖形資訊進行封裝而得到資訊包後,透過與圖形交換中心伺服器63之間的長連接而發送給圖形交換中心伺服器63;圖形交換中心伺服器63,用以透過解封裝圖形提供方終端61發送來的資訊包而得到所述圖形資訊,並透過與圖形接收方終端62之間的長連接而將所述圖形資訊發送給圖形接收方終端62。
其中,上述取樣率可以但不限於是圖形提供方終端61根據圖形交換中心伺服器63發送來的交握資訊中包含的圖形接收方終端62的頻率刷新率來予以設定的。若圖形接收方終端62不需要對圖形進行顯示,則也可以不用根據圖形接收方終端62的頻率刷新率來設定取樣率。在一個較佳的實施例中,當圖形提供方終端61上的瀏覽器安裝有互動式向量圖和Web動畫標準Flash時;圖形提供方終端61將資訊包透過長連接發送給圖形交換中心伺服器63,具體包括:圖形提供方終端61透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接,將資訊包發送給圖形交換中心伺服器63。
在一個較佳的實施例中,圖形提供方終端61將資訊包透過長連接而發送給圖形交換中心伺服器63,具體包括:圖形提供方終端61對資訊包進行編碼後,透過基於瀏覽器支援的資訊通訊規範提供的WebSocket介面建立的長連接而發送給圖形交換中心伺服器63。
在一個較佳的實施例中,圖形交換中心伺服器63透過與圖形接收方終端62之間的長連接而將所述圖形資訊發送給圖形接收方終端62,具體包括:圖形交換中心伺服器63從圖形接收方終端62發送的交握資訊中確定圖形接收方終端62所支援的資訊通訊規範;在確定出圖形接收方終端62所支援的資訊通訊規範為Flash支援的資訊通訊規範時,根據預先約定的圖形共用協定而將所述圖形資訊封裝成資訊包後,透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接而發送給圖形接收方終端62;在確定出圖形接收方終端62所支援的資訊通訊規範為圖形接收方終端62的瀏覽器支援的資訊通訊規範時,根據所述圖形共用協定而將所述圖形資訊封裝成資訊包並對資訊包進行編碼後,透過基於圖形接收方終端62的瀏覽器支援的資訊通訊規範提供的WebSocket介面而建立的長連接而發送給圖形接收方終端62。
此外,本申請案之實施例還提供一種終端,該終端的具體結構示意圖如圖7所示,包括以下功能單元:取樣單元71,用以根據預設取樣率,透過Canvas規範提供的圖形介面對終端上的瀏覽器基於Canvas規範所產生的圖形進行取樣而得到圖形資訊;封裝單元72,用以根據預先約定的圖形共用協定對取樣單元71得到的圖形資訊進行封裝而得到資訊包;發送單元73,用以透過與圖形交換中心伺服器之間的長連接,將封裝單元72得到的資訊包發送給圖形交換中心伺服器。
較佳地,當瀏覽器係安裝有互動式向量圖和Web動畫標準Flash時,發送單元73具體可以用以透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接,將上述資訊包發送給圖形交換中心伺服器。
較佳地,發送單元73具體可以用以對上述資訊包進行編碼後,透過基於瀏覽器支援的資訊通訊規範提供的WebSocket介面建立的長連接而發送給圖形交換中心伺服器。
顯然,本領域的技術人員可以對本申請案進行各種修改和變型而不脫離本申請案的精神和範圍。這樣,倘若本申請案的這些修改和變型屬於本申請案之申請專利範圍及其等同技術的範疇之內,則本申請案也意圖包含這些修改和變型在內。
61...圖形提供方終端
62...圖形接收方終端
63...圖形交換中心伺服器
71...取樣單元
72...封裝單元
73...發送單元
圖1為本申請案之實施例提供的一種圖形共用方法的具體流程示意圖;
圖2為在實際應用中實施本申請案之實施例提供的方法的系統示意圖;
圖3為本申請案之實施例中的一個具體的圖形資訊共用流程示意圖;
圖4為高速模式下的圖形共用的流程示意圖;
圖5為相容模式下的圖形共用的流程示意圖;
圖6為本申請案之實施例提供的一種圖形共用系統的具體結構示意圖;
圖7為本申請案之實施例提供的一種終端的具體結構示意圖。

Claims (11)

  1. 一種圖形共用方法,其特徵在於,包括:圖形提供方終端根據圖形交換中心伺服器發送來的交握資訊中包含的圖形接收方終端的頻率刷新率來設定預設取樣率;該圖形提供方終端根據該預設取樣率,透過Canvas規範提供的圖形介面對該圖形提供方終端上的瀏覽器基於Canvas規範所產生的圖形進行取樣而得到圖形資訊;該圖形提供方終端根據預先約定的圖形共用協定對獲取到的該圖形資訊進行封裝而得到資訊包;該圖形提供方終端透過與該圖形交換中心伺服器之間的長連接而發送該資訊包給該圖形交換中心伺服器,以使該圖形交換中心伺服器解封裝該資訊包而得到該圖形資訊;以及透過與該圖形接收方終端之間的長連接而將該該圖形資訊發送給該圖形接收方終端。
  2. 如申請專利範圍第1項所述的方法,其中,該瀏覽器係安裝有互動式向量圖和Web動畫標準Flash;以及該圖形提供方終端將該資訊包透過該長連接而發送給該圖形交換中心伺服器,具體包括:該圖形提供方終端透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接,將該資訊包發送給該圖形交換中心伺服器。
  3. 如申請專利範圍第1項所述的方法,其中,該圖形 提供方終端將該資訊包透過該長連接而發送給該圖形交換中心伺服器,具體包括:該圖形提供方終端對資訊包進行編碼後,透過基於該瀏覽器支援的資訊通訊規範提供的WebSocket介面建立的長連接而發送給圖形交換中心伺服器。
  4. 如申請專利範圍第1項所述的方法,其中,該圖形交換中心伺服器透過與該圖形接收方終端之間的長連接而將該圖形資訊發送給該圖形接收方終端,具體包括:該圖形交換中心伺服器從該圖形接收方終端發送的交握資訊中確定該圖形接收方終端所支援的資訊通訊規範;在確定出該圖形接收方終端所支援的該資訊通訊規範為Flash支援的資訊通訊規範時,根據該圖形共用協定將該圖形資訊封裝成資訊包後,透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接而發送給該圖形接收方終端;以及在確定出該圖形接收方終端所支援的該資訊通訊規範為該圖形接收方終端的瀏覽器支援的資訊通訊規範時,根據該圖形共用協定將該圖形資訊封裝成資訊包並對該資訊包進行編碼後,透過基於該圖形接收方終端的瀏覽器支援的資訊通訊規範提供的WebSocket介面而建立的長連接而發送給該圖形接收方終端。
  5. 一種圖形共用系統,包括圖形提供方終端、圖形接收方終端、圖形交換中心伺服器,其特徵在於,其中:圖形提供方終端,用以根據預設取樣率,透過Canvas 規範提供的圖形介面對該圖形提供方終端上的瀏覽器基於Canvas規範所產生的圖形進行取樣而得到圖形資訊,並根據預先約定的圖形共用協定對獲取到的該圖形資訊進行封裝而得到資訊包後,透過與該圖形交換中心伺服器之間的長連接而發送該資訊包給該圖形交換中心伺服器;以及圖形交換中心伺服器,用以透過解封裝該圖形提供方終端發送來的該資訊包而得到該圖形資訊,並透過與該圖形接收方終端之間的長連接而將該圖形資訊發送給該圖形接收方終端,其中,該取樣率是該圖形提供方終端根據該圖形交換中心伺服器發送來的交握資訊中包含的該圖形接收方終端的頻率刷新率來予以設定的。
  6. 如申請專利範圍第5項所述的系統,其中,該瀏覽器係安裝有互動式向量圖和Web動畫標準Flash;以及該圖形提供方終端將該資訊包透過該長連接而發送給該圖形交換中心伺服器,具體包括:該圖形提供方終端透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接,將該資訊包發送給該圖形交換中心伺服器。
  7. 如申請專利範圍第5項所述的系統,其中,該圖形提供方終端將該資訊包透過該長連接而發送給該圖形交換中心伺服器,具體包括:該圖形提供方終端對該資訊包進行編碼後,透過基於該瀏覽器支援的資訊通訊規範提供的WebSocket介面建立 的長連接而發送給該圖形交換中心伺服器。
  8. 如申請專利範圍第5項所述的系統,其中,該圖形交換中心伺服器透過與該圖形接收方終端之間的長連接而將該圖形資訊發送給該圖形接收方終端,具體包括:該圖形交換中心伺服器從該圖形接收方終端發送的該交握資訊中確定該圖形接收方終端所支援的資訊通訊規範;在確定出該圖形接收方終端所支援的資訊通訊規範為Flash支援的資訊通訊規範時,根據該圖形共用協定將該圖形資訊封裝成資訊包後,透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接發送給該圖形接收方終端;以及在確定出該圖形接收方終端所支援的資訊通訊規範為該圖形接收方終端的瀏覽器支援的資訊通訊規範時,根據該圖形共用協定而將該圖形資訊封裝成資訊包並對該資訊包進行編碼後,透過基於該圖形接收方終端的瀏覽器支援的資訊通訊規範提供的WebSocket介面而建立的長連接而發送給圖形接收方終端。
  9. 一種終端,其特徵在於,包括:取樣單元,用以根據預設取樣率,透過Canvas規範提供的圖形介面對該圖形提供方終端上的瀏覽器基於Canvas規範所產生的圖形進行取樣而得到圖形資訊;封裝單元,用以根據預先約定的圖形共用協定對該取樣單元得到的該圖形資訊進行封裝而得到資訊包;以及 發送單元,用以透過與該圖形交換中心伺服器之間的長連接,將該封裝單元得到的該資訊包發送給該圖形交換中心伺服器,其中,該取樣率是該圖形提供方終端根據該圖形交換中心伺服器發送來的交握資訊中包含的該圖形接收方終端的頻率刷新率來予以設定的。
  10. 如申請專利範圍第9項所述的終端,其中,該瀏覽器係安裝有互動式向量圖和Web動畫標準Flash;以及該發送單元具體用以透過基於Flash支援的資訊通訊規範提供的FlashSocket介面建立的長連接,將該資訊包發送給該圖形交換中心伺服器。
  11. 如申請專利範圍第9項所述的終端,其中,該發送單元具體用以對該資訊包進行編碼後,透過基於該瀏覽器支援的資訊通訊規範提供的WebSocket介面建立的長連接而發送給該圖形交換中心伺服器。
TW100128687A 2011-04-25 2011-08-11 Graphic sharing method, system and terminal TWI513257B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110103855.3A CN102761564B (zh) 2011-04-25 2011-04-25 图形共享方法、系统与终端

Publications (2)

Publication Number Publication Date
TW201244432A TW201244432A (en) 2012-11-01
TWI513257B true TWI513257B (zh) 2015-12-11

Family

ID=47055885

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100128687A TWI513257B (zh) 2011-04-25 2011-08-11 Graphic sharing method, system and terminal

Country Status (7)

Country Link
US (2) US8909801B2 (zh)
EP (1) EP2702583A4 (zh)
JP (1) JP6219813B2 (zh)
CN (1) CN102761564B (zh)
HK (1) HK1172467A1 (zh)
TW (1) TWI513257B (zh)
WO (1) WO2012148825A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102405430B (zh) 2009-02-05 2014-09-24 日本航空电子工业株式会社 光连接器装置
US10187859B2 (en) 2011-02-14 2019-01-22 Qualcomm Incorporated Power control and user multiplexing for heterogeneous network coordinated multipoint operations
CN103024043B (zh) * 2012-12-14 2016-01-27 腾讯科技(深圳)有限公司 一种数据共享方法、服务器及系统
US9444872B2 (en) 2012-12-14 2016-09-13 Tencent Technology (Shenzhen) Company Limited Method, server and system for data sharing
CN103067458A (zh) * 2012-12-17 2013-04-24 百度在线网络技术(北京)有限公司 控制方法及终端设备、服务器
CN103678009B (zh) * 2013-12-05 2017-06-16 新浪网技术(中国)有限公司 网页页面的订阅者接收网络数据的方法和装置
CN103685269B (zh) * 2013-12-12 2017-12-12 Tcl集团股份有限公司 一种web浏览器与服务器进行双向通讯的方法和系统
US20150341472A1 (en) * 2014-05-20 2015-11-26 Jason Russell Yanofski System for real-time, graphics-based web communication using HTML 5 WebSockets
TWI684143B (zh) 2014-08-29 2020-02-01 科科科技股份有限公司 線上物件預訂系統與方法
JP6405809B2 (ja) * 2014-09-05 2018-10-17 村田機械株式会社 電子会議システム、電子会議システムにおける表示制御方法及びプログラム
US10437288B2 (en) 2014-10-06 2019-10-08 Fasetto, Inc. Portable storage device with modular power and housing system
CN104486327B (zh) * 2014-12-10 2019-02-05 北京奇虎科技有限公司 页面与长连接服务器间的通信方法及客户端
JP6754369B2 (ja) * 2015-03-11 2020-09-09 ファセット・インコーポレーテッド ウェブapi通信システムおよび方法
CN107295079A (zh) * 2017-06-19 2017-10-24 深圳市麦谷科技有限公司 一种物联网流量卡的实名照片上传方法及系统
CN107749843A (zh) * 2017-10-13 2018-03-02 北京中教在线科技有限公司 一种电子画板共享方法
CN107967184A (zh) * 2017-11-30 2018-04-27 北京奇艺世纪科技有限公司 远程协助中复制粘贴方法、装置及电子设备
CN112584228A (zh) * 2020-11-25 2021-03-30 山东宁泓信息技术有限公司 一种基于web的低延迟投屏方法及系统
TWI777683B (zh) * 2021-07-22 2022-09-11 鴻海精密工業股份有限公司 影像處理裝置及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060066503A1 (en) * 2004-09-27 2006-03-30 Sampsell Jeffrey B Controller and driver features for bi-stable display
US20100281107A1 (en) * 2009-05-01 2010-11-04 Fallows John R Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6105055A (en) 1998-03-13 2000-08-15 Siemens Corporate Research, Inc. Method and apparatus for asynchronous multimedia collaboration
US6732067B1 (en) * 1999-05-12 2004-05-04 Unisys Corporation System and adapter card for remote console emulation
US6668273B1 (en) 1999-11-18 2003-12-23 Raindance Communications, Inc. System and method for application viewing through collaborative web browsing session
US7728838B2 (en) 2000-09-15 2010-06-01 Invensys Systems, Inc. Method and system for animating graphical user interface elements via a manufacturing/process control portal server
US20050278641A1 (en) 2000-11-30 2005-12-15 Steve Mansour Javascript Calendar Application Delivered to a Web Browser
US20030014476A1 (en) * 2001-01-03 2003-01-16 Peterson David Allen Thin client computer operating system
US6862022B2 (en) * 2001-07-20 2005-03-01 Hewlett-Packard Development Company, L.P. Method and system for automatically selecting a vertical refresh rate for a video display monitor
JP2003050767A (ja) * 2001-08-07 2003-02-21 Sony Corp 情報配信システム及び情報配信方法、並びに情報供給装置及び情報供給方法
US7222305B2 (en) * 2003-03-13 2007-05-22 Oracle International Corp. Method of sharing a desktop with attendees of a real-time collaboration
US20050021626A1 (en) 2003-05-22 2005-01-27 Cisco Technology, Inc. Peer-to-peer dynamic web page sharing
JP2005136567A (ja) * 2003-10-29 2005-05-26 Fuji Photo Film Co Ltd パレットデータ生成装置および方法、画像生成装置および方法、動画像配信装置、メール中継装置並びにプログラム
US20060282855A1 (en) * 2005-05-05 2006-12-14 Digital Display Innovations, Llc Multiple remote display system
US7683906B2 (en) * 2005-06-30 2010-03-23 Microsoft Corporation Frame buffer control for smooth video display
US20070038717A1 (en) * 2005-07-27 2007-02-15 Subculture Interactive, Inc. Customizable Content Creation, Management, and Delivery System
US20070139446A1 (en) * 2005-12-15 2007-06-21 Xerox Corporation Systems and methods for manipulating high resolution scan images using web-based user interfaces
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US7933956B2 (en) 2006-01-24 2011-04-26 Simulat, Inc. System and method to create a collaborative web-based multimedia layered platform
US7933955B2 (en) * 2006-07-11 2011-04-26 Igor Khalatian One-click universal screen sharing
CN101179406B (zh) * 2006-11-30 2011-01-12 腾讯科技(深圳)有限公司 一种电子宠物旅游方法、旅游服务器与系统
US9350701B2 (en) * 2007-03-29 2016-05-24 Bomgar Corporation Method and apparatus for extending remote network visibility of the push functionality
US8201164B2 (en) * 2007-07-20 2012-06-12 Microsoft Corporation Dynamically regulating content downloads
US20090037517A1 (en) * 2007-08-02 2009-02-05 Randall Wayne Frei Method and system to share content between web clients
US8514842B1 (en) * 2007-09-28 2013-08-20 Adobe Systems Incorporated Systems and methods for enabling communication between users of common virtual spaces
FR2922662A1 (fr) 2007-10-18 2009-04-24 France Telecom Systeme et procede d'echange d'informations dans un terminal multimedias
US9582234B2 (en) * 2008-09-30 2017-02-28 Rockwell Automation Technologies, Inc. System and method for the automatic aggregation of industrial automation displays
US20100121919A1 (en) 2008-11-13 2010-05-13 Arhus Universitet System and a method for sharing information interactively among two or more users
CN102405631B (zh) * 2009-02-20 2015-02-18 思杰系统有限公司 用于中间设备压缩通过远程显示协议传递的数据的系统和方法
US8676926B2 (en) * 2009-04-15 2014-03-18 Wyse Technology L.L.C. System and method for handling remote drawing commands
US20100268694A1 (en) * 2009-04-17 2010-10-21 Laurent Denoue System and method for sharing web applications
CN101577007A (zh) * 2009-06-16 2009-11-11 腾讯科技(深圳)有限公司 一种生成图片的方法及装置
US20110004888A1 (en) * 2009-07-06 2011-01-06 Sudharshan Srinivasan Screen sharing method with selective access to both data and logic of a shared application using a helper application
US9733886B2 (en) 2009-11-24 2017-08-15 Clearslide, Inc. Method and system for browser-based screen sharing
JP5741171B2 (ja) * 2010-04-23 2015-07-01 株式会社リコー 画像処理装置及び画像処理プログラム
US20150161277A1 (en) * 2011-03-14 2015-06-11 Browsium, Inc. Methods and systems for one browser version to use a rendering engine of another browser version for displaying information
US8949294B2 (en) * 2011-03-23 2015-02-03 Red Hat, Inc. Data grid supporting multiple protocols

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060066503A1 (en) * 2004-09-27 2006-03-30 Sampsell Jeffrey B Controller and driver features for bi-stable display
US20100281107A1 (en) * 2009-05-01 2010-11-04 Fallows John R Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications

Also Published As

Publication number Publication date
CN102761564B (zh) 2015-04-22
JP6219813B2 (ja) 2017-10-25
EP2702583A1 (en) 2014-03-05
WO2012148825A1 (en) 2012-11-01
HK1172467A1 (zh) 2013-04-19
EP2702583A4 (en) 2014-12-31
US20150100699A1 (en) 2015-04-09
US20130046813A1 (en) 2013-02-21
US10110672B2 (en) 2018-10-23
CN102761564A (zh) 2012-10-31
US8909801B2 (en) 2014-12-09
JP2014519635A (ja) 2014-08-14
TW201244432A (en) 2012-11-01

Similar Documents

Publication Publication Date Title
TWI513257B (zh) Graphic sharing method, system and terminal
US10271013B2 (en) Display control method and apparatus
CN105404455B (zh) 利用终端对移动终端实现截屏的方法及装置
CN103475953B (zh) 一种基于桌面云的媒体控制方法和设备
CN107277612A (zh) 用于在web浏览器上播放媒体流的方法和设备
EP2649533B1 (en) Methods and systems for facilitating a remote desktop session utilizing long polling
US20150081796A1 (en) Method, apparatus and system for transmitting media stream
WO2019024658A1 (zh) 界面呈现方法和装置
WO2015176648A1 (zh) 将智能终端上的数据传输至电视终端的方法、装置
US11809771B2 (en) Orchestrated control for displaying media
WO2024060663A1 (zh) 三维模型场景交互方法、系统、设备、装置、存储介质及计算机程序产品
CN115170711A (zh) 一种基于云渲染的高仿真数字工厂展示方法
CN111464828A (zh) 虚拟特效显示方法、装置、终端及存储介质
KR101807314B1 (ko) 원격 사용자 인터페이스용 협력 애플리케이션
CN107634974A (zh) 一种数据传输方法及装置
CN103200251B (zh) 图片传输方法、系统和装置
CN104391576A (zh) 一种基于无线以太网的远程输入的方法和装置
CN110990109B (zh) 一种拼接屏回显方法、终端、系统及存储介质
CN114564260B (zh) 一种触摸终端远程控制方法及系统、触摸终端、存储介质
WO2023273905A1 (zh) 信息同屏方法、发送端、接收端及计算机可读存储介质
CN106155610A (zh) 一种屏幕操作方法及装置
CN113893525A (zh) 云游戏运行方法、装置、电子设备及计算机可读介质
CN113497821A (zh) 一种上传文件的方法、装置和系统
CN114666561A (zh) 视频融合方法、装置和系统
CN115145508A (zh) 传屏处理方法、存储介质及相关设备

Legal Events

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