Remote-Access

如何通過ffmpeg將轉換後的文件保存到另一個系統

  • July 2, 2018

我想通過 ffmpeg 在本地網路中開發線上轉換器服務。

該服務接收文件的地址以轉換並輸出地址以將轉換後的文件發送給它。

ffmpeg 可以在本地網路的另一個系統中保存輸出文件嗎?

或者我必須先保存輸出文件然後移動到另一個系統?

文件系統掛載選項:

  1. NFS 在 UNIX/Linux 世界中更正常
  2. SMB 在 Windows 世界中更為正常。

目前尚不清楚您所處的環境。其中任何一個都沒有具體的ffmpeg內容。

SSH

如果您在 UNIX/Linux 世界或在 Windows 下模擬 Linux,另一個選擇是流式傳輸ssh. -如果您指定為輸出文件,大多數命令會將其輸出發送到 STDOUT 。因此,您可以執行以下操作:

ffmpeg <your options> - | ssh user@remote 'cat > /tmp/ffmpeg.out'

tar(我經常使用這種技術作為輸入。) ffmpeg 文件說最後一個參數是輸出文件,所以儘管很奇怪,你應該把-帶有空格的(破折號)作為最後一個參數ffmpeg,在指定了所有其他選項之後。

表現

將輸出寫入遠端系統可能會導致原始系統上的處理速度變慢,因為由於 IO 速度較慢,緩衝區填滿得更快。如果所有緩衝區都填滿,則該ffmpeg程序將不得不等到它可以處理更多緩衝區。如果您可以並行執行更多程序,它可能會有所幫助,但遲早您可能會使網路連接飽和,而更多程序/CPU 將無濟於事。

引用自:https://serverfault.com/questions/918414