一種上傳文件的方法及終端的製作方法
2023-06-19 15:36:46 4
一種上傳文件的方法及終端的製作方法
【專利摘要】本發明公開了一種上傳文件的方法及終端,屬於通信領域。所述方法包括:獲取終端與業務伺服器之間的有效帶寬,所述有效帶寬為所述終端實際可用帶寬;根據所述有效帶寬計算得到當前網絡條件的壓縮參數;終端根據所述壓縮參數對所述待上傳的文件進行壓縮得到對應的壓縮包;終端發送所述壓縮包至所述業務伺服器。所述終端包括:獲取模塊,計算模塊,壓縮模塊和發送模塊。本發明根據終端與業務伺服器之間的有效帶寬來獲取壓縮參數,從而減少上傳文件的時間和提高壓縮文件的質量。
【專利說明】一種上傳文件的方法及終端
【技術領域】
[0001]本發明涉及通信領域,特別涉及一種上傳文件的方法及終端。
【背景技術】
[0002]在通信網絡中,用戶可以上傳圖片到位於網絡的伺服器,其他用戶可以從該伺服器中獲取該用戶上傳的圖片,如此用戶可以分享該圖片給其他用戶。
[0003]其中,現有技術提供一種上傳圖片的方法供用戶上傳圖片到伺服器中,具體為:終端提供高中低三種壓縮模式,每種模式對應一個壓縮參數,用戶選擇一種壓縮模式;終端獲取用戶選擇的壓縮模式對應的壓縮參數,然後對待上傳的圖片進行壓縮,得到待上傳的圖片對應的壓縮包,發送待上傳的圖片對應的壓縮包給伺服器,伺服器接收並存儲該壓縮包,以實現上傳待上傳的圖片。
[0004]在實現本發明的過程中,發明人發現現有技術至少存在以下問題:
[0005]終端與伺服器之間的網絡狀況是可變的,用戶選擇的壓縮模式可能不適合當前的網絡狀況,會導致上傳時間較長以及壓縮質量較差。
【發明內容】
[0006]為了減少上傳文件的時間以及提高壓縮文件的質量,本發明提供了一種上傳文件的方法及終端。所述技術方案如下:
[0007]一種上傳文件的方法,所述方法包括:
[0008]獲取終端與業務伺服器之間的有效帶寬,所述有效帶寬為所述終端實際可用帶寬;
[0009]根據所述有效帶寬計算得到當前網絡條件的壓縮參數;
[0010]終端根據所述壓縮參數對所述待上傳的文件進行壓縮得到對應的壓縮包;
[0011]終端發送所述壓縮包至所述業務伺服器。
[0012]所述根據所述有效帶寬計算得到當前網絡條件的壓縮參數,包括:
[0013]根據所述有效帶寬,從預設在所述終端的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數。
[0014]所述從預設在所述終端的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數之後,還包括:
[0015]根據所述終端與業務伺服器之間的有效帶寬和所述壓縮參數判斷能否在預設的最大允許時間內上傳完所述待上傳的文件;
[0016]如果不能,則確定所述壓縮參數所在壓縮參數範圍,從所述壓縮參數範圍中選擇最小壓縮參數。
[0017]根據所述終端與業務伺服器之間的有效帶寬和所述壓縮參數判斷能否在預設的最大允許時間內上傳完所述待上傳的文件,包括:
[0018]根據預設的最大允許上傳文件的時間和所述終端與業務伺服器之間的有效帶寬計算出流量大小;
[0019]根據所述壓縮參數和所述待上傳的文件的大小並通過已存儲的壓縮模型計算出壓縮包大小;
[0020]如果所述計算的流量大小大於或等於所述計算的壓縮包大小,則判斷出能在預設的最大允許時間內上傳完所述待上傳的文件;
[0021]如果所述計算的流量大小小於所述計算的壓縮包大小,則判斷出不能在預設的最大允許時間內上傳完所述待上傳的文件。
[0022]所述待上傳的文件為圖片或視頻文件,所述壓縮參數至少包括解析度和壓縮率;
[0023]相應地,所述根據所述壓縮參數對所述待上傳的文件進行壓縮得到對應的壓縮包,包括:
[0024]如果用戶的需求為要求高壓縮解析度,確定所述解析度所在的解析度範圍,從所述解析度範圍中獲取最大的解析度,根據所述最大的解析度和所述壓縮參數中除解析度以外的其他壓縮參數對所述待上傳的文件進行壓縮得到所述待上傳的文件對應的壓縮包;
[0025]如果用戶的需求為要求高壓縮質量,確定所述壓縮率所在的壓縮率範圍,從所述壓縮率範圍中獲取最大的壓縮率,根據所述最大的壓縮率和所述壓縮參數中除壓縮率以外的其他壓縮參數對所述待上傳的文件進行壓縮得到所述待上傳的文件對應的壓縮包。
[0026]所述獲取終端與業務伺服器之間的有效帶寬,包括:
[0027]發送預設大小的測量包給所述業務伺服器,並從零開始計時,當接收到所述業務伺服器返回的應答消息時停止計時,根據所述測量包的大小和所述計時的時間計算出所述終端與業務伺服器之間的有效帶寬。
[0028]一種上傳文件的終端,所述終端包括:
[0029]獲取模塊,用於獲取終端與業務伺服器之間的有效帶寬,所述有效帶寬為所述終端實際可用帶寬;
[0030]計算模塊,用於根據所述有效帶寬計算得到當前網絡條件的壓縮參數;
[0031]壓縮模塊,用於根據所述壓縮參數對所述待上傳的文件進行壓縮得到對應的壓縮包;
[0032]發送模塊,用於發送所述壓縮包至所述業務伺服器。
[0033]所述計算模塊包括:
[0034]獲取單元,用於根據所述有效帶寬,從預設在所述終端的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數。
[0035]所述計算模塊還包括:
[0036]判斷單元,用於根據所述終端與業務伺服器之間的有效帶寬和所述壓縮參數判斷能否在預設的最大允許時間內上傳完所述待上傳的文件;
[0037]選擇單元,用於如果不能,則確定所述壓縮參數所在壓縮參數範圍,從所述壓縮參數範圍中選擇最小壓縮參數。
[0038]所述判斷單元包括:
[0039]第一計算子單元,用於根據預設的最大允許上傳文件的時間和所述終端與業務伺服器之間的有效帶寬計算出流量大小;
[0040]第二計算子單元,用於根據所述壓縮參數和所述待上傳的文件的大小並通過已存儲的壓縮模型計算出壓縮包大小;
[0041]第一判斷子單元,用於如果所述計算的流量大小大於或等於所述計算的壓縮包大小,則判斷出能在預設的最大允許時間內上傳完所述待上傳的文件;
[0042]第二判斷子單元,用於如果所述計算的流量大小小於所述計算的壓縮包大小,則判斷出不能在預設的最大允許時間內上傳完所述待上傳的文件。
[0043]所述待上傳的文件為圖片或視頻文件,所述壓縮參數至少包括解析度和壓縮率;
[0044]相應地,所述壓縮模塊包括:
[0045]第一壓縮單元,用於如果用戶的需求為要求高壓縮解析度,確定所述解析度所在的解析度範圍,從所述解析度範圍中獲取最大的解析度,根據所述最大的解析度和所述壓縮參數中除解析度以外的其他壓縮參數對所述待上傳的文件進行壓縮得到所述待上傳的文件對應的壓縮包;
[0046]第二壓縮單元,用於如果用戶的需求為要求高壓縮質量,確定所述壓縮率所在的壓縮率範圍,從所述壓縮率範圍中獲取最大的壓縮率,根據所述最大的壓縮率和所述壓縮參數中除壓縮率以外的其他壓縮參數對所述待上傳的文件進行壓縮得到所述待上傳的文件對應的壓縮包。
[0047]所述獲取模塊,用於發送預設大小的測量包給所述業務伺服器,並從零開始計時,當接收到所述業務伺服器返回的應答消息時停止計時,根據所述測量包的大小和所述計時的時間計算出所述終端與業務伺服器之間的有效帶寬。
[0048]在本發明實施例中,獲取終端與業務伺服器之間的有效帶寬,根據終端與業務伺服器之間的有效帶寬計算得到當前網絡條件的壓縮參數,根據獲取的壓縮參數對待上傳的文件進行壓縮得到待上傳的文件對應的壓縮包,發送待上傳的文件對應的壓縮包給業務伺服器,以實現上傳待上傳的文件,如此可以根據終端與業務伺服器之間的有效帶寬來獲取壓縮參數,從而能夠減少上傳文件的時間和提高壓縮文件的質量。
【專利附圖】
【附圖說明】
[0049]圖1是本發明實施例1提供的一種上傳文件的方法流程圖;
[0050]圖2是本發明實施例2提供的一種上傳文件的方法流程圖;
[0051]圖3是本發明實施例3提供的一種上傳文件的方法流程圖;
[0052]圖4是本發明實施例4提供的一種上傳文件的方法流程圖;
[0053]圖5是本發明實施例5提供的一種上傳文件的終端結構示意圖。
【具體實施方式】
[0054]為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。
[0055]實施例1
[0056]如圖1所示,本發明實施例提供了一種上傳文件的方法,包括:
[0057]步驟101:終端獲取其自身與業務伺服器之間的有效帶寬,有效帶寬為終端實際可用帶寬;
[0058]步驟102:終端根據獲取的有效帶寬計算得到當前網絡條件的壓縮參數;[0059]步驟103:終端根據計算的壓縮參數對待上傳的文件進行壓縮得到對應的壓縮包;
[0060]步驟104:終端發送壓縮的壓縮包至業務伺服器。
[0061 ] 其中,待上傳的文件可以為圖片、視頻文件或音頻文件等。
[0062]在本發明實施例中,終端獲取其自身與業務伺服器之間的有效帶寬,根據獲取的有效帶寬計算得到當前網絡條件的壓縮參數,根據獲取的壓縮參數對待上傳的文件進行壓縮,得到待上傳的文件對應的壓縮包,發送待上傳的文件對應的壓縮包給業務伺服器,以實現上傳待上傳的文件。如此,可以根據終端與業務伺服器之間的網絡情況來獲取壓縮參數,從而能夠減少上傳文件的時間和提高壓縮文件的質量。
[0063]實施例2
[0064]本發明實施例提供了一種上傳文件的方法。其中,在本實施例中,終端需要上傳的文件為待上傳的圖片,且終端通過本實施例提供的方法將待上傳的圖片上傳到業務伺服器中,參見圖2,該方法包括:
[0065]步驟201:終端測量當前網絡條件下其與業務伺服器之間的有效帶寬,確定終端與業務伺服器之間的有效帶寬所在的帶寬範圍;
[0066]具體地,終端發送預設大小的測量包給業務伺服器並從零開始計時,當接收到業務伺服器返回的應答消息時停止計時,根據測量包的大小和計時的時間計算出終端與業務伺服器之間的有效帶寬,確定終端與業務伺服器之間的有效帶寬所在的帶寬範圍。
[0067]其中,有效帶寬為終端實際可用用於傳輸數據的帶寬,事先在終端內存儲預設大小的測量包,終端發送測量包給業務伺服器,業務伺服器接收該測量包後,返回應答消息給終端。
[0068]其中,事先在終端內定義一個或多個帶寬範圍,以及每個帶寬範圍對應的壓縮參數,該壓縮參數至少包括解析度和壓縮率,並將定義的每個帶寬範圍和每個帶寬範圍對應的壓縮參數存儲在帶寬範圍與壓縮參數的對應關係中。
[0069]其中,在已存儲的帶寬範圍與壓縮參數的對應關係中,如果帶寬範圍越小,帶寬範圍對應的壓縮參數包括的解析度和壓縮率也隨之越小;如果帶寬範圍越大,帶寬範圍對應的壓縮參數包括的解析度和壓縮率也隨之越大。
[0070]步驟202:終端根據確定出的帶寬範圍獲取當前網絡條件下的壓縮參數,該壓縮參數至少包括解析度和壓縮率;
[0071]具體地,終端根據確定出的帶寬範圍,從已存儲的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數。
[0072]其中,如果終端與業務伺服器之間的有效帶寬越小,確定的帶寬範圍也隨之越小,從已存儲的帶寬範圍與壓縮參數的對應關係中獲取確定的帶寬範圍對應的壓縮參數包括的解析度和壓縮率也隨之越小,如此根據該壓縮參數對待上傳的圖片進行壓縮得到壓縮包也越小,傳輸待上傳的圖片的壓縮包的所需要的傳輸時間也越少;如果終端與業務伺服器之間的有效帶寬越大,確定的帶寬範圍也隨之越大,從已存儲的帶寬範圍與壓縮參數的對應關係中獲取確定的帶寬範圍對應的壓縮參數包括的解析度和壓縮率也隨之越大,如此根據該壓縮參數對待上傳的圖片進行壓縮得到圖片壓縮質量越高。
[0073]步驟203:可選地,終端根據預設的最大允許上傳時間和終端與業務伺服器之間的有效帶寬計算流量大小;
[0074]其中,終端內預設的最大允許上傳時間用於要求終端儘量在預設的最大允許上傳時間內上傳完圖片,來保證用戶體驗。
[0075]步驟204:可選地,終端根據獲取的壓縮參數和待上傳的圖片的大小並通過已存儲的壓縮模型計算出壓縮包大小;
[0076]步驟205:可選地,終端判斷計算的流量大小是否大於或等於計算的壓縮包大小,如果是,執行步驟206,如果否,執行步驟207 ;
[0077]其中,如果計算的流量大小大於或等於計算的壓縮包大小,則判斷出能在預設的最大允許時間內上傳完待上傳的圖片;如果計算的流量大小小於計算的壓縮包大小,則判斷出不能在預設的最大允許時間內上傳完待上傳的圖片。
[0078]步驟206:可選地,終端確定獲取的壓縮參數所在的壓縮參數範圍,從確定的壓縮參數範圍中獲取最小的壓縮參數;
[0079]具體地,終端確定獲取的解析度所在的分辨範圍,從確定的解析度範圍中獲取最小的解析度,確定獲取的壓縮率所在的壓縮率範圍,從確定的壓縮率範圍中獲取最小的壓縮率。
[0080]其中,已存儲的帶寬範圍與壓縮參數的對應關係中的每個壓縮參數對應一個壓縮參數範圍,對於任一個壓縮參數,該壓縮參數為其對應的壓縮參數範圍的平均壓縮參數,即該壓縮參數包括解析度和壓縮率,該解析度為其對應解析度範圍的平均解析度,該壓縮率為其對應壓縮率範圍的平均壓縮率。
[0081]其中,計算的壓縮包的大小大於計算的流量大小,則表明終端上傳待上傳的圖片所需要的時間可能大於最大允許上傳時間,在本實施例中,可以從確定的壓縮參數範圍中獲取最小的壓縮參數,使得根據選擇的壓縮參數對待上傳的圖片進行壓縮時得到的壓縮包越小,上傳待上傳的圖片所需要時間也隨之越小。
[0082]步驟207:終端根據該壓縮參數對待上傳的圖片進行壓縮,得到待上傳的圖片對應的壓縮包;
[0083]其中,用戶可以向終端提交需求信息來告知終端用戶的需求,用戶的需求包括要求高壓縮質量或要求高壓縮解析度;
[0084]相應地,終端接收用戶提交的需求信息,根據該需求信息確定用戶的需求,如果用戶的需求為要求高壓縮質量,則根據壓縮參數包括的壓縮率確定出對應的壓縮率範圍,從壓縮率範圍中選擇最大的壓縮率,根據該壓縮參數包括的解析度和選擇的壓縮率對待上傳的圖片進行壓縮,得到待上傳的圖片對應的壓縮包;如果用戶的需求為要求高壓縮解析度,則根據壓縮參數包括的解析度確定出對應的解析度範圍,從解析度範圍中選擇最大的解析度,根據選擇的解析度和該壓縮參數包括的壓縮率對待上傳的圖片進行壓縮,得到待上傳的圖片對應的壓縮包。
[0085]步驟208:終端發送待上傳的圖片對應的壓縮包給業務伺服器,以實現上傳待上傳的圖片。
[0086]在本發明實施例中,測量當前網絡條件下終端與業務伺服器之間的有效帶寬,根據終端與業務伺服器之間的有效帶寬獲取壓縮參數,根據獲取的壓縮參數對待上傳的圖片進行壓縮,得到待上傳的圖片對應的壓縮包,發送待上傳的圖片對應的壓縮包給業務伺服器,以實現上傳待上傳的圖片。如此,可以根據終端與業務伺服器之間的有效帶寬來獲取壓縮參數,從而能夠減少上傳圖片的時間和提高壓縮圖片的質量。
[0087]實施例3
[0088]本發明實施例提供了一種上傳文件的方法。其中,在本實施例中,終端需要上傳的文件為待上傳的視頻文件,且終端通過本實施例提供的方法將待上傳的視頻文件上傳到業務伺服器中,參見圖3,該方法包括:
[0089]步驟301:終端測量當前網絡條件下其與業務伺服器之間的有效帶寬,確定終端與業務伺服器之間的有效帶寬所在的帶寬範圍;
[0090]具體地,終端發送預設大小的測量包給業務伺服器並從零開始計時,當接收到業務伺服器返回的應答消息時停止計時,根據測量包的大小和計時的時間計算出終端與業務伺服器之間的有效帶寬,確定終端與業務伺服器之間的有效帶寬所在的帶寬範圍。
[0091]其中,事先在終端內存儲預設大小的測量包,終端發送測量包給業務伺服器,業務伺服器接收該測量包後,返回應答消息給終端。
[0092]其中,事先在終端內定義一個或多個帶寬範圍,以及每個帶寬範圍對應的壓縮參數,該壓縮參數至少包括解析度、壓縮率和幀速率,並將定義的每個帶寬範圍和每個帶寬範圍對應的壓縮參數存儲在帶寬範圍與壓縮參數的對應關係中。
[0093]其中,在已存儲的帶寬範圍與壓縮參數的對應關係中,如果帶寬範圍越小,帶寬範圍對應的壓縮參數包括的解析度、壓縮率和幀速率也隨之越小;如果帶寬範圍越大,帶寬範圍對應的壓縮參數包括的解析度、壓縮率和巾貞速率也隨之越大。
[0094]步驟302:終端根據確定出的帶寬範圍獲取壓縮參數,該壓縮參數至少包括解析度、壓縮率和幀速率;
[0095]具體地,終端根據確定出的帶寬範圍,從已存儲的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數。
[0096]其中,如果終端與業務伺服器之間的有效帶寬越小,確定的帶寬範圍也隨之越小,從已存儲的帶寬範圍與壓縮參數的對應關係中獲取確定的帶寬範圍對應的壓縮參數包括的解析度、壓縮率和幀速率也隨之越小,如此根據該壓縮參數對待上傳的視頻文件進行壓縮得到壓縮包也越小,傳輸待上傳的視頻文件的壓縮包的所需要的傳輸時間也越少;如果終端與業務伺服器之間的有效帶寬越大,確定的帶寬範圍也隨之越大,從已存儲的帶寬範圍與壓縮參數的對應關係中獲取確定的帶寬範圍對應的壓縮參數包括的解析度、壓縮率和幀速率也隨之越大,如此根據該壓縮參數對待上傳的視頻文件進行壓縮得到視頻文件壓縮質量越高。
[0097]步驟303:可選地,終端根據預設的最大允許上傳時間和終端與業務伺服器之間的有效帶寬計算流量大小;
[0098]其中,終端內預設的最大允許上傳時間用於要求終端儘量在預設的最大允許上傳時間內上傳完視頻文件,來保證用戶體驗。
[0099]步驟304:可選地,終端根據獲取的壓縮參數和待上傳的視頻文件的大小並通過已存儲的壓縮模型計算出壓縮包的大小;
[0100]步驟305:可選地,終端判斷計算的流量大小是否大於或等於計算的壓縮包大小,如果是,執行步驟306,如果否,執行步驟307 ;[0101]其中,如果計算的流量大小大於或等於計算的壓縮包大小,則判斷出能在預設的最大允許時間內上傳完待上傳的視頻文件;如果計算的流量大小小於計算的壓縮包大小,則判斷出不能在預設的最大允許時間內上傳完待上傳的視頻文件。
[0102]步驟306:可選地,終端確定獲取的壓縮參數所在的壓縮參數範圍,從確定的壓縮參數範圍中獲取最小的壓縮參數;
[0103]具體地,終端確定獲取的解析度所在的分辨範圍,從確定的解析度範圍中獲取最小的解析度,確定獲取的壓縮率所在的壓縮率範圍,從確定的壓縮率範圍中獲取最小的壓縮率,確定獲取的幀速率所在的幀速率範圍,從確定的幀速率範圍中獲取最小的幀速率。
[0104]其中,已存儲的帶寬範圍與壓縮參數的對應關係中的每個壓縮參數對應一個壓縮參數範圍,對於任一個壓縮參數,該壓縮參數為其對應的壓縮參數範圍的平均壓縮參數,即該壓縮參數包括解析度、壓縮率和巾貞速率,該解析度為其對應解析度範圍的平均解析度,該壓縮率為其對應壓縮率範圍的平均壓縮率以及該幀速率為其對應幀速率範圍的平均幀速率。
[0105]其中,計算的壓縮包的大小大於計算的流量大小,則表明終端上傳待上傳的視頻文件所需要的時間可能大於最大允許上傳時間,在本實施例中,可以從確定的壓縮參數範圍中獲取最小的壓縮參數,使得根據選擇的壓縮參數對待上傳的視頻文件進行壓縮時得到的壓縮包越小,上傳待上傳的視頻文件所需要時間也隨之越小。
[0106]步驟307:終端根據該壓縮參數對待上傳的視頻文件進行壓縮,得到待上傳的視頻文件對應的壓縮包;
[0107]其中,用戶可以向終端提交需求信息來告知終端用戶的需求,用戶的需求包括要求高壓縮質量或要求高壓縮解析度;
[0108]相應地,終端接收用戶提交的需求信息,根據該需求信息確定用戶的需求,如果用戶的需求為要求高壓縮質量,則根據壓縮參數包括的壓縮率確定出對應的壓縮率範圍,從壓縮率範圍中選擇最大的壓縮率,根據該壓縮參數包括的解析度和幀速率以及選擇的壓縮率對待上傳的視頻文件進行壓縮,得到待上傳的視頻文件對應的壓縮包;如果用戶的需求為要求聞壓縮解析度,則根據壓縮參數包括的解析度確定出對應的解析度範圍,從解析度範圍中選擇最大的解析度,根據選擇的解析度以及該壓縮參數包括的壓縮率和幀速率對待上傳的視頻文件進行壓縮,得到待上傳的視頻文件對應的壓縮包。
[0109]步驟308:終端發送待上傳的視頻文件對應的壓縮包給業務伺服器,以實現上傳待上傳的視頻文件。
[0110]在本發明實施例中,測量當前終端與業務伺服器之間的有效帶寬,根據終端與業務伺服器之間的有效帶寬獲取壓縮參數,根據獲取的壓縮參數對待上傳的視頻文件進行壓縮,得到待上傳的視頻文件對應的壓縮包,發送待上傳的視頻文件對應的壓縮包給業務伺服器,以實現上傳待上傳的視頻文件。如此,可以根據終端與業務伺服器之間的有效帶寬來獲取壓縮參數,從而能夠減少上傳視頻文件的時間和提高壓縮視頻文件的質量。
[0111]實施例4
[0112]本發明實施例提供了一種上傳文件的方法。其中,在本實施例中,終端需要上傳的文件為待上傳的音頻文件,且終端通過本實施例提供的方法將待上傳的音頻文件上傳到業務伺服器中,參見圖4,該方法包括:[0113]步驟401:終端測量當前其與業務伺服器之間的有效帶寬,確定終端與業務伺服器之間的有效帶寬所在的帶寬範圍;
[0114]具體地,終端發送預設大小的測量包給業務伺服器並從零開始計時,當接收到業務伺服器返回的應答消息時停止計時,根據測量包的大小和計時的時間計算出終端與業務伺服器之間的有效帶寬,確定終端與業務伺服器之間的有效帶寬所在的帶寬範圍。
[0115]其中,事先在終端內存儲預設大小的測量包,終端發送測量包給業務伺服器,業務伺服器接收該測量包後,返回應答消息給終端。
[0116]其中,事先在終端內定義一個或多個帶寬範圍,以及每個帶寬範圍對應的壓縮參數,該壓縮參數至少包括採樣率和採樣精度,並將定義的每個帶寬範圍和每個帶寬範圍對應的壓縮參數存儲在帶寬範圍與壓縮參數的對應關係中。
[0117]其中,在已存儲的帶寬範圍與壓縮參數的對應關係中,如果帶寬範圍越小,帶寬範圍對應的壓縮參數包括的採樣率和採樣精度也隨之越小;如果帶寬範圍越大,帶寬範圍對應的壓縮參數包括的採樣率和採樣精度也隨之越大。
[0118]步驟402:終端根據確定出的帶寬範圍獲取壓縮參數,該壓縮參數至少包括採樣率和採樣精度;
[0119]具體地,終端根據確定出的帶寬範圍,從已存儲的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數。
[0120]其中,如果終端與業務伺服器之間的有效帶寬越小,確定的帶寬範圍也隨之越小,從已存儲的帶寬範圍與壓縮參數的對應關係中獲取確定的帶寬範圍對應的壓縮參數包括的採樣率和採樣精度也隨之越小,如此根據該壓縮參數對待上傳的音頻文件進行壓縮得到壓縮包也越小,傳輸待上傳的音頻文件的壓縮包的所需要的傳輸時間也越少;如果終端與業務伺服器之間的有效帶寬越大,確定的帶寬範圍也隨之越大,從已存儲的帶寬範圍與壓縮參數的對應關係中獲取確定的帶寬範圍對應的壓縮參數包括的採樣率和採樣精度也隨之越大,如此根據該壓縮參數對待上傳的音頻文件進行壓縮得到音頻文件壓縮質量越高。
[0121]步驟403:可選地,終端根據預設的最大允許上傳時間和終端與業務伺服器之間的有效帶寬計算流量大小;
[0122]其中,終端內預設的最大允許上傳時間用於要求終端儘量在預設的最大允許上傳時間內上傳完音頻文件,來保證用戶體驗。
[0123]步驟404:可選地,終端根據獲取的壓縮參數和待上傳的音頻文件的大小並通過已存儲的壓縮模型計算出壓縮包的大小;
[0124]步驟405:可選地,終端判斷計算的流量大小是否大於或等於計算的壓縮包大小,如果是,執行步驟406,如果否,執行步驟407 ;
[0125]其中,如果計算的流量大小大於或等於計算的壓縮包大小,則判斷出能在預設的最大允許時間內上傳完待上傳的音頻文件;如果計算的流量大小小於計算的壓縮包大小,則判斷出不能在預設的最大允許時間內上傳完待上傳的音頻文件。
[0126]步驟406:可選地,終端確定獲取的壓縮參數所在的壓縮參數範圍,從確定的壓縮參數範圍中獲取最小的壓縮參數;
[0127]具體地,終端確定獲取的採樣率所在的採樣率範圍,從確定的採樣率範圍中獲取最小的採樣率,確定獲取的採樣精度率所在的採樣精度範圍,從確定的採樣精度範圍中獲取最小的採樣精度。
[0128]其中,已存儲的帶寬範圍與壓縮參數的對應關係中的每個壓縮參數對應一個壓縮參數範圍,對於任一個壓縮參數,該壓縮參數為其對應的壓縮參數範圍的平均壓縮參數,即該壓縮參數包括採樣率和採樣精度,該採樣率為其對應採樣率範圍的平均採樣率,該採樣精度為其對應採樣精度範圍的平均採樣精度。
[0129]其中,計算的壓縮包的大小大於計算的流量大小,則表明終端上傳待上傳的音頻文件所需要的時間可能大於最大允許上傳時間,在本實施例中,可以從確定的壓縮參數範圍中獲取最小的壓縮參數,使得根據選擇的壓縮參數對待上傳的音頻文件進行壓縮時得到的壓縮包越小,上傳待上傳的音頻文件所需要時間也隨之越小。
[0130]步驟407:終端根據該壓縮參數對待上傳的音頻文件進行壓縮,得到待上傳的音頻文件對應的壓縮包;
[0131]步驟408:終端發送待上傳的音頻文件對應的壓縮包給業務伺服器,以實現上傳待上傳的音頻文件。
[0132]在本發明實施例中,測量當前終端與業務伺服器之間的有效帶寬,根據終端與業務伺服器之間的有效帶寬獲取壓縮參數,根據獲取的壓縮參數對待上傳的音頻文件進行壓縮,得到待上傳的音頻文件對應的壓縮包,發送待上傳的音頻文件對應的壓縮包給業務伺服器,以實現上傳待上傳的音頻文件。如此,可以根據終端與業務伺服器之間的有效帶寬來獲取壓縮參數,從而能夠減少上傳音頻文件的時間和提高壓縮音頻文件的質量。
[0133]實施例5
[0134]如圖5所示,本實施例提供了一種上傳文件的終端,包括:
[0135]獲取模塊501,用於獲取終端與業務伺服器之間的有效帶寬,所述有效帶寬為所述終端實際可用帶寬;
[0136]計算模塊502,用於根據所述有效帶寬計算得到當前網絡條件的壓縮參數;
[0137]壓縮模塊503,用於根據所述壓縮參數對所述待上傳的文件進行壓縮得到對應的壓縮包;
[0138]發送模塊504,用於發送所述壓縮包至所述業務伺服器。
[0139]其中,計算模塊502包括:
[0140]獲取單元,用於根據獲取的有效帶寬,從預設在終端的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數。
[0141]進一步地,計算模塊502還包括:
[0142]判斷單元,用於根據終端與業務伺服器之間的有效帶寬和壓縮參數判斷能否在預設的最大允許時間內上傳完待上傳的文件;
[0143]選擇單元,用於如果不能,則確定壓縮參數所在壓縮參數範圍,從該壓縮參數範圍中選擇最小壓縮參數。
[0144]其中,判斷單元包括:
[0145]第一計算子單元,用於根據預設的最大允許上傳文件的時間和終端與業務伺服器之間的有效帶寬計算出流量大小;
[0146]第二計算子單元,用於根據該壓縮參數和待上傳的文件的大小並通過已存儲的壓縮模型計算出壓縮包大小;[0147]第一判斷子單元,用於如果計算的流量大小大於或等於計算的壓縮包大小,則判斷出能在預設的最大允許時間內上傳完待上傳的文件;
[0148]第二判斷子單元,用於如果計算的流量大小小於計算的壓縮包大小,則判斷出不能在預設的最大允許時間內上傳完待上傳的文件。
[0149]其中,待上傳的文件為圖片或視頻文件,該壓縮參數至少包括解析度和壓縮率;
[0150]壓縮模塊503包括:
[0151]第一壓縮單元,用於如果用戶的需求為要求高壓縮解析度,確定解析度所在的解析度範圍,從該解析度範圍中獲取最大的解析度,根據最大的解析度和壓縮參數中除解析度以外的其他壓縮參數對待上傳的文件進行壓縮得到待上傳的文件對應的壓縮包;
[0152]第二壓縮單元,用於如果用戶的需求為要求高壓縮質量,確定壓縮率所在的壓縮率範圍,從壓縮率範圍中獲取最大的壓縮率,根據最大的壓縮率和壓縮參數中除壓縮率以外的其他壓縮參數對待上傳的文件進行壓縮得到該待上傳的文件對應的壓縮包。
[0153]其中,獲取模塊501,用於發送預設大小的測量包給業務伺服器,並從零開始計時,當接收到業務伺服器返回的應答消息時停止計時,根據測量包的大小和計時的時間計算出終端與業務伺服器之間的有效帶寬。
[0154]在本發明實施例中,根據當前終端與業務伺服器之間的有效帶寬獲取壓縮參數,根據獲取的壓縮參數對待上傳的文件進行壓縮,得到待上傳的文件對應的壓縮包,發送待上傳的文件對應的壓縮包給業務伺服器,以實現上傳待上傳的文件。如此,可以根據終端與業務伺服器之間的網絡情況來獲取壓縮參數,從而能夠減少上傳文件的時間和提高壓縮文件的質量。
[0155]本領域普通技術人員可以理解實現上述實施例的全部或部分步驟可以通過硬體來完成,也可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機可讀存儲介質中,上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等。
[0156]以上所述僅為本發明的較佳實施例,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種上傳文件的方法,其特徵在於,所述方法包括: 獲取終端與業務伺服器之間的有效帶寬,所述有效帶寬為所述終端實際可用帶寬; 根據所述有效帶寬計算得到當前網絡條件的壓縮參數; 終端根據所述壓縮參數對所述待上傳的文件進行壓縮得到對應的壓縮包; 終端發送所述壓縮包至所述業務伺服器。
2.如權利要求1所述的方法,其特徵在於,所述根據所述有效帶寬計算得到當前網絡條件的壓縮參數,包括: 根據所述有效帶寬,從預設在所述終端的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數。
3.如權利要求2所述的方法,其特徵在於,所述從預設在所述終端的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數之後,還包括: 根據所述終端與業務伺服器之間的有效帶寬和所述壓縮參數判斷能否在預設的最大允許時間內上傳完所 述待上傳的文件; 如果不能,則確定所述壓縮參數所在壓縮參數範圍,從所述壓縮參數範圍中選擇最小壓縮參數。
4.如權利要求3所述的方法,其特徵在於,根據所述終端與業務伺服器之間的有效帶寬和所述壓縮參數判斷能否在預設的最大允許時間內上傳完所述待上傳的文件,包括: 根據預設的最大允許上傳文件的時間和所述終端與業務伺服器之間的有效帶寬計算出流量大小; 根據所述壓縮參數和所述待上傳的文件的大小並通過已存儲的壓縮模型計算出壓縮包大小; 如果所述計算的流量大小大於或等於所述計算的壓縮包大小,則判斷出能在預設的最大允許時間內上傳完所述待上傳的文件; 如果所述計算的流量大小小於所述計算的壓縮包大小,則判斷出不能在預設的最大允許時間內上傳完所述待上傳的文件。
5.如權利要求1所述的方法,其特徵在於,所述待上傳的文件為圖片或視頻文件,所述壓縮參數至少包括解析度和壓縮率; 相應地,所述根據所述壓縮參數對所述待上傳的文件進行壓縮得到對應的壓縮包,包括: 如果用戶的需求為要求高壓縮解析度,確定所述解析度所在的解析度範圍,從所述解析度範圍中獲取最大的解析度,根據所述最大的解析度和所述壓縮參數中除解析度以外的其他壓縮參數對所述待上傳的文件進行壓縮得到所述待上傳的文件對應的壓縮包; 如果用戶的需求為要求高壓縮質量,確定所述壓縮率所在的壓縮率範圍,從所述壓縮率範圍中獲取最大的壓縮率,根據所述最大的壓縮率和所述壓縮參數中除壓縮率以外的其他壓縮參數對所述待上傳的文件進行壓縮得到所述待上傳的文件對應的壓縮包。
6.如權利要求1所述的方法,其特徵在於,所述獲取終端與業務伺服器之間的有效帶寬,包括: 發送預設大小的測量包給所述業務伺服器,並從零開始計時,當接收到所述業務伺服器返回的應答消息時停止計時,根據所述測量包的大小和所述計時的時間計算出所述終端與業務伺服器之間的有效帶寬。
7.一種上傳文件的終端,其特徵在於,所述終端包括: 獲取模塊,用於獲取終端與業務伺服器之間的有效帶寬,所述有效帶寬為所述終端實際可用帶寬; 計算模塊,用於根據所述有效帶寬計算得到當前網絡條件的壓縮參數; 壓縮模塊,用於根據所述壓縮參數對所述待上傳的文件進行壓縮得到對應的壓縮包; 發送模塊,用於發送所述壓縮包至所述業務伺服器。
8.如權利要求7所述的終端,其特徵在於,所述計算模塊包括: 獲取單元,用於根據所述有效帶寬,從預設在所述終端的帶寬範圍與壓縮參數的對應關係中獲取對應的壓縮參數。
9.如權利要求8所述的終端,其特徵在於,所述計算模塊還包括: 判斷單元,用於根據所述終端與業務伺服器之間的有效帶寬和所述壓縮參數判斷能否在預設的最大允許時間內上 傳完所述待上傳的文件; 選擇單元,用於如果不能,則確定所述壓縮參數所在壓縮參數範圍,從所述壓縮參數範圍中選擇最小壓縮參數。
10.如權利要求9所述的終端,其特徵在於,所述判斷單元包括: 第一計算子單元,用於根據預設的最大允許上傳文件的時間和所述終端與業務伺服器之間的有效帶寬計算出流量大小; 第二計算子單元,用於根據所述壓縮參數和所述待上傳的文件的大小並通過已存儲的壓縮模型計算出壓縮包大小; 第一判斷子單元,用於如果所述計算的流量大小大於或等於所述計算的壓縮包大小,則判斷出能在預設的最大允許時間內上傳完所述待上傳的文件; 第二判斷子單元,用於如果所述計算的流量大小小於所述計算的壓縮包大小,則判斷出不能在預設的最大允許時間內上傳完所述待上傳的文件。
11.如權利要求7所述的終端,其特徵在於,所述待上傳的文件為圖片或視頻文件,所述壓縮參數至少包括解析度和壓縮率; 相應地,所述壓縮模塊包括: 第一壓縮單元,用於如果用戶的需求為要求高壓縮解析度,確定所述解析度所在的解析度範圍,從所述解析度範圍中獲取最大的解析度,根據所述最大的解析度和所述壓縮參數中除解析度以外的其他壓縮參數對所述待上傳的文件進行壓縮得到所述待上傳的文件對應的壓縮包; 第二壓縮單元,用於如果用戶的需求為要求高壓縮質量,確定所述壓縮率所在的壓縮率範圍,從所述壓縮率範圍中獲取最大的壓縮率,根據所述最大的壓縮率和所述壓縮參數中除壓縮率以外的其他壓縮參數對所述待上傳的文件進行壓縮得到所述待上傳的文件對應的壓縮包。
12.如權利要求7所述的終端,其特徵在於, 所述獲取模塊,用於發送預設大小的測量包給所述業務伺服器,並從零開始計時,當接收到所述業務伺服器返回的應答消息時停止計時,根據所述測量包的大小和所述計時的時間計算出所述終端與業務伺服器之間的有效帶寬。
【文檔編號】H04L29/06GK103457910SQ201210171815
【公開日】2013年12月18日 申請日期:2012年5月29日 優先權日:2012年5月29日
【發明者】李潔, 廖志 申請人:騰訊科技(深圳)有限公司