2

クライアントは、サーバーから映画ファイルをダウンロードするリクエストを送信します。サーバーがリクエストを受け取ると、ffmpeg プロセスを開始してムービーをトランスコードします。ffmpeg の出力は一時的にハードディスクに保存されます。トランスコードが完了した後、クライアントがファイルのダウンロードを待機するようにしたくないため、出力データを生成されたまま送信します。

問題は、トランスコードの終了後に ffmpeg が出力ファイル ヘッダーを書き換えるように見えるため、(クライアント側で) ダウンロードされたファイルに正しいファイル ヘッダーがなく、プレーヤーで再生できないことです。

私の質問は、ffmpeg がヘッダーを書き換えないようにする方法があるということです。これに対する解決策は何ですか?

編集: コマンドは、mp4 コンテナーで H264/AAC にトランスコードすることです。

4

1 に答える 1

1

はいffmpegは、ファイルの先頭に戻り、構造を更新して、ファイルが完成したときにのみ使用できる有効なサイズを示します。

「ライブ」でストリーミングできるようにするには、RTSP プロトコルを使用するなど、別の方法を使用してペイロードのビデオ/オーディオを渡すことを検討する必要があります。不完全な MP4 ファイルは、完全に完成するまで再生できません。

于 2013-01-11T08:26:01.210 に答える