一種合并視頻的方法及裝置的制造方法
【技術領域】
[0001] 本發(fā)明涉及計算機技術領域,特別涉及一種合并視頻的方法及裝置。
【背景技術】
[0002] 目前,像手機等移動終端上基本帶有拍攝視頻的功能,用戶常常使用該功能拍攝 視頻。有時用戶可能在一段時間內(nèi)拍攝多個視頻,這些視頻的內(nèi)容主題可能相同或相關。例 如,用戶到某個地點旅行,在旅行期間用戶拍攝兩段視頻,這兩段視頻的內(nèi)容主題都是關于 本次旅行,所以該兩段視頻是內(nèi)容主題相同或相關的視頻。
[0003] 移動終端在拍攝完一段視頻后,將拍攝的視頻存儲在移動終端的本地存儲器中。 用戶想播放視頻時,在移動終端本地找出需要播放的視頻進行播放。有時用戶需要播放內(nèi) 容主題相同或相關的多個視頻,此時用戶首先從移動終端本地找出一個需要播放的視頻進 行播放,播放完該視頻后,再從移動終端本地找出其他需要播放的一個視頻進行播放。如 果該多個視頻中還有未播放的視頻,則繼續(xù)從移動終端本地找出其他未播放的視頻進行播 放,直到播放完該多個視頻。
[0004] 在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術至少存在以下問題:
[0005]當播放內(nèi)容主題相同或相關的多個視頻時,用戶需要從移動終端本地找出一個視 頻進行播放,播放完再從移動終端本地找出其他視頻進行播放,如此在一個視頻播放完到 開始播放另一個視頻這段時間沒有得到利用,導致播放視頻的效率很低。例如,存在內(nèi)容主 題相同或相關的2個視頻,用戶需要從移動終端本地分兩次找出該2個視頻進行播放,在第 一個視頻播放結(jié)束到開始播放第二個視頻這段時間內(nèi)終端空閑,沒有視頻可以播放,導致 播放效率低下。
【發(fā)明內(nèi)容】
[0006] 為了提高播放視頻的效率,本發(fā)明提供了一種合并視頻的方法及裝置。所述技術 方案如下:
[0007] -種合并視頻的方法,所述方法包括:
[0008] 獲取幀間隔時間;
[0009] 根據(jù)所述幀間隔時間和第一視頻中包括的第一幀視頻的顯示時間以及最后一幀 視頻的顯示時間,獲取時間偏移量;
[0010] 根據(jù)所述時間偏移量、第二視頻中包括的每幀視頻的顯示時間和解碼時間,計算 所述第二視頻中包括的每幀視頻在合并后的視頻中的顯示時間和解碼時間;
[0011] 根據(jù)所述第二視頻中包括的每幀視頻在合并后的視頻中的顯示時間和解碼時間, 將所述第一視頻和所述第二視頻合并為一個視頻。
[0012] 一種合并視頻的裝置,所述裝置包括:
[0013] 第一獲取模塊,用于獲取幀間隔時間;
[0014] 第二獲取模塊,用于根據(jù)所述幀間隔時間和第一視頻中包括的第一幀視頻的顯示 時間以及最后一幀視頻的顯不時間,獲取時間偏移量;
[0015] 計算模塊,用于根據(jù)所述時間偏移量、第二視頻中包括的每幀視頻的顯示時間和 解碼時間,計算所述第二視頻中包括的每幀視頻在合并后的視頻中的顯示時間和解碼時 間;
[0016] 合并模塊,用于根據(jù)所述第二視頻中包括的每幀視頻在合并后的視頻中的顯示時 間和解碼時間,將所述第一視頻和所述第二視頻合并為一個視頻。
[0017] 在本發(fā)明實施例中,獲取幀間隔時間;根據(jù)該幀間隔時間和第一視頻中包括的第 一幀視頻的顯示時間以及最后一幀視頻的顯示時間,獲取時間偏移量;根據(jù)該時間偏移量、 第二視頻中包括的每幀視頻的顯示時間和解碼時間,計算第二視頻中包括的每幀視頻在合 并后的視頻中的顯示時間和解碼時間;根據(jù)第二視頻中包括的每幀視頻在合并后的視頻中 的顯示時間和解碼時間,將第一視頻和第二視頻合并為一個視頻。由于根據(jù)時間偏移量、第 二視頻中包括的每幀視頻的顯示時間和解碼時間,計算了第二視頻中包括的每幀視頻在合 并后的視頻中的顯示時間和解碼時間,可以根據(jù)第二視頻中包括的每幀視頻在合并后的視 頻中的顯示時間和解碼時間,將第一視頻和第二視頻合并為一個視頻,如此在播放視頻時 第一視頻和第二視頻作為一個視頻連續(xù)播放,避免了先播放第一視頻再播放第二視頻時存 在的等待時間,提1? 了播放視頻的效率。
【附圖說明】
[0018] 圖1是本發(fā)明實施例1提供的一種合并視頻的方法流程圖;
[0019] 圖2是本發(fā)明實施例2提供的一種合并視頻的方法流程圖;
[0020] 圖3是本發(fā)明實施例3提供的一種合并視頻的裝置結(jié)構(gòu)示意圖;
[0021] 圖4是本發(fā)明實施例4提供的一種終端的結(jié)構(gòu)示意圖。
【具體實施方式】
[0022] 為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方 式作進一步地詳細描述。
[0023] 實施例1
[0024] 參見圖1,本發(fā)明實施例提供了一種合并視頻的方法,包括:
[0025] 步驟101 :獲取幀間隔時間;
[0026] 步驟102 :根據(jù)該幀間隔時間和第一視頻中包括的第一幀視頻的顯示時間以及最 后一幀視頻的顯示時間,獲取時間偏移量;
[0027] 步驟103 :根據(jù)該時間偏移量、第二視頻中包括的每幀視頻的顯示時間和解碼時 間,計算第二視頻中包括的每幀視頻在合并后的視頻中的顯示時間和解碼時間;
[0028] 步驟104 :根據(jù)第二視頻中包括的每幀視頻在合并后的視頻中的顯示時間和解碼 時間,將第一視頻和第二視頻合并為一個視頻。
[0029] 優(yōu)選地,根據(jù)該幀間隔時間和第一視頻中包括的第一幀視頻的顯示時間以及最后 一中貞視頻的顯示時間,獲取時間偏移量,包括:
[0030] 根據(jù)該幀間隔時間和第一視頻中包括的第一幀視頻的顯示時間以及最后一幀視 頻的顯示時間,按如下所示的公式(1)計算時間偏移量;
[0031] T=PTSn-PTS1+^......(I)
[0032] 在公式⑴中,T為時間偏移量,PTSn為最后一幀視頻的顯示時間,PTS1為第一幀 視頻的顯示時間,to為幀間隔時間。
[0033] 優(yōu)選地,根據(jù)該時間偏移量、第二視頻中包括的每幀視頻的顯示時間和解碼時間, 計算第二視頻中包括的每幀視頻在合并后的視頻中的顯示時間和解碼時間,包括:
[0034] 根據(jù)第二視頻中包括的每幀視頻的顯示時間和該時間偏移量,按如下公式(2)計 算第二視頻中包括的每幀視頻在合并后的視頻中的顯示時間;
[0035] PTS/ =PTSi+!......(2)
[0036] 在公式⑵中,PTSi為第二視頻中包括的第i幀視頻的顯示時間,PTS/為第二視 頻中包括的第i幀視頻在合并后的視頻中的顯示時間;
[0037] 根據(jù)第二視頻中包括的每幀視頻的解碼時間和該時間偏移量,按如下公式(3)計 算第二視頻中包括的每幀視頻在合并后的視頻中的解碼時間;
[0038] DTS/ =DTSi+!......(3)
[0039] 在公式(3)中,DTSi為第二視頻中包括的第i幀視頻的解碼時間,DTS/為第二視 頻中包括的第i幀視頻在合并后的視頻中的解碼時間。
[0040] 進一步地,獲取幀間隔時間之前,還包括:
[0041] 創(chuàng)建第一線程、第二線程和第三線程,通過第一線程、第二線程和第三線程拍攝視 頻。
[0042] 優(yōu)選地,通過第一線程、第二線程和第三線程拍攝視頻,包括:
[0043] 通過第一線程獲取攝像頭當前拍攝的一幀視頻數(shù)據(jù),將攝像頭當前拍攝的一幀視 頻數(shù)據(jù)插入到視頻隊列的隊尾;
[0044] 通過第二線程獲取麥克風當前采集的一幀音頻數(shù)據(jù),將麥克風當前采集的一幀音 頻數(shù)據(jù)插入到音頻隊列的隊尾;
[0045] 通過第三線程,從視頻隊列的隊首獲取一幀視頻數(shù)據(jù)以及從音頻隊列的隊首獲取 一幀音頻數(shù)據(jù),將獲取的一幀視頻數(shù)據(jù)和一幀音頻數(shù)據(jù)組合為視頻中的一幀視頻。
[0046] 優(yōu)選地,獲取幀間隔時間,包括:
[0047] 獲取第一視頻中每幀視頻所占用的時間、第一視頻包括的視頻幀的數(shù)目以及第一 視頻的總時長;
[0048] 根據(jù)第一視頻中每幀視頻所占用的時間,計算第一視頻中視頻幀占用的總時間;
[0049] 根據(jù)第一視頻中視頻幀占用的總時間和第一視頻的總時長,計算第一視頻中包括 的幀間隔所占用的總時間;
[0050] 根據(jù)幀間隔所占用的總時間和第一視頻包括的視頻幀的數(shù)目,計算幀間隔時間。
[0051] 優(yōu)選地,根據(jù)第二視頻中包括的每幀視頻在合并后的視頻中的顯示時間和解碼時 間,將第一視頻和第二視頻合并為一個視頻,包括:
[0052] 將第一視頻中包括的每幀視頻存儲在一個視頻文件中;
[0053] 根據(jù)第二視頻中包括的每幀視頻在合并后的視頻中的顯示時間和解碼時間,確定 第二視頻中包括的每幀視頻的存儲順序;
[0054]在視頻文件中第一視頻包括的最后一幀視頻之后,按照確定的存儲順序存儲第二 視頻中包括的每幀視頻,以實現(xiàn)將第一視頻和第二視頻合并為一個視頻。
[0055] 在本發(fā)明實施例中,獲取幀間隔時間;根據(jù)該幀間隔時間和第一視頻中包括的第 一幀視頻的顯示時間以及最后一幀視頻的顯示時間,獲取時間偏移量;根據(jù)該時間偏移量、 第二視頻中包括的每幀視頻的顯示時間和解碼時間,計算第二視頻中包括的每幀視頻在合 并后的視頻中的顯示時間和解碼時間;根據(jù)第二視頻中包括的每幀視頻在合并后的視頻中 的顯示時間和解碼時間,將第一視頻和第二視頻合并為一個視頻。由于根據(jù)時間偏移量、第 二視頻中包括的每幀視頻的顯示時間和解碼時間,計算了第二視頻中包括的每幀視頻在合 并后的視頻中的顯示時間和解碼時間,可以根據(jù)第二視頻中包括的每幀視頻在合并后的視 頻中的顯示時間和解碼時間,將第一視頻和第二視頻合并為一個視頻,如此在播放視頻時 第一視頻和第二視頻作為一個視頻連續(xù)播放,避免了先播放第一視頻再播放第二視頻時存 在的等待時間,提1? 了播放視頻的效率。
[0056] 實施例2
[0057] 本發(fā)明實施例提供了一種合并視頻的方法。
[0058] 目前,像手機等移動終端上基本帶有拍攝視頻的功能,用戶常常使用該功能拍攝 視頻。有時用戶可能在一段時間內(nèi)拍攝多個視頻,這些視頻的內(nèi)容主題可能相同或相關。在 播放視頻時,有時用戶需要播放內(nèi)容主題相同或相