2016-11-29 39 views
-1

我正在尋找一種方法來檢索從Java中的視頻的特定幀。例如,get frame #198 from movie.mp4。只要該解決方案適用於常見的視頻文件類型,我並不需要它是MP4專用的。我已經看到了這個庫,如Xuggle和JCodec,但由於他們年紀大了也有與支持問題; JCodec JAR甚至不包含存儲幀所需的類之一。 JCodec沒有,沒有JAR的變形例中,支撐抓住從文件中的單個幀。其他庫需要循環才能到達特定的框架。我想只是有一個方法調用,將返回一個特定的框架。如何從視頻獲取特定的幀中的Java

+0

@Berger爲這一問題的解決方案使用的是過時的涉及代碼和其他問題的答案不會檢索特定幀 – SVN600

回答

0

的OpenCV會做這個使用「OpenCVFrameGrabber」類允許。

其記錄在這裏:http://bytedeco.org/javacv/apidocs/org/bytedeco/javacv/OpenCVFrameGrabber.html

您可以通過文件迭代,或者如果你想避免這種情況,你表示,你可以設置其捕獲應該出現在使用的「setFrameNumber」的方法框架班上。

有一點要注意 - 據說OpenCV的名氣數量設置將只是到最近的I幀如果視頻編碼這種方式。我還沒有測試過,所以無法確認,但解決此問題的一種方法是在所需幀之前尋找位置,然後迭代最後幾幀以獲取所需位置,然後使用圖像採集卡。

+0

OpenCV的......得到一個框架JCodec例子... OK – gpasch