Xamarin Android 中 Xuggle-Xuggler / FFmpeg 的替代品?
Alternative for Xuggle-Xuggler / FFmpeg in Xamarin Android?
几天来,我一直在努力寻找一个可以解码 Parrot AR Drone 2.0 视频流的工作库。问题实际上是 FFmpeg 在 Xamarin Android 中不起作用,而 Xuggle-Xuggler 仅适用于 Java,这使得它变得非常困难。
此外,我尝试使用 FFmpeg,但每次我都会遇到这样的错误: DllImport error loading lbavcodec-55': 'dlopen failed: libavcodec-55" not found'.
我已经看到了很多可能的解决方案,但没有任何效果。我也尝试编译一些包含FFmpeg源代码的.dll文件,但不幸的是和以前一样的错误。
我只想创建一个到“192.168.1.1:5555”的 TCP 视频流。之后我想使用一个可能的解码 class/library,它可以将字节解码为帧或类似的东西,并使用 VideoView
将其放在视图上,因此帧将显示在智能手机上。
有人有这方面的经验吗?或者有人知道用于解码无人机 TCP 视频流的工作库吗?
谢谢。
好消息,因为我刚刚解决了这个问题。
可以使用 FFMpeg,但您需要针对您的平台专门编译它。实际上这在 Windows 中比在 Ununtu/Linux 中要难一点。但是,我尝试将预编译库实现到 Xamarin Android 中,但出现 DllImport error loading lbavcodec-55': 'dlopen failed: libavcodec-55" not found'
之类的错误,因此无法正常工作。 Xuggle-Xuggler 也是一个视频解码器,但专为 Java 而制作,我在 Xamarin Android 中工作,所以我必须找到其他东西。
几个星期后,我看到了一个使用 OpenCV 的项目。这可以解码无人机的视频流。但是,有一个人:https://github.com/AJRdev/ARDrone-Android-GEII 以两种不同的方式制作了视频流。即通过 OpenCV 和一个名为 "Vitamio".
的库
我所做的是尝试使用 Xamarin Android 支持的 Vitamio 库。因为有这个 Xamarin Android 版本已知 https://components.xamarin.com/gettingstarted/vitamiobinding, but that's an old version, so I decided to use the Vitamio library which can be found here: https://github.com/shaxxx/Xamarin.Vitamio。我正在使用这个库,因为它使用的是 .AAR,它包含与我之前谈到的项目中的 Vitamio 库相同的文件,最重要的是,没有出现错误:)
不幸的是,互联网上没有关于使用 Xamarin 的 Parrot AR Drone 2.0 的信息Android。所以,如果有人有这个问题,那么你可以使用名为 "Freeflight 2.4" 的官方应用程序的源代码,因为那个是专门为 Android 制作的。但是Freeflight 2.4 app中有很多代码需要花很多时间来获取视频流部分,但是我没有时间,所以我选择了一个更简单的方法,就像我之前解释的那样。
实施后,您应该可以在智能手机上看到视频!
祝你好运!
几天来,我一直在努力寻找一个可以解码 Parrot AR Drone 2.0 视频流的工作库。问题实际上是 FFmpeg 在 Xamarin Android 中不起作用,而 Xuggle-Xuggler 仅适用于 Java,这使得它变得非常困难。
此外,我尝试使用 FFmpeg,但每次我都会遇到这样的错误: DllImport error loading lbavcodec-55': 'dlopen failed: libavcodec-55" not found'.
我已经看到了很多可能的解决方案,但没有任何效果。我也尝试编译一些包含FFmpeg源代码的.dll文件,但不幸的是和以前一样的错误。
我只想创建一个到“192.168.1.1:5555”的 TCP 视频流。之后我想使用一个可能的解码 class/library,它可以将字节解码为帧或类似的东西,并使用 VideoView
将其放在视图上,因此帧将显示在智能手机上。
有人有这方面的经验吗?或者有人知道用于解码无人机 TCP 视频流的工作库吗?
谢谢。
好消息,因为我刚刚解决了这个问题。
可以使用 FFMpeg,但您需要针对您的平台专门编译它。实际上这在 Windows 中比在 Ununtu/Linux 中要难一点。但是,我尝试将预编译库实现到 Xamarin Android 中,但出现 DllImport error loading lbavcodec-55': 'dlopen failed: libavcodec-55" not found'
之类的错误,因此无法正常工作。 Xuggle-Xuggler 也是一个视频解码器,但专为 Java 而制作,我在 Xamarin Android 中工作,所以我必须找到其他东西。
几个星期后,我看到了一个使用 OpenCV 的项目。这可以解码无人机的视频流。但是,有一个人:https://github.com/AJRdev/ARDrone-Android-GEII 以两种不同的方式制作了视频流。即通过 OpenCV 和一个名为 "Vitamio".
的库我所做的是尝试使用 Xamarin Android 支持的 Vitamio 库。因为有这个 Xamarin Android 版本已知 https://components.xamarin.com/gettingstarted/vitamiobinding, but that's an old version, so I decided to use the Vitamio library which can be found here: https://github.com/shaxxx/Xamarin.Vitamio。我正在使用这个库,因为它使用的是 .AAR,它包含与我之前谈到的项目中的 Vitamio 库相同的文件,最重要的是,没有出现错误:)
不幸的是,互联网上没有关于使用 Xamarin 的 Parrot AR Drone 2.0 的信息Android。所以,如果有人有这个问题,那么你可以使用名为 "Freeflight 2.4" 的官方应用程序的源代码,因为那个是专门为 Android 制作的。但是Freeflight 2.4 app中有很多代码需要花很多时间来获取视频流部分,但是我没有时间,所以我选择了一个更简单的方法,就像我之前解释的那样。
实施后,您应该可以在智能手机上看到视频!
祝你好运!