2013-12-18 63 views
-3

我在HDFS上有大小爲50MB(1000個文件)的視頻文件。我想利用並需要處理視頻作爲hadoop map reduce任務。不過,我知道只有結構化的數據來處理像文本文件等我不知道如何處理視頻文件。 我想在集羣上讀取映射器中的所有視頻文件,然後將該視頻轉換爲Image.Here我必須在Image上應用一些圖形,並且我將在視頻中將此轉換爲HDFS上的最終輸出。我正在使用Xuggler在hadoop羣集上進行視頻圖像和圖像到視頻的轉換。如何將InputStream轉換爲視頻文件(avi)

請問一些人可以建議我應該使用什麼樣的工作來達到這個目的?

+0

看來你有HTTP鏈接,例如視頻http://..../test.avi所以你可以打開流,並在本地文件中創建一個文件,並在本地文件中保存文件並保存文件.avi – Saurav

+0

該文件位於亞馬遜上的HDFS上 –

回答

1

如果輸入流是AVI文件的內容,您可以簡單地將輸入流保存到文件中。那就是你的AVI。你可以寫沿着這些線路代碼(使用從JDK7汽車closables和IOUtils從阿帕奇百科全書):

void save(InputStream in, String fname) throws IOException { 
    try (FileOutputStream out = new FileOutputStream(new File(fname))) { 
     IOUtils.copy(in, out); 
    } 
} 
+0

whats IOUtils?我找不到這個。 –

+0

正如我所說的「來自Apache Commons的IOUtils」:'org.apache.commons.io.IOUtils' – spa

+0

或者拿出你自己的版本。如果你看一下源代碼,這並不複雜。 – spa

相關問題