【问题标题】:Video Streaming and Android视频流和安卓
【发布时间】:2010-11-16 23:12:56
【问题描述】:

今天对于我的一个应用(Android 2.1),我想从 URL 流式传输视频。

就我对 Android SDK 的探索而言,它非常好,我几乎喜欢它的每一部分。 但是现在谈到视频流,我有点迷失了。

对于您需要的有关 Android SDK 的任何信息,您有数以千计的博客告诉您如何操作。在视频流方面,情况有所不同。信息就是这么丰富。

每个人都这样做了,到处都是骗人的。

是否有任何众所周知的程序可以让人们流式传输视频?

谷歌有没有想过让开发者更轻松?

【问题讨论】:

  • 您好,您尝试过在 Android 上流式传输 .ism 文件吗?

标签: android streaming video-streaming


【解决方案1】:

如果您只想让操作系统使用默认播放器播放视频,您可以使用如下意图:

String videoUrl = "insert url to video here";
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(videoUrl));
startActivity(i);

但是,如果您想自己创建一个视图并将视频流式传输到其中,一种方法是在您的布局中创建一个视频视图并使用媒体播放器将视频流式传输到它。这是 xml 中的视频视图:

<VideoView android:id="@+id/your_video_view"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_gravity="center"
/>

然后在您的活动中的 onCreate 中找到视图并启动媒体播放器。

    VideoView videoView = (VideoView)findViewById(R.id.your_video_view);
    MediaController mc = new MediaController(this);
    videoView.setMediaController(mc);

    String str = "the url to your video";
    Uri uri = Uri.parse(str);

    videoView.setVideoURI(uri);

    videoView.requestFocus();
    videoView.start();

查看 videoview 侦听器,以便在视频播放完毕或发生错误时收到通知(VideoView.setOnCompletionListener、VideoView.setOnErrorListener 等)。

【讨论】:

  • 感谢您的回答。我实际上对第一个选项感兴趣。但是,当我在手机上部署它时,android 会问我 Internet 或 MediaPlayer 你知道如何摆脱它并默认使用 mediap 播放器吗?
  • 抱歉,我不知道强制 Android 直接进入手机视频播放器的通用方法。我知道如果视频设置为渐进式下载,android 会弹出对话框询问您是否要使用浏览器或视频播放器。设置为流式 RTSP 的视频只会在视频播放器中打开。
  • 嘿,@rreeverb,这种方法是否足够快,可以在慢速设备上播放视频? (例如,它使用使用 DSP 的默认播放器..?)
  • 它适用于视频 url,但是当我提供实时视频 url 时,它没有播放,有没有办法将实时视频从 web 流式传输到 android。当前播放的视频应该是可录制的。
猜你喜欢
  • 1970-01-01
  • 2017-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-03
  • 2011-06-29
相关资源
最近更新 更多