2012-11-06 64 views
2

我正在構建一個應用程序,需要在使用FFMPEG進行編碼的同時在磁盤上播放視頻(換句話說,psuedostreaming到磁盤 - 播放路徑就像在實時流中那樣在編碼之後)。所以MOOV原子本質上需要在處理時(或以塊的形式交織到流中)生成,並且我嘗試過使用empty_moov而沒有運氣(尤其是因爲quicktime不支持它)。如何使用ffmpeg流式處理磁盤碎片化的MP4?

我不確定這是否可能與MP4格式,尋找想法或解決方案。

回答

0

碎片化的MP4是做到這一點的方式,但它使用empty_moov。 當一切都已知時,普通的MP4文件最後會有標題(而不是fMP4的開頭)。它不適用於流媒體。

您可以嘗試編寫小的MP4文件(甚至一個GOP)並使用fast_start(或類似的東西)將標題移動到文件的開頭。我不知道連續播放幾個文件的開銷是多少,這可能會導致播放不太流暢。

如果您已經對視頻進行轉碼並在讀取數據後丟棄(或空間不是問題),則可以輸出MJPEG。