Я пытаюсь отобразить поток RTSP с помощью Gstreamer в своем приложении WPF.
Итак, я сделал так:
- установил GStreamer в папку loal F: / gstreamer
- Создано новое приложение WPF
- Добавлены glib-sharp и gstreamer-sharp в качестве зависимостей.
Код ниже, который я использую для инициализации библиотеки:
Gst.Application.Init(); // (1)
mainLoop = new GLib.MainLoop();
mainGLibThread = new System.Threading.Thread(mainLoop.Run);
mainGLibThread.Start();
Element uriDecodeBin = ElementFactory.Make("playbin", "uriDecodeBin0"); // (2)
Невозможно загрузить DLL 'libgstreamer-1.0-0.dll': указанный модуль не найден.
в строке (1). Если я скопирую все dll gstreamer в папку bin / Debug, исключение исчезнет, но ElementFactory.Make
в строке (2) всегда возвращает null
без каких-либо исключений. Если я пытаюсь сделать что-то вроде
Parse.Launch(@"videotestsrc ! videoconvert ! autovideosink")
для проверки работоспособности библиотеки, я получаю сообщение об ошибке:
no element "videotestsrc"
, но еслиЯ запускаю его из командной строки:
gst-launch-1.0 videotestsrc! видеоконвертер! autovideosink
, который работает как ожидалось.
Итак, мой вопрос - как получить GStreamer-sharp работу?