`
Jacular
  • 浏览: 182280 次
  • 性别: Icon_minigender_1
  • 来自: 云南
社区版块
存档分类
最新评论

Android使用VideoView播放网络视频

 
阅读更多
Android支持播放网络上的视频。在播放网络上的视频时,牵涉到视频流的传输,往往有两种协议,一种是HTTP,一种是RTSP。这

两种协议最大的不同是,HTTP协议,不支持实时流媒体的播放,而RTSP协议就支持。

Android中自带的播放器,以及VideoView等都支持上述两种协议,因此,可以直接播放网络上的视频,唯一不同的就是URI。

代码如下:





Java代码
01. package demo.camera; 
02. import android.app.Activity; 
03. import android.net.Uri; 
04. import android.os.Bundle; 
05. import android.os.Environment; 
06. import android.widget.MediaController; 
07. import android.widget.VideoView; 
08. /**
09.  * 本实例演示如何在Android中播放网络上的视频,这里牵涉到视频传输协议,视频编解码等知识点
10.  * @author Administrator
11.  *Android当前支持两种协议来传输视频流一种是Http协议,另一种是RTSP协议
12.  *Http协议最常用于视频下载等,但是目前还不支持边传输边播放的实时流媒体
13.  *同时,在使用Http协议 传输视频时,需要根据不同的网络方式来选择合适的编码方式,
14.  *比如对于GPRS网络,其带宽只有20kbps,我们需要使视频流的传输速度在此范围内。
15.  *比如,对于GPRS来说,如果多媒体的编码速度是400kbps,那么对于一秒钟的视频来说,就需要20秒的时间。这显然是无法忍受的
16.  *Http下载时,在设备上进行缓存,只有当缓存到一定程度时,才能开始播放。
17.  *
18.  *所以,在不需要实时播放的场合,我们可以使用Http协议
19.  *
20.  *RTSP:Real Time Streaming Protocal,实时流媒体传输控制协议。
21.  *使用RTSP时,流媒体的格式需要是RTP。
22.  *RTSP和RTP是结合使用的,RTP单独在Android中式无法使用的。
23.  *
24.  *RTSP和RTP就是为实时流媒体设计的,支持边传输边播放。
25.  *
26.  *同样的对于不同的网络类型(GPRS,3G等),RTSP的编码速度也相差很大。根据实际情况来
27.  *
28.  *使用前面介绍的三种方式,都可以播放网络上的视频,唯一不同的就是URI
29.  *
30.  *本例中使用VideoView来播放网络上的视频
31.  */ 
32. public class InternetVideoDemo extends Activity { 
33.      
34.     public void onCreate(Bundle savedInstanceState){ 
35.         super.onCreate(savedInstanceState); 
36.         this.setContentView(R.layout.video_view); 
37.          
38.         Uri uri = Uri.parse("rtsp://v2.cache2.c.youtube.com/CjgLENy73wIaLwm3JbT_%ED%AF%80%ED%B0%819HqWohMYESARFEIJbXYtZ29vZ2xlSARSB3Jlc3VsdHNg_vSmsbeSyd5JDA==/0/0/0/video.3gp"); 
39.         VideoView videoView = (VideoView)this.findViewById(R.id.video_view); 
40.         videoView.setMediaController(new MediaController(this)); 
41.         videoView.setVideoURI(uri); 
42.         //videoView.start(); 
43.         videoView.requestFocus(); 
44.     }    
45. } 
分享到:
评论
1 楼 chencangui 2015-04-06  
楼主能分享下源码吗?蟹蟹了

相关推荐

    Android 使用videoview播放Rtsp视频 demo

    总结起来,Android中使用`VideoView`播放Rtsp视频涉及的关键步骤包括:设置`VideoView`,提供Rtsp URL,创建并设置`MediaController`,监听准备事件并开始播放。在实际开发中,你还需要关注网络条件、设备兼容性以及...

    Android studio 的videoView播放网络视频(demo.zip)

    本教程将深入讲解如何在Android Studio中使用VideoView来播放网络视频。 首先,让我们了解VideoView的基本用法。在布局XML文件中,你需要添加一个VideoView元素,并为其指定一个ID,以便在Java代码中引用: ```xml...

    Android之VideoView播放视频

    在Android开发中,VideoView是系统提供的一种用于播放视频的视图组件,它使得开发者能够方便地在应用程序中集成视频播放功能。VideoView可以播放本地存储的视频文件,也可以通过流媒体方式播放网络上的视频资源。...

    使用VideoView 播放视频

    在Android开发中,VideoView是Android SDK提供的一种用于在应用程序中播放视频的组件。它封装了MediaPlayer类,简化了视频播放的操作。VideoView可以轻松地集成到布局中,并且提供了控制视频播放的能力,如播放、...

    Android VideoView本地视频播放

    在Android开发中,VideoView是用于播放视频的一个重要组件,它可以轻松地集成到应用程序中,为用户提供便捷的视频播放体验。VideoView支持本地视频播放,同时也可与MediaController结合使用,提供诸如播放、暂停、快...

    Android使用VideoView播放本地视频和网络视频的方法

    1、效果展示 2、布局文件 <?xml version=1.0 encoding=utf-8?> ...RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android ... android:paddingBottom=@dimen/activity_ve

    VideoView 缓冲/卡顿监听和处理Demo

    - 使用ExoPlayer替代VideoView:ExoPlayer是Google推荐的媒体播放库,提供了更强大的功能和更好的性能,对于复杂情况下的视频播放更加稳定。 - 自定义渲染器:针对卡顿问题,可以考虑自定义SurfaceView或...

    Android 使用VideoView播放MP4的简单实现

    Android 使用VideoView播放MP4的简单实现 Android 中使用 VideoView 播放 MP4 文件...这篇文章主要介绍了如何使用 VideoView 播放 MP4 文件,实现简单的播放功能,希望能够帮助读者更好地理解 Android 中的视频播放。

    VideoView半屏全屏视频播放

    `VideoView`可以加载本地媒体资源,也可以通过`setDataSource()`方法设置网络URL来播放在线视频。 在本Demo中,`MediaView`自定义控件继承自`FrameLayout`,这是一个容器布局,可以容纳多个子视图。这种设计允许...

    Android使用VideoView出现无法播放此视频问题的解决方法

    7. **本地视频**:如果网络视频无法播放,可以尝试使用本地存储的视频资源,确保路径正确,例如: ```java setVideoPath("/sdcard/my_video.mp4"); ``` 在问题描述中,作者提到的问题是因为使用了网上找的视频素材...

    Android中Vitamio的VideoView实现网络视频在线播放

    Vitamio 能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频,还可以在 Android 与 iOS 上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8) ...我的例子是使用Vitamio的VideoView实现网络视频在线播放

    android下videoview播放rtsp的demo

    总之,这个RtspDemo展示了如何在Android应用中使用VideoView播放RTSP视频流,提供了基本的播放、控制功能,并且涉及到了频道切换的处理。对于希望实现类似功能的开发者来说,这是一个很好的起点。

    Android使用VideoView+MediaController自定义seekbar和全屏切换功能

    VideoView继承自SurfaceView,它提供了加载和播放本地或网络视频的能力。通过setVideoURI()方法指定视频源,然后调用start()方法开始播放。VideoView可以自动调整大小以适应父布局,也可以通过调整其LayoutParams来...

    android videoview 视频播放器

    在本文中,我们将深入探讨如何使用`VideoView`实现一个基本的视频播放器,包括播放网络视频、显示进度条、显示播放时间以及控制播放与暂停。 首先,我们需要在布局文件中添加`VideoView`元素,它将承载我们的视频...

    Android Media-使用VideoView播放SD卡中的视频

    本篇文章将深入探讨如何使用VideoView在Android设备的SD卡上播放视频文件。 **VideoView** 是Android SDK提供的一种视图,用于显示视频内容。它可以嵌入到布局中,就像普通的TextView或ImageView一样。VideoView...

    Android原生VideoView视频开发demo

    这个"Android原生VideoView视频开发demo"是专为初学者设计的实践项目,旨在帮助他们理解和掌握如何在Android应用程序中使用VideoView来播放视频。 首先,VideoView是Android SDK中的一个视图类,它继承自...

    Android VideoView 使用例子

    - 播放网络视频时,需要确保设备有网络连接,并处理可能的网络错误。 - 为了兼容不同设备和分辨率,视频应以适应多种屏幕尺寸的格式提供。 以上就是关于Android VideoView的基本使用和相关知识点,通过掌握这些,...

    VideoView+MediaController播放网络视频

    总结来说,`VideoView`和`MediaController`的组合是Android中播放网络视频的标准方式。通过适当配置和处理,可以实现流畅的播放体验和预加载功能,提升用户满意度。在实际应用中,还需要根据网络状况、设备性能等...

    VideoView实现播放网络视频

    在Android开发中,VideoView是系统提供的一种用于播放...以上就是使用VideoView在Android中播放网络视频的基本实现,包括视频的播放、暂停和重播功能。在实际应用中,还可以根据需求添加更多的自定义功能和优化措施。

Global site tag (gtag.js) - Google Analytics