2017-09-13 169 views
1

Video for Windows API(VFW)中的流和樣本的概念沒有太多理論或文檔。我想知道如果一個視頻中只能包含:Windows視頻(VFW)允許多個視頻流在一個文件中?

  • 一個視頻流
  • 一個音頻流

或者可以在視頻包含多個視頻流(一個接一個)以及多音頻流?

我假設「樣本」只是指一幀視頻,而不是多幀。 我假設一個流,是一個框架或樣本集合的集合。因此,將視頻分成多個流(幀集合)以製作多個「節」或多個流將會非常有用。如果在視頻中不能有多個流,並且此api僅設計爲具有一個每個視頻的視頻流(帶有可選音頻流),如何創建由多個部分組成的視頻?只需編輯/剪切/直接粘貼到單個流中?或者使用不同的API,例如MediaFoundation/DirectShow?

+0

部分是什麼?他們將如何出現在視頻播放器中?但VFW是古老的。不要使用它。 –

+0

好吧,經過研究了一下:我認爲可以通過組合多個流創建節,然後將其作爲單個文件保存爲單個流...以及AVISave()函數。我同意VFW是非常古老的,但一些舊的代碼依賴於它...所以它仍然是有用的,但使用它的風險,因爲它可能不再受支持 –

回答

1

我不確定它是否可以通過純VfW進行操作,但顯然AVI格式確實支持多個視頻流。我發現a thread具有樣本是來自FUJIFILM FINEPIX REAL3D W1頭,擁有雙視頻流:就如何分割這樣的視頻諮詢

Duration: 00:00:02.99, start: 0.000000, bitrate: 9676 kb/s 
    Stream #0.0: Video: mjpeg, yuvj422p, 320x240, 30 tbr, 30 tbn, 30 tbc 
    Metadata: 
     strn   : FUJIFILM AVI STREAM 0200 
    Stream #0.1: Audio: pcm_s16le, 11024 Hz, 2 channels, s16, 352 kb/s 
    Stream #0.2: Video: mjpeg, yuvj422p, 320x240, 30 tbr, 30 tbn, 30 tbc 
    Metadata: 
     strn   : FUJIFILM AVI STREAM 0200 

海報。選項包括ffmpeg和基於DirectShow的軟件(GrpahEdit和GraphStudioNext);我懷疑你也可以用它們來製作這樣的視頻。

+0

視頻流是一個接一個地播放作爲一個視頻,還是它例如音頻流,用戶可以選擇要播放的音頻流(英文曲目,法國曲目,評論曲目等)。 爲了讓流播放一個接一個播放,他們必須訂購,播放器需要知道按照什麼順序玩他們 –

+1

不,他們同時玩。如果你想連接兩個視頻來連續播放,你不需要並行流。有關詳細信息,請查看VirtualDub如何執行此操作。 –

+0

有趣的是,他們在彼此頂部混合在一起玩?我的大腦無法弄清楚這將如何工作,儘管..如果你有透明度,並且把它們放在彼此的頂部,那麼會產生一些有趣的效果和用例。 –