Eranga Dayarathne Ответов: 1

Как начать захват аудио и видео /слияние аудио и видео с помощью aforge ffmpeg в C#


Я создал метод захвата аудио и видео и сохранил два файла в своем местоположении, после чего эти два файла слились в один файл формата avi.в конечном выходном файле сначала запускается аудио, а видео берет задержку. как это исправить. Я использовал ffmpeg.exe для слияния.


существует ли много систем для захвата аудио и видео в одно время без отдельного захвата в приложении c#?

Что я уже пробовал:

вот метод слияния.

private void mergefile(string wavefilepath, string videofilepath)
        {
            string Path_FFMPEG = Application.StartupPath + "\\ffmpeg.exe";
            string Wavefile = wavefilepath;
            string video1 = videofilepath;
            //string file = @"D:\Developments\video\text.txt";
            string strResult = @"C:\Users\aa\Desktop\video\Test1output.avi";

            System.Diagnostics.Process proc = new System.Diagnostics.Process();

            try
            {
                //ffmpeg -i clip.mp4 -itsoffset 0.150 -i clip.mp4 -vcodec copy -acodec copy -map 0:0 -map 1:1 output.mp4
               // proc.StartInfo.Arguments = string.Format("-i {0} -itsoffset 0.000 -i {1} -vcodec copy -acodec copy -map 0:0 -map 1:0 {2}", video1, Wavefile, strResult);
                proc.StartInfo.Arguments = string.Format("-i {0} -i {1} -acodec copy -vcodec copy {2}", Wavefile, video1, strResult);
                proc.StartInfo.UseShellExecute = false;
                proc.StartInfo.CreateNoWindow = false;
                proc.StartInfo.RedirectStandardOutput = true;
                proc.StartInfo.RedirectStandardError = true;
                proc.StartInfo.FileName = Path_FFMPEG;
                proc.Start();

                string StdOutVideo = proc.StandardOutput.ReadToEnd();
                string StdErrVideo = proc.StandardError.ReadToEnd();
            }
            catch { }
            finally
            {
                proc.WaitForExit();
                proc.Close();
            }
            
        }

Sergey Alexandrovich Kryukov

Извините, ваш вопрос неясен. Есть ли у вас какие-либо проблемы с вашим кодом? Другие вопросы?
—СА

rashmirashmijoshi61@gmail.com

Можете ли вы поделиться кодом для аудиозаписи? Я создал видеозапись с помощью библиотек aforge, но не уверен, что можно записать и аудио с помощью той же библиотеки. Пожалуйста, укажите некоторые направления для достижения этой цели. заранее спасибо.

1 Ответов

Рейтинг:
2

Ahmad_Mustafa

использовать это

proc.StartInfo.Arguments = string.Format("-i {0} -i {1} -acodec copy -vcodec copy -map 0:0 -map 0:1 {2}", Wavefile, video1, strResult);