Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   [решено] Просмотр MJPEG потока в WinForms (http://forum.oszone.net/showthread.php?t=240290)

Tonny_Bennet 09-08-2012 18:04 1967540

Просмотр MJPEG потока в WinForms
 
Здравствуйте.

Настроил на Linux-машине пакет mjpg_streamer и теперь могу смотреть поток с веб камеры в формате MJPEG через браузер по адресу http://192.168.0.1:300/?action=stream.

Хочется сделать просмотр в приложении. Сначала подумал просто добавить объект web-браузер и прописать адрес потока, но вспомнив, что в окно вставляется нечто похожее на IE решил проверить. В IE при переходе по сслыке браузер начинает сохранять файл размер которого постоянно растёт, скорее всего он сохраняет поток в файл и просто показывать его не умеет.

По ссылке http://192.168.0.1:300/?action=snapshot приложение отдаёт фотографию, которую IE показывает нормально. Можно извратиться и сделать обновление браузера по таймеру, но пусть это будет последний вариант...

Подскажите пожалуйста как наиболее просто можно сделать просмотр потока MJPEG в С#?

Tonny_Bennet 09-08-2012 18:43 1967559

Разобрался.

Вот тут статья. Тут все библиотеки. Ниже пример проверенного кода, который выводит картинку через PictureBox.

Код:

using MjpegProcessor;


namespace solMJPGstream
{
    public partial class Form1 : Form
    {
        MjpegDecoder _mjpeg;

       
        public Form1()
        {
            InitializeComponent();
            _mjpeg = new MjpegDecoder();
            _mjpeg.FrameReady += mjpeg_FrameReady;
            _mjpeg.ParseStream(new Uri("http://192.168.0.1:300/?action=stream"));
        }

        void mjpeg_FrameReady(object sender, FrameReadyEventArgs e)
        {
            pictBox.Image = e.Bitmap;
        }
    }
}


nikast 05-03-2014 12:03 2319386

Да, все здорово..
но когда я пытаюсь вывести изображение с трех камер, НЕ работает. Две ок, три и больше не работают.. что делать не знаю, похоже что-то с либой mjpegprocessor. Или может кто сталкивался с такой проблемой, буду благодарен за совет.


Время: 19:02.

Время: 19:02.
© OSzone.net 2001-