string strParam;
string Path_FFMPEG = @"C:\Windows\system32\cmd.exe";
string WorkingDirectory = @"C:\Users\Braintech\documents\visual studio 2013\Projects\convertVideo\convertVideo";
string command1 = "ffmpeg -i video1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate1.ts";
string command2 = "ffmpeg -i video2.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate1.ts";
string command3 = "ffmpeg -i" + "concat:intermediate1.ts|intermediate2.ts" + " -c copy -bsf:a aac_adtstoasc Output.mp4";
string Command = @"" + command1 + " & " + command2 + " & " + command3 + " ";
strParam = "ffmpeg -f concat -i " + file + " -c copy " + strResult;
process(Path_FFMPEG, Command, WorkingDirectory);
public static void process(string Path_FFMPEG, string Command, string WorkingDirectory)
{
try
{
Process ffmpeg = new Process();
ProcessStartInfo ffmpeg_StartInfo = new ProcessStartInfo(Path_FFMPEG, Command);
ffmpeg_StartInfo.WorkingDirectory = WorkingDirectory;
ffmpeg_StartInfo.UseShellExecute = false;
ffmpeg_StartInfo.RedirectStandardError = true;
ffmpeg_StartInfo.RedirectStandardOutput = true;
ffmpeg.StartInfo = ffmpeg_StartInfo;
ffmpeg_StartInfo.CreateNoWindow = true;
ffmpeg.EnableRaisingEvents = true;
ffmpeg.Start();
ffmpeg.WaitForExit(30000);
ffmpeg.Close();
ffmpeg.Dispose();
ffmpeg = null;
}
catch (Exception ex)
{
}
}
私はffmpegを使って2つのビデオをマージしようとしています。しかし、手動では動作していますが、c#code.itを使用して実行することはできません。コマンドを手動で実行すると動作します。しかし、私はC#を使用して実行しようとしているときに動作しません。誰かを助けてください。 ありがとうございます。ffmpegを使用して2つの動画を連結します。
を参照してください。だから私は、バイト配列を送信したいと思うapiとクライアント側のビデオと再生を変換します。 –
@SunilKumarビデオをバイト配列にロードするのはひどい考えであり、決してうまくいきません。大容量ファイルの処理方法ではありません。だから、ストリーミングAPI(FileResultはここで何をするかを知っている)か、複数の小さなリクエスト(恐ろしい)が必要です。 –
ファイルの結果は、APIコントローラ –