Я пытаюсь транслировать поток с помощью IP-камеры внутри веб-страницы. Я хочу получить поток с камеры в своем бэкэнде, чтобы отправить его через API. Таким образом, это похоже на преобразование RTSP в HTTP .
Я прочитал десятки топи c, и наиболее упоминаемое решение - FFMPEG .
Так что по поводу этой топи c и другой команды ffmpeg я застрял на как преобразовать RTSP в HTTP , может мне стоит преобразовать содержимое ffmpeg в байты?
Вот мой сервисный метод для получения потока с камеры:
public async Task<bool> GetStreamFromCamera(int cameraID)
{
Camera camera = await _context.Cameras.FirstOrDefaultAsync(m => m.Id == cameraID);
var process = new Process()
{
StartInfo = new ProcessStartInfo()
{
FileName = "ffmpeg",
Arguments = String.Format("-i rtsp://whatever -f mpeg1video -b 800k -r 30 http://{ip}", camera.IP),
UseShellExecute = false,
CreateNoWindow = true,
RedirectStandardOutput = true,
RedirectStandardError = true
},
EnableRaisingEvents = true
};
process.ErrorDataReceived += (sender, data) => Console.WriteLine(data.Data);
process.Start();
process.BeginErrorReadLine();
return true;
}
Я забочусь о любых предложениях, помощи, связанных темах, заранее спасибо.