无法在Android MediaPlayer中传输RTSP视频

时间:2016-03-03 20:19:31

标签: android video rtsp live-streaming rtsp-client

我尝试从RTSP服务器流式传输视频。我想在我的应用程序中运行视频。我尝试了三种不同的方法,其中只有一种似乎有效:

  1. 使用VideoView(无效)。
  2. 使用原生播放器(正常)。
  3. 使用MediaPlayer(不起作用)。
  4. 我想在MediaPlayer上显示视频但无法执行此操作。

    以下是代码:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    
    
    
        /* 1. Using VideoView, error: "Cannot play video"
        VideoView vidView = (VideoView) findViewById(R.id.myVideo);
    
        String vidAdress = "rtsp://10.42.0.91:5554/camera";
        Uri vidUri = Uri.parse(vidAdress);
    
        vidView.setVideoURI(vidUri);
    
        vidView.start();
    
        */
    
        //Using native player (implicit intent), works.
        String mediaURL = "rtsp://10.42.0.91:5554/camera";
        Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(mediaURL));
        startActivity(intent);
    
        /* Using MediaPlayer (doesn't work). Error: "Cannot create MediaPlayer"
    and setDataSource.
        setVolumeControlStream(AudioManager.STREAM_MUSIC);
        mediaPlayer = new MediaPlayer();
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    
        try
        {
            mediaPlayer.setDataSource("rtsp://10.42.0.91:5554/camera");
            mediaPlayer.prepare();
            mediaPlayer.start();
        }
        catch (IOException ex)
        {
            ex.printStackTrace();
        }
        */
    

    http:10.42.0.91:8080 / playlist.m3u看起来像这样:

    #EXTM3U

    #PLAYLIST:RTSP Camera Server  #EXTINF:-1,有源相机 RTSP://10.42.0.91:5554 /相机  #EXTF:319,3 / 3/16 PM 3:08:35 MB  RTSP://10.42.0.91:5554 / record160303_1500  #EXTINF:1047,3 / 3/16 PM 2:15:106.4 MB  RTSP://10.42.0.91:5554 / record160303_1400  #EXTF:1364,所有记录141.4 MB  RTSP://10.42.0.91:5554 /记录  #EXTINF:-1,后置摄像头  RTSP://10.42.0.91:5554 /回  #EXTINF:-1,前置摄像头  RTSP://10.42.0.91:5554 /前

1 个答案:

答案 0 :(得分:0)

我刚刚完成了一个可以在Android MediaPlayer中显示RTSP H.264(甚至是高调)的基本应用程序。 当我遇到this video时,我正在试验和研究如何实现它。它很容易实现,并且还提供了源代码。 我使用Android版本5.1.1,它似乎不适用于4.4及以下版本。我的目标是让它在4.1及更高版本上运行,所以当我开始工作时我会编辑或评论。

我希望这能解释你需要的一切。只要告诉我它是否仍然无效,我会尽力帮助你。