1. 給視頻添加文本
給視頻添加文本有兩種通常做法,一種是使用字幕實現,一種是使用overlay濾鏡實現。但下面是通過使用drawtext濾鏡,更高級的做法實現。
格式:ffmpeg -i input -vf drawtext=fontfile=arial.ttf:text=welcome output //給輸入源添加welcome文本,字體為arial.ttf
比如:ffplay -f lavfi -i color=c=white -vf drawtext=fontfile=arial.ttf:text=welcome //當前目錄下需要存在arial.ttf,可以在/Windows/Fonts目錄下找
2. 控制文本位置
2-1. 水平位置的設置
通過x參數控制。tw是文本的寬度,w是幀的寬度。水平居中:x=(w-tw)/2
2-2. 垂直位置的設置
通過y參數控制。th是文本的高度,h是幀的高度。 垂直居中:y=(h-th)/2
比如:ffplay -f lavfi -i color=c=white -vf drawtext="fontfile=arial.ttf:text='welcome you':x=(w-tw)/2:y=(h-th)/2" //文本居中顯示
3. 文本大小、顏色的設置
文本大小使用fontsize參數。文本顏色使用fontcolor參數
比如:ffplay -f lavfi -i color=c=white -vf drawtext="fontfile=arial.ttf:text='welcome you':x=(w-tw)/2:y=(h-th)/2:fontcolor=green:fontsize=30"
4. 文本移動
水平方向移動:向右x=w-t*n 向左x=t*n-tw //w幀的寬度,t參數,tw文本的寬度,n具體的數
比如:ffplay -f lavfi -i color=c=white -vf drawtext="fontfile=arial.ttf:text='welcome you':x=(w-t*50):y=(h-th)/2:fontcolor=green:fontsize=30" //文本從右往左移動
ffplay -f lavfi -i color=c=white -vf drawtext="fontfile=arial.ttf:text='welcome you':x=(t*50-tw):y=(h-th)/2:fontcolor=green:fontsize=30" //文本從左往右移動
垂直方向移動:向右y=h-t*n 向左y=t*n-th //w幀的寬度,t參數,tw文本的寬度,n具體的數
比如:ffplay -f lavfi -i color=c=white -vf drawtext="fontfile=arial.ttf:text='welcome you':x=(w-tw)/2:y=(h-t*50):fontcolor=green:fontsize=30" //文本從下往上移動
ffplay -f lavfi -i color=c=white -vf drawtext="fontfile=arial.ttf:text='welcome you':x=(w-tw)/2:y=(t*50-th):fontcolor=green:fontsize=30" //文本從上往下移動