我的任务是在android中创建一个android应用程序来检查城市的一些IP摄像机。使用现有的 RTSP 网址,即 rtsp://admin:pms7112@xxx.xx.xx.xxx:554/cam/realmonitor?channel=1&subtype=0 我可以在 VLC 播放器中获取流,但在 Android 中却没有运气。我尝试过 videoview native 播放器和媒体播放器
。
几乎每个解决方案都给了我
MediaPlayer: setDataSource IOException happend : java.io.FileNotFoundException: No content provider: rtsp://...
这个问题是否会因为用户名和密码位于字符串
中而发生?如何将用户名和密码添加为查询字符串
?
编辑
媒体播放器版本
MediaPlayer mediaPlayer = new MediaPlayer();
try
{
mediaPlayer.setDataSource("rtsp://admin:pms7112@iphere:554/cam/realmonitor?channel=1&subtype=0");
mediaPlayer.prepare();
mediaPlayer.start();
}
catch (IOException ex)
{
ex.printStackTrace();
}
更新:
所以...看来这是我可以使用该网址的唯一方法...我无法以其他方式验证用户身份。拥有相机并为城市设置的公司不允许我们使用其他格式。他们说,vlc 浏览器插件运行得很好,他们不会改变任何东西......那么有没有任何库可以实现带有身份验证的 rtsp 流。我听说客户端和服务器之间进行握手
最佳答案
我刚刚找到this使用vlc库打开rtsp流的github项目。这解决了我的问题解决了我的问题
关于java - Android 中的 RTSP 流,带有用户名和密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42573257/