Android视频框架 Vitamio 打造自己的万能播放器
Flora29A
8年前
<p>Vitamio 是一款 Android 与 iOS 平台上的全能多媒体开发框架,全面支持硬件解码与 GPU 渲染。</p> <p>Vitamio 功能强大,能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频,还可以在 Android 与 iOS 上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8) 等常见的多种视频流媒体协议,包括点播与直播。</p> <h2>1.Vitamio的下载</h2> <p>官方下载:<br> <a href="/misc/goto?guid=4959674207325324972">https://www.vitamio.org/Download/</a><br> 官方文档:<br> <a href="/misc/goto?guid=4959674207405923087">https://www.vitamio.org/docs/API/</a></p> <h2>2.Vitamio的VideoView控件</h2> <p>VideoView用于播放视频文件,可以加载各种来源的图像(如资源或ContentProvider),注意计算视频尺寸,以便在任意布局管理器中使用,它还提供了诸如缩放等显示选项。</p> <p>VideoView也提供封装了许多MediaPlayer的方法,例如getVideoWidth、setSubShown。</p> <h2>3.Vitamio的用法</h2> <p>(1)引入vitamio框架到 Android Studio 或者 Eclipse</p> <p>(2)在布局中定义VideoView</p> <pre> <code class="language-java"><io.vov.vitamio.widget.VideoView android:id="@+id/vv" android:layout_width="match_parent" android:layout_height="match_parent" /></code></pre> <p>(3)MainActivity中调用</p> <pre> <code class="language-java">// 插件vitamio框架检查是否可用 if (!LibsChecker.checkVitamioLibs(this)) { return; } final VideoView vv = (VideoView) findViewById(R.id.vv); vv.setVideoPath("http://192.168.1.20:8080/movie.mp4"); //设置播放路径 vv.setOnPreparedListener(new OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { vv.start(); } }); // 设置video的控制器 vv.setMediaController(new MediaController(this));</code></pre> <p>(4)使用Vitamio一定要在清单文件额外初始化InitActivity</p> <pre> <code class="language-java"><!-- 初始化InitActivity,固定写法 --> <activity android:name="io.vov.vitamio.activity.InitActivity"></activity></code></pre> <p>注意:InitActivity不要和MainActivity混淆。</p> <h2>4.Vitamio框架的原理</h2> <p>(1)音视频解码 原理:</p> <p>基本上都使用了开源项目FFmpeg(C语言开发的),包括windows平台的很多播放器都用到了。<br> FFmpeg源码下载地址:<a href="/misc/goto?guid=4958336869896075684">http://ffmpeg.mplayerhq.hu/</a></p> <p>(2)Vitamio也是使用了FFmpeg开源项目。</p> <p> </p> <p>来自: <a href="/misc/goto?guid=4959674207513807141" rel="nofollow">http://blog.csdn.net/smartbetter/article/details/51576329</a></p> <p> </p>