VLC Android播放器介绍
16lz
2021-12-04
VLC目录结构
在ubuntu下编译vlc完成后,就可以将vlc-android部分导入android studio或者eclipse当中,完成java端的代码定制修改和编译,也可以自己将需要的部分添加进入android工程,下面是本人根据实际需要完成的android工程,目录结构如下所示:
动态库:
libiomx-gingerbread.so,libiomx-hc.so,libiomx-ics.so,libvlcjni.so是在ubuntu下编译的native底层so库,libvlcjni则是供libVLC.java调用的,由于本人只需要arm-v7的架构支持,所以只添加了改so,在android studio当中如果在main当中直接添加jniLibs文件夹,同时添加armeabi-v7a,则编译时会直接将该目录下的so打包进入apk当中。
LibVLC
LibVLC.java是核心类,它是用来控制音视频播放的,同时也是java和底层代码的连接桥梁,它其中调用了很多jni代码,来访问ffmpeg native函数。
播放控制流程
初始化
设置流媒体uri,同时初始化VideoView,代码如下所示:
String video = "rtmp://live.hkstv.hk.lxdns.com/live/hks";SurfaceView v = (SurfaceView) findViewById(R.id.surface);mVideoView = new VideoView(v, video, this);
播放
@Override protected void onResume() { super.onResume(); mVideoView.createPlayer(); //mVideoView1.createPlayer(); }
停止
@Overrideprotected void onDestroy() { super.onDestroy(); mVideoView.releasePlayer(); // mVideoView1.releasePlayer();}
总结,其实写好VideoView后操作起来很简单,可以参考demo,其实也可以根据需要实现自己的VideoView,来渲染显示流媒体,后续博客继续介绍vlc播放流媒体流程。
更多相关文章
- 由编译一个android开源项目, 学习如何解决AndroidStudio编译问题
- Android: NDK编程入门笔记
- Android上运行本地c
- Android(安卓)NDK: Host 'awk' tool is outdated. Please define
- android反编译工具(ApkDec-Release-0.1)-正式版
- Android(安卓)APK反编译
- 基于 Android(安卓)NDK 的学习之旅-----环境搭建
- Android(安卓)JNI 实例
- 剖析Android自带Widget-Music播放器