在C#中从rtsp获取图像

时间:2016-05-09 06:57:28

标签: c# rtsp

我有一台IP摄像头,我有它的rtsp链接。我不想在C#中连续捕获它的图像并将它们存储在特定的文件夹中。我搜索过,但大部分人都是通过http请求完成的,没有人使用过rtsp。是谁通过C#中的rtsp完成的?

1 个答案:

答案 0 :(得分:0)

Nager.VideoStream基于ffmpeg,因此可以轻松地在各个平台上使用。如果您使用NewImageReceived事件,则可以将每个Frame保存到特定的文件夹。

PM> install-package Nager.VideoStream
var inputSource = new StreamInputSource("rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov");
//var inputSource = new WebcamInputSource("Microsoft® LifeCam HD-3000");

var cancellationTokenSource = new CancellationTokenSource();

var client = new VideoStreamClient();
client.NewImageReceived += NewImageReceived;
var task = client.StartFrameReaderAsync(inputSource, OutputImageFormat.Bmp, cancellationTokenSource.Token);
//Console.ReadLine();
client.NewImageReceived -= NewImageReceived;

private static void NewImageReceived(byte[] imageData)
{
    File.WriteAllBytes($@"{DateTime.Now.Ticks}.bmp", imageData);
}