本文主要是介绍项目实训—基于AI的智能视频剪辑器(十二)项目总结报告,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 前言
- 总体工作
- Activity
- Adapter
- Bean
- component
- fragment
前言
在智能剪辑视频app“易剪”的项目开发中,我所负责的部分是安卓端开发,下面将按照项目目录结构分块介绍各个部分所完成的工作
总体工作
本次项目开发中,安卓端共完成了java代码:activity文件夹下4个类,adapter文件夹下5个类,bean文件夹下3个类,component 文件夹下 11个类,controller 文件夹下1个类,core文件夹下24个类(core部分主要是对框架的集成,自行编程代码较少,此部分不再展开),fragment 文件夹下17个类,utils 文件夹下30个类,widget 文件夹下2个类,共计100个类
对应页面及组件共完成49个xml布局文件
此外为了集成调用 ffmpeg 框架,编写了两个c文件,并修改部分 ffmpeg 源码。
Activity
类名 | 作用 |
---|---|
SplashActivity | 启动页面,在这里首先会根据是否存在token来判断接下来开启 LoginActivity还是MainActivity |
LoginActivity | 登录页面,在这里会直接唤起 LoginFragment,具体的处理逻辑全部放在 LoginFragment 中,轻量化 Activity |
MainActivity | 项目主页,内置三大主要页面 TabFragment、ChoiceFragment、ProfieFragment,监听底部菜单栏、侧边栏点击事件,进行相应 |
Adapter
类名 | 作用 |
---|---|
FilterRecyclerViewAdapter | 滤镜 RecyclerView 适配器,将项目提供的滤镜适配到页面,需要首先从 asset 文件夹下加载滤镜信息 |
FramesAdapter | 在功能时长截取中,页面中有一个视频所有帧的陈列,用户可以拖动组件来截取,这里是将视频的每一帧适配到页面上 |
PictureRecyclerViewAdapter | 目标人物及场景图片适配到页面 |
RecyclerViewAdapter | 返回的视频片段适配到页面 |
TaskAdapter | 创作历史中剪辑任务适配到页面 |
VideoRecyclerViewAdapter | 创作历史中剪辑作品适配到页面 |
Bean
类名 | 作用 |
---|---|
UserBean | 用户信息,包括id、电话号码、密码等 |
VideoBean | 长视频信息,包括标题、路径等 |
ShortVideoBean | 系统智能剪辑出的短视频信息,包括视频路径、起始帧、结束帧、是否包含人物、是否包含场景以及一系列与其相似的其他短视频(应用于智能预览) |
TaskBean | 剪辑任务信息,包括视频名、剪辑模式、剪辑状态、该任务得到的 ShortVideoBean 列表 |
component
包含自行编写的所有页面 view 组件
类名 | 作用 |
---|---|
scrollview | 上拉出现,下拉消失的页面组件 |
PrepareView | 视频播放器预备页面 |
CompleteView | 视频播放器完成页面 |
ErrorView | 视频播放器出错页面 |
GestureView | 视频播放器手势控制 |
LiveControlView | 视频播放器底部控制栏 |
TitleView | 视频播放器顶部标题栏 |
VodControlView | 视频播放器进度条 |
VodSControlView | 视频播放器带标识的进度条 |
RangeSeekBarView | 时长截取组件 |
controller 文件夹下有一个 StandardVideoController 类,来组合所有视频播放 view,控制视频播放
fragment
类名 | 作用 |
---|---|
TabFragment | 创作历史页面,包含两个子页面 TaskFragment 和 HistoryFragment |
TaskFragment | 剪辑任务页面 |
HistoryFragment | 历史完成剪辑作品页面 |
DisplayFragment | 智能剪辑完毕后陈列页面 |
WorkFragment | 个人剪辑页面 |
TimeCutFragment | 个人剪辑时长截取页面 |
SpeedFragment | 个人剪辑变速页面 |
ChoiceFragment | 选择模式页面 |
UploadFragment | 上传页面 |
PreviewFragment | 智能预览页面 |
LoginFragment | 登录注册页面 |
ProfileFragment | 个人页面 |
SettingsFragment | 设置页面 |
AboutFragment | 关于页面 |
ServiceFragment | 协议页面 |
utils文件夹下主要是一些工具类,包括上传下载、token设置、ffmpeg调用、自动更新等,这里不再赘述
这篇关于项目实训—基于AI的智能视频剪辑器(十二)项目总结报告的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!