我使用VLC作为rtsp服务器在Android MediaPlayer上实现了RTSP,代码如下:
# vlc -vvv /home/marco/Videos/pippo.mp4 --sout
#rtp{dst=192.168.100.246,port=6024-6025,sdp=rtsp://192.168.100.243:8080/test.sdp}
Run Code Online (Sandbox Code Playgroud)
并在Android项目上:
Uri videoUri = Uri.parse("rtsp://192.168.100.242:8080/test.sdp");
videoView.setVideoURI(videoUri);
videoView.start();
Run Code Online (Sandbox Code Playgroud)
这工作正常,但如果我也想播放实时流RTP,所以我将sdp文件复制到sdcard(/mnt/sdcard/test.sdp)并设置vlc:
# vlc -vvv /home/marco/Videos/pippo.mp4 --sout
#rtp{dst=192.168.100.249,port=6024-6025}
Run Code Online (Sandbox Code Playgroud)
我尝试播放流RTP设置本地sdp文件的路径:
Uri videoUri = Uri.parse("/mnt/sdcard/test.sdp");
videoView.setVideoURI(videoUri);
videoView.start();
Run Code Online (Sandbox Code Playgroud)
但是我收到了一个错误:
D/MediaPlayer( 9616): Couldn't open file on client side, trying server side
W/MediaPlayer( 9616): info/warning (1, 26)
I/MediaPlayer( 9616): Info (1,26)
E/PlayerDriver( 76): Command PLAYER_INIT completed with an error or info PVMFFailure
E/MediaPlayer( 9616): error (1, -1)
E/MediaPlayer( 9616): Error (1,-1)
D/VideoView( 9616): Error: 1,-1
Run Code Online (Sandbox Code Playgroud)
有谁知道问题出在哪里?我错了或者无法在MediaPlayer上播放RTP?干杯乔治