2013-01-11 16 views
2

我們的客戶端發送請求從服務器下載電影文件。當服務器收到請求時,它將啓動一個ffmpeg進程來轉換電影。 ffmpeg的輸出被臨時保存到硬盤。我們不想讓客戶端在轉碼完成後等待下載文件,因此我們會發送輸出數據作爲其生成的。轉碼完成後ffmpeg是否重寫了標題?

問題是ffmpeg似乎在完成轉碼後重寫了輸出文件頭,因此下載的文件(在客戶端)沒有正確的文件頭,並且播放器無法播放它。

我的問題是,有什麼辦法可以讓ffmpeg不重寫頭文件?這應該是什麼解決方案?

編輯:該命令是轉碼到H264/AAC在MP4容器

+0

什麼是輸出文件格式? flv,mp4? – rajneesh

+0

我更新了我的問題。 – jAckOdE

+0

你的ffmpeg命令是什麼? – rajneesh

回答

1

ffmpeg追溯到文件和更新結構的開始,表明僅當正在完成的文件中提供有效的大小。

爲了能夠流式傳輸「live」,您應該考慮使用其他方法(如使用RTSP協議)傳遞有效載荷視頻/音頻。不完整的MP4文件直到完整完成才能播放。

+0

我並非試圖製作直播視頻流,而是希望讓用戶在轉碼時下載電影。 – jAckOdE

+0

看起來我必須在ffmpeg完成轉碼後重新下載電影文件標題。有沒有辦法讓ffmpeg在文件末尾寫入頭文件? – jAckOdE

相關問題