短视频尤其短剧的爆火关于音视频方面的需要越来越多,相关的框架、三方依赖技术也越来越成熟,本篇文章也是基于当前短剧高需要的背景来撰写,相信不少开发者也研究开发了相关的类库,也对此写了很多文章,当然我也是其中一位,本篇文章是基于android来进行短视频的加载播放的。
本篇文章介绍的依赖库是基于android webview和H5来实现的,实现主要功能:
1、全屏/小屏视频的单个(或多个连续)播放;
2、播放下一个视频;
3、横屏-竖屏切换;
4、音量调节[0,1];
5、视频播放速度调节;
6、视频播放进度及左右滑动(或进度条)来调节播放进度;
7、片尾可控制加载广告等延时播放下一条视频的操作;
8、暂停可控制加载广告等操作;
9、添加除视频的其他模块布局内容。
功能中大部分都已经封装好,不需要使用者再度进行开发操作,开发者可以设置返回按钮、视频标题、进度条样式、播放/暂停图标、横屏/竖屏图标、下一个图标,开发者可以使用依赖控件的中的布局进行广告等延时操作。
以下是依赖控件的示例视频:
ds-CSDN直播
依赖使用操作:
https://download.csdn.net/download/qq_41294019/90167109
在上面链接下载依赖到本地,在androidstudio中app的build.gradle里面添加如下:
api fileTree(dir: 'libs', include: ['ProScreenMediaPlayer.aar'])
新建Activity继承ProScreenMediaPlayerActivity并实现其中的方法,如下就可以简单的实现一个只有视频播放的模块了,视频可以是全屏(竖屏/横屏)的,小屏视频可以添加推荐等模块的布局内容。
finishMediaPlayer() 该方法用于点击返回按钮退出当前页面。
class ProScreenShowActivity : ProScreenMediaPlayerActivity() {override fun initData() {var videoPath = (Environment.getExternalStorageDirectory().absoluteFile.absolutePath+ File.separator + Environment.DIRECTORY_DCIM+ File.separator + "Camera/")videoUrls = arrayListOf<String>("${videoPath}SVID_20241219_184142_2.mp4","${videoPath}SVID_20241219_184142_3.mp4","${videoPath}SVID_20241219_184142_4.mp4","${videoPath}SVID_20241219_184142_1.mp4")videoUrlFirst = videoUrls[3]videoTitles = arrayListOf<String>("示例设置标题一","示例设置标题二","示例设置标题三","示例设置标题四")}override fun finishMediaPlayer() {}}
使用doLoadAdView()来获取FrameLayout布局加载广告等延时操作,结束后需要调用reqPlayNextVideo()方法播放下一个视频,使用doLoadOtherContView()来加载除视频等其他的内容,如推荐列表。
以上就是本篇介绍的基于android短视频(短剧)的音视频播放内容。