TWI506993B - 建立串流媒體對話的方法及裝置 - Google Patents
建立串流媒體對話的方法及裝置 Download PDFInfo
- Publication number
- TWI506993B TWI506993B TW097149425A TW97149425A TWI506993B TW I506993 B TWI506993 B TW I506993B TW 097149425 A TW097149425 A TW 097149425A TW 97149425 A TW97149425 A TW 97149425A TW I506993 B TWI506993 B TW I506993B
- Authority
- TW
- Taiwan
- Prior art keywords
- description information
- server
- check code
- sum check
- dialog
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/147—Signalling methods or messages providing extensions to protocols defined by standardisation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
Description
本發明一般係關於封包交換式串流服務(PSS)對話之建立,其中從伺服器向用戶端發送串流媒體。特定言之,本發明可在行動電話從媒體資料伺服器接收串流媒體資料的情況中使用。
在封包交換式通信服務系統中,數位資訊係分成複數個資訊封包,其係透過通信網路從發送方分配至接收方。通常,資訊封包係使用發送方與接收方之間的複數個通信路徑分配,並且原始資訊係在接收方從已接收資訊封包重新建構。儘管使用不同通信路徑分配資訊封包,發送方及接收方可視為藉由虛擬通信鏈路連接。藉由設置此一虛擬通信鏈路,將建立用於發送串流媒體資料之通信對話。
在此說明中,用戶端係在虛擬通信鏈路上接收串流媒體。然而,用戶端及伺服器分別可係任何類型之通信設備,其適合在任何類型之通信鏈路上傳送或接收串流媒體。例如,用戶端可係UMTS(全球行動電信系統)內之行動終端機或連接至電腦通信網路之電腦等等。
參考圖1,現在將示意性地描述用戶端100依據先前技術正在與伺服器102設置用於串流媒體資料之通信對話之程序。在第一步驟1:1中,用戶端100藉由向伺服器102發送請求起始用於串流媒體資料之通信對話。通常,依據熟知標準,請求係<SETUP>訊息,並且因此此處不需要更詳細描述。在隨後步驟1:2中,伺服器102藉由向用戶端100發送<OK>訊息確認並且接受請求。接著在進一步步驟1:3中,用戶端100向伺服器102發送另一請求,以起始從伺服器102至用戶端的媒體資料發送。通常,開始命令係<PLAY>訊息。在隨後步驟1:4中,伺服器102藉由向用戶端100發送另一<OK>訊息確認並且接受用以發送媒體資料之請求。在最後步驟1:5中,伺服器開始從伺服器102向通信終端機100發送串流媒體資料。命令訊息係依據用於串流媒體資料服務之標準的傳統訊息,此處不再詳細描述。通常,採用各種資訊參數補充命令訊息。然而,為簡化程序之瞭解,示意圖1中未顯示該等資訊參數。
一般地,需要在可執行對話前提供對話描述資訊。術語「對話描述資訊」指關於(例如)發送方與接收方間的可用通信路徑之資訊、用於通信路徑之資訊容量等等。通常將對話描述資訊儲存於伺服器及用戶端兩處。
對於封包交換式通信服務系統中對話描述資訊至用戶端之分配,目前一般應用兩種方法:任一對話描述資訊將在通信對話之建立期間或在通信對話之建立前從伺服器分配。
通信對話之建立前的對話描述資訊之分配可在用戶端需要在稍後場合存取通信伺服器時實行,例如當一人在稍後場合訂閱允許從伺服器下載串流音樂的服務時。接著可經由通信路徑或經由替代通信頻道,例如HTTP連接,獲得對話描述資訊。在通信對話之建立前分配對話描述資訊的優點係建立通信對話之時間將縮短。
在通信對話之建立期間分配對話描述資訊可藉由透過向伺服器發送用於對話描述資訊之請求開始通信對話之建立接著作出回應而接收對話描述資訊來實行。在通信對話之建立期間分配對話描述資訊的優點係對話描述資訊最新。
然而,存在與上文概述之現有解決方案相關聯的某些問題。需要建立用於串流媒體資料之通信對話的用戶端使用者必須在於通信對話之建立上花費相對較長時間或冒使用過期之對話描述資訊之風險間作出決策。若選定通信路徑不存在,使用過期對話描述資訊可引起不期望的錯誤。另一方面,用戶端可能不具有所有可用通信路徑之知識。
對話描述資訊在從伺服器至用戶端之傳輸期間或在儲存於用戶端期間可能毀損或被修改。
本發明之一目的係解決上文概述之問題的至少某些。特定言之,一目的係提供允許相對快速及可靠建立介於用戶端與伺服器間用於串流媒體之通信對話的解決方案。該等及其他目的可主要藉由依據隨附申請專利範圍獨立項之解決方案實現。
依據不同態樣,提供用戶端及在用戶端內實行之方法,其用於實現用戶端與伺服器間用於串流媒體之通信對話。
在一方法中,向伺服器發送一請求建立訊息,其係採用在用戶端可用之對話描述資訊加以補充。接著從伺服器接收一回應訊息,其指示可用對話描述資訊係正確還是錯誤,若可用對話描述資訊錯誤則回應訊息係採用正確對話描述資訊加以補充。若可用對話描述資訊正確,則藉由使用可用對話描述資訊從伺服器接收媒體資料執行對話。
另一方面,若回應訊息指示可用對話描述資訊錯誤,則可採用已接收正確對話描述資訊更新位於用戶端之對話描述資訊,並且可從用戶端向伺服器發送採用正確已更新對話描述資訊補充的新請求建立訊息。此外,採用請求建立訊息補充之對話描述資訊可藉由基於整個可用對話描述資訊或其某(些)特定部分(例如媒體資訊及/或屬性資訊)產生的總和檢查碼實現。另外,可依據RTSP接收串流媒體並且可根據SDP格式化對話描述資訊。
用戶端包含對話描述資訊單元及通信單元。對話描述資訊單元係調適成用以儲存在用戶端可用之對話描述資訊。通信單元係調適成用以經由一通信鏈路向伺服器發送採用可用對話描述資訊補充之一請求建立訊息,並且用以接收指示已發送對話描述資訊係正確還是錯誤的回應訊息。對話描述單元係進一步調適成用以採用當從伺服器接收時的已接收正確資訊更新其已儲存對話描述資訊。
另外,通信單元亦可係調適成用以從伺服器接收串流媒體。此外,用戶端可包含總和檢查碼產生器,其係調適成用以基於整個可用對話描述資訊或其某(些)特定部分產生總和檢查碼。通信單元接著可係調適成用以發送已產生總和檢查碼代替可用對話描述資訊。對話描述資訊單元亦可係調適成用以更新整個已儲存對話描述資訊或僅錯誤部分。
依據其他態樣,提供伺服器及在伺服器內實行之方法,其用於實現用戶端與伺服器間用於串流媒體之通信對話。
在一方法中,從用戶端接收請求建立訊息,其係基於在用戶端可用之對話描述資訊採用總和檢查碼補充。接著藉由比較總和檢查碼與基於位於伺服器之正確對話描述資訊產生的正確總和檢查碼,決定已接收總和檢查碼係正確還是錯誤。接著向用戶端發送回應訊息,其指示總和檢查碼及藉此在用戶端可用之對話描述資訊係正確還是錯誤,若在用戶端可用之對話描述資訊錯誤則採用正確對話描述資訊補充回應訊息。若在用戶端可用之對話描述資訊正確,則藉由使用正確對話描述資訊向用戶端發送媒體資料執行對話。
另一方面,若比較結果指示可用對話描述資訊錯誤,則伺服器等待來自用戶端之新請求建立訊息,其係採用基於正確已更新對話描述資訊產生的新總和檢查碼加以補充。
伺服器包含對話描述資訊單元、通信單元,及決定單元。對話描述資訊單元係調適成用以儲存在伺服器可用之正確正確對話描述資訊。通信單元係調適成用以經由一通信鏈路從用戶端接收採用在用戶端可用之對話描述資訊補充之一請求建立訊息,並且用以發送指示已接收對話描述資訊係正確還是錯誤的回應訊息。決定單元係調適成用以藉由比較已接收對話描述資訊與正確者,決定已接收對話描述資訊係正確還是錯誤,並且用以輸出結果至對話描述資訊單元。此外,對話描述資訊單元係調適成用以產生回應訊息,以及若決定單元指示已接收對話描述資訊錯誤則採用正確對話描述資訊補充回應訊息。
另外,伺服器可包含總和檢查碼產生器,其係調適成用以基於在伺服器可用之正確對話描述資訊產生總和檢查碼,通信單元可係調適成用以基於在用戶端可用之對話描述資訊接收總和檢查碼,以及決定單元可係調適成用以比較已接收總和檢查碼與已產生正確總和檢查碼。
依據另一態樣,提供在用戶端及伺服器內實行之方法,其用於實現用戶端與伺服器間用於串流媒體之通信對話。在用戶端內產生基於在用戶端可用之對話描述資訊之至少一子集的總和檢查碼。接著從用戶端向伺服器發送採用在用戶端內產生之總和檢查碼補充的請求建立訊息。接著在伺服器內藉由比較總和檢查碼與基於在伺服器可用之正確對話描述資訊產生的正確總和檢查碼,決定已接收總和檢查碼係正確還是錯誤。接著向用戶端發送回應訊息,其指示總和檢查碼及藉此在用戶端可用之對話描述資訊係正確還是錯誤,若在用戶端可用之對話描述資訊錯誤則採用正確對話描述資訊補充回應訊息。若在用戶端可用之對話描述資訊正確,則藉由使用正確對話描述資訊從伺服器向用戶端發送媒體資料執行對話。
另一方面,若比較結果指示在伺服器可用之對話描述資訊錯誤,則用戶端採用正確已接收對話描述資訊更新其可用對話描述資訊。最後,藉由基於已更新對話描述資訊在用戶端內產生新總和檢查碼,以及向伺服器發送採用新總和檢查碼補充之新請求建立訊息,重複該程序。
簡言之,可使用本發明以使用戶端及伺服器可實現相對較快及更可靠建立用於串流媒體之通信對話。在發送至伺服器前在用戶端內產生基於可用對話描述資訊之總和檢查碼。伺服器接著基於在伺服器可用之正確對話描述資訊產生對應總和檢查碼。在伺服器內比較正確總和檢查碼與已接收總和檢查碼。最後,伺服器向用戶端發送回應訊息,回應訊息指示已接收總和檢查碼係正確還是錯誤。若總和檢查碼之比較指示已接收總和檢查碼錯誤,則伺服器進一步採用正確對話描述資訊補充回應訊息。
在整篇此說明中,術語「總和檢查碼」指用於實現位元流內容之檢查而對位元流實行的邏輯或算術運算之任何結果。例如,可應用用於產生總和檢查碼之雜湊函數,例如MD5(訊息摘要演算法5)、SHA1,或循環冗餘檢查演算法,或者檢查數字。以上函數及演算法係本技術中眾所周知的,故不需要詳細描述。即時串流協定係用於串流媒體資料之傳輸的常用協定,下文中稱為「RTSP」。對話描述協定係關於串流媒體的用於格式化對話描述資訊之常用協定,且下文中稱為「SDP」。對話描述資訊包含關於(例如)媒體及屬性之資訊。此處不需要詳細描述協定RTSP及SDP以理解下文之具體實施例。
現在參考圖2,其解說在用戶端內執行步驟之流程圖,
描述根據本發明之一具體實施例的程序,其用於實現用戶端與伺服器間針對串流媒體資料之通信對話。在第一步驟200中,藉由對SDP資訊應用總和檢查碼演算法,基於在用戶端可用之SDP資訊來產生SDP總和檢查碼。可基於可用的整個SDP資訊或基於SDP資訊之某些特定部分來產生SDP總和檢查碼。例如,可使用SDP資訊之媒體資訊及/或屬性資訊。在下一步驟202中,已產生SDP總和檢查碼係與請求建立訊息一起從用戶端向伺服器發送,以便與在伺服器內針對在伺服器可用之SDP資訊產生之正確SDP總和檢查碼相比較。可藉由<SETUP>訊息實現請求建立訊息。
接著在以下步驟204中,從伺服器接收回應訊息,其指示發送至伺服器之SDP總和檢查碼是否正確。通常,若已發送SDP總和檢查碼正確,則可藉由<OK>訊息實現回應訊息。另一方面,若已發送總和檢查碼錯誤,回應訊息包含指示SDP總和檢查碼錯誤之訊息。若藉由伺服器實行之比較指示從用戶端接收之SDP總和檢查碼錯誤;將採用來自伺服器之正確SDP資訊進一步補充回應訊息。已接收正確SDP資訊可包含整個SDP資訊或僅包含SDP資訊之錯誤部分的校正。在進一步步驟206中,決定是否應更新位於用戶端之可用SDP資訊。該決策係基於在步驟204中接收之回應訊息。若回應訊息指示已發送SDP總和檢查碼錯誤並且係採用正確SDP資訊進一步加以補充,將採用已接收正確SDP更新位於用戶端之可用SDP資訊。
若在步驟206中決定不更新位於用戶端之可用SDP資訊,則在以下步驟208中建立介於用戶端與伺服器間用於串流媒體之通信對話,通信對話係基於已在用戶端可用之SDP資訊。用戶端接著開始從伺服器接收串流媒體。
若相反在步驟206中決定更新SDP資訊,則在進一步步驟210中採用在步驟204中隨回應訊息接收之正確SDP資訊更新可用SDP資訊。最後,使用在用戶端現在可用的已更新SDP資訊,重複步驟200至206。
在以虛線解說之可選步驟212中,用戶端亦可與已建立通信對話同時地請求建立一或多個額外通信對話。在該情形中,用戶端接著重複關於額外通信對話之步驟200至206。例如,若建立音訊對話,可建立視訊對話或進一步音訊對話。
視需要,用戶端亦可發送採用在用戶端可用之SDP資訊補充的用於所需服務之起始請求訊息,並且接著在伺服器於步驟208中開始發送串流媒體資料前接收關於所需服務之回應訊息。可藉由<PLAY>訊息實現起始請求訊息。訊息:<SETUP>、<OK>、<PLAY>等等在建立用於串流媒體之訊息時係常用訊息,並且此處不需要更詳細描述。
儘管此示範性具體實施例描述用戶端請求建立通信對話並且在請求所需串流媒體服務前等待回應訊息的程序,本發明並不限於此。如熟習本技術之人士所認識,所描述程序可容易地調適以應用於用於串流媒體之任何通信對話,其中用戶端及伺服器在對話建立時或在(例如)用於建立管線式通信對話之對話期間,或者在快速內容交換對話期間互換對話描述資訊。
現在參考圖3,其解說在伺服器內執行步驟之流程圖,描述根據本發明之一具體實施例的方法,其實現用戶端與伺服器間用於串流媒體之通信對話。在第一步驟300中,從用戶端接收採用SDP總和檢查碼補充之請求建立訊息。已接收SDP總和檢查碼已基於在用戶端可用之SDP資訊產生。在下一步驟302中,基於在伺服器可用之正確SDP資訊產生正確SDP總和檢查碼。接著在以下步驟304中比較已接收SDP總和檢查碼與已產生正確SDP總和檢查碼。
若比較結果指示已接收SDP總和檢查碼正確,則在進一步步驟306中,向用戶端發送確認已接收SDP總和檢查碼之回應訊息。在以下步驟308中,接著建立通信對話並且伺服器可開始在應用正確SDP資訊之已建立通信對話上發送串流媒體。
另一方面,若比較結果指示已接收SDP總和檢查碼錯誤,則在進一步步驟310中,向用戶端發送採用正確SDP資訊補充之回應訊息,以更新在用戶端可用之SDP資訊。正確SDP資訊可包含整個SDP資訊或僅包含已校正部分。伺服器接著基於已更新SDP資訊重複步驟300至304。
現在參考圖4a及4b,其解說在用戶端400與伺服器402間互換訊息的發信圖,描述根據本發明之兩個其他具體實施例實現用戶端與伺服器間用於串流媒體之通信對話的程序。圖4a解說在用戶端可用之SDP資訊正確的情形,而圖4b相反地解說SDP資訊錯誤之情形。
依據圖4a內所解說之程序,在第一步驟4:1a中,需要與伺服器402建立用於串流媒體之通信對話的用戶端400基於在用戶端可用之SDP資訊產生SDP總和檢查碼。可基於整個SDP資訊或基於SDP資訊之某些特定部分,例如媒體資訊及/或屬性資訊,產生SDP總和檢查碼。在下一步驟4:2a中,用戶端向伺服器發送請求建立訊息以起始通信對話之建立,請求建立訊息係採用在步驟4:1a中產生的SDP總和檢查碼加以補充。如上所描述,可藉由<SETUP>訊息實現請求建立訊息。完整訊息可係<SETUP>、<SDP-Available:"SDP checksum">。
在於伺服器內實行的以下步驟4:3a中,基於在伺服器可用之正確SDP資訊產生另一SDP總和檢查碼。接著比較已接收SDP總和檢查碼與正確SDP總和檢查碼。
在進一步步驟4:4a中,從伺服器向用戶端發送指示在步驟4:3a中實行之比較之結果的回應訊息。在此具體實施例中,經比較總和檢查碼相同,並且回應訊息因此將確認位於用戶端之可用SDP資訊正確。可藉由<OK>訊息實現回應訊息。
視需要,用戶端亦可發送採用在用戶端可用之SDP資訊補充的用於所需服務之起始請求訊息,並且在伺服器開始發送串流媒體資料前接收關於所需服務之回應訊息。此係分別在藉由虛線解說的中間步驟4:5a中4:6a實行。可藉由<PLAY>訊息實現用於所需服務之起始請求訊息,其係採用基於在用戶端可用之SDP資訊的SDP總和檢查碼加以補充。完整訊息可係<PLAY>、<SDP-Available:"SDP checksum">。可藉由<OK>訊息實現回應訊息。
在最後步驟4:7a中,建立通信對話並且伺服器開始向用戶端發送串流媒體。
依據圖4b內所解說之程序,在第一步驟4:1b中,需要與伺服器402建立用於串流媒體之通信對話的用戶端400基於在用戶端可用之SDP資訊產生SDP總和檢查碼。可基於整個SDP資訊或基於SDP資訊之某些特定部分產生SDP總和檢查碼。在下一步驟4:2b中,用戶端向伺服器發送請求建立訊息以起始通信對話之建立,請求建立訊息係採用在步驟4:1b中產生的SDP總和檢查碼加以補充。如上所描述,可藉由<SETUP>訊息實現請求建立訊息。在於伺服器內實行的以下步驟4:3b中,基於在伺服器可用之正確SDP資訊產生另一SDP總和檢查碼。接著比較已接收SDP總和檢查碼與正確SDP總和檢查碼。步驟4:1b至4:3b對應於以上描述之具體實施例中的步驟4:1a至4:3a,但係針對在用戶端可用之錯誤SDP資訊加以實行。
在進一步步驟4:4b中,從伺服器向用戶端發送指示在步驟4:3b中實行之比較之結果的回應訊息。在此具體實施例中,經比較總和檢查碼不相同,並且回應訊息因此將指示位於用戶端之可用SDP資訊錯誤。回應訊息係進一步採用來自伺服器之正確SDP資訊加以補充。已發送正確SDP資訊可包含整個SDP資訊或僅包含已校正部分。完成訊息可係<Incorrect SDP checksum>、<Content length 295>、
<"SDP">。
在以下步驟4:5b中,用戶端採用已接收正確SDP資訊更新可用SDP資訊。用戶端接著作出新嘗試以使用已更新SDP資訊建立通信對話,其係藉由在於以下步驟4:7b中向伺服器發送採用已產生SDP總和檢查碼補充的新請求建立訊息前,在進一步步驟4:6b中基於已更新SDP資訊產生SDP總和檢查碼。在於伺服器內實行的進一步步驟4:8b中,基於在伺服器可用之正確SDP資訊產生另一SDP總和檢查碼。接著比較已接收SDP總和檢查碼與正確SDP總和檢查碼。
在進一步步驟4:9b中,向用戶端發送指示在步驟4:8b中實行之比較之結果的回應訊息。在此具體實施例中,經比較總和檢查碼相同,並且回應訊息因此將確認位於用戶端之已更新可用SDP資訊正確。可藉由<OK>訊息實現回應訊息。步驟4:6b至4:9b對應於步驟4:1b至4:4b,但係針對位於用戶端之已更新SDP資訊加以實行。
如以上具體實施例中所描述,用戶端此外亦可向伺服器發送採用在用戶端可用之SDP資訊補充的用於所需服務之起始請求訊息,並且在伺服器開始發送串流媒體前接收關於所需服務之回應訊息。此係分別在藉由虛線解說的中間步驟4:10b及4:11b實行。類似於以上具體實施例中所描述之步驟4:5a,可藉由<PLAY>訊息實現用於所需服務之起始請求訊息,其係採用基於在用戶端可用之已更新SDP資訊的SDP總和檢查碼加以補充。另外,可藉由<OK>訊息實現回應訊息。
在最後步驟4:12b中,建立通信對話並且伺服器開始向用戶端發送串流媒體。
以上描述之程序可容易地調適以應用於用於串流媒體之任何通信對話,其中用戶端及伺服器在對話之建立時或在對話期間互換對話描述資訊。
在替代具體實施例中,不同於以上所描述者,可代替SDP總和檢查碼向伺服器發送位於用戶端的整個可用SDP資訊或整個SDP資訊之一部分。在此具體實施例中之伺服器中,比較整個SDP資訊或SDP資訊之一部分與在伺服器可用之SDP資訊。
現在參考圖5,描述實現與伺服器之用於串流媒體之通信對話512的用戶端500之具體實施例。用戶端500包含對話描述資訊單元502、總和檢查碼產生器504、通信單元506,及媒體接收單元510。對話描述資訊單元502係調適成用以當用戶端500建立與伺服器之用於串流媒體之通信對話時輸出其可用SDP資訊至總和檢查碼產生器504。總和檢查碼產生器504係調適成用以基於已接收SDP資訊產生SDP總和檢查碼並且用以輸出已產生之SDP總和檢查碼至通信單元506。總和檢查碼產生器504可基於整個可用SDP資訊或僅基於其某(些)部分,例如從媒體資訊及/或屬性資訊,產生SDP總和檢查碼。通信單元506係調適成用以在通信鏈路508上向伺服器發送請求建立訊息,其係採用已接收SDP總和檢查碼加以補充。
通信單元506係進一步調適成用以回應於請求建立訊息而在通信鏈路508上從伺服器接收回應訊息,回應訊息指示已發送SDP總和檢查碼係正確還是錯誤。SDP總和檢查碼可由於各種原因而錯誤,例如SDP總和檢查碼在從用戶端500至伺服器之傳輸期間受傳輸錯誤影響,或者可基於過期SDP資訊而產生SDP總和檢查碼等等。
通信單元506係進一步調適成用以建立與伺服器之通信對話512並且若回應訊息指示已發送SDP總和檢查碼正確,則用以開始在已建立通信對話512上從伺服器接收串流媒體,通信對話係基於對話描述資訊單元502內之可用SDP資訊。另外,通信單元506係調適成用以供應已接收串流媒體至媒體接收器510。用戶端500亦係調適成用以在伺服器開始於已建立通信對話512上發送串流媒體前,於通信鏈路508上向伺服器發送用於所需服務之起始請求訊息。可採用已產生SDP總和檢查碼補充起始請求訊息。
另外,通信單元506係調適成若已接收回應訊息指示已發送SDP資訊錯誤,則用以在通信鏈路508上從伺服器接收正確SDP資訊。通信單元506係進一步調適成用以輸出正確SDP資訊至對話描述資訊單元502,其係進一步調適成用以更新其可用已儲存SDP資訊,並且輸出已更新SDP資訊至總和檢查碼產生器504。總和檢查碼產生器504係進一步調適成用以基於已更新SDP資訊產生已更新SDP總和檢查碼,並且通信單元506係進一步調適成用以發送採用已更新SDP總和檢查碼補充的新請求建立訊息。
用戶端亦可係調適成用以與已建立通信對話同時地請求建立一或多個額外通信對話。例如,若建立音訊對話,可建立視訊對話或進一步音訊對話。
視需要,對話描述資訊單元502可係調適成用以輸出整個SDP資訊或僅輸出其某(些)部分至通信單元506。通信單元506亦可係調適成用以向伺服器發送已接收SDP資訊。
現在參考圖6,描述與用戶端實現用於串流媒體之通信對話614的伺服器600之具體實施例。伺服器600包含對話描述資訊單元602、總和檢查碼產生器604、通信單元606、決定單元608,及媒體發送單元610。當用戶端建立與伺服器之用於串流媒體之通信對話614時,通信單元606係調適成用以在通信鏈路612上從用戶端接收採用SDP總和檢查碼補充之請求建立訊息,已接收SDP總和檢查碼係基於在用戶端可用之SDP資訊產生。通信單元606係進一步調適成用以供應已接收SDP總和檢查碼至決定單元608之第一輸入。對話描述單元602係調適成用以輸出正確SDP資訊至總和檢查碼產生器604,其係調適成用以產生正確SDP總和檢查碼並且供應至決定單元608之第二輸入。決定單元608係調適成用以比較從用戶端接收之SDP總和檢查碼與正確SDP總和檢查碼,並且輸出比較之結果至對話描述資訊單元602。
對話描述單元602係進一步調適成用以起始通信單元606以在接收比較之結果時向用戶端發送回應訊息,該回應訊息指示比較之結果。另外,對話描述資訊單元602係調適成在比較之結果指示從用戶端接收之SDP總和檢查碼係錯誤的時,向通信單元606供應正確SDP資訊以在通信鏈路612上發送而補充至回應訊息。
通信單元606係進一步調適成用以建立通信對話614並且在比較之結果指示已接收SDP總和檢查碼係正確的時,基於對話描述資訊單元602內之可用SDP資訊在已建立通信對話614上向用戶端開始發送串流媒體。此外,通信單元606係調適成用以接收欲從媒體發送器610發送之媒體。
視需要,伺服器600亦可係調適成用以在伺服器開始於已建立通信對話614上發送串流媒體前,於通信鏈路612上從用戶端接收起始請求訊息。可採用在用戶端內產生之SDP總和檢查碼補充起始請求訊息。
視需要,對話描述資訊單元602可係調適成用以輸出整個SDP資訊或僅輸出其某(些)部分至決定單元608。通信單元606亦可係調適成用以從用戶端接收整個SDP資訊或僅接收其某(些)部分,並且供應至決定單元608。決定單元亦可係調適成用以比較SDP資訊而非SDP總和檢查碼。
如熟習本技術之人士所認識,所描述用戶端500及伺服器600可容易地調適以應用於用於串流媒體資料之任何通信對話,其中用戶端及伺服器在對話建立時或在(例如)用於建立管線式通信對話之對話期間,或者在快速內容交換對話期間互換對話描述資訊。
另外,應瞭解此說明中的上述用戶端及伺服器亦包含額外傳統構件,其提供使共同功能及特徵能正確操作所需要的功能性,例如各種控制單元及記憶體。然而,出於簡化原因,圖式中已省略對用於串流媒體之通信對話之提議建立的理解不需要之任何構件或功能性,並且在此說明中不會進一步詳細論述。
藉由本發明,獲得實現用於從伺服器至用戶端的串流媒體資料之通信對話的快速及可靠方法。使用以上描述之解決方案,可藉由應用事先分配至用戶端的對話描述資訊實行通信對話之建立。此外,用戶端之使用者不冒使用過期或受各種故障影響之對話描述資訊的風險。
雖然已參考特定示範性具體實施例說明本發明,該說明一般僅係解說發明概念,而不應視為限制本發明之範疇。儘管在描述以上具體實施例時全文使用用戶端及媒體伺服器,可以所描述方式使用適合傳達串流媒體之任何其他通信終端機。
本發明一般係藉由以下申請專利範圍獨立項來定義。
100...用戶端/通信終端機
102...伺服器
400...用戶端
402...伺服器
500...用戶端
502...對話描述資訊單元
504...總和檢查碼產生器
506...通信單元
508...通信鏈路
510...媒體接收單元/媒體接收器
512...通信對話
600...伺服器
602...對話描述資訊單元
604...總和檢查碼產生器
606...通信單元
608...決定單元
610...通信鏈路/媒體發送單元/媒體發送器
612...通信鏈路/媒體發送單元
614...通信對話
上文已參考附圖藉由示範性具體實施例更詳細描述本發明,其中:
圖1係依據先前技術解說用戶端正在與伺服器設置用於串流媒體之通信對話的發信圖。
圖2係根據一項具體實施例解說在用戶端內實行的實現用於串流媒體資料之通信對話的程序之流程圖。
圖3係根據另一具體實施例解說在伺服器內實行的實現用於串流媒體資料之通信對話的程序之流程圖。
圖4a係根據另一具體實施例解說實現用於串流媒體之通信對話的程序之發信圖。
圖4b係根據另一具體實施例解說實現用於串流媒體之通信對話的程序之發信圖。
圖5係根據進一步具體實施例更詳細解說用戶端之方塊圖。
圖6係根據進一步具體實施例更詳細解說伺服器之方塊圖。
400...用戶端
402...伺服器
Claims (21)
- 一種用於實現在一用戶端與一伺服器間針對串流媒體的一通信對話之方法,其包含在該用戶端內執行的下列步驟:a)向該伺服器發送(202)一請求建立訊息,其係採用在該用戶端可用之對話描述資訊之一誤差偵測資訊加以補充,以及b)從該伺服器接收(204)一回應訊息,其藉由該誤差偵測資訊指示該對話描述資訊係正確的還是錯誤的,若該已發送對話描述資訊係錯誤的則該回應訊息係採用該正確對話描述資訊加以補充,其中若該回應訊息指示該已發送對話描述資訊係正確的,則藉由從該伺服器接收(208)媒體資料來執行該對話。
- 如請求項1之方法,其中若該回應訊息指示該已發送對話描述資訊係錯誤的,則執行下列進一步步驟:c)基於隨該回應訊息接收之該正確對話描述資訊來更新(210)在該用戶端可用之該對話描述資訊,以及d)使用該已更新對話描述資訊來重複該等步驟a至b以實現該對話之執行。
- 如請求項1或2之方法,其中在步驟a之前執行進一步步驟a':a')基於在該用戶端可用之對話描述資訊之至少一子集來產生(200)一總和檢查碼, 且在步驟a)發送之該對話描述資訊係為前述已產生之該總和檢查碼。
- 如請求項3之方法,其中基於該對話描述資訊內之媒體資訊及該對話描述資訊內之屬性資訊中之至少一者來產生該總和檢查碼。
- 如請求項3之方法,其中基於整個對話描述資訊來產生該總和檢查碼,若該總和檢查碼係錯誤的,則從該伺服器接收該整個對話描述資訊,並且進一步在步驟c中更新該整個對話描述資訊。
- 如請求項1或2之方法,其中補充至該請求建立訊息之該對話描述資訊係該整個對話描述資訊或該對話描述資訊之一部分。
- 如請求項1或2之方法,其中依據即時串流協定(RTSP)接收該串流媒體,並且根據對話描述協定(SDP)格式化該對話描述資訊。
- 一種用於實現在一用戶端與一伺服器間針對串流媒體的一通信對話之方法,其包含在該伺服器內執行的下列步驟:a)基於在該用戶端可用之對話描述資訊之至少一子集來接收(300)採用一總和檢查碼補充之一請求建立訊息,b)決定(304)該已接收總和檢查碼係正確的還是錯誤的,c)向該用戶端發送(306、310)指示該總和檢查碼係正確的還是錯誤的之一回應訊息,並且進一步若該總和檢查碼係錯誤的則採用在該伺服器可用之該正確對話描 述資訊來補充(310)該回應訊息,其中若該回應訊息指示該總和檢查碼係正確的,則藉由向該用戶端發送(308)媒體資料來執行該對話,以及其中若該回應訊息指示該總和檢查碼係錯誤的,則執行進一步步驟:d)使用該已更新對話描述資訊來重複該等步驟a至c以實現該對話之執行。
- 一種用於實現在一用戶端與一伺服器間針對串流媒體的一通信對話之方法,其包含下列步驟:a)基於在該用戶端可用之對話描述資訊之至少一子集來在該用戶端內產生(4:1a、4:1b、4:6b)一總和檢查碼,b)從該用戶端向該伺服器發送(4:2a、4:2b、4:7b)採用該總和檢查碼補充之一請求建立訊息,c)在該伺服器內決定(4:3a、4:3b、4:8b)該已接收總和檢查碼係正確的還是錯誤的,從該伺服器向該用戶端發送(4:4a、4:4b、4:9b)一回應訊息,並且進一步若該總和檢查碼係錯誤的,則採用在該伺服器可用之該正確對話描述資訊來補充該回應訊息,其中若該回應訊息指示該總和檢查碼係正確的,則藉由從該伺服器向該用戶端發送(4:7a、4:12b)媒體資料來執行該對話,以及其中若該回應訊息指示該總和檢查碼係錯誤的,則執行下列步驟:d)基於隨該回應訊息接收之該正確對話描述資訊來更新 (4:5b)在該用戶端可用之該對話描述資訊,以及e)使用該已更新對話描述資訊來重複該等步驟a至c。
- 如請求項9之方法,其中藉由基於在該伺服器可用之正確對話描述資訊之至少一子集來產生一正確總和檢查碼並且比較該已接收總和檢查碼與該已產生總和檢查碼,以實行該總和檢查碼係正確的還是錯誤的之決定。
- 一種用於實現與一伺服器針對串流媒體之一通信對話(512)的用戶端(500),其包含:a)一對話描述資訊單元(502),其係調適成用以儲存在該用戶端可用之對話描述資訊,b)一通信單元(506),其係調適成用以經由一通信鏈路(508)向該伺服器發送採用該已儲存對話描述資訊之一誤差偵測資訊補充之一請求建立訊息,並且進一步調適成用以經由該通信鏈路(508)從該伺服器接收一回應訊息,該對話描述資訊單元(502)係進一步調適成用以在接收正確對話描述資訊時更新該已儲存對話描述資訊。
- 如請求項11之用戶端,其進一步包含一媒體接收單元(510),且其中該通信單元(506)係進一步調適成用以從該伺服器接收串流媒體並且供應至該媒體接收單元(510)。
- 如請求項11或12之用戶端,其中:‧該通信單元(506)係進一步調適成用以依據即時串流協定(RTSP)接收該串流媒體, ‧該對話描述資訊單元(502)係進一步調適成用以儲存根據對話描述協定(SDP)格式化之該對話描述資訊。
- 如請求項11或12之用戶端,其進一步包含一總和檢查碼產生器(504),其係進一步調適成用以基於該對話描述資訊內之至少媒體資訊及該對話描述資訊內之屬性資訊中之至少一者來產生一總和檢查碼。
- 如請求項14之用戶端,其中該總和檢查碼產生器(504)係進一步調適成用以基於在該用戶端可用之該整個對話描述資訊來產生該總和檢查碼,該對話描述資訊單元(502)係進一步調適成用以儲存該整個對話描述資訊並在該回應訊息具有該正確對話描述資訊時更新在該用戶端可用之該整個對話描述資訊。
- 一種用於實現與一用戶端針對串流媒體之一通信對話(614)的伺服器(600),其包含:a)一對話描述資訊單元(602),其係調適成用以儲存對話描述資訊,b)一通信單元(606),其係調適成用以經由一通信鏈路(610)接收採用在該用戶端可用之對話描述資訊之一誤差偵測資訊來補充之一請求建立訊息,並且進一步調適成用以經由該通信鏈路向該用戶端發送一回應訊息,以及c)一決定單元(608),其係調適成用以決定該已接收對話描述資訊是否正確,並且輸出該結果至該對話描述資訊單元(602), 該對話描述資訊單元(602)係進一步調適成用以產生該回應訊息,並在該決定單元(608)指示該已接收對話描述資訊係錯誤的時採用該正確對話描述資訊來補充該回應訊息。
- 如請求項16之伺服器,其進一步包含一總和檢查碼產生器(604),其係調適成基於儲存於該對話描述資訊單元(602)內之該對話描述資訊之至少一子集來產生一正確總和檢查碼,且其中該決定單元(608)係進一步調適成用以藉由比較該已接收總和檢查碼與該正確總和檢查碼來實行該決定。
- 如請求項17之伺服器,其中該總和檢查碼產生器(604)係進一步調適成用以基於該對話描述資訊內之媒體資訊及該對話描述資訊內之屬性資訊中之至少一者來產生該總和檢查碼。
- 如請求項17至18中任一項之伺服器,其中該總和檢查碼產生器(604)係進一步調適成用以基於在該伺服器可用之該整個對話描述資訊來產生該總和檢查碼,該對話描述資訊單元(602)係進一步調適成用以儲存該整個對話描述資訊,並向該通信單元(606)供應該整個對話描述資訊以補充至該回應訊息。
- 如請求項16至18中任一項之伺服器,其進一步包含一媒體發送單元(612),其中該通信單元(606)係進一步調適成從該媒體發送單元(612)接收串流媒體以及發送該已接收串流媒體至該用戶端。
- 如請求項16至18中任一項之伺服器,其中: ‧該通信單元(606)係進一步調適成用以依據即時串流協定(RTSP)傳送該串流媒體,以及‧該對話描述資訊單元(602)係進一步調適成用以儲存根據對話描述協定(SDP)格式化之對話描述資訊之內容。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US2048908P | 2008-01-11 | 2008-01-11 | |
PCT/SE2008/050556 WO2009088333A1 (en) | 2008-01-11 | 2008-05-13 | Method and apparatus for establishing a streamed media session |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200937920A TW200937920A (en) | 2009-09-01 |
TWI506993B true TWI506993B (zh) | 2015-11-01 |
Family
ID=39769037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW097149425A TWI506993B (zh) | 2008-01-11 | 2008-12-18 | 建立串流媒體對話的方法及裝置 |
Country Status (11)
Country | Link |
---|---|
US (1) | US8838805B2 (zh) |
EP (2) | EP2418823B1 (zh) |
JP (1) | JP5279842B2 (zh) |
KR (1) | KR101561315B1 (zh) |
CN (1) | CN101911646B (zh) |
AT (1) | ATE533279T1 (zh) |
BR (1) | BRPI0821625A2 (zh) |
DK (1) | DK2274891T3 (zh) |
ES (2) | ES2376798T3 (zh) |
TW (1) | TWI506993B (zh) |
WO (1) | WO2009088333A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103152495B (zh) * | 2013-02-04 | 2015-08-19 | 华为终端有限公司 | 一种媒体转移的方法、装置及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001033418A2 (en) * | 1999-11-01 | 2001-05-10 | Nokia Networks Oy | Timedependent hyperlink system in videocontent |
WO2002051178A1 (en) * | 2000-12-21 | 2002-06-27 | Sonera Oyj | Centralized session management |
WO2002080590A2 (en) * | 2001-03-28 | 2002-10-10 | Qualcomm Incorporated | Method and apparatus for providing protocol options in a wireless communication system |
US20040148400A1 (en) * | 2001-02-08 | 2004-07-29 | Miraj Mostafa | Data transmission |
WO2007022875A1 (en) * | 2005-08-26 | 2007-03-01 | Matsushita Electric Industrial Co., Ltd. | Establishment of media sessions with media adaptation |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2397723A (en) * | 2002-11-14 | 2004-07-28 | Nokia Corp | Data transmission |
FI115744B (fi) * | 2001-02-08 | 2005-06-30 | Nokia Corp | Kommunikaatiopalvelu |
FI114676B (fi) * | 2002-09-25 | 2004-11-30 | Syslore Oy | Viestien prosessointi |
KR100742244B1 (ko) * | 2002-12-18 | 2007-07-24 | 노키아 코포레이션 | 세션들을 고지하는 방법 |
US7586938B2 (en) * | 2003-10-24 | 2009-09-08 | Microsoft Corporation | Methods and systems for self-describing multicasting of multimedia presentations |
US7263071B2 (en) * | 2003-10-08 | 2007-08-28 | Seiko Epson Corporation | Connectionless TCP/IP data exchange |
CN100550908C (zh) * | 2005-12-13 | 2009-10-14 | 华为技术有限公司 | 一种进行会话能力信息操作的方法及网络实体 |
FR2909241B1 (fr) * | 2006-11-27 | 2009-06-05 | Canon Kk | Procedes et dispositifs de gestion dynamique des erreurs de transmission par des points d'interconnexion de reseaux. |
-
2008
- 2008-05-13 WO PCT/SE2008/050556 patent/WO2009088333A1/en active Application Filing
- 2008-05-13 CN CN2008801244203A patent/CN101911646B/zh not_active Expired - Fee Related
- 2008-05-13 AT AT08869260T patent/ATE533279T1/de active
- 2008-05-13 EP EP11187567.0A patent/EP2418823B1/en active Active
- 2008-05-13 ES ES08869260T patent/ES2376798T3/es active Active
- 2008-05-13 US US12/812,126 patent/US8838805B2/en active Active
- 2008-05-13 JP JP2010542192A patent/JP5279842B2/ja not_active Expired - Fee Related
- 2008-05-13 EP EP08869260A patent/EP2274891B1/en active Active
- 2008-05-13 ES ES11187567T patent/ES2709177T3/es active Active
- 2008-05-13 DK DK08869260.3T patent/DK2274891T3/da active
- 2008-05-13 BR BRPI0821625-8A patent/BRPI0821625A2/pt active Search and Examination
- 2008-05-13 KR KR1020107017776A patent/KR101561315B1/ko active IP Right Grant
- 2008-12-18 TW TW097149425A patent/TWI506993B/zh not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001033418A2 (en) * | 1999-11-01 | 2001-05-10 | Nokia Networks Oy | Timedependent hyperlink system in videocontent |
WO2002051178A1 (en) * | 2000-12-21 | 2002-06-27 | Sonera Oyj | Centralized session management |
US20040148400A1 (en) * | 2001-02-08 | 2004-07-29 | Miraj Mostafa | Data transmission |
WO2002080590A2 (en) * | 2001-03-28 | 2002-10-10 | Qualcomm Incorporated | Method and apparatus for providing protocol options in a wireless communication system |
WO2007022875A1 (en) * | 2005-08-26 | 2007-03-01 | Matsushita Electric Industrial Co., Ltd. | Establishment of media sessions with media adaptation |
Also Published As
Publication number | Publication date |
---|---|
US8838805B2 (en) | 2014-09-16 |
ES2376798T3 (es) | 2012-03-16 |
CN101911646A (zh) | 2010-12-08 |
EP2418823A3 (en) | 2016-11-30 |
KR20100103679A (ko) | 2010-09-27 |
JP2011509627A (ja) | 2011-03-24 |
EP2418823A2 (en) | 2012-02-15 |
EP2274891A1 (en) | 2011-01-19 |
EP2418823B1 (en) | 2018-10-31 |
ES2709177T3 (es) | 2019-04-15 |
US20100293445A1 (en) | 2010-11-18 |
JP5279842B2 (ja) | 2013-09-04 |
TW200937920A (en) | 2009-09-01 |
WO2009088333A1 (en) | 2009-07-16 |
KR101561315B1 (ko) | 2015-10-16 |
EP2274891B1 (en) | 2011-11-09 |
ATE533279T1 (de) | 2011-11-15 |
DK2274891T3 (da) | 2011-12-05 |
CN101911646B (zh) | 2013-12-18 |
BRPI0821625A2 (pt) | 2015-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107743698B (zh) | 用于多路径媒体传递的方法和装置 | |
US8566395B2 (en) | Method and apparatus for transmitting hypertext transfer protocol media | |
TWI516064B (zh) | 媒體串流傳輸的通信期控制 | |
JP4603043B2 (ja) | シンクml同期データを送信するための方法 | |
JP4268969B2 (ja) | 無線通信網を介したメディアメッセージアップロード制御方法 | |
US9300733B2 (en) | System and/or method for client-driven server load distribution | |
US20060069836A1 (en) | Communication system and method for upgrade of user terminal software and user terminal upgraded by the same | |
JP2006518948A (ja) | マルチメディア・ストリーミングにおけるストリーミング品質適合と制御機構のシグナリング方法 | |
WO2006107165A1 (en) | File distribution method and apparatus in a mobile broadcast system | |
JP2009296164A (ja) | データ送信装置、その制御方法及びプログラム | |
US7899058B2 (en) | Using a hash value as a pointer to an application class in a communications device | |
US11457094B2 (en) | Network system and conversion apparatus crossing different transmission protocols | |
TWI506993B (zh) | 建立串流媒體對話的方法及裝置 | |
WO2009011968A1 (en) | Endpoint discriminator in network transport protocol startup packets | |
US9274846B2 (en) | Technique for determining a chain of individual functions associated with a service | |
JP2005275690A (ja) | 認証代行方法及び配信管理装置並びに認証代行方法のプログラム | |
JP5012397B2 (ja) | 通信システム、方法、装置、およびプログラム | |
US20240015063A1 (en) | Communication system, construction method, and recording medium | |
CN109196870B (zh) | 用于发射和接收mmtp分组的方法和装置 | |
TWI635727B (zh) | 雲端輸入頻道管理 | |
KR20220170688A (ko) | Sdp 프로토콜 처리 방법 | |
JP5196055B2 (ja) | 通信装置及び通信方法 | |
WO2008145621A2 (en) | Method and system for allocating security key for multicast transmission | |
CN105591930A (zh) | 一种路由转发的方法及设备 | |
JP2006246144A (ja) | セッション連動型優先転送システム、および同システムにおける制御系装置、転送系装置、端末装置、ならびにプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |