亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

投屏批注方法和系統(tǒng)與流程

文檔序號(hào):11250592閱讀:1275來(lái)源:國(guó)知局
投屏批注方法和系統(tǒng)與流程

本發(fā)明涉及顯示技術(shù)領(lǐng)域,尤其涉及一種投屏批注方法和系統(tǒng)。



背景技術(shù):

在現(xiàn)代化的課堂上,多媒體互動(dòng)式教學(xué)是現(xiàn)代化課堂的重要組成部分。多媒體交互教學(xué)主要通過(guò)壓縮教師教學(xué)現(xiàn)場(chǎng)的視頻、音頻流結(jié)合同步瀏覽課件命令,形成教學(xué)資源流,利用網(wǎng)絡(luò)實(shí)時(shí)傳送到遠(yuǎn)端學(xué)生的電腦上,學(xué)生可以及時(shí)通過(guò)舉手提問(wèn)、共享教師端程序、文字交流等方式實(shí)現(xiàn)互動(dòng)教學(xué)。如以下場(chǎng)景:學(xué)生利用電子書(shū)本、筆記本電腦、平板、手機(jī)終端等獲取教學(xué)課件以及課堂作業(yè),并現(xiàn)場(chǎng)提交作業(yè),甚至提交自己的學(xué)習(xí)進(jìn)度以便教師安排;學(xué)生將自己的移動(dòng)終端屏幕投影到無(wú)線(xiàn)投屏儀上提問(wèn)或是分享,教師通過(guò)遠(yuǎn)程控制來(lái)進(jìn)行指導(dǎo)。這就要求無(wú)線(xiàn)投屏的過(guò)程中具有良好的流暢性和實(shí)時(shí)性。流暢性是指在傳屏播放過(guò)程中不出現(xiàn)卡頓、不出現(xiàn)畫(huà)面失真,同時(shí)播放的幀率至少20fps以上;實(shí)時(shí)性是指兩個(gè)終端間的畫(huà)面同步延時(shí)至少要小于200ms。

目前,采用標(biāo)準(zhǔn)協(xié)議所能達(dá)到的無(wú)線(xiàn)投屏的同步延時(shí)基本在200ms以上,甚至達(dá)到秒級(jí),特別是在無(wú)線(xiàn)環(huán)境和硬件資源差的條件下,導(dǎo)致了顯示批注的筆記滯后而引起操作不便,降低用戶(hù)體驗(yàn)感。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的是提供一種投屏批注方法和系統(tǒng),解決了由于無(wú)線(xiàn)環(huán)境和硬件資源影響產(chǎn)生的顯示批注的筆記滯后導(dǎo)致操作不便的問(wèn)題,讓用戶(hù)感覺(jué)不到書(shū)寫(xiě)的遲鈍感,提高用戶(hù)體驗(yàn)感。

本發(fā)明提供了一種投屏批注方法,包括以下步驟:

將第一終端分為多個(gè)畫(huà)布層,所述多個(gè)畫(huà)布層包括第一畫(huà)布層和第二畫(huà)布層;

實(shí)時(shí)獲取坐標(biāo)信息,根據(jù)所述坐標(biāo)信息在所述第一畫(huà)布層上繪制第一批注筆跡直接顯示,同時(shí)將所述坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端;

對(duì)所述坐標(biāo)信息進(jìn)行換算,得到坐標(biāo)換算信息,并根據(jù)所述坐標(biāo)換算信息在所述第二終端中繪制第二批注筆跡;

獲取并存儲(chǔ)所述第二終端上當(dāng)前屏幕的截屏圖像,將所述截屏圖像通過(guò)網(wǎng)絡(luò)傳輸至所述第一終端,并將所述截屏圖像顯示在所述第二畫(huà)布層上;

擦除所述第一畫(huà)布層上繪制的所述第一批注筆跡,顯示所述第二畫(huà)布層上的所述截屏圖像。

作為一種可實(shí)施方式,所述實(shí)時(shí)獲取坐標(biāo)信息,根據(jù)所述坐標(biāo)信息在所述第一畫(huà)布層上繪制第一批注筆跡直接顯示,包括以下步驟:

在實(shí)時(shí)獲取坐標(biāo)信息后,根據(jù)時(shí)間順序?qū)⒚總€(gè)所述坐標(biāo)信息進(jìn)行存儲(chǔ),得到第一隊(duì)列數(shù)據(jù);

將所述第一隊(duì)列數(shù)據(jù)中每個(gè)相鄰的所述坐標(biāo)信息進(jìn)行繪制,得到第三批注筆跡;

同時(shí)獲取傳輸延遲值,并根據(jù)所述傳輸延遲值提取第一隊(duì)列數(shù)據(jù)中相應(yīng)的所述坐標(biāo)信息,得到坐標(biāo)延遲信息;

根據(jù)所述坐標(biāo)延遲信息對(duì)所述第三批注筆跡進(jìn)行擦除繪制,得到第一批注筆跡。

作為一種可實(shí)施方式,所述同時(shí)將所述坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端,包括以下步驟:

將單次的所述坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端;

或,根據(jù)預(yù)設(shè)時(shí)間將所述坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端。

作為一種可實(shí)施方式,所述對(duì)所述坐標(biāo)信息進(jìn)行換算,得到坐標(biāo)換算信息,并根據(jù)所述坐標(biāo)換算信息在所述第二終端中繪制第二批注筆跡,包括以下步驟:

獲取所述第一終端的第一分辨率和所述第二終端的第二分辨率;

根據(jù)所述第一分辨率和所述第二分辨率,對(duì)所述坐標(biāo)信息進(jìn)行換算,得到坐標(biāo)換算信息;

根據(jù)時(shí)間順序?qū)⒚總€(gè)所述坐標(biāo)換算信息進(jìn)行存儲(chǔ),得到第二隊(duì)列數(shù)據(jù);

將所述第二隊(duì)列數(shù)據(jù)中每個(gè)相鄰的所述坐標(biāo)換算信息進(jìn)行繪制,得到第二批注筆跡。

作為一種可實(shí)施方式,所述獲取并存儲(chǔ)所述第二終端上當(dāng)前屏幕的截屏圖像,將所述截屏圖像通過(guò)網(wǎng)絡(luò)傳輸至所述第一終端,并將所述截屏圖像顯示在所述第二畫(huà)布層上,還包括以下步驟:

在獲取并存儲(chǔ)所述第二終端上當(dāng)前屏幕的截屏圖像后,對(duì)所述截屏圖像進(jìn)行壓縮處理。

在將所述截屏圖像顯示在所述第二畫(huà)布層上前,對(duì)所述截屏圖像進(jìn)行解碼、渲染處理,并將處理結(jié)果顯示在所述第二畫(huà)布層上。

相應(yīng)的,本發(fā)明還提供一種投屏批注系統(tǒng),包括分層模塊、獲取批注模塊、換算批注模塊、獲取顯示模塊以及擦除模塊;

所述分層模塊,用于將第一終端分為多個(gè)畫(huà)布層,所述多個(gè)畫(huà)布層包括第一畫(huà)布層和第二畫(huà)布層;

所述獲取批注模塊,用于實(shí)時(shí)獲取坐標(biāo)信息,根據(jù)所述坐標(biāo)信息在所述第一畫(huà)布層上繪制第一批注筆跡直接顯示,同時(shí)將所述坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端;

所述換算批注模塊,用于對(duì)所述坐標(biāo)信息進(jìn)行換算,得到坐標(biāo)換算信息,并根據(jù)所述坐標(biāo)換算信息在所述第二終端中繪制第二批注筆跡;

所述獲取顯示模塊,用于獲取并存儲(chǔ)所述第二終端上當(dāng)前屏幕的截屏圖像,將所述截屏圖像通過(guò)網(wǎng)絡(luò)傳輸至所述第一終端,并將所述截屏圖像顯示在所述第二畫(huà)布層上;

所述擦除模塊,用于擦除所述第一畫(huà)布層上繪制的所述第一批注筆跡,顯示所述第二畫(huà)布層上的所述截屏圖像。

作為一種可實(shí)施方式,所述獲取批注模塊包括第一存儲(chǔ)單元、第一繪制單元、提取單元以及擦除繪制單元;

所述第一存儲(chǔ)單元,用于在實(shí)時(shí)獲取坐標(biāo)信息后,根據(jù)時(shí)間順序?qū)⒚總€(gè)所述坐標(biāo)信息進(jìn)行存儲(chǔ),得到第一隊(duì)列數(shù)據(jù);

所述第一繪制模塊,用于將所述第一隊(duì)列數(shù)據(jù)中每個(gè)相鄰的所述坐標(biāo)信息進(jìn)行繪制,得到第三批注筆跡;

所述提取單元,用于同時(shí)獲取傳輸延遲值,并根據(jù)所述傳輸延遲值提取第一隊(duì)列數(shù)據(jù)中相應(yīng)的所述坐標(biāo)信息,得到坐標(biāo)延遲信息;

所述擦除繪制單元,用于根據(jù)所述坐標(biāo)延遲信息對(duì)所述第三批注筆跡進(jìn)行擦除繪制,得到第一批注筆跡。

作為一種可實(shí)施方式,所述獲取批注模塊還包括單此傳輸單元或批量傳輸單元;

所述單此傳輸單元,用于將單次的所述坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端;

所述批量傳輸單元,用于根據(jù)預(yù)設(shè)時(shí)間將所述坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端。

作為一種可實(shí)施方式,所述換算批注模塊包括獲取分辨率單元、換算單元、第二存儲(chǔ)單元以及第二繪制單元;

所述獲取分辨率單元,用于獲取所述第一終端的第一分辨率和所述第二終端的第二分辨率;

所述換算單元,用于根據(jù)所述第一分辨率和所述第二分辨率,對(duì)所述坐標(biāo)信息進(jìn)行換算,得到坐標(biāo)換算信息;

所述第二存儲(chǔ)單元,用于根據(jù)時(shí)間順序?qū)⒚總€(gè)所述坐標(biāo)換算信息進(jìn)行存儲(chǔ),得到第二隊(duì)列數(shù)據(jù);

所述第二繪制單元,用于將所述第二隊(duì)列數(shù)據(jù)中每個(gè)相鄰的所述坐標(biāo)換算信息進(jìn)行繪制,得到第二批注筆跡。

作為一種可實(shí)施方式,所述獲取顯示模塊包括壓縮單元和解碼渲染單元;

所述壓縮單元,用于在獲取并存儲(chǔ)所述第二終端上當(dāng)前屏幕的截屏圖像后,對(duì)所述截屏圖像進(jìn)行壓縮處理;

所述解碼渲染單元,用于在將所述截屏圖像顯示在所述第二畫(huà)布層上前,對(duì)所述截屏圖像進(jìn)行解碼、渲染處理,并將處理結(jié)果顯示在所述第二畫(huà)布層上。

與現(xiàn)有技術(shù)相比,本技術(shù)方案具有以下優(yōu)點(diǎn):

本發(fā)明提供的投屏批注方法和系統(tǒng),通過(guò)將第一終端分為第一畫(huà)布層和第二畫(huà)布層,用戶(hù)在第一終端上做標(biāo)注時(shí),第一終端的第一畫(huà)布層中直接繪制出第一批注筆跡,立即呈現(xiàn)給使用者觀(guān)看。在第一終端顯示第一批注筆跡上的同時(shí),第一終端向第二終端傳輸坐標(biāo)信息,第二終端根據(jù)坐標(biāo)信息繪制第二批注筆跡。并且將第二批注筆跡進(jìn)行回傳,在第一終端的第二畫(huà)布層中顯示,同時(shí)擦除第一畫(huà)布層上繪制的第一批注筆跡,最終呈現(xiàn)給用戶(hù)觀(guān)看。本發(fā)明解決了由于無(wú)線(xiàn)環(huán)境和硬件資源影響產(chǎn)生的顯示批注的筆記滯后導(dǎo)致操作不便的問(wèn)題,實(shí)現(xiàn)了在無(wú)線(xiàn)投屏的過(guò)程中,在畫(huà)面?zhèn)鬏敃r(shí)的同步延時(shí)客觀(guān)存在的情況下,使用戶(hù)在進(jìn)行遠(yuǎn)程批注時(shí),書(shū)寫(xiě)能夠得到實(shí)時(shí)響應(yīng),不僅讓用戶(hù)感覺(jué)不到書(shū)寫(xiě)的遲鈍感,而且提高用戶(hù)體驗(yàn)感。

附圖說(shuō)明

圖1為本發(fā)明實(shí)施例一提供的投屏批注方法的流程示意圖;

圖2為本發(fā)明實(shí)施例二提供的投屏批注系統(tǒng)的結(jié)構(gòu)示意圖;

圖3為圖2中獲取批注模塊的結(jié)構(gòu)示意圖;

圖4為圖2中換算批注模塊的結(jié)構(gòu)示意圖;

圖中:100、分層模塊;200、獲取批注模塊;210、第一存儲(chǔ)單元;220、第一繪制單元;230、提取單元;240、擦除繪制單元;300、換算批注模塊;310、獲取分辨率單元;320、換算單元;330、第二存儲(chǔ)單元;340、第二繪制單元;400、獲取顯示模塊;410、壓縮單元;420、解碼渲染單元;500、擦除模塊。

具體實(shí)施方式

以下結(jié)合附圖,對(duì)本發(fā)明上述的和另外的技術(shù)特征和優(yōu)點(diǎn)進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明的部分實(shí)施例,而不是全部實(shí)施例。

請(qǐng)參閱圖1,本發(fā)明實(shí)施例一提供的投屏批注方法,包括以下步驟:

s100、將第一終端分為多個(gè)畫(huà)布層,多個(gè)畫(huà)布層包括第一畫(huà)布層和第二畫(huà)布層;

s200、實(shí)時(shí)獲取坐標(biāo)信息,根據(jù)坐標(biāo)信息在第一畫(huà)布層上繪制第一批注筆跡直接顯示,同時(shí)將坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端;

s300、對(duì)坐標(biāo)信息進(jìn)行換算,得到坐標(biāo)換算信息,并根據(jù)坐標(biāo)換算信息在第二終端中繪制第二批注筆跡;

s400、獲取并存儲(chǔ)第二終端上當(dāng)前屏幕的截屏圖像,將截屏圖像通過(guò)網(wǎng)絡(luò)傳輸至第一終端,并將截屏圖像顯示在第二畫(huà)布層上;

s500、擦除第一畫(huà)布層上繪制的第一批注筆跡,顯示第二畫(huà)布層上的截屏圖像。

這里需要對(duì)多個(gè)畫(huà)布層中進(jìn)行說(shuō)明,于本實(shí)施例中只用到第一畫(huà)布層和第二畫(huà)布層用來(lái)繪制顯示,其他畫(huà)布層設(shè)置為不影響呈現(xiàn)效果,例如設(shè)置為空白層;而第一畫(huà)布層設(shè)置在第二畫(huà)布層的上層,也就是說(shuō)第一畫(huà)布層設(shè)置在接近視覺(jué)處,第二畫(huà)布層的設(shè)置在遠(yuǎn)離視覺(jué)處;通過(guò)這種方式,在第二畫(huà)布層上顯示的第二批注筆跡可以被顯示在第一畫(huà)布層上的第一批注筆跡覆蓋;而在第一批注筆跡被擦除后,第二批注筆跡可以呈現(xiàn)。第一終端是一個(gè)帶有批注和遠(yuǎn)程交互功能的裝置,可以是電子書(shū)本、電腦、平板以及手機(jī)終端的一種;第二終端是一個(gè)帶有處理功能的裝置,可以是電腦。

實(shí)時(shí)獲取坐標(biāo)信息可以是在響應(yīng)于點(diǎn)擊第一終端,每一次點(diǎn)擊都會(huì)將點(diǎn)擊的當(dāng)前坐標(biāo)信息實(shí)時(shí)記錄下來(lái),提高繪制線(xiàn)條的清晰度。

為了保證坐標(biāo)信息傳輸?shù)募皶r(shí)性,在網(wǎng)絡(luò)傳輸時(shí)使用udp(userdatagramprotocol,用戶(hù)數(shù)據(jù)協(xié)議)和幀率自動(dòng)調(diào)節(jié)機(jī)制。udp是osi(opensysteminterconnection,開(kāi)放式系統(tǒng)互聯(lián))參考模型中一種無(wú)連接的傳輸層協(xié)議。利用udp數(shù)據(jù)包傳輸策略和幀率自動(dòng)調(diào)節(jié)機(jī)制使得本實(shí)施例資源消耗小,處理速度快。

本發(fā)明提供的投屏批注方法,通過(guò)將第一終端分為第一畫(huà)布層和第二畫(huà)布層,用戶(hù)在第一終端上做標(biāo)注時(shí),第一終端的第一畫(huà)布層中直接繪制出第一批注筆跡,立即呈現(xiàn)給使用者觀(guān)看。在第一終端顯示第一批注筆跡上的同時(shí),第一終端向第二終端傳輸坐標(biāo)信息,第二終端根據(jù)坐標(biāo)信息繪制第二批注筆跡。并且將第二批注筆跡進(jìn)行回傳,在第一終端的第二畫(huà)布層中顯示,同時(shí)擦除第一畫(huà)布層上繪制的第一批注筆跡,最終呈現(xiàn)給用戶(hù)觀(guān)看。本發(fā)明解決了由于無(wú)線(xiàn)環(huán)境和硬件資源影響產(chǎn)生的顯示批注的筆記滯后導(dǎo)致操作不便的問(wèn)題,實(shí)現(xiàn)了在無(wú)線(xiàn)投屏的過(guò)程中,在畫(huà)面?zhèn)鬏敃r(shí)的同步延時(shí)客觀(guān)存在的情況下,使用戶(hù)在進(jìn)行遠(yuǎn)程批注時(shí),書(shū)寫(xiě)能夠得到實(shí)時(shí)響應(yīng),不僅讓用戶(hù)感覺(jué)不到書(shū)寫(xiě)的遲鈍感,而且提高用戶(hù)體驗(yàn)感。

具體的,步驟s200包括以下步驟:

s210、在實(shí)時(shí)獲取坐標(biāo)信息后,根據(jù)時(shí)間順序?qū)⒚總€(gè)坐標(biāo)信息進(jìn)行存儲(chǔ),得到第一隊(duì)列數(shù)據(jù);

s220、將第一隊(duì)列數(shù)據(jù)中每個(gè)相鄰的坐標(biāo)信息進(jìn)行繪制,得到第三批注筆跡;

s230、同時(shí)獲取傳輸延遲值,并根據(jù)傳輸延遲值提取第一隊(duì)列數(shù)據(jù)中相應(yīng)的坐標(biāo)信息,得到坐標(biāo)延遲信息;

s240、根據(jù)坐標(biāo)延遲信息對(duì)第三批注筆跡進(jìn)行擦除繪制,得到第一批注筆跡。

例如,第一終端程序啟用兩個(gè)線(xiàn)程使用兩層畫(huà)布,包括第一畫(huà)布層和第二畫(huà)布層,都是定義的canvas類(lèi),第二畫(huà)布層用來(lái)顯示第二終端傳輸回來(lái)的第二批注筆跡,第一畫(huà)布層用來(lái)顯示在第一終端的屏幕畫(huà)的第一批注筆跡。在第一畫(huà)布層中,實(shí)時(shí)獲取坐標(biāo)信息采用ontouchevent(motioneventevent)方法來(lái)檢測(cè)到鼠標(biāo)左擊的動(dòng)作motionevent.action_down時(shí),記錄下坐標(biāo)信息(x2,y2),根據(jù)時(shí)間順序?qū)⒆鴺?biāo)信息(x2,y2)存入第一隊(duì)列數(shù)據(jù)中。然后調(diào)用canvas.drawpath(mypath,mypaint)來(lái)畫(huà)線(xiàn),將第一隊(duì)列數(shù)據(jù)中每個(gè)相鄰的坐標(biāo)信息進(jìn)行繪制,也就是將(x2,y2)與隊(duì)列中的上一個(gè)坐標(biāo)(x1,y1)用線(xiàn)連接起來(lái),最終將第一隊(duì)列數(shù)據(jù)中每個(gè)相鄰的坐標(biāo)信息用線(xiàn)連接起來(lái)得到第三批注筆跡。為了防止繪制結(jié)束后畫(huà)布被清空,調(diào)用方法canvas.drawbitmap(mybitmap,0,0,mbitmappaint)。

在獲取傳輸延遲值,并根據(jù)傳輸延遲值提取第一隊(duì)列數(shù)據(jù)中相應(yīng)的坐標(biāo)信息,得到坐標(biāo)延遲信息;采用調(diào)用方法mybitmap.erasecolor(myresources.getcolor(r.color.touming))將位圖清除為白色,并且調(diào)用invalidate()根據(jù)坐標(biāo)延遲信息刷新繪制得到第一批注筆跡。

這里需要說(shuō)明的是對(duì)于存放坐標(biāo)的隊(duì)列長(zhǎng)度的計(jì)算:假設(shè)鼠標(biāo)移動(dòng)一個(gè)坐標(biāo)的時(shí)間是t毫秒,則第一終端存放坐標(biāo)的隊(duì)列的長(zhǎng)度為l>=n/t。如果隊(duì)列的長(zhǎng)度太長(zhǎng),會(huì)浪費(fèi)資源;如果隊(duì)列的長(zhǎng)度太短,則會(huì)在擦除的時(shí)候,使得前面的線(xiàn)條擦除不干凈,而影響批注視覺(jué)體驗(yàn)。

采用上述方法,在無(wú)線(xiàn)投屏的過(guò)程中,在畫(huà)面?zhèn)鬏敃r(shí)的同步延時(shí)客觀(guān)存在的情況下,使用戶(hù)在進(jìn)行遠(yuǎn)程批注時(shí),保證第一終端和第二終端的顯示的批注筆跡一致性,不僅讓用戶(hù)感覺(jué)不到書(shū)寫(xiě)的遲鈍感,而且提高用戶(hù)體驗(yàn)感。

具體的,步驟s200還包括以下步驟:

將單次的坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端;將坐標(biāo)信息進(jìn)行單次傳輸使得繪制的批注筆跡更加清楚,提高批注筆跡質(zhì)量。

或,根據(jù)預(yù)設(shè)時(shí)間將坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端;降低系統(tǒng)運(yùn)算負(fù)擔(dān),提高運(yùn)算速率;于本實(shí)施例中,采用根據(jù)預(yù)設(shè)時(shí)間將坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端,預(yù)設(shè)時(shí)間根據(jù)網(wǎng)絡(luò)傳輸?shù)膫鬏斞舆t值確定。

具體的,步驟s300包括以下步驟:

s310、獲取第一終端的第一分辨率和第二終端的第二分辨率;

s320、根據(jù)第一分辨率和第二分辨率,對(duì)坐標(biāo)信息進(jìn)行換算,得到坐標(biāo)換算信息;

s330、根據(jù)時(shí)間順序?qū)⒚總€(gè)坐標(biāo)換算信息進(jìn)行存儲(chǔ),得到第二隊(duì)列數(shù)據(jù);

s340、將第二隊(duì)列數(shù)據(jù)中每個(gè)相鄰的坐標(biāo)換算信息進(jìn)行繪制,得到第二批注筆跡。

對(duì)坐標(biāo)信息進(jìn)行換算的換算公式為:

式中,第二終端坐標(biāo)換算信息為(x'2,y'2)、第一終端坐標(biāo)信息為(x2,y2)、第一終端屏幕分辨率為(w1,h1)以及第二終端屏幕分辨率為(w2,h2)。

具體的,步驟s400還包括以下步驟:

s410、在獲取并存儲(chǔ)第二終端上當(dāng)前屏幕的截屏圖像后,對(duì)截屏圖像進(jìn)行壓縮處理。采用h.264的壓縮技術(shù),提高傳輸速度,降低資源占用率;

s420、在將截屏圖像顯示在第二畫(huà)布層上前,對(duì)截屏圖像進(jìn)行解碼、渲染處理,并將處理結(jié)果顯示在第二畫(huà)布層上。

第一終端使用ffmpeg視頻解碼庫(kù)對(duì)接收到的截屏圖像進(jìn)行解碼,得到的yuv圖像數(shù)據(jù)格式,再對(duì)yuv圖像數(shù)據(jù)進(jìn)行渲染處理。用戶(hù)最后看到的圖像是兩層畫(huà)布層上的像素按不同比例合成的。兩層畫(huà)布層上的像素都采用rgba的格式(a代表透明度),在同一坐標(biāo)下,第一畫(huà)布層的像素為r1g1b1a1,第二畫(huà)布層的像素為r2g2b2a2,其中,a1+a2=255。最后,用戶(hù)看到的點(diǎn)的像素為rgb,其中r=(r1a1+r2a2)/255,g=(g1a1+g2a2)/255,b=(b1a1+b2a2)/255。剛開(kāi)始時(shí),第一畫(huà)布層是透明的(讓所有的像素點(diǎn)的a1設(shè)置為0),當(dāng)在第一畫(huà)布層上開(kāi)始畫(huà)線(xiàn)時(shí),根據(jù)第一隊(duì)列數(shù)據(jù)中的坐標(biāo)信息,將顯示出來(lái)的線(xiàn)條的像素點(diǎn)的a1設(shè)置為255;當(dāng)客戶(hù)端的屏幕顯示在第二畫(huà)布層時(shí),就需要將第一畫(huà)布層上前n毫秒的像素點(diǎn)的a1設(shè)置為0。在判斷鼠標(biāo)的狀態(tài)為motionevent.action_up時(shí),將第一隊(duì)列數(shù)據(jù)中所有坐標(biāo)信息的像素點(diǎn)中的a1設(shè)置為0。清空隊(duì)列,將上一層畫(huà)布的位圖全部清除為透明色,從而能將下一層的圖像全部顯示出來(lái)。

采用上述方法,在網(wǎng)絡(luò)狀態(tài)很差的情況下,也能保證在無(wú)線(xiàn)投屏的過(guò)程中,第一終端和第二終端的顯示的批注筆跡一致性,不僅讓用戶(hù)感覺(jué)不到書(shū)寫(xiě)的遲鈍感,而且提高用戶(hù)體驗(yàn)感。

基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例還提供一種投屏批注系統(tǒng),該系統(tǒng)的實(shí)施可參照上述方法的過(guò)程實(shí)現(xiàn),重復(fù)之處不再冗述。

如圖2所示,是本發(fā)明實(shí)施例二提供的投屏批注系統(tǒng)的結(jié)構(gòu)示意圖,包括:

分層模塊100用于將第一終端分為多個(gè)畫(huà)布層,多個(gè)畫(huà)布層包括第一畫(huà)布層和第二畫(huà)布層;

獲取批注模塊200用于實(shí)時(shí)獲取坐標(biāo)信息,根據(jù)坐標(biāo)信息在第一畫(huà)布層上繪制第一批注筆跡直接顯示,同時(shí)將坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端;

換算批注模塊300用于對(duì)坐標(biāo)信息進(jìn)行換算,得到坐標(biāo)換算信息,并根據(jù)坐標(biāo)換算信息在第二終端中繪制第二批注筆跡;

獲取顯示模塊400用于獲取并存儲(chǔ)第二終端上當(dāng)前屏幕的截屏圖像,將截屏圖像通過(guò)網(wǎng)絡(luò)傳輸至第一終端,并將截屏圖像顯示在第二畫(huà)布層上;

擦除模塊500用于擦除第一畫(huà)布層上繪制的第一批注筆跡,顯示第二畫(huà)布層上的截屏圖像。

如圖3所示,是獲取批注模塊200的結(jié)構(gòu)示意圖,包括第一存儲(chǔ)單元210、第一繪制單元220、提取單元230以及擦除繪制單元240;

第一存儲(chǔ)單元210用于在實(shí)時(shí)獲取坐標(biāo)信息后,根據(jù)時(shí)間順序?qū)⒚總€(gè)坐標(biāo)信息進(jìn)行存儲(chǔ),得到第一隊(duì)列數(shù)據(jù);

第一繪制模塊用于將第一隊(duì)列數(shù)據(jù)中每個(gè)相鄰的坐標(biāo)信息進(jìn)行繪制,得到第三批注筆跡;

提取單元230用于同時(shí)獲取傳輸延遲值,并根據(jù)傳輸延遲值提取第一隊(duì)列數(shù)據(jù)中相應(yīng)的坐標(biāo)信息,得到坐標(biāo)延遲信息;

擦除繪制單元240用于根據(jù)坐標(biāo)延遲信息對(duì)第三批注筆跡進(jìn)行擦除繪制,得到第一批注筆跡。

進(jìn)一步地,獲取批注模塊200還包括單此傳輸單元或批量傳輸單元;

單此傳輸單元用于將單次的坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端;

批量傳輸單元用于根據(jù)預(yù)設(shè)時(shí)間將坐標(biāo)信息通過(guò)網(wǎng)絡(luò)傳輸至第二終端。

如圖4所示,是換算批注模塊300的結(jié)構(gòu)示意圖,包括獲取分辨率單元310、換算單元320、第二存儲(chǔ)單元330以及第二繪制單元340;

獲取分辨率單元310用于獲取第一終端的第一分辨率和第二終端的第二分辨率;

換算單元320用于根據(jù)第一分辨率和第二分辨率,對(duì)坐標(biāo)信息進(jìn)行換算,得到坐標(biāo)換算信息;

第二存儲(chǔ)單元330用于根據(jù)時(shí)間順序?qū)⒚總€(gè)坐標(biāo)換算信息進(jìn)行存儲(chǔ),得到第二隊(duì)列數(shù)據(jù);

第二繪制單元340用于將第二隊(duì)列數(shù)據(jù)中每個(gè)相鄰的坐標(biāo)換算信息進(jìn)行繪制,得到第二批注筆跡。

進(jìn)一步地,參閱圖1,獲取顯示模塊400包括壓縮單元410和解碼渲染單元420;

壓縮單元410用于在獲取并存儲(chǔ)第二終端上當(dāng)前屏幕的截屏圖像后,對(duì)截屏圖像進(jìn)行壓縮處理。

解碼渲染單元420用于在將截屏圖像顯示在第二畫(huà)布層上前,對(duì)截屏圖像進(jìn)行解碼、渲染處理,并將處理結(jié)果顯示在第二畫(huà)布層上。

本發(fā)明提供的投屏批注系統(tǒng),通過(guò)將第一終端分為第一畫(huà)布層和第二畫(huà)布層,用戶(hù)在第一終端上做標(biāo)注時(shí),第一終端的第一畫(huà)布層中直接繪制出第一批注筆跡,立即呈現(xiàn)給使用者觀(guān)看。在第一終端顯示第一批注筆跡上的同時(shí),第一終端向第二終端傳輸坐標(biāo)信息,第二終端根據(jù)坐標(biāo)信息繪制第二批注筆跡。并且將第二批注筆跡進(jìn)行回傳,在第一終端的第二畫(huà)布層中顯示,同時(shí)擦除第一畫(huà)布層上繪制的第一批注筆跡,最終呈現(xiàn)給用戶(hù)觀(guān)看。本發(fā)明解決了由于無(wú)線(xiàn)環(huán)境和硬件資源影響產(chǎn)生的顯示批注的筆記滯后導(dǎo)致操作不便的問(wèn)題,實(shí)現(xiàn)了在無(wú)線(xiàn)投屏的過(guò)程中,在畫(huà)面?zhèn)鬏敃r(shí)的同步延時(shí)客觀(guān)存在的情況下,使用戶(hù)在進(jìn)行遠(yuǎn)程批注時(shí),書(shū)寫(xiě)能夠得到實(shí)時(shí)響應(yīng),不僅讓用戶(hù)感覺(jué)不到書(shū)寫(xiě)的遲鈍感,而且提高用戶(hù)體驗(yàn)感。

本發(fā)明雖然已以較佳實(shí)施例公開(kāi)如上,但其并不是用來(lái)限定本發(fā)明,任何本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍內(nèi),都可以利用上述揭示的方法和技術(shù)內(nèi)容對(duì)本發(fā)明技術(shù)方案做出可能的變動(dòng)和修改,因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例所作的任何簡(jiǎn)單修改、等同變化及修飾,均屬于本發(fā)明技術(shù)方案的保護(hù)范圍。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1