2013-03-07 19 views
0

我想知道如何從圖像製作視頻文件。如何從圖像製作視頻文件

原因是我想製作一個屏幕截圖應用程序。

我會在C#進行編碼,並打算捕捉屏幕爲

位圖,然後將其寫入文件。

不要告訴我使用某些庫或DLL,我可以在某處下載。

我想知道如何用原始字節做到這一點。

+6

1.閱讀有關不同的電影格式。 2.實現所述格式化寫入器,其將位圖和吐出電影文件。 – 2013-03-07 19:39:25

+1

C#沒有內置的視頻編碼,所以你將不得不使用庫。 – Overv 2013-03-07 19:39:40

+4

@Overv:他想自己做,它可以在C#中完成(它畢竟可以處理文件和內存:-)。這是很多工作,但... – 2013-03-07 19:40:36

回答

1

它可以生成視頻免費庫NReco.VideoConverter(nuget包也可用),實際上是FFMpeg工具的.NET包裝。

有2種方式如何是可能的:

  • 如果你已經有圖像文件的最好方法是使用特殊的「圖像2」格式(FFmpeg的分路器)和FFmpeg的將直接讀取文件製作視頻
  • 視頻可以通過VideoConverter支持的實時流轉換實時製作。在這種情況下,應將「rawvideo」指定爲輸入格式,並且C#應用程序應將RAW位圖字節(如問題中所述)作爲實時流轉換器的輸入。
0

如果你真的想這樣做你自己(我不推薦),一個相對簡單的方法是將您的RGB圖像轉換爲YCbCr色彩空間和比它寫在YUV4MPEG2格式:https://wiki.multimedia.cx/index.php?title=YUV4MPEG2 這可能是保存爲* .y4m文件,可以打開例如由VLC。

請注意,這將會是「未壓縮」,因此會導致大量文件(如果您選擇使用YCbCr 4:2:2或4:2:0,您會得到一點壓縮,但是遠不及現代諸如H.264的視頻編碼算法將實現)。

爲什麼你不想使用庫?我一直走在這條路上。視頻壓縮甚至理解容器格式(如果您在現場沒有經驗)是一件複雜的事情,正如我已經說過的,我不推薦它。

+0

ups,我剛剛意識到這個問題曾被問過。 – ArgusMagnus 2016-08-12 09:16:03

相關問題