利用數(shù)據(jù)uri增強的漸進圖像呈現(xiàn)的制作方法
【專利說明】利用數(shù)據(jù)URI増強的漸進圖像呈現(xiàn)
[0001]相關專利申請的交叉引用
[0002]本申請要求2012年9月24日提交的標題為“Progressive Image RenderingUtilizing Data URI Enhancements”的美國專利申請?zhí)?3/625,667的優(yōu)先權(quán),所述美國專利申請以引用的方式整體并入本文。
【背景技術(shù)】
[0003]隨著對網(wǎng)絡例如像因特網(wǎng)的訪問的繼續(xù)增加,對改善性能同時有效利用帶寬的需求也增加。例如,當通過網(wǎng)絡訪問網(wǎng)絡站點時,網(wǎng)絡站點處的頁面加載的速度為用戶提供改善的體驗。各種網(wǎng)絡站點處的頁面通過網(wǎng)絡的下載可能受歸因于頁面處的文本和媒體內(nèi)容的沒有快速地適當布局頁面的能力阻礙。另外,用戶將通常訪問各種網(wǎng)絡站點上的頁面并且對頁面內(nèi)的媒體內(nèi)容興趣不大或沒有興趣。因此,在各種頁面處提供高品質(zhì)和/或高清晰度媒體內(nèi)容對于這類用戶而言可能是對帶寬的浪費。
【附圖說明】
[0004]參照附圖來闡述詳細描述。在附圖中,元件符號的最左側(cè)數(shù)字標識所述元件符號首次出現(xiàn)所在的圖。相同元件符號在不同圖中的使用指示相似或相同的項或特征。
[0005]圖1示意性地示出用于通過網(wǎng)絡訪問網(wǎng)絡站點的環(huán)境的實例。
[0006]圖2示出將媒體內(nèi)容自網(wǎng)絡站點提供給用戶設備的過程。
[0007]圖3示出自網(wǎng)絡站點接收媒體內(nèi)容的過程。
【具體實施方式】
[0008]本公開描述用于通過例如像因特網(wǎng)、內(nèi)聯(lián)網(wǎng)等的網(wǎng)絡訪問如網(wǎng)站的網(wǎng)絡站點的架構(gòu)和技術(shù),其中用于在用戶設備上顯示網(wǎng)絡站點的語言包括用于網(wǎng)絡站點的頁面的媒體內(nèi)容的一部分。因此,通常以超文本標記語言(HTML)的形式的用于網(wǎng)絡站點的語言包括嵌入在所述超文本標記語言中的數(shù)據(jù)統(tǒng)一資源標識符(URI)。HTML是用于顯示網(wǎng)頁和可通過例如像網(wǎng)頁瀏覽器的應用程序顯示的其它信息的主要標記語言。
[0009]根據(jù)本公開,在HTML中還包括二進制偽影,以使得用戶的應用程序如網(wǎng)頁瀏覽器可完成下載媒體內(nèi)容。統(tǒng)一建模語言(UML)中的偽影是由軟件開發(fā)過程或由系統(tǒng)的部署和操作使用或產(chǎn)生的一段物理信息的說明。偽影的實例包括模型文件、源文件、腳本、二進制可執(zhí)行文件、數(shù)據(jù)庫系統(tǒng)中的表、可交付開發(fā)、文字處理文檔、郵件消息等。因此,作為一個實例,用戶經(jīng)由計算裝置上的網(wǎng)頁瀏覽器通過因特網(wǎng)訪問網(wǎng)站。當網(wǎng)站的第一頁面下載至計算裝置時,第一頁面上的媒體內(nèi)容的初始部分例如圖像通過嵌入在HTML內(nèi)的數(shù)據(jù)URI提供至用戶的計算裝置的網(wǎng)頁瀏覽器。將媒體內(nèi)容的初始部分連同頁面的例如像文本的其它部分一起顯示給用戶。這允許網(wǎng)頁瀏覽器更快速地布局網(wǎng)站的頁面,并且因此為用戶提供改善的頁面加載體驗和頁面加載時間。網(wǎng)頁瀏覽器可下載圖像的剩余部分以便基于頁面的HTML內(nèi)的二進制偽影來提供圖像的更高品質(zhì)和/或更高清晰度版本。
[0010]很多圖像格式例如像JPEG和PNG包括“漸進”模式,所述“漸進”模式導致圖像的較低分辨率“層”首先被加載,并且改善層次的細節(jié)被呈現(xiàn)如所述改善層次的細節(jié)被漸進地下載。例如,在100K漸進JPEG的情況下,網(wǎng)頁瀏覽器可通過僅下載圖像數(shù)據(jù)的最初2-3K來呈現(xiàn)(第一層)的低品質(zhì)版本。因此,根據(jù)本公開,利用漸進圖像,其中最初幾層嵌入在網(wǎng)站的HTML內(nèi)以便提供圖像的初始部分。
[0011]根據(jù)本公開,可僅將媒體內(nèi)容的初始部分提供到網(wǎng)頁瀏覽器。例如,用戶可能對位于頁面上的媒體內(nèi)容沒有任何興趣或需求。例如,圖像可能不引起用戶的興趣,并且因此圖像的初始部分可為必需提供到網(wǎng)頁瀏覽器的全部內(nèi)容。如先前所述,根據(jù)本公開,由數(shù)據(jù)URI提供的圖像的這種初始部分通??蔀檩^低分辨率和/或較低品質(zhì)的。因此,除非用戶執(zhí)行一些種類的觸發(fā),例如像試圖將圖像放大或出于一些其它目的而選擇圖像,否則網(wǎng)頁瀏覽器可能不會完成圖像的下載,并且因此不提供圖像的更好品質(zhì)、更高分辨率版本。用戶還可在網(wǎng)頁瀏覽器內(nèi)設置偏好,以便允許基于如觀察較好品質(zhì)的媒體內(nèi)容的需求、計算裝置的性能、帶寬問題、數(shù)據(jù)限制等的因素來自動提供或忽略完成媒體內(nèi)容的下載。
[0012]根據(jù)本公開,當用戶最初通過代理服務器訪問網(wǎng)絡站點時,如代理服務器的服務器可從網(wǎng)絡站點獲得可高速緩存的媒體內(nèi)容。當用戶的網(wǎng)頁瀏覽器通過代理服務器連接到網(wǎng)絡站點時,代理服務器可將媒體內(nèi)容的初始部分提供給用戶。代理服務器可基于HTML中所包括的二進制偽影來獲得整個媒體內(nèi)容,并且基于用戶偏好來將整個媒體內(nèi)容提供給用戶,但是還可將媒體內(nèi)容存儲在代理服務器的高速緩沖存儲器內(nèi),而不管整個媒體內(nèi)容是否被提供給用戶。當其他用戶隨后通過代理服務器訪問網(wǎng)絡站點時,代理服務器可通過網(wǎng)絡站點的HTML內(nèi)的數(shù)據(jù)URI來提供媒體內(nèi)容的初始內(nèi)容,并且還可取決于后續(xù)用戶的偏好來將媒體內(nèi)容的剩余部分從代理服務器內(nèi)的高速緩沖存儲器提供給后續(xù)用戶,從而為后續(xù)用戶改善頁面加載性能。
[0013]示例性架構(gòu)
[0014]圖1示出用于實現(xiàn)用于通過例如像因特網(wǎng)、內(nèi)聯(lián)網(wǎng)等的網(wǎng)絡訪問如網(wǎng)站的網(wǎng)絡站點的上述技術(shù)的環(huán)境100,其中用于在訪問網(wǎng)絡站點的用戶設備或用戶裝置上顯示網(wǎng)絡站點的語言包括用于網(wǎng)絡站點的頁面的媒體內(nèi)容的一部分。因此,圖1的環(huán)境包括多個用戶設備(UE) 102(1)、102 (2)、……,102 (M)0 UE 102可包括例如臺式計算機、膝上型計算機、個人數(shù)字助理、筆記本、蜂窩式電話等。UE 102的這個列表并不意味著是限制性的。
[0015]環(huán)境100還包括表示為一個或多個服務器104(1)、104 (2)、……、104(N)的多個計算裝置或主機,所述多個計算裝置或主機可包括資源和功能兩者。UE 102可通過例如像因特網(wǎng)或內(nèi)聯(lián)網(wǎng)的網(wǎng)絡106連接到服務器104并且與所述服務器通信。服務器104通常被配置成通過托管網(wǎng)絡站點來充當網(wǎng)絡站點提供商。服務器104中的一個或多個可充當代理服務器。代理服務器通常為充當用于來自UE的請求的中介的服務器(計算機系統(tǒng)或應用程序),所述UE從其它服務器尋找資源。UE連接到代理服務器,從而請求一些服務,如文件、連接、網(wǎng)頁或可從不同服務器獲得的其它資源。在圖1的示例性環(huán)境100中,服務器104(2)示出為充當與服務器104(3),104(4)、……,104(0)通信的代理服務器。
[0016]另外,通常被稱為“云計算平臺”或“云計算環(huán)境”的網(wǎng)絡可訪問計算平臺(未示出)可被配置成通過托管網(wǎng)絡站點來充當網(wǎng)絡站點提供商。這類網(wǎng)絡可訪問計算平臺可包括一個或多個服務器104,并且可利用與服務器104對照或與服務器104—起包括的其它類型的計算裝置。
[0017]可利用來提供服務以作為環(huán)境100內(nèi)的主機的計算裝置可以專用服務器、共享服務器、虛擬服務器、服務器片、處理器、處理器周期等的形式。雖然圖1示出以服務器104的形式的計算裝置,但這并不意味著是限制性的,而是出于方便和清晰性而如此簡單呈現(xiàn)。包括一個或多個代理服務器的服務器104中的一個或多個可包括在網(wǎng)絡可訪問計算平臺內(nèi)。
[0018]如所示,服務器104 (通常表示為服務器104a)通常包括一個或多個處理器108和存儲器110,所述一個或多個處理器和存儲器可包括任何種類的計算機可讀存儲介質(zhì),并且可存儲一個或多個應用程序112。存儲器110可以一個或多個硬盤驅(qū)動器114的形式,并且還可包括其它類型的存儲器,例如像高速緩沖存儲器116。應用程序112可利用來執(zhí)行與托管網(wǎng)絡站點和提供與網(wǎng)絡站點相關聯(lián)的各種內(nèi)容相關聯(lián)的各種功能。服務器104a還可包括通常見于計算裝置中的一個或多個其它組件,如通信連接件、輸入/輸出I/O接口等。服務器104a通常還包括一個或多個電力總線118和一個或多個電源120。
[0019]如所示,UE 102 (通常表示為UE 102a)通常包括一個或多個處理器122和存儲器124,所述一個或多個處理器和存儲器可包括任何種類的計算機可讀存儲介質(zhì),并且可存儲一個或多個應用程序126。存儲器124可以一個或多個硬盤驅(qū)動器128的形式,并且還可包括其它類型的存儲器。應用程序126可利用來執(zhí)行與訪問網(wǎng)絡站點和接收與網(wǎng)絡站點相關聯(lián)的各種內(nèi)容相關聯(lián)的各種功能。因此,一般來說,應用程序126中的一個通常以如網(wǎng)頁瀏覽器的瀏覽器的形式。UE 102a還可包括通常見于計算裝置中的一個或多個其它組件,如通信連接件、輸入/輸出I/O接口等。UE 102a通常還包括一個或多個電力總線130和一個或多個電源132。
[0020]UE 102由用戶利用來通過網(wǎng)頁瀏覽器訪問例如像因特網(wǎng)或內(nèi)聯(lián)網(wǎng)的網(wǎng)絡106。網(wǎng)絡106利用來訪問一個或多個服務器104,所述一個或多個服務器包括用于通過UE 102向用戶提供內(nèi)容的各種網(wǎng)絡站點。內(nèi)容可包括但不限于文本、圖像、視頻、音頻等。因此,如所知的,用戶利用UE 102來通過網(wǎng)絡106訪問服務器104,以便訪問網(wǎng)頁、網(wǎng)站和/或如內(nèi)聯(lián)網(wǎng)的內(nèi)部系統(tǒng)的內(nèi)部網(wǎng)頁和網(wǎng)絡站點。
[002