一種瀏覽器中進行音視頻信息顯示的方法和裝置制造方法
【專利摘要】本發明實施例提供了一種瀏覽器中進行音視頻信息顯示的方法和裝置,所述的方法包括:在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據;在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據;瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識;瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。本發明實施例大大提高了音視頻播放的識別操作的簡便性,減少了瀏覽器的系統資源消耗,減少系統資源的耗費。
【專利說明】一種瀏覽器中進行音視頻信息顯示的方法和裝置
【技術領域】
[0001]本發明涉及瀏覽器的【技術領域】,特別是涉及一種瀏覽器中進行音視頻信息顯示的方法和一種瀏覽器中進行音視頻信息顯示的裝置。
【背景技術】
[0002]瀏覽器是指可以顯示網頁服務器或者文件系統的HTML(HyperText MarkupLanguage,超文本標記語言)文件內容,并讓用戶與這些文件交互的一種應用程序。
[0003]瀏覽器主要通過HTTP (Hypertext transfer protocol,超文本傳送協議)協議與網頁服務器交互并獲取網頁,這些網頁由URL(Uniform Resource Locator,統一資源定位符)指定,文件格式通常為 HTML,并由 MIME (Multipurpose Internet Mail Extens1ns,多用途互聯網郵件擴展)在HTTP協議中指明。
[0004]一個網頁中可以包括多個文檔,每個文檔都是分別從服務器獲取的。大部分的瀏覽器本身支持除了 HTML之外的廣泛的格式,例如JPEG、PNG、GIF等圖像格式,并且能夠擴展支持眾多的插件(plug-1ns)。另外,許多瀏覽器還支持其他的URL類型及其相應的協議,如FTP、Gopher、HTTPS (HTTP 協議的加密版本)。
[0005]HTTP內容類型和URL協議規范允許網頁設計者在網頁中嵌入圖像、動畫、視頻、聲音、流媒體等。
[0006]目前的瀏覽器多是多標簽(Tab)顯示網頁的,對于不同的網頁鏈接都是在不同的瀏覽器標簽中進行加載渲染,以便用戶進行閱覽。
[0007]在播放聲音的情況下,用戶想要知道是否是網頁在播放聲音,哪個網頁播放聲音,需要手動地對逐個網頁進行點擊、滾動等操作,以篩選正在播放聲音的網頁,操作麻煩,多次點擊、滾動等操作大大增加了瀏覽器的系統資源消耗,浪費系統資源。
【發明內容】
[0008]鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的一種瀏覽器中進行音視頻信息顯示的方法和相應的一種瀏覽器中進行音視頻信息顯示的裝置。
[0009]依據本發明的一個方面,提供了一種瀏覽器中進行音視頻信息顯示的方法,包括:
[0010]在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據;
[0011]在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據;
[0012]瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;
[0013]瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識;
[0014]瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
[0015]可選地,所述音視頻播放相關標簽包括:
[0016]HTML音視頻標簽、瀏覽器插件Object標簽、HTML5音視頻標簽中的至少一個;
[0017]其中,所述HTML音視頻標簽包括Flash標簽;所述HTML5音視頻標簽包括Aud1標簽和Video標簽中的至少一個。
[0018]可選地,所述播放信息包括以下至少一種:
[0019]音視頻數據標識、音視頻數據標識與網頁進程/線程標識的對應關系、音視頻數據的描述信息。
[0020]可選地,所述播放提示信息包括以下至少一種:
[0021]音視頻數據的播放圖標、音視頻數據的描述信息。
[0022]可選地,所述在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據的步驟包括:
[0023]在一個瀏覽器插件獨立進程中與所述音視頻數據對應的服務器進行音視頻數據幀交互;
[0024]在一個瀏覽器插件獨立進程中對所述視頻數據幀進行編碼處理和/或解碼處理。
[0025]可選地,所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息的步驟包括:
[0026]在所述瀏覽器插件獨立進程中渲染音視頻數據的播放提示信息;
[0027]由所述瀏覽器插件獨立進程通過進程間I/O數據交互發送至所述瀏覽器主進程;
[0028]所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中顯示所述播放提示信息。
[0029]可選地,還包括:
[0030]當瀏覽器主進程接收到針對所述播放提示信息的控制指示信息時,將所述控制指示信息發送到瀏覽器插件獨立進程;
[0031]由所述瀏覽器插件獨立進程對所述播放提示信息對應的音視頻數據,執行所述控制指示信息對應的控制操作。
[0032]可選地,還包括:
[0033]在瀏覽器插件獨立進程中暫停播放目標音視頻數據;所述目標音視頻數據為當前網頁以外的其他網頁所對應的音視頻數據。
[0034]根據本發明的另一方面,提供了一種瀏覽器中進行音視頻信息顯示的裝置,包括:
[0035]第一加載模塊,在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據;
[0036]播放模塊,適于在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據;
[0037]通知模塊,適于瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;
[0038]獲取模塊,適于瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識;
[0039]第二加載模塊,適于瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
[0040]可選地,所述音視頻播放相關標簽包括:
[0041]HTML音視頻標簽、瀏覽器插件Object標簽、HTML5音視頻標簽中的至少一個;
[0042]其中,所述HTML音視頻標簽包括Flash標簽;所述HTML5音視頻標簽包括Aud1標簽和Video標簽中的至少一個。
[0043]可選地,所述播放信息包括以下至少一種:
[0044]音視頻數據標識、音視頻數據標識與網頁進程/線程標識的對應關系、音視頻數據的描述信息。
[0045]可選地,所述播放提示信息包括以下至少一種:
[0046]音視頻數據的播放圖標、音視頻數據的描述信息。
[0047]可選地,所述播放模塊還適于:
[0048]在一個瀏覽器插件獨立進程中與所述音視頻數據對應的服務器進行音視頻數據幀交互;
[0049]在一個瀏覽器插件獨立進程中對所述視頻數據幀進行編碼處理和/或解碼處理。
[0050]可選地,所述第二加載模塊還適于:
[0051]在所述瀏覽器插件獨立進程中渲染音視頻數據的播放提示信息;
[0052]由所述瀏覽器插件獨立進程通過進程間I/O數據交互發送至所述瀏覽器主進程;
[0053]所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中顯示所述播放提示信息。
[0054]可選地,還包括:
[0055]發送模塊,適于在瀏覽器主進程接收到針對所述播放提示信息的控制指示信息時,將所述控制指示信息發送到瀏覽器插件獨立進程;
[0056]控制模塊,適于由所述瀏覽器插件獨立進程對所述播放提示信息對應的音視頻數據,執行所述控制指示信息對應的控制操作。
[0057]可選地,還包括:
[0058]暫停播放模塊,適于在瀏覽器插件獨立進程中暫停播放目標音視頻數據;所述目標音視頻數據為當前網頁以外的其他網頁所對應的音視頻數據。
[0059]本發明實施例在播放網頁進程/線程中加載的音視頻播放相關網頁標簽所關聯的一個或多個音視頻數據時,通知瀏覽器主進程音視頻數據的播放信息,及在網頁進程/線程標識所對應的標簽頭中加載音視頻數據的播放提示信息,以提示用戶哪個網頁在播放音頻數據或視頻數據,避免了用戶手動地逐個網頁進行點擊、滾動等操作篩選正在播放聲音的網頁,大大提高了音視頻播放的識別操作的簡便性,減少了瀏覽器的系統資源消耗,減少系統資源的耗費。
[0060]本發明實施例擊基于播放提示信息進行音視頻數據的控制操作,實現了不同樣式的音視頻播放控件的統一,大大提高了音視頻數據的控制操作的簡便性,而用戶無需打開網頁查找音視頻數據的播放控件進行控制操作,進一步減少了瀏覽器的系統資源消耗,減少系統資源的耗費。
[0061]本發明實施例暫停播放目標音視頻數據,使得用戶無需打開網頁查找音視頻數據的播放控件進行音視頻數據的關閉或暫停操作,進一步提高了音視頻數據的控制操作的簡便性,進一步減少了瀏覽器的系統資源消耗,減少系統資源的耗費。
[0062]上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本發明的【具體實施方式】。
【專利附圖】
【附圖說明】
[0063]通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0064]圖1示出了根據本發明一個實施例的一種瀏覽器中進行音視頻信息顯示的方法實施例1的步驟流程圖;
[0065]圖2示出了根據本發明一個實施例的一種瀏覽器的結構示意圖;
[0066]圖3示出了根據本發明一個實施例的一種瀏覽器中進行音視頻信息顯示的方法實施例2的步驟流程圖;
[0067]圖4示出了根據本發明一個實施例的一種瀏覽器中進行音視頻信息顯示的裝置實施例1的結構框圖;以及
[0068]圖5示出了根據本發明一個實施例的一種瀏覽器中進行音視頻信息顯示的裝置實施例2的結構框圖。
【具體實施方式】
[0069]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。
[0070]參照圖1,示出了根據本發明一個實施例的一種瀏覽器中進行音視頻信息顯示的方法實施例1的步驟流程圖,具體可以包括如下步驟:
[0071]步驟101,在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據;
[0072]在具體實現中,用戶可以發出網頁的加載請求請求加載網頁。網頁的加載請求可以是指用戶發出的加載某個網頁的指示。例如,用戶可以通過點擊某鏈接請求加載一個網頁,或者在地址欄輸入網址來請求加載一個網頁等等。當用戶點擊某鏈接時,就相當于接收到了用戶加載網頁的加載請求;同樣,當在地址欄輸入某網址并點擊確定按鈕或按下回車鍵時,也相當于接收到了用戶加載網頁的加載請求。
[0073]其中,加載請求的內容可以包括用戶請求加載的網頁的標識和/或網頁的特征。網頁標識可以是能夠代表一個唯一確定的網頁的信息,例如統一資源標識符(UniformResource Identifier, URI),統一資源標識符又具體可以包括統一資源定位符(UniformResource Locator, URL),或者統一資源名稱(Uniform Resource Name, URN)等等。
[0074]在瀏覽器中接收到網頁的加載請求后,瀏覽器可以通過DNS (Domain NameSystem,域名解析系統)解析查找該網頁URL中的域名(Domain Name)所映射的IP(Internet Protocol,網絡之間互連的協議)地址。在獲取IP地址成功之后,瀏覽器可以向該IP地址所在的服務器請求連接。在成功連接該IP地址所在的服務器之后,瀏覽器端可以將請求頭信息通過HTTP (Hypertext transfer protocol,超文本傳送協議)協議向此IP地址所在的服務器發起網頁加載的請求。該服務器接收到該請求之后等待處理,最后向瀏覽器端返回響應。
[0075]此時,在HTTP協議下,瀏覽器可以從服務器接收到HTML類型的文檔。瀏覽器可以解析HTML文檔,生成樹狀結構的對象,即DOM (Document Object Model,文件對象模型),每個對象是DOM上的一個結點,而這些對象可以代表文字、圖片等網頁資源。
[0076]其中,加載的HTML文檔中可以包括音視頻播放的相關標簽。
[0077]在本發明實施例的一種可選示例中,所述音視頻播放相關網頁標簽可以包括以下至少一種:
[0078]HTML音視頻標簽、瀏覽器插件Object標簽和HTML5音視頻標簽;
[0079]其中,所述HTML音視頻標簽可以包括Flash標簽;所述HTML5音視頻標簽可以包括Aud1標簽和Video標簽中的至少一個。
[0080]在HTML中,Flash是一種交互式矢量圖和Web動畫的標準,可以用于播放音頻和視頻。
[0081]〈object〉標簽可以定義一個嵌入的對象,比如圖像、音頻、視頻以及Flash等等。
[0082]在HTML5中,〈aud1〉標簽可以定義聲音,比如音樂或其他音頻流,而〈video〉標簽可以定義視頻,比如電影片段或其他視頻流。
[0083]當然,上述音視頻播放相關網頁標簽只是作為示例,在實施本發明實施例時,可以根據實際情況設置其他音視頻播放相關網頁標簽,本發明實施例對此不加以限制。另外,除了上述音視頻播放相關網頁標簽外,本領域技術人員還可以根據實際需要采用其它音視頻播放相關網頁標簽,本發明實施例對此也不加以限制。
[0084]所述音視頻播放相關網頁標簽可以具有關聯的一個或多個第一音視頻數據(可以包括音頻數據、視頻數據),用于進行播放。
[0085]需要說明的是,進程(Process)是操作系統結構的基礎,可以是一個正在執行的程序(例如瀏覽器);可以是計算機中正在運行的程序實例;可以是可以分配給處理器并由處理器執行的一個實體;可以是由單一順序的執行顯示,一個當前狀態和一組相關的系統資源所描述的活動單元。
[0086]線程(thread),有時被稱為輕量級進程(Lightweight Process, LffP),是程序執行流的最小單元。線程是進程中的一個實體,是被系統獨立調度和分派的基本單位,線程自己不擁有系統資源,只擁有一點在運行中必不可少的資源,但它可與同屬一個進程的其它線程共享進程所擁有的全部資源。
[0087]每一個程序都至少有一個線程,若程序只有一個線程,那就是程序本身。一個線程可以創建和撤消另一個線程,同一進程中的多個線程之間可以并發執行。
[0088]例如,如圖2所示,瀏覽器主進程200中,網頁進程201可以用于加載網頁205,網頁線程202可以用于加載網頁206、網頁進程203可以用于加載網頁207和網頁進程204可以用于加載網頁208。
[0089]步驟102,在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據;
[0090]瀏覽器可以開始顯示此HTML文檔,并獲取其中內嵌的網頁資源(例如音頻播放相關標簽關聯的音視頻數據)的地址,然后瀏覽器再向服務器發起請求來獲取這些網頁資源(例如音頻播放相關標簽關聯的音視頻數據)。
[0091]由于網頁進程/線程一般不能播放音頻數據和視頻數據,因此,需要其他對象輔助進行播放音頻數據和視頻數據。
[0092]在本發明的一種可選實施例中,步驟102可以包括如下子步驟:
[0093]子步驟S11,在一個瀏覽器插件獨立進程中與所述音視頻數據對應的服務器進行音視頻數據幀交互;
[0094]子步驟S12,在一個瀏覽器插件獨立進程中對所述視頻數據幀進行編碼處理和/或解碼處理。
[0095]瀏覽器插件獨立進程,是瀏覽器插件(Plug-1n)所對應的進程,可以獨立于瀏覽器主進程。插件是一種電腦程序,通過和應用程序(例如瀏覽器)的互動,用來替應用程序增加一些所需要的特定的功能(例如音頻播放功能、視頻播放功能)。
[0096]例如,當音頻播放相關標簽為Flash標簽時,瀏覽器插件可以為Flash插件進程,該Flash插件可以用于播放Flash元素。
[0097]又例如,當音頻播放相關標簽為Object標簽時,瀏覽器插件可以為第三方的音頻播放插件、視頻播放插件等等。
[0098]需要說明的是,當加載HTML音視頻標簽的所述第一網頁進程/線程為多個時,所述多個第一網頁進程/線程對應第一音視頻數據可以在一個瀏覽器插件獨立進程中進行播放。
[0099]例如,如圖2所示,若在網頁進程203和網頁進程204中檢測到Flash標簽,需要播放音頻數據或視頻數據,則可以調用瀏覽器獨立插件進程209 (例如Flash插件進程)進行播放。
[0100]在瀏覽器獨立插件進程(例如Flash插件進程)中,可以不斷與服務器進行音視頻數據幀交互,以請求音視頻數據的資源。
[0101]在瀏覽器獨立插件進程(例如Flash插件進程)中,可以在進行編碼處理和解碼處理中的至少一者,以進行音視頻數據的播放。
[0102]步驟103,瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;
[0103]在具體實現中,所述播放信息可以包括以下至少一種:
[0104]第一音視頻數據標識、第一音視頻數據標識與第一網頁進程/線程標識的對應關系、第一音視頻數據的描述信息。
[0105]其中,音視頻數據標識可以為標識音視頻數據的信息,例如ID。第一網頁進程/線程標識可以為標識第一網頁進程/線程的信息,例如ID。描述信息可以為描述音視頻屬性/特征的信息,例如音視頻數據的名稱信息、播放時間信息等等。
[0106]第一音視頻數據可以通過瀏覽器插件獨立進程進行播放,則可以由瀏覽器插件獨立進程通知瀏覽器主進程第一音視頻數據的播放信息。
[0107]例如,第一網頁進程/線程可以具有對應的第一網頁進程/線程標識,瀏覽器插件獨立進程可以管理第一網頁進程/線程標識。
[0108]具體而言,瀏覽器插件獨立進程可以通過調用GetCurrent線程,提取到第一網頁進程/線程標識。
[0109]步驟104,瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識;
[0110]在具體實現中,瀏覽器獲知音視頻播放相關網頁標簽對應的一個或多個第一網頁進程/線程標識,以便瀏覽器主進程在其負責的Π (User Interface,用戶界面)界面(例如標簽頭)中生成播放提示信息。
[0111]具體地,瀏覽器主進程可以依據插件進程的管理的其所服務的各個網頁(例如含有Flash插件的網頁)進程/線程標識(例如ID)。
[0112]步驟105,瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
[0113]本發明實施例中,可以在標簽頭中加載第一音視頻數據的播放提示信息,以提示用戶,該標簽頭對應的網頁正在播放音頻數據和視頻數據中的至少一種。
[0114]在本發明的一種可選實施例中,步驟105可以包括如下子步驟:
[0115]子步驟S21,在所述瀏覽器插件獨立進程中渲染音視頻數據的播放提示信息;
[0116]子步驟S22,由所述瀏覽器插件獨立進程通過進程間I/O數據交互發送至所述瀏覽器主進程;
[0117]子步驟S23,所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中顯示所述播放提示信息。
[0118]若音視頻數據在瀏覽器插件獨立進程中進行播放,則可以在瀏覽器插件獨立進程中進行音視頻數據的播放提示信息的渲染操作,通過進程間通信(Inter-ProcessCommunicat1n, IPC),與瀏覽器主進程進行I/O (Input/Output,輸入輸出端口)數據交互,以發送播放提示信息之瀏覽器主進程。
[0119]在本發明的一種可選實施例中,若音視頻數據在瀏覽器主進程中進行播放,則可以在瀏覽器主進程中進行音視頻數據的播放提示信息的渲染操作。
[0120]在具體實現中,所述播放提示信息可以包括以下至少一種:
[0121]音視頻數據的播放圖標、音視頻數據的描述信息。
[0122]瀏覽器主進程在獲得播放提示信息之后,可以在第一網頁進程/線程標識所對應的標簽頭中進行加載。
[0123]例如,可以采用DrawTabIcon函數繪制音視頻數據的播放圖標(如音頻數據可以關聯喇叭,視頻數據可以關聯場記板)。具體地,將音視頻數據的播放圖標(如png文件格式的喇卩Λ或場記板)通過pnglib庫解碼為32位位圖HBITMAP,然后通過SelectObject函數將該位圖綁定到HDC上,再調用alphablend函數將位圖繪制到屏幕上。
[0124]又例如,可以采用DrawText函數繪制音視頻數據的描述信息。具體地,Drawtext為系統API (Applicat1n Program Interface,應用程序接口),通過傳遞參數文字和位置,就可以將文字(如描述信息)繪制到屏幕上。
[0125]需要說明的是,本發明實施例還可以在其他位置加載第一音視頻數據的播放提示信息,例如瀏覽器中生成一個獨立的用于加載第一音視頻數據的播放提示信息的提示界面、在桌面生成一個獨立的用于加載第一音視頻數據的播放提示信息的提示界面等等,本發明實施例對此不加以限制。
[0126]本發明實施例在播放網頁進程/線程中加載的音視頻播放相關網頁標簽所關聯的一個或多個音視頻數據時,通知瀏覽器主進程音視頻數據的播放信息,及在網頁進程/線程標識所對應的標簽頭中加載音視頻數據的播放提示信息,以提示用戶哪個網頁在播放音頻數據或視頻數據,避免了用戶手動地逐個網頁進行點擊、滾動等操作篩選正在播放聲音的網頁,大大提高了音視頻播放的識別操作的簡便性,減少了瀏覽器的系統資源消耗,減少系統資源的耗費。
[0127]參照圖3,示出了根據本發明一個實施例的一種瀏覽器中進行音視頻信息顯示的方法實施例2的步驟流程圖,具體可以包括如下步驟:
[0128]步驟301,在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽可以具有關聯的一個或多個音視頻數據;
[0129]步驟302,在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據;
[0130]步驟303,瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;
[0131]步驟304,瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識;
[0132]步驟305,瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
[0133]步驟306,當瀏覽器主進程接收到針對所述播放提示信息的控制指示信息時,將所述控制指示信息發送到瀏覽器插件獨立進程;
[0134]步驟307,由所述瀏覽器插件獨立進程對所述播放提示信息對應的音視頻數據,執行所述控制指示信息對應的控制操作。
[0135]在具體實現中,用戶可以通過鼠標點擊/拖動、觸控點擊/拖動等方式通過播放提示信息發出控制指示信息。
[0136]例如,在橫條狀的播放提示信息中向右/向左拖動,以指示增加/減少音視頻數據的首量;在喇機形的播放提不?目息中點擊,以指不關閉/打開首視頻數據;在左箭頭/右箭頭形的播放提示信息中點擊,以指示對音視頻數據進行快進/倒退操作等等。
[0137]在本發明的一種可選實施例中,若第一音視頻數據在瀏覽器獨立插件進程中播放時,則可以通過HOOK (鉤子)掛鉤該瀏覽器獨立插件進程中指定的播放函數,獲取指定的播放對象,把該對象保存到指定的保存線程中存儲,以及,創建一個操作線程,根據保存線程中存儲的對象指針,以實現對第一音視頻數據的控制操作,例如增加/減少音視頻數據的音量,關閉/打開音視頻數據,對音視頻數據進行快進/倒退操作等等。
[0138]例如,某博客網站采用QzoneMusic.exe進程進行音視頻數據的播放、某音樂網站采用mfpmp.exe音視頻數據的播放。
[0139]可以通過Hook掛鉤QzoneMusic.exe進程中的CoCreateInstance函數,獲取MusicPlayer對象,然后把MusicPlayer對象保存到保存線程存儲tls中存儲。同時創建一個操作線程Timer, TimerProc從tls中取出保存的對象指針,根據音頻開關調用IDispatch 接口的 PutPropertyByName 函數設置 IMusicPlayer 對象的 Mute 屬性,若 Mute=I則可以為靜音(即關閉音視頻數據),若Mute = O則可以為有聲音(即打開音視頻數據)。
[0140]可以通過Hook掛鉤Mfpmp.exe進程中的CoGetClassObject函數,獲取IWMPSettings對象,然后把IWMPSettings對象保存到保存線程存儲tls中存儲。同時創建一個操作線程Timer, TimerProc從tls中取出保存的對象指針,根據聲音開關調用IDispatch 接口的 PutPropertyByName 函數設置 IWMPSettings 對象的 Mute 屬性,若 Mute=I則可以為靜音(即關閉音視頻數據),若Mute = O則可以為有聲音(即打開音視頻數據)。
[0141]本發明實施例基于播放提示信息進行音視頻數據的控制操作,實現了不同樣式的音視頻播放控件的統一,大大提高了音視頻數據的控制操作的簡便性,而用戶無需打開網頁查找音視頻數據的播放控件進行控制操作,進一步減少了瀏覽器的系統資源消耗,減少系統資源的耗費。
[0142]步驟308,在瀏覽器插件獨立進程中暫停播放目標音視頻數據;所述目標音視頻數據為當前網頁以外的其他網頁所對應的音視頻數據。
[0143]在本發明實施例中,若瀏覽器打開新的網頁或者點擊已有的網頁的標簽頭,使得該網頁成為當前網頁中,則可以繼續播放當前網頁音視頻數據,暫停其他網頁中的音視頻數據的播放,以防止多個音源發音,影響音視頻數據的播放效果。
[0144]本發明實施例暫停播放目標音視頻數據,使得用戶無需打開網頁查找音視頻數據的播放控件進行音視頻數據的關閉或暫停操作,進一步提高了音視頻數據的控制操作的簡便性,進一步減少了瀏覽器的系統資源消耗,減少系統資源的耗費。
[0145]對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明實施例并不受所描述的動作順序的限制,因為依據本發明實施例,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優選實施例,所涉及的動作并不一定是本發明實施例所必須的。
[0146]參照圖4,示出了根據本發明一個實施例的一種瀏覽器中進行音視頻信息顯示的裝置實施例1的結構框圖,具體可以包括如下模塊:
[0147]第一加載模塊401,在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據;
[0148]播放模塊402,適于在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據;
[0149]通知模塊403,適于瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;
[0150]獲取模塊404,適于瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識;
[0151]第二加載模塊405,適于瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
[0152]在本發明實施例的一種可選示例中,所述音視頻播放相關標簽可以包括:
[0153]HTML音視頻標簽、瀏覽器插件Object標簽、HTML5音視頻標簽中的至少一個;
[0154]其中,所述HTML音視頻標簽可以包括Flash標簽;所述HTML5音視頻標簽可以包括Aud1標簽和Video標簽中的至少一個。
[0155]在本發明實施例的一種可選示例中,所述播放信息可以包括以下至少一種:
[0156]音視頻數據標識、音視頻數據標識與網頁進程/線程標識的對應關系、音視頻數據的描述信息。
[0157]在本發明實施例的一種可選示例中,所述播放提示信息可以包括以下至少一種:
[0158]音視頻數據的播放圖標、音視頻數據的描述信息。
[0159]在本發明的一種可選實施例中,所述播放模塊402還可以適于:
[0160]在一個瀏覽器插件獨立進程中與所述音視頻數據對應的服務器進行音視頻數據幀交互;
[0161]在一個瀏覽器插件獨立進程中對所述視頻數據幀進行編碼處理和/或解碼處理。
[0162]在本發明的一種可選實施例中,所述第二加載模塊405還可以適于:
[0163]在所述瀏覽器插件獨立進程中渲染音視頻數據的播放提示信息;
[0164]由所述瀏覽器插件獨立進程通過進程間I/O數據交互發送至所述瀏覽器主進程;
[0165]所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中顯示所述播放提示信息。
[0166]參照圖5,示出了根據本發明一個實施例的一種瀏覽器中進行音視頻信息顯示的裝置實施例2的結構框圖,具體可以包括如下模塊:
[0167]第一加載模塊501,在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據;
[0168]播放模塊502,適于在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據;
[0169]通知模塊503,適于瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;
[0170]獲取模塊504,適于瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識;
[0171]第二加載模塊505,適于瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
[0172]發送模塊506,適于在瀏覽器主進程接收到針對所述播放提示信息的控制指示信息時,將所述控制指示信息發送到瀏覽器插件獨立進程;
[0173]控制模塊507,適于由所述瀏覽器插件獨立進程對所述播放提示信息對應的音視頻數據,執行所述控制指示信息對應的控制操作。
[0174]暫停播放模塊508,適于在瀏覽器插件獨立進程中暫停播放目標音視頻數據;所述目標音視頻數據為當前網頁以外的其他網頁所對應的音視頻數據。
[0175]對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
[0176]在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基于在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現在此描述的本發明的內容,并且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。
[0177]在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
[0178]類似地,應當理解,為了精簡本公開并幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權利要求書由此明確地并入該【具體實施方式】,其中每個權利要求本身都作為本發明的單獨實施例。
[0179]本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
[0180]此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0181 ] 本發明的各個部件實施例可以以硬件實現,或者以在一個或者多個處理器上運行的軟件模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數字信號處理器(DSP)來實現根據本發明實施例的瀏覽器中進行音視頻信息顯示的設備中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用于執行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0182]應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
[0183]本發明實施例公開了 Al、一種瀏覽器中進行音視頻信息顯示的方法,包括:
[0184]在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據;
[0185]在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據;
[0186]瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;
[0187]瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識;
[0188]瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
[0189]A2、如Al所述的方法,所述音視頻播放相關標簽包括:
[0190]HTML音視頻標簽、瀏覽器插件Object標簽、HTML5音視頻標簽中的至少一個;
[0191]其中,所述HTML音視頻標簽包括Flash標簽;所述HTML5音視頻標簽包括Aud1標簽和Video標簽中的至少一個。
[0192]A3、如Al或A2所述的方法,所述播放信息包括以下至少一種:
[0193]音視頻數據標識、音視頻數據標識與網頁進程/線程標識的對應關系、音視頻數據的描述信息。
[0194]A4、如A3所述的方法,所述播放提示信息包括以下至少一種:
[0195]音視頻數據的播放圖標、音視頻數據的描述信息。
[0196]A5、如Al或A2或A4所述的方法,所述在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據的步驟包括:
[0197]在一個瀏覽器插件獨立進程中與所述音視頻數據對應的服務器進行音視頻數據幀交互;
[0198]在一個瀏覽器插件獨立進程中對所述視頻數據幀進行編碼處理和/或解碼處理。
[0199]A6、如Al或A2或A4所述的方法,所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息的步驟包括:
[0200]在所述瀏覽器插件獨立進程中渲染音視頻數據的播放提示信息;
[0201]由所述瀏覽器插件獨立進程通過進程間I/O數據交互發送至所述瀏覽器主進程;
[0202]所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中顯示所述播放提示信息。
[0203]A7、如Al或A2或A4所述的方法,還包括:
[0204]當瀏覽器主進程接收到針對所述播放提示信息的控制指示信息時,將所述控制指示信息發送到瀏覽器插件獨立進程;
[0205]由所述瀏覽器插件獨立進程對所述播放提示信息對應的音視頻數據,執行所述控制指示信息對應的控制操作。
[0206]A8、如Al或A2或A4所述的方法,還包括:
[0207]在瀏覽器插件獨立進程中暫停播放目標音視頻數據;所述目標音視頻數據為當前網頁以外的其他網頁所對應的音視頻數據。
[0208]本發明實施例還公開了 B9、一種瀏覽器中進行音視頻信息顯示的裝置,包括:
[0209]第一加載模塊,在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據;
[0210]播放模塊,適于在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據;
[0211]通知模塊,適于瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;
[0212]獲取模塊,適于瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識;
[0213]第二加載模塊,適于瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
[0214]BlO^n B9所述的裝置,所述音視頻播放相關標簽包括:
[0215]HTML音視頻標簽、瀏覽器插件Object標簽、HTML5音視頻標簽中的至少一個;
[0216]其中,所述HTML音視頻標簽包括Flash標簽;所述HTML5音視頻標簽包括Aud1標簽和Video標簽中的至少一個。
[0217]B11、如B9或BlO所述的裝置,所述播放信息包括以下至少一種:
[0218]音視頻數據標識、音視頻數據標識與網頁進程/線程標識的對應關系、音視頻數據的描述信息。
[0219]B12、如Bll所述的裝置,所述播放提示信息包括以下至少一種:
[0220]音視頻數據的播放圖標、音視頻數據的描述信息。
[0221]B13、如B9或BlO或B12所述的裝置,所述播放模塊還適于:
[0222]在一個瀏覽器插件獨立進程中與所述音視頻數據對應的服務器進行音視頻數據幀交互;
[0223]在一個瀏覽器插件獨立進程中對所述視頻數據幀進行編碼處理和/或解碼處理。
[0224]B14、如B9或BlO或B12所述的裝置,所述第二加載模塊還適于:
[0225]在所述瀏覽器插件獨立進程中渲染音視頻數據的播放提示信息;
[0226]由所述瀏覽器插件獨立進程通過進程間I/O數據交互發送至所述瀏覽器主進程;
[0227]所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中顯示所述播放提示信息。
[0228]B15、如B9或BlO或B12所述的裝置,還包括:
[0229]發送模塊,適于在瀏覽器主進程接收到針對所述播放提示信息的控制指示信息時,將所述控制指示信息發送到瀏覽器插件獨立進程;
[0230]控制模塊,適于由所述瀏覽器插件獨立進程對所述播放提示信息對應的音視頻數據,執行所述控制指示信息對應的控制操作。
[0231]B16、如B9或BlO或B12所述的裝置,還包括:
[0232]暫停播放模塊,適于在瀏覽器插件獨立進程中暫停播放目標音視頻數據;所述目標音視頻數據為當前網頁以外的其他網頁所對應的音視頻數據。
【權利要求】
1.一種瀏覽器中進行音視頻信息顯示的方法,包括: 在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據; 在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據; 瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息; 瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識; 瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
2.如權利要求1所述的方法,其特征在于,所述音視頻播放相關標簽包括: HTML音視頻標簽、瀏覽器插件Object標簽、HTML5音視頻標簽中的至少一個; 其中,所述HTML音視頻標簽包括Flash標簽;所述HTML5音視頻標簽包括Aud1標簽和Video標簽中的至少一個。
3.如權利要求1或2所述的方法,其特征在于,所述播放信息包括以下至少一種: 音視頻數據標識、音視頻數據標識與網頁進程/線程標識的對應關系、音視頻數據的描述信息。
4.如權利要求3所述的方法,其特征在于,所述播放提示信息包括以下至少一種: 音視頻數據的播放圖標、音視頻數據的描述信息。
5.如權利要求1或2或4所述的方法,其特征在于,所述在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據的步驟包括: 在一個瀏覽器插件獨立進程中與所述音視頻數據對應的服務器進行音視頻數據幀交互; 在一個瀏覽器插件獨立進程中對所述視頻數據幀進行編碼處理和/或解碼處理。
6.如權利要求1或2或4所述的方法,其特征在于,所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息的步驟包括: 在所述瀏覽器插件獨立進程中渲染音視頻數據的播放提示信息; 由所述瀏覽器插件獨立進程通過進程間I/O數據交互發送至所述瀏覽器主進程;所述瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中顯示所述播放提示信息。
7.如權利要求1或2或4所述的方法,其特征在于,還包括: 當瀏覽器主進程接收到針對所述播放提示信息的控制指示信息時,將所述控制指示信息發送到瀏覽器插件獨立進程; 由所述瀏覽器插件獨立進程對所述播放提示信息對應的音視頻數據,執行所述控制指示信息對應的控制操作。
8.如權利要求1或2或4所述的方法,其特征在于,還包括: 在瀏覽器插件獨立進程中暫停播放目標音視頻數據;所述目標音視頻數據為當前網頁以外的其他網頁所對應的音視頻數據。
9.一種瀏覽器中進行音視頻信息顯示的裝置,包括: 第一加載模塊,在一個或多個網頁進程/線程中加載音視頻播放相關網頁標簽;所述音視頻播放相關網頁標簽具有關聯的一個或多個音視頻數據; 播放模塊,適于在一個瀏覽器插件獨立進程中播放所述一個或多個音視頻數據; 通知模塊,適于瀏覽器插件獨立進程通知瀏覽器主進程所述音視頻數據的播放信息;獲取模塊,適于瀏覽器主進程從所述播放信息中獲取,加載所述音視頻播放相關網頁標簽對應的一個或多個網頁進程/線程標識; 第二加載模塊,適于瀏覽器主進程在所述網頁進程/線程標識所對應的標簽頭中加載所述音視頻數據的播放提示信息。
10.如權利要求9所述的裝置,其特征在于,所述音視頻播放相關標簽包括: HTML音視頻標簽、瀏覽器插件Object標簽、HTML5音視頻標簽中的至少一個; 其中,所述HTML音視頻標簽包括Flash標簽;所述HTML5音視頻標簽包括Aud1標簽和Video標簽中的至少一 個。
【文檔編號】H04L29/08GK104080016SQ201410293150
【公開日】2014年10月1日 申請日期:2014年6月25日 優先權日:2014年6月25日
【發明者】熊鵬 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司