2015-01-13 3 views
0

I успешно установлен ossbuild GStreamer, чтобы наслаждаться Gstreamer для C#.Создать нулевой экземпляр в Gstreamer 0.10

Шаги суммированы следующим образом:

  1. Загрузка GStreamer-WinBuilds-GPL-x86-Beta04-0.10.7.msi и GStreamer-WinBuilds-SDK-GPL-x86-Beta04-0.10 .7.msi от https://code.google.com/p/ossbuild/downloads/list (или вы можете скачать лицензионную пару LGPL, у которой меньше плагинов)
  2. Затем установите прежний, затем последний.
  3. Тогда вы можете найти GStreamer-диез ссылочный .NET файл, GStreamer-sharp.dll, расположенный здесь:

    C: \ Program Files (x86) \ OSSBuild \ GStreamer \ version_variable \ SDK \ привязок \ DotNet \ GStreamer-sharp.dll

  4. Другой клей файл, gstreamersharpglue-0.10.dll, необходимо добавить в проект и установить его скопировать Всегда или скопировать, если Новее сделать GStreamer-диез работы в Windows.

Но когда я попытался запустить образец кода (используя Gst;), у него есть исключение.

var pipeline = new Gst.Pipeline(); 
//always have null instance here 
var elementA = Gst.ElementFactory.Make("videotestsrc"); 
//exceptions happens 
elementA["pattern"] = 18; 

ответ

0
//must have 
Gst.Application.Init(); 
var pipeline = new Gst.Pipeline(); 
//if don't have Gst.Application.Init(), it will always have null instance here 
var elementA = Gst.ElementFactory.Make("videotestsrc"); 
//if no exceptions happens here then everything should be fine 
elementA["pattern"] = 18; 

Gst.Application.Init(); если вызывает ошибку, которая не может найти python26.dll, решается установить python 2.6 и добавить python26.dll внутри проекта также.

Не забудьте инициализировать с помощью Gst.Application.Init();, это стоило мне 2 дня, чтобы решить null экземпляр. Наконец, поскольку GStreamer и его привязки скомпилированы для архитектуры x86, создайте сборку .NET для x86.

Смежные вопросы