2013-03-07 296 views
0

假設我收到H264視頻的數據包,每個數據包都帶有時間戳。有沒有辦法將這些時間戳存儲在mp4容器中?還是另一種容器類型?將時間戳添加到mp4容器

+0

你究竟在做什麼?從頭開始編寫mp4複用器或使用庫? – BlueVoodoo 2013-03-07 12:20:27

+0

視頻數據通過RTP包傳入,我想用DirectShow將它寫入mp4。 – kodu 2013-03-07 12:23:48

+0

我會將directshow標籤添加到此問題。答案是肯定的。事實上,玩家必須知道每一幀應該呈現的時間。 ......或者說,每幀應該顯示多長時間。這與mp4中的恆定或可變fps相同。我對directshow不甚瞭解,所以無法告訴你它是如何工作的。 – BlueVoodoo 2013-03-07 12:28:19

回答

0

MP4容器中,對於每個樣本計數,都有一個對應的時間戳存儲爲stts框的一部分。對於給定的樣本,您需要stco用於塊偏移量,stsc用於塊樣本,stsz用於樣本大小,stss用於關鍵​​幀指示,stts用於解碼。

+0

是否有API用於完成所有這些事情? – kodu 2013-03-07 12:42:50

+0

@ user1896048有一些免費的公共領域的mp4作家available.You可以參考這個鏈接也http://stackoverflow.com/questions/3663797/mp4-container-writer-in-java – Ganesh 2013-03-07 13:25:38