C# 在.NET内核中使用IP摄像头广播流

C# 在.NET内核中使用IP摄像头广播流,c#,.net-core,ffmpeg,C#,.net Core,Ffmpeg,我试图在网页内使用IP摄像头广播流。我想从后端的摄像头获取流,通过api发送。所以它看起来像是一个从RTSP到HTTP的转换 我读了几十篇文章,其中提到最多的是FFMPEG 因此,与一个不同的ffmpeg命令相关,我一直在思考如何将RTSP转换为HTTP,也许我应该将ffmpeg内容转换为字节 以下是我获取相机流的服务方法: public async Task<bool> GetStreamFromCamera(int cameraID) {

我试图在网页内使用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;
        }
公共异步任务GetStreamFromCamera(int-cameraID)
{
Camera Camera=wait_context.camers.FirstOrDefaultAsync(m=>m.Id==cameraID);
var进程=新进程()
{
StartInfo=新流程StartInfo()
{
FileName=“ffmpeg”,
参数=String.Format(“-irtsp://whatever -f mpeg1video-b 800k-r30 http://{ip},camera.ip),
UseShellExecute=false,
CreateNoWindow=true,
重定向标准输出=真,
重定向标准错误=true
},
EnableRaisingEvents=true
};
process.ErrorDataReceived+=(发送方,数据)=>Console.WriteLine(data.data);
process.Start();
process.BeginErrorReadLine();
返回true;
}
我会考虑任何建议,帮助,相关话题,提前感谢