トランスコードせずに、大きなファイルから1分間のクリップをスプライスできますか?

StackOverflow https://stackoverflow.com/questions/1641135

質問

さまざまな形式(avi、mp4、mkv、flv)で大きなビデオファイルをアップロードできるサイトがあります。 1分間の「サンプル」を生成する必要があります。アップロードされた大きなファイルから取得します。サンプルは同じ形式である必要があり、元のファイルと同じフレームサイズとビットレートを持っています。ファイルのセクションを新しいファイルに単純に切り取る方法はありますか?できればffmpeg(またはffmpegが不可能な場合は他のツール)で。

役に立ちましたか?

解決

最初に、ビデオファイルが実際にどのように機能するかを理解する必要があります。これを説明する一連のチュートリアルを次に示します。過度にインターネットビデオの簡単なガイド

その後、サンプルの切り出しに役立つさまざまなツールを試すことができます。 1つはflvtool(入力がFLVの場合)または FFmpeg です。 FFmpegを使用すると、開始時間と終了時間を指定できます。要求されたものだけをカットしようとします(ただし、スライスを開始するために最も近いキーフレームを見つける必要があります)。

これは、input.flvというファイルを読み取り、15秒間ビデオを開始し、次の60秒間をカットするFFmpegコマンドです。出力ファイル:

ffmpeg -i input.flv -ss 15 -t 60 -acodec copy -vcodec copy output.flv

最後に、CまたはC ++(FFmpegのlibavライブラリを使用)またはJava()を使用してプログラムでこれを実行しますが、ユースケースではかなり高度です。

他のヒント

私と同じように自動とビデオの同期を維持できない場合は、次の方法が役立つ場合があります(別のWebサイトにあります):

ffmpeg -sameq -i file.flv -ss 00:01:00 -t 00:00:30 -ac 2 -r 25 -copyts output.flv

次のオプションは、 -fs スイッチを使用することです。例:

ff -i ip.mkv -fs 500M -c copy ~/Movies/reservoir/carbohydrates.mkv

選択したソースから500メガバイト(500× 1000× 1000バイト+‘多重化オーバーヘッド’)を抽出します。 –わかるように、ファイルサイズに基づいて

1つの愛。そして尊敬。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top