国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種分布式轉(zhuǎn)碼的音視頻同步方法及系統(tǒng)的制作方法

      文檔序號(hào):7778632閱讀:335來源:國(guó)知局
      一種分布式轉(zhuǎn)碼的音視頻同步方法及系統(tǒng)的制作方法
      【專利摘要】本發(fā)明實(shí)施例提供一種分布式轉(zhuǎn)碼的音視頻同步方法,以及一種用于音視頻同步的分布式轉(zhuǎn)碼系統(tǒng),用以解決現(xiàn)有技術(shù)中分布式視頻轉(zhuǎn)碼出現(xiàn)的音視頻無法同步的問題。使用本發(fā)明實(shí)施例公開的分布式轉(zhuǎn)碼的音視頻同步方法及系統(tǒng),封裝服務(wù)器在對(duì)GOP以及音頻包進(jìn)行封裝前能夠生成各個(gè)音視頻幀相對(duì)于整個(gè)源視頻文件的時(shí)間戳,從而可以保證音頻和視頻的同步。
      【專利說明】一種分布式轉(zhuǎn)碼的音視頻同步方法及系統(tǒng)
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,尤其涉及一種分布式轉(zhuǎn)碼的音視頻同步方法及系統(tǒng)。
      【背景技術(shù)】
      [0002]當(dāng)有大量視頻需要進(jìn)行轉(zhuǎn)換格式時(shí),可以采用多臺(tái)單機(jī)版的轉(zhuǎn)碼軟件進(jìn)行轉(zhuǎn)碼;而更為高效的辦法是設(shè)計(jì)一個(gè)分布式的轉(zhuǎn)碼系統(tǒng)進(jìn)行轉(zhuǎn)碼。分布式視頻轉(zhuǎn)碼一般可分為四個(gè)步驟進(jìn)行:a、解封裝,b、視頻解碼編碼,c、音頻解碼編碼,d、封裝。這四個(gè)步驟中視頻解碼編碼這一步要耗費(fèi)整個(gè)轉(zhuǎn)碼過程80%_90%的時(shí)間。為了提高轉(zhuǎn)碼速度,減少轉(zhuǎn)碼的整體時(shí)間最核心的是要減少視頻解碼編碼的處理時(shí)間。
      [0003]分布式轉(zhuǎn)碼的思想是利用多臺(tái)服務(wù)器同時(shí)并行對(duì)進(jìn)GOP (Group of Pictures,畫面組)解碼編碼處理,并行處理G0P的服務(wù)器越多,整個(gè)轉(zhuǎn)碼過程耗時(shí)就越少。為此分布式轉(zhuǎn)碼系統(tǒng)一般被設(shè)計(jì)為:一臺(tái)服務(wù)器負(fù)責(zé)解封裝,多臺(tái)服務(wù)器負(fù)責(zé)處理G0P,一臺(tái)服務(wù)器負(fù)責(zé)處理音頻包,一臺(tái)服務(wù)器負(fù)責(zé)封裝并輸出目標(biāo)視頻文件。圖1所示即為分布式轉(zhuǎn)碼的系統(tǒng)示意圖。
      [0004]在單機(jī)上進(jìn)行視頻轉(zhuǎn)碼時(shí),一般是按照音視頻幀的自然順序?qū)σ粢曨l幀進(jìn)行解碼、編碼,在編碼的時(shí)候就可以同時(shí)按照順序產(chǎn)生音視頻巾貞的時(shí)間戳(pts (presentationtime stamp,顯示時(shí)間戳),dts (decoding time stamp PTS,解碼時(shí)間戳))。而分布式轉(zhuǎn)碼是由若干臺(tái)服務(wù)器同時(shí)并行對(duì)GOP和音頻包進(jìn)行解碼、編碼的,這樣就打亂了音視頻幀的自然順序,出現(xiàn)音視頻無法同步的現(xiàn)象。

      【發(fā)明內(nèi)容】

      [0005]為了解決分布式視頻轉(zhuǎn)碼出現(xiàn)的音視頻無法同步的問題,本發(fā)明實(shí)施例提出一種分布式轉(zhuǎn)碼的音視頻同步方法和系統(tǒng)。
      [0006]本發(fā)明的一個(gè)方面,提供一種分布式轉(zhuǎn)碼的音視頻同步方法,包括:
      [0007]解封裝服務(wù)器解封裝源視頻文件,分別產(chǎn)生至少一個(gè)圖片組G0P以及音頻包;
      [0008]所述解封裝服務(wù)器將各個(gè)G0P中第一個(gè)視頻幀的序號(hào)寫入所述各個(gè)G0P中,并將各個(gè)音頻包中的第一個(gè)音頻幀的序號(hào)寫入所述各個(gè)音頻包中;
      [0009]所述解封裝服務(wù)器將所述G0P以及音頻包發(fā)送到轉(zhuǎn)碼服務(wù)器;
      [0010]所述轉(zhuǎn)碼服務(wù)器對(duì)所述G0P進(jìn)行編解碼操作,生成編碼后的G0P,并對(duì)所述編碼后的G0P內(nèi)部各視頻幀生成時(shí)間戳;
      [0011]所述轉(zhuǎn)碼服務(wù)器對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,所述編碼后的音頻包中包含所述第一個(gè)音頻幀的序號(hào);
      [0012]所述轉(zhuǎn)碼服務(wù)器將所述編碼后的G0P以及音頻包發(fā)送到封裝服務(wù)器;
      [0013]所述封裝服務(wù)器根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      [0014]本發(fā)明的另一個(gè)方面,提供一種用于音視頻同步的分布式轉(zhuǎn)碼系統(tǒng),包括:
      [0015]解封裝服務(wù)器,轉(zhuǎn)碼服務(wù)器,以及封裝服務(wù)器;
      [0016]所述解封裝服務(wù)器用于解封裝源視頻文件,分別產(chǎn)生至少一個(gè)圖片組G0P以及音頻包;
      [0017]所述解封裝服務(wù)器還用于將各個(gè)G0P中第一個(gè)視頻幀的序號(hào)寫入所述各個(gè)G0P中,并將各個(gè)音頻包中的第一個(gè)音頻幀的序號(hào)寫入所述各個(gè)音頻包中;
      [0018]所述解封裝服務(wù)器還用于將所述G0P以及音頻包發(fā)送到所述轉(zhuǎn)碼服務(wù)器;
      [0019]所述轉(zhuǎn)碼服務(wù)器用于對(duì)所述G0P進(jìn)行編解碼操作,生成編碼后的G0P,并對(duì)所述編碼后的G0P內(nèi)部各視頻幀生成時(shí)間戳;
      [0020]所述轉(zhuǎn)碼服務(wù)器還用于對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,所述編碼后的音頻包中包含所述第一個(gè)音頻幀的序號(hào);
      [0021]所述轉(zhuǎn)碼服務(wù)器還用于將所述編碼后的G0P以及音頻包發(fā)送到所述封裝服務(wù)器;
      [0022]所述封裝服務(wù)器還用于根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      [0023]使用本發(fā)明實(shí)施例公開的分布式轉(zhuǎn)碼的音視頻同步方法及系統(tǒng),解封裝服務(wù)器對(duì)解碼產(chǎn)生的G0P以及音頻包中的第一幀文件分別進(jìn)行編號(hào),從而可以確定各個(gè)G0P以及音頻包在整個(gè)源視頻文件中各幀的順序;轉(zhuǎn)碼服務(wù)器在對(duì)G0P以及音頻包進(jìn)行轉(zhuǎn)碼的同時(shí)按照G0P以及音頻包內(nèi)部各幀的順序生成G0P中內(nèi)部各視頻幀的時(shí)間戳以及音頻包內(nèi)部個(gè)音頻幀的時(shí)間戳;封裝服務(wù)器在收到前述處理過的G0P以及音頻包后能夠根據(jù)G0P以及音頻包內(nèi)部第一幀文件的序號(hào)以及內(nèi)部各幀的時(shí)間戳生成各幀相對(duì)于整個(gè)源視頻文件的時(shí)間戳,這樣即可實(shí)現(xiàn)轉(zhuǎn)碼后的音視頻幀文件的同步,保證了視頻封裝的正常進(jìn)行。
      【專利附圖】

      【附圖說明】
      [0024]圖1所示是一種分布式視頻轉(zhuǎn)碼的系統(tǒng)示意圖;
      [0025]圖2所示是本發(fā)明實(shí)施例提供的一種分布式視頻轉(zhuǎn)碼的糾錯(cuò)方法的示意圖;
      [0026]圖3所示是本發(fā)明實(shí)施例提供的一種用于音視頻同步的分布式轉(zhuǎn)碼系統(tǒng)的結(jié)構(gòu)示意圖。
      【具體實(shí)施方式】
      [0027]在本發(fā)明實(shí)施例中,解封裝服務(wù)器對(duì)解碼產(chǎn)生的G0P以及音頻包中的第一幀文件分別進(jìn)行編號(hào),從而可以確定各個(gè)G0P以及音頻包在整個(gè)源視頻文件中各幀的順序;轉(zhuǎn)碼服務(wù)器在對(duì)G0P以及音頻包進(jìn)行轉(zhuǎn)碼的同時(shí)按照G0P以及音頻包內(nèi)部各幀的順序生成G0P中內(nèi)部各視頻幀的時(shí)間戳以及音頻包內(nèi)部個(gè)音頻幀的時(shí)間戳;封裝服務(wù)器在收到前述處理過的G0P以及音頻包后能夠根據(jù)G0P以及音頻包內(nèi)部第一幀文件的序號(hào)以及內(nèi)部各幀的時(shí)間戳生成各幀相對(duì)于整個(gè)源視頻文件的時(shí)間戳,這樣即可實(shí)現(xiàn)轉(zhuǎn)碼后的音視頻幀文件的同步,保證了視頻封裝的正常進(jìn)行。
      [0028]以下詳細(xì)說明本發(fā)明實(shí)施例提供的分布式轉(zhuǎn)碼的音視頻同步方法。
      [0029]圖2所示為本發(fā)明一個(gè)實(shí)施例提供的分布式轉(zhuǎn)碼的音視頻同步方法示意圖,根據(jù)該圖,詳述各步驟如下:
      [0030]步驟201、解封裝服務(wù)器解封裝源視頻文件,分別產(chǎn)生至少一個(gè)圖片組G0P以及音頻包;
      [0031]其中,所述各個(gè)G0P中第一個(gè)視頻幀的序號(hào),是指所述各個(gè)G0P中第一個(gè)視頻幀在所述源視頻文件中所有視頻幀中排序的序號(hào);
      [0032]所述各個(gè)音頻包中第一個(gè)音頻幀的序號(hào),是指所述各個(gè)音頻包中的第一個(gè)音頻幀在所述源視頻文件中所有音頻幀中排序的序號(hào)。
      [0033]步驟202、所述解封裝服務(wù)器將各個(gè)G0P中第一個(gè)視頻幀的序號(hào)寫入所述各個(gè)G0P中,并將各個(gè)音頻包中的第一個(gè)音頻幀的序號(hào)寫入所述各個(gè)音頻包中;
      [0034]步驟203、所述解封裝服務(wù)器將所述G0P以及音頻包發(fā)送到轉(zhuǎn)碼服務(wù)器;
      [0035]步驟204、所述轉(zhuǎn)碼服務(wù)器對(duì)所述G0P進(jìn)行編解碼操作,生成編碼后的G0P,并對(duì)所述編碼后的G0P內(nèi)部各視頻幀生成時(shí)間戳;
      [0036]其中,所述轉(zhuǎn)碼服務(wù)器對(duì)所述G0P進(jìn)行編解碼操作,生成編碼后的G0P,并對(duì)所述編碼后的G0P內(nèi)部各視頻幀生成時(shí)間戳,包括:
      [0037]所述轉(zhuǎn)碼服務(wù)器按照所述G0P內(nèi)部幀的順序?qū)λ鯣0P進(jìn)行解碼操作;
      [0038]所述轉(zhuǎn)碼服務(wù)器按照所述G0P內(nèi)部幀的順序?qū)λ鼋獯a后的G0P按照新的格式進(jìn)行編碼;
      [0039]所述轉(zhuǎn)碼服務(wù)器提取所述G0P中的第一個(gè)視頻幀的序號(hào),按照所述G0P中的第一個(gè)視頻巾貞的序號(hào)在對(duì)所述G0P中每一巾貞進(jìn)行編碼的同時(shí)產(chǎn)生每一巾貞的時(shí)間戳。
      [0040]步驟205、所述轉(zhuǎn)碼服務(wù)器對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,所述編碼后的音頻包中包含所述第一個(gè)音頻幀的序號(hào);
      [0041]其中,所述轉(zhuǎn)碼服務(wù)器對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,包括:
      [0042]所述轉(zhuǎn)碼服務(wù)器按照所述音頻包內(nèi)部幀的順序?qū)λ鲆纛l包進(jìn)行解碼操作;
      [0043]所述轉(zhuǎn)碼服務(wù)器按照所述音頻包內(nèi)部幀的順序?qū)λ鼋獯a后的音頻包按照新的格式進(jìn)行編碼;
      [0044]所述轉(zhuǎn)碼服務(wù)器對(duì)所述解碼后的音頻包按照新的格式進(jìn)行編碼的同時(shí),按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳。
      [0045]步驟206、所述轉(zhuǎn)碼服務(wù)器將所述編碼后的G0P以及音頻包發(fā)送到封裝服務(wù)器;
      [0046]步驟207、所述封裝服務(wù)器根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      [0047]其中,所述封裝服務(wù)器根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳,包括:[0048]所述封裝服務(wù)器根據(jù)所述音頻包內(nèi)相鄰音頻幀的時(shí)間戳計(jì)算所述音頻幀時(shí)間戳的間隔,并按照所述音頻包內(nèi)相鄰音頻幀的時(shí)間戳間隔和每一個(gè)音頻包中第一音頻幀的序號(hào)生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      [0049]使用本發(fā)明實(shí)施例公開的分布式轉(zhuǎn)碼的音視頻同步方法,解封裝服務(wù)器對(duì)解碼產(chǎn)生的G0P以及音頻包中的第一幀文件分別進(jìn)行編號(hào),從而可以確定各個(gè)G0P以及音頻包在整個(gè)源視頻文件中各幀的順序;轉(zhuǎn)碼服務(wù)器在對(duì)G0P以及音頻包進(jìn)行轉(zhuǎn)碼的同時(shí)按照G0P以及音頻包內(nèi)部各幀的順序生成G0P中內(nèi)部各視頻幀的時(shí)間戳以及音頻包內(nèi)部個(gè)音頻幀的時(shí)間戳;封裝服務(wù)器在收到前述處理過的G0P以及音頻包后能夠根據(jù)G0P以及音頻包內(nèi)部第一幀文件的序號(hào)以及內(nèi)部各幀的時(shí)間戳生成各幀相對(duì)于整個(gè)源視頻文件的時(shí)間戳,這樣即可實(shí)現(xiàn)轉(zhuǎn)碼后的音視頻幀文件的同步,保證了視頻封裝的正常進(jìn)行。
      [0050]以下介紹一種用于音視頻同步的分布式轉(zhuǎn)碼系統(tǒng),用以執(zhí)行前述實(shí)施例中公開的分布式轉(zhuǎn)碼的音視頻同步方法。
      [0051]圖3所示為本發(fā)明一個(gè)實(shí)施例提供的一種用于音視頻同步的分布式轉(zhuǎn)碼系統(tǒng)結(jié)構(gòu)示意圖。依據(jù)該圖,詳述系統(tǒng)中的各組成部分以及各自的作用如下:
      [0052]本發(fā)明實(shí)施例提供的用于音視頻同步的分布式轉(zhuǎn)碼系統(tǒng)包括:解封裝服務(wù)器301、轉(zhuǎn)碼服務(wù)器302,以及封裝服務(wù)器303。其中,轉(zhuǎn)碼服務(wù)器302的個(gè)數(shù)至少為一個(gè)。
      [0053]所述解封裝服務(wù)器301用于解封裝源視頻文件,分別產(chǎn)生至少一個(gè)圖片組G0P以及音頻包;
      [0054]所述解封裝服務(wù)器301還用于將各個(gè)G0P中第一個(gè)視頻幀的序號(hào)寫入所述各個(gè)G0P中,并將各個(gè)音頻包中的第一個(gè)音頻幀的序號(hào)寫入所述各個(gè)音頻包中;
      [0055]其中,所述各個(gè)G0P中第一個(gè)視頻幀的序號(hào),是指所述各個(gè)G0P中第一個(gè)視頻幀在所述源視頻文件中所有視頻幀中排序的序號(hào);
      [0056]所述各個(gè)音頻包中第一個(gè)音頻幀的序號(hào),是指所述各個(gè)音頻包中的第一個(gè)音頻幀在所述源視頻文件中所有音頻幀中排序的序號(hào)。
      [0057]所述解封裝服務(wù)器301還用于將所述G0P以及音頻包發(fā)送到所述轉(zhuǎn)碼服務(wù)器302 ;
      [0058]所述轉(zhuǎn)碼服務(wù)器302用于對(duì)所述G0P進(jìn)行編解碼操作,生成編碼后的G0P,并對(duì)所述編碼后的G0P內(nèi)部各視頻幀生成時(shí)間戳;
      [0059]其中,所述轉(zhuǎn)碼服務(wù)器302用于對(duì)所述G0P進(jìn)行編解碼操作,生成編碼后的G0P,并對(duì)所述編碼后的G0P內(nèi)部各視頻幀生成時(shí)間戳,包括:
      [0060]所述轉(zhuǎn)碼服務(wù)器按照所述G0P內(nèi)部幀的順序?qū)λ鯣0P進(jìn)行解碼操作;
      [0061 ] 所述轉(zhuǎn)碼服務(wù)器按照所述G0P內(nèi)部幀的順序?qū)λ鼋獯a后的G0P按照新的格式進(jìn)行編碼;
      [0062]所述轉(zhuǎn)碼服務(wù)器提取所述G0P中的第一個(gè)視頻幀的序號(hào),按照所述G0P中的第一個(gè)視頻巾貞的序號(hào)在對(duì)所述G0P中每一巾貞進(jìn)行編碼的同時(shí)產(chǎn)生每一巾貞的時(shí)間戳。
      [0063]所述轉(zhuǎn)碼服務(wù)器302還用于對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,所述編碼后的音頻包中包含所述第一個(gè)音頻幀的序號(hào);
      [0064]其中,所述轉(zhuǎn)碼服務(wù)器302對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,包括:
      [0065]所述轉(zhuǎn)碼服務(wù)器按照所述音頻包內(nèi)部幀的順序?qū)λ鲆纛l包進(jìn)行解碼操作;
      [0066]所述轉(zhuǎn)碼服務(wù)器按照所述音頻包內(nèi)部幀的順序?qū)λ鼋獯a后的音頻包按照新的格式進(jìn)行編碼;
      [0067]所述轉(zhuǎn)碼服務(wù)器對(duì)所述解碼后的音頻包按照新的格式進(jìn)行編碼的同時(shí),按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳。
      [0068]所述轉(zhuǎn)碼服務(wù)器302還用于將所述編碼后的GOP以及音頻包發(fā)送到所述封裝服務(wù)器 303 ;
      [0069]所述封裝服務(wù)器303用于根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      [0070]所述封裝服務(wù)器根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳,包括:
      [0071]所述封裝服務(wù)器根據(jù)所述音頻包內(nèi)相鄰音頻幀的時(shí)間戳計(jì)算所述音頻幀時(shí)間戳的間隔,并按照所述音頻包內(nèi)相鄰音頻幀的時(shí)間戳間隔和每一個(gè)音頻包中第一音頻幀的序號(hào)生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      [0072]使用本發(fā)明實(shí)施例公開的用于音視頻同步的分布式轉(zhuǎn)碼系統(tǒng),解封裝服務(wù)器對(duì)解碼產(chǎn)生的GOP以及音頻包中的第一幀文件分別進(jìn)行編號(hào),從而可以確定各個(gè)GOP以及音頻包在整個(gè)源視頻文件中各幀的順序;轉(zhuǎn)碼服務(wù)器在對(duì)GOP以及音頻包進(jìn)行轉(zhuǎn)碼的同時(shí)按照GOP以及音頻包內(nèi)部各幀的順序生成GOP中內(nèi)部各視頻幀的時(shí)間戳以及音頻包內(nèi)部個(gè)音頻幀的時(shí)間戳;封裝服務(wù)器在收到前述處理過的GOP以及音頻包后能夠根據(jù)GOP以及音頻包內(nèi)部第一幀文件的序號(hào)以及內(nèi)部各幀的時(shí)間戳生成各幀相對(duì)于整個(gè)源視頻文件的時(shí)間戳,這樣即可實(shí)現(xiàn)轉(zhuǎn)碼后的音視頻幀文件的同步,保證了視頻封裝的正常進(jìn)行。
      [0073]本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲(chǔ)于可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:R0M、RAM、磁碟、光盤、網(wǎng)絡(luò)節(jié)點(diǎn)、調(diào)度器等各種可以存儲(chǔ)程序代碼的介質(zhì)。
      [0074]最后應(yīng)說明的是:以上僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,對(duì)于本領(lǐng)域的技術(shù)人員來說,其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
      【權(quán)利要求】
      1.一種分布式轉(zhuǎn)碼的音視頻同步方法,其特征在于,包括:解封裝服務(wù)器解封裝源視頻文件,分別產(chǎn)生至少一個(gè)圖片組GOP以及音頻包;所述解封裝服務(wù)器將各個(gè)GOP中第一個(gè)視頻幀的序號(hào)寫入所述各個(gè)GOP中,并將各個(gè)音頻包中的第一個(gè)音頻幀的序號(hào)寫入所述各個(gè)音頻包中;所述解封裝服務(wù)器將所述GOP以及音頻包發(fā)送到轉(zhuǎn)碼服務(wù)器; 所述轉(zhuǎn)碼服務(wù)器對(duì)所述GOP進(jìn)行編解碼操作,生成編碼后的GOP,并對(duì)所述編碼后的GOP內(nèi)部各視頻幀生成時(shí)間戳;所述轉(zhuǎn)碼服務(wù)器對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,所述編碼后的音頻包中包含所述第一個(gè)音頻幀的序號(hào);所述轉(zhuǎn)碼服務(wù)器將所述編碼后的GOP以及音頻包發(fā)送到封裝服務(wù)器;所述封裝服務(wù)器根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述轉(zhuǎn)碼服務(wù)器對(duì)所述GOP進(jìn)行編解碼操作,生成編碼后的GOP,并對(duì)所述編碼后的GOP內(nèi)部各視頻幀生成時(shí)間戳,包括:所述轉(zhuǎn)碼服務(wù)器按照所述GOP內(nèi)部幀的順序?qū)λ鯣OP進(jìn)行解碼操作;所述轉(zhuǎn)碼服務(wù)器按照所述GOP內(nèi)部幀的順序?qū)λ鼋獯a后的GOP按照新的格式進(jìn)行編碼;所述轉(zhuǎn)碼服務(wù)器提取所述GOP中的第一個(gè)視頻幀的序號(hào),按照所述GOP中的第一個(gè)視頻中貞的序號(hào)在對(duì)所述GOP中每一幀進(jìn)行編碼的同時(shí)生成每一幀的時(shí)間戳。
      3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述轉(zhuǎn)碼服務(wù)器對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,包括:所述轉(zhuǎn)碼服務(wù)器按照所述音頻包內(nèi)部幀的順序?qū)λ鲆纛l包進(jìn)行解碼操作;所述轉(zhuǎn)碼服務(wù)器按照所述音頻包內(nèi)部幀的順序?qū)λ鼋獯a后的音頻包按照新的格式進(jìn)行編碼;所述轉(zhuǎn)碼服務(wù)器對(duì)所述解碼后的音頻包按照新的格式進(jìn)行編碼的同時(shí),按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳。
      4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述各個(gè)GOP中第一個(gè)視頻幀的序號(hào),是指所述各個(gè)GOP中第一個(gè)視頻幀在所述源視頻文件中所有視頻幀中排序的序號(hào);所述各個(gè)音頻包中第一個(gè)音頻幀的序號(hào),是指所述各個(gè)音頻包中的第一個(gè)音頻幀在所述源視頻文件中所有音頻幀中排序的序號(hào)。
      5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述封裝服務(wù)器根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳,包括:所述封裝服務(wù)器根據(jù)所述音頻包內(nèi)相鄰音頻幀的時(shí)間戳計(jì)算所述音頻幀時(shí)間戳的間隔,并按照所述音頻包內(nèi)相鄰音頻幀的時(shí)間戳間隔和每一個(gè)音頻包中第一音頻幀的序號(hào)生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      6.一種用于音視頻同步的分布式轉(zhuǎn)碼系統(tǒng),其特征在于,包括:解封裝服務(wù)器,轉(zhuǎn)碼服務(wù)器,以及封裝服務(wù)器;所述解封裝服務(wù)器用于解封裝源視頻文件,分別產(chǎn)生至少一個(gè)圖片組GOP以及音頻包;所述解封裝服務(wù)器還用于將各個(gè)G0P中第一個(gè)視頻幀的序號(hào)寫入所述各個(gè)G0P中,并將各個(gè)音頻包中的第一個(gè)音頻幀的序號(hào)寫入所述各個(gè)音頻包中;所述解封裝服務(wù)器還用于將所述G0P以及音頻包發(fā)送到所述轉(zhuǎn)碼服務(wù)器;所述轉(zhuǎn)碼服務(wù)器用于對(duì)所述G0P進(jìn)行編解碼操作,生成編碼后的G0P,并對(duì)所述編碼后的G0P內(nèi)部各視頻幀生成時(shí)間戳;所述轉(zhuǎn)碼服務(wù)器還用于對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,所述編碼后的音頻包中包含所述第一個(gè)音頻幀的序號(hào);所述轉(zhuǎn)碼服務(wù)器還用于將所述編碼后的G0P以及音頻包發(fā)送到所述封裝服務(wù)器;所述封裝服務(wù)器還用于根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述轉(zhuǎn)碼服務(wù)器用于對(duì)所述G0P進(jìn)行編解碼操作,生成編碼后的G0P,并對(duì)所述編碼后的G0P內(nèi)部各視頻幀生成時(shí)間戳,包括:所述轉(zhuǎn)碼服務(wù)器按照所述G0P內(nèi)部幀的順序?qū)λ鯣0P進(jìn)行解碼操作;所述轉(zhuǎn)碼服務(wù)器按照所述G0P內(nèi)部幀的順序?qū)λ鼋獯a后的G0P按照新的格式進(jìn)行編碼;所述轉(zhuǎn)碼服務(wù)器提取所述G0P中的第一個(gè)視頻幀的序號(hào),按照所述G0P中的第一個(gè)視頻幀的序號(hào)在對(duì)所述G0P中每一幀進(jìn)行編碼的同時(shí)產(chǎn)生每一幀的時(shí)間戳。
      8.根據(jù)權(quán)利要求6或7所述的系統(tǒng),其特征在于,所述轉(zhuǎn)碼服務(wù)器對(duì)所述音頻包進(jìn)行編解碼操作,生成編碼后的音頻包,并按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳,包括:所述轉(zhuǎn)碼服務(wù)器按照所述音頻包內(nèi)部幀的順序?qū)λ鲆纛l包進(jìn)行解碼操作;所述轉(zhuǎn)碼服務(wù)器按照所述音頻包內(nèi)部幀的順序?qū)λ鼋獯a后的音頻包按照新的格式進(jìn)行編碼;所述轉(zhuǎn)碼服務(wù)器對(duì)所述解碼后的音頻包按照新的格式進(jìn)行編碼的同時(shí),按照所述音頻包內(nèi)部幀的順序?qū)λ鼍幋a后的音頻包內(nèi)部各音頻幀生成時(shí)間戳。
      9.根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,所述各個(gè)G0P中第一個(gè)視頻幀的序號(hào),是指所述各個(gè)G0P中第一個(gè)視頻幀在所述源視頻文件中所有視頻幀中排序的序號(hào);所述各個(gè)音頻包中第一個(gè)音頻幀的序號(hào),是指所述各個(gè)音頻包中的第一個(gè)音頻幀在所述源視頻文件中所有音頻幀中排序的序號(hào)。
      10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述封裝服務(wù)器根據(jù)所述各個(gè)編碼后的音頻包中第一個(gè)音頻幀的序號(hào),以及各個(gè)音頻包內(nèi)部各音頻幀的時(shí)間戳生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳,包括:所述封裝服務(wù)器根據(jù)所述音頻包內(nèi)相鄰音頻幀的時(shí)間戳計(jì)算所述音頻幀時(shí)間戳的間隔,并按照所述音頻包內(nèi)相鄰音頻幀的時(shí)間戳間隔和每一個(gè)音頻包中第一音頻幀的序號(hào)生成所述音頻包內(nèi)部各音頻幀相對(duì)于所述源視頻文件的時(shí)間戳。
      【文檔編號(hào)】H04N5/04GK103647970SQ201310634366
      【公開日】2014年3月19日 申請(qǐng)日期:2013年12月2日 優(yōu)先權(quán)日:2013年12月2日
      【發(fā)明者】張金良 申請(qǐng)人:天脈聚源(北京)傳媒科技有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1