首页 > 解决方案 > 在 .NET Core Angular 中使用 IP 摄像头广播流

问题描述

我正在尝试使用网页内的 IP 摄像头广播流。我想从后端的摄像头获取流,通过 api 发送。所以它看起来像是一个RTSP 到 HTTP 的转换

我阅读了数十个主题,其中提到最多的解决方案是FFMPEG

所以与这个主题和不同的 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;
        }

我会处理任何建议,帮助,相关主题,在此先感谢。

标签: c#.net-coreffmpeg

解决方案


推荐阅读