百姓网在半年前启动了自己的短视频业务。经过多个版本的迭代,我们的移动端应用不光具备了短视频业务的基本能力, 还集成了一项杀手级功能——“魔力拍”。这项功能用起来大概是这样的:
“魔力拍”所做的事情简单来说就是视频合成。用户输入图片或文字,程序拿着用户的输入和原始视频模板经过一系列处理,最终生成目标视频。 业务流程看着非常简单:
| 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 |