1
我有接收H264流的字節如下的Java函數:FFMPEG H264字節流以圖像或視頻文件[爪哇]
空隙與BytesReceived(字節[]字節,INT大小)
使用ffmpeg,我如何將這些字節轉碼爲某種形式的圖像格式?我會很高興與mp4,jpeg等。我已經看過很多使用文件和ffmpeg的例子,但我不知道如何使用它提供的命令行操作來處理字節流。
謝謝。
我有接收H264流的字節如下的Java函數:FFMPEG H264字節流以圖像或視頻文件[爪哇]
空隙與BytesReceived(字節[]字節,INT大小)
使用ffmpeg,我如何將這些字節轉碼爲某種形式的圖像格式?我會很高興與mp4,jpeg等。我已經看過很多使用文件和ffmpeg的例子,但我不知道如何使用它提供的命令行操作來處理字節流。
謝謝。
由於您的傳入數據已經被壓縮(H.264)並且您可以使用MP4查找。我會使用https://github.com/sannies/mp4parser來將您傳入的H.264流以純Java包裝到MP4文件中。
您可以將此流傳輸到ffmpeg:'ffmpeg -f h264 -i - -c copy file.mp4' – Mulvya
@Mulvya 您的意思是建議可以通過命令行傳遞一個字節流嗎?這個方法的實現是什麼樣的?我熟悉Java進程/運行時執行,但是我必須以某種方式將這些字節重定向到標準輸入以便不斷轉碼?字節數組不會代表整個視頻,只是當前部分:我正在從一個圖像源(相機)流式傳輸這些數據。 – Mitchell
ffmpeg可以接收標準輸入的比特流,所以這就是你必須重定向它的地方。不熟悉Java,所以不能幫助你。如果你在中途開始這個過程,一些初始幀將不會被轉碼,因爲它們可能會丟失它們的參考幀。 – Mulvya