Android(Xamarin)流来自IP Cam的视频来自rtsp://

问题描述 投票:1回答:2

更新:我通过使用vlc-sdk for android解决了它。

所以我面临这个问题,我有一个URL,提供来自IP摄像头的流。

就像这样

RTSP://192.168.x.xxx:8554 / BWC

注意:没有像.mp4或.mov那样的扩展名

我在我的计算机上的VLC播放器和Android应用程序“rtsp player”中尝试了URL,两者都有效。他们都向我展示了凸轮的流。

现在我需要编写一个应用程序,它还显示来自凸轮的流,我必须用Xamarin编写它。

我有以下代码:

[Activity(Label = "StreamActivity", ScreenOrientation = ScreenOrientation.Portrait, HardwareAccelerated = true, Theme = "@style/Theme.AppCompat.Light.NoActionBar")]
public class StreamActivity : AppCompatActivity
{
    String urlPrefix = "rtsp://";
    String urlSuffix = ":8554/BWC";

    VideoView streamView { get; set; }       

    protected override void OnCreate(Bundle savedInstanceState)
    {
        base.OnCreate(savedInstanceState);
        SetContentView(Resource.Layout.StreamView);

        var ipAddress = Intent.GetStringExtra("ip");
        var url = urlPrefix + ipAddress + urlSuffix;
        var vidUri = Android.Net.Uri.Parse(url);

        streamView = FindViewById<VideoView>(Resource.Id.view_stream);
        streamView.SetMediaController(new MediaController(this));
        streamView.SetVideoURI(vidUri);
        streamView.RequestFocus();
        streamView.Start();
    }
}

在主要活动中,我只需输入IP并点击一个按钮然后StreamActivity即开始,但在我按下按钮后,新活动开始,我收到一条错误消息:

无法播放此视频

在LogCat中,我得到以下警告和错误:

11-11 18:14:56.594:W / MediaPlayer(18879):无法打开rtsp://192.168.4.103:8554 / BWC:java.io.FileNotFoundException:无内容提供者:rtsp://192.168.4.103: 8554 / BWC

11-11 18:15:h.688:E / Media Player(18879):airror(100,0)

任何帮助,将不胜感激!

c# android xamarin video-streaming rtsp
2个回答
0
投票

有一个名为Surge的解决方案可能有所帮助 - https://instil.co/surge/


0
投票

您可以尝试在前缀和IP之间添加用户名和密码

var url = urlPrefix + username + ":" + password + "@" + ipAddress + urlSuffix;
© www.soinside.com 2019 - 2024. All rights reserved.