FFmpeg开发笔记(四十四)毕业设计可做的几个拉满颜值的音视频APP
一个好的毕业设计可以给作者加分,可以评优,还能获得编程开发的实战经验,所以很有必要认真去做毕业设计。那么就计算机相关专业来说,怎样算是一个好的毕业设计呢?
以手机APP为例,毕业设计做APP就要结合行业发展趋势。现在5G技术已经很普及了,很多商用APP都在音视频方面深根细作,有短视频APP比如抖音、快手等等,有聊天APP比如微信、畅联等等,有播音APP比如酷狗、喜马拉雅等等,有视频剪辑APP比如剪映等等。那么毕业设计做个音视频相关APP无疑是个热门方向,不但自带高科技,还能拉满颜值。
适合毕业设计的音视频相关APP有以下三类:
一、包含视频通话功能的即时通信APP
即时通信APP就是聊天APP,包括常见的微信和QQ,聊天形式包括私聊(一对一)和群聊(多对多),聊天内容包括文本和图片。适用于毕业设计的即时通信技术包含SocketIO和WebSocket,相关的APP编程技术参见《Android Studio开发实战:从零基础到App上线(第3版)》第13章的“13.4 即时通信”,该书第13章同时给出了仿微信聊天项目,即“13.5 实战项目:仿微信的私聊和群聊”。
当然,仅仅图文形式的即时通信不够高科技,最好加上视频通话功能才显得遥遥领先。那么视频通话用到了WebRTC技术,WebRTC的APP编程参见《Android Studio开发实战:从零基础到App上线(第3版)》的“第20章 在线直播”,具体的实战项目参见该书第20章的“20.3 实战项目:仿微信的视频通话”。
对于毕业设计来说,这款即时通信APP的亮点在于用到了WebRTC技术,并通过WebRTC实现了视频通话的功能。
二、包含在线直播功能的短视频分享APP
短视频分享APP的使用率很高,不管是录制短视频还是播放短视频,都用到了音视频相关技术,有关的音视频技术参见《Android Studio开发实战:从零基础到App上线(第3版)》的“第14章 多媒体”,具体的实战项目参见该书第14章的“14.4 实战项目:仿抖音的短视频分享”。
当然,仅仅录制短视频或者播放短视频,本身不算太难的技术,最好加上实时直播功能才显得遥遥领先。那么直播技术又是一个庞大的知识体系,后端的流媒体服务器说明参见之前的文章《Linux环境安装ZLMediaKit实现视频推流》和《Linux环境安装SRS实现视频直播推流》,流媒体传输协议的说明参见之前的文章《利用RTMP协议构建电脑与手机的直播Demo》和《利用SRT协议构建手机APP的直播Demo》,更详细的直播技术文章可参考《FFmpeg开发笔记全目录(FFmpeg开发实战详解,含直播系统的搭建过程)》。
对于毕业设计来说,这款短视频分享APP的亮点在于运用了直播技术,并通过RTMP/SRT协议实现了视频直播的的功能。
三、包含动画特效功能的视频剪辑APP
视频剪辑APP常用于配合短视频分享,比如剪映已成为自媒体从业者的必备工具,相关的剪映教程更是大卖。视频剪辑功能以FFmpeg为基础,详细的FFmpeg编程参见《FFmpeg开发实战:从零基础到短视频上线》一书,该书由浅入深讲解了音视频的理论基础与开发实战,其中第12章的“12.4 实战项目:仿剪映的视频剪辑”更是通过把FFmpeg集成到APP工程中实现了一款仿剪映的视频剪辑APP。
不要小看这个视频剪辑,因为各大视频剪辑软件有种种限制,并不总能如人意。比如国外的Adobe Premiere Pro,它仅支持把SRT字幕导入视频,不支持把ASS字幕导入视频,也就无法实现卡拉OK的动态歌词效果。再如国产的剪映,虽然提供了丰富多样的转场动画,但是部分高级转场动画需要付费使用(仅面向VIP用户)。所以如果能够自己打造一款不受功能限制的视频剪辑软件,无疑能让众人眼前一亮,那么掌握视频剪辑技术推荐学习《FFmpeg开发实战:从零基础到短视频上线》这本书。
对于毕业设计来说,这款视频剪辑APP的亮点在于能够给视频添加卡拉OK歌词字幕,并通过转场技术实现了定制转场动画的功能。