如何使用monodevelop/xamarin构建gstreamer sharp?

如何使用monodevelop/xamarin构建gstreamer sharp?,mono,xamarin,monodevelop,gstreamer,gtk#,Mono,Xamarin,Monodevelop,Gstreamer,Gtk#,我是AudioCuesheetEditor的开发者,这是一个用于编辑音频提示表的应用程序。新版本应该能够播放声音,所以我想使用gstreamer作为后端。我在gstreamer中进行了一些研究,发现我需要使用版本1.x和gstreamer sharp 0.99.x绑定。没问题,下载了gstreamer sharp 0.99.0,用monodevelop(在linux上)或xamarin(在windows上)打开了解决方案,并尝试构建dll,但没有成功。我没有找到错误“namespace Gst.

我是AudioCuesheetEditor的开发者,这是一个用于编辑音频提示表的应用程序。新版本应该能够播放声音,所以我想使用gstreamer作为后端。我在gstreamer中进行了一些研究,发现我需要使用版本1.x和gstreamer sharp 0.99.x绑定。没问题,下载了gstreamer sharp 0.99.0,用monodevelop(在linux上)或xamarin(在windows上)打开了解决方案,并尝试构建dll,但没有成功。我没有找到错误“namespace Gst.GLib”

我正在使用xamarin/monodevelop进行开发,需要一个便携式应用程序(使用mono/.net)

有人能帮我把gstreamer的身材修好吗


提前谢谢

gstreamer sharp的构建系统使用autotools,您无法使用IDE构建它。请跳自动工具舞:

./autogen.sh --prefix=/the/prefix/where/you/want/to/install
make
sudo make install

gstreamer sharp目前在Windows上不受支持,但是您可以在linux上编译托管部件,并使用Visual Studio在Windows上编译胶水:

  • 从上安装gtk sharp 3.0
  • 使用./autogen.sh&&make编译gstreamer sharp
  • 从sources/glue获取编译的glib-sharp和gstreamer-sharp二进制文件以及所有.c文件/
  • 从下载并安装gstreamer二进制文件,并为要编译的体系结构安装开发和二进制软件包。您可以使用gstreamer 1.0或1.2
  • 使用gstreamer-devel包中的Visual Studio模板,并将项目类型更改为库。添加从sources/glue文件夹中获取的c文件,并编译glue库。该库应称为libgstreamersharpglue-1.0.0.dll
  • 将托管部件与本机符号放在一起
  • 编辑:
    在Windows上编译胶水现在更容易了!有人建立了一个可以在Windows上使用Visual Studio编译胶水的项目。我有一个fork,它在

    上有二进制文件,谢谢你的帮助,但我需要使用IDE进行打包等。当IDE不受支持时,为什么会有解决方案?你仍然可以在应用程序中使用IDE,但要获得gstreamer sharp的二进制文件,你需要使用autotools。如果您不喜欢这种情况,那么我们欢迎您的帮助,我们接受修补程序(我本人是gstreamer sharp的开发人员)gstreamer sharp尚未与windows兼容,我们也需要帮助(如果您缺乏帮助我们的专业知识,您可以随时雇用我们作为承包商)。谢谢,我猜你的意思是v0.10,而不是v0.9,它是映射到gstreamer0.10的版本。女妖最新的windows二进制文件仅使用gstreamer-sharp0.10。我们还没有发布一个与gstreamer-sharp0.99.0一起使用的版本,它只是主分支中的默认后端。我们计算出,当我们发布Banshee 3.0时,Banshee与GStreamerSharp1.0将具有Windows兼容性,但我们不知道何时会实现。同样,欢迎志愿者。windows支持gstreamer,但我们还没有对gstreamer sharp yetI提供windows支持。我不确定什么是后期绑定,但手动绑定gstreamer比为windows编译要复杂得多。托管部件将在windows上完美工作,它只是胶水,而不是独立于平台的。在windows上编译glue只是建立一个小型VC++项目。如果你对二进制文件感兴趣,你甚至可以继续从中获取二进制文件,你可以在x64和x86文件夹中找到所有内容。你甚至可以从中获取gstreamer-sharp.dll,基本上,git存储库拥有运行基本设置所需的一切。我认为本机依赖项是1.0.11请检查,我不确定AccessViolationException是什么导致的,我唯一能建议的是下载Vocaluxe,编译它并检查是否也遇到AccessViolationException。