[英]Play H264 Video/Audio Stream (from existing RTP session) on Xamarin Android device (4.4+)
我现在正在Xamarin上为Android开发一个应用程序,更改IOS。 我已经作为客户端成功启动了SIP会话并获得了SDP。
通过会话描述,我似乎也成功启动了RTPClient(我正在使用托管媒体聚合( https://net7mma.codeplex.com/ ))。
我得到一个以Media Port结尾的URI。
我尝试了不同的方法来播放该流:
Android.Widget.VideoView:
videoview.SetVideoURI(Android.Net.Uri.Parse(fullPath));
videoview.Start();
在弹出式窗口中说“无法播放视频”或类似的内容,在我看来是德语。
所以我尝试了一个Android.Media.MediaPlayer:
player.Reset();
player.SetDataSource(fullPath);
player.Prepare();
遇到一个异常,
player.PrepareAsync();
似乎无处可去。
这些应该以某种方式工作,我只是做错了吗?
还是我必须提供更多信息,例如H.264解码,640x480像素以及我从SDP媒体描述中确切知道的更多内容?
我已经研究了Android中的MediaFormat和MediaCodec类,但仍然不知道如何在我的情况下准确使用它们(带有已知媒体描述的RTP连接)。
非常感谢,周末愉快!
埃里克
您应该将外部组件(例如Google ExoPlayer)用于编码媒体。 有一个可用的Nuget软件包: https : //github.com/martijn00/ExoPlayerXamarin
那是我的项目...(net7mma)例如我是作者...
您可以很容易地使用Rtsp或Rtp客户端,我最近在Android中对此进行了验证。
如果您有特定的问题,请在项目的主页中创建一个线程,我将予以解决。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.