百姓网在半年前启动了自己的短视频业务。经过多个版本的迭代,我们的移动端应用不光具备了短视频业务的基本能力, 还集成了一项杀手级功能——“魔力拍”。这项功能用起来大概是这样的:
“魔力拍”所做的事情简单来说就是视频合成。用户输入图片或文字,程序拿着用户的输入和原始视频模板经过一系列处理,最终生成目标视频。 业务流程看着非常简单:
cd $path | |
DATE=`date -v-6d +"%Y-%m-%d"` | |
AUTHOR=`git config user.name` | |
LOG=`git log --branches --pretty=format:"\n%ad: %s" --date=short --after=$DATE --author="$AUTHOR"` | |
CHANGES=`git log --branches --date=short --after=$DATE --author="$AUTHOR" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "本周贡献代码: +%s行, -%s行, 总行数: %s\n", add, subs, loc }' -` | |
WEEKSTART=`date -v"monday" +"%-m月%d"` | |
TODAY=`date +"%-m月%d"` | |
REPORT="【周报】$WEEKSTART ~ $TODAY \n\n$CHANGES\n$LOG\n" |
百姓网在半年前启动了自己的短视频业务。经过多个版本的迭代,我们的移动端应用不光具备了短视频业务的基本能力, 还集成了一项杀手级功能——“魔力拍”。这项功能用起来大概是这样的:
“魔力拍”所做的事情简单来说就是视频合成。用户输入图片或文字,程序拿着用户的输入和原始视频模板经过一系列处理,最终生成目标视频。 业务流程看着非常简单:
视频采集方案: | |
通过iOS提供的视频API 可以取得 视频文件(mov) 或者 视频流 | |
压缩编码方案: | |
方案一:不编码 传送视频文件(mov) | |
方案二:把视频转为jpeg 进行传输 | |
方案三:压缩为网络编码 H.264 传输 | |
传输方案: | |
socket传输 | |
HTTP传输 文件 | |
RTMP 传输 |
#import <Foundation/Foundation.h> | |
@interface NSObject (LogDealloc) | |
- (void)logOnDealloc; | |
@end |