Получить изображение с IP камеры

297
24 августа 2017, 18:37

Доброго времени суток. Подскажите, есть ли быстрый способ получения изображения с IP камеры? Я пробовал три варианта, но все потерпели неудачу. Первый вариант - это HTTP-запрос:

HttpWebRequest req = (HttpWebRequest)WebRequest.Create("IpCamera");
WebResponse resp = req.GetResponse();
Stream stream = resp.GetResponseStream();
Bitmap bmp = (Bitmap)Bitmap.FromStream(stream);

Вариант очень медленный, даже если выставить Proxy = null, как пишут на просторах интернета, все равно работает медленно. Вариант второй:

WebClient client = new WebClient();
Stream stream = client.OpenRead(IpCamera);
Bitmap bitmap;  bitmap = new Bitmap(stream);

тоже самое как и в первом варианте - скорость оставляет желать лучшего. Ну, и третий вариант:

BitmapImage _image = new BitmapImage();
_image.BeginInit();
_image.CacheOption = BitmapCacheOption.None;
_image.UriCachePolicy = new RequestCachePolicy(RequestCacheLevel.BypassCache);
_image.CacheOption = BitmapCacheOption.OnLoad;
_image.CreateOptions = BitmapCreateOptions.IgnoreImageCache;
_image.UriSource = new Uri("IpCamera", UriKind.RelativeOrAbsolute);
_image.DecodePixelHeight = 800;
_image.DecodePixelWidth = 1280;
_image.EndInit();

но в отдельном потоке этот способ не работает, если его вызывать по клику Button, то все работает. Пожалуйста, подскажите как исправить или как найти быстрый способ получения данных с IP камеры?

READ ALSO
Как получить объект при нажатии на него

Как получить объект при нажатии на него

Есть функции нажатия на textBox'ы:

294
Включить GIF во время выполнения кода WinForms C#

Включить GIF во время выполнения кода WinForms C#

Уверен, что ответ прост, но все жеЕсть код:

263
Phantomjs медленно работает на windows 7

Phantomjs медленно работает на windows 7

Проблема следующая, использую phantomjs для выполнение рутинных задач для сайта https://teasernetcom/, код написан на c#

223