Share

短视频相关脚本

把错别字该正,让文章通顺一些。然后把内容丰富一下。
用第一人称叙述的形式表达一下。讲述作者是温蒂,这是一个短视频的文案。中间穿插引导用户关注,不少于15000字
用美国人的语气重新创作一下这篇文章。
生成标题和描述
ai

 

推流带时间

ffmpeg -re -stream_loop -1 -i videoinput.mp4 -vf "drawtext=text='%{localtime\:%Y-%m-%d %H.%m.%S}':x=10:y=10:expansion=normal:fontfile=font.ttf:fontcolor=white:fontsize=36"  -vcodec libx264 -acodec aac -f flv "rtmp://edge-static-push.voip.yximgs.com/gifshow/kwai_actL_ol_act_11399522796_strL_origin?sign=651e34b7-8156c8439e34c56b6755aa5acb5f581b&ks_fix_ts"

推流

ffmpeg -i river.mp4 -c:a libmp3lame -ar 44100 -b:a 128k -pix_fmt yuv420p -c:v libx264 -preset medium -b:v 2500k -maxrate 3000k -bufsize 6000k -f flv "rtmp://a.rtmp.youtube.com/live2/jw6q-fu5t-zzcx-mv86-7pwq"

 

将视频转成720p上下裁剪50px音轨mp3音轨。使用h265编码 也可以换成h264

ffmpeg -i videoinput.mp4 -vf crop=1600:900:0:50,scale=-2:720 -c:v libx265 -c:a libmp3lame -y birdh265mp3.mp4

将视频转成1080p H264编码

ffmpeg -i final.mp4 -vf crop=1080:1920,scale=-2:1920 -c:v libx264 -c:a libmp3lame -y final-1080p.mp4

给视频加文字

ffmpeg -i 1.mp4 -vf "[in]drawtext=fontsize=28:fontfile=z:/font.otf:text='宝宝大作战':fontcolor=yellow:x=50:y=610:alpha=0.7,drawtext=fontsize=26:fontfile=z:/font.otf:text='下方链接':fontcolor=yellow:x=50:y=650:alpha=0.6,drawtext=fontsize=26:fontfile=z:/font.otf:text='观看全集':fontcolor=yellow:x=50:y=690:alpha=0.5[out]" -y  1-AR9X16-1080P.mp4

添加滚动字幕

ffmpeg -i yuye.mp4 -filter:v drawtext="fontfile=Microsoft YaHei Mono.ttf:text='在静寂的夜幕即将来临,思绪的风筝轻轻地升腾。我在星辰的微光下徜徉,寻觅五分钟,短暂如梦中的花园里漫步,月光洒落如银河的涟漪。忧虑与烦恼五分钟,是一让这短暂的五分钟,就像飘落的花瓣般缓缓降临':fontcolor=white@1.0:fontsize=36:y=h-line_h-10:x=w-tw-w/10*mod(t\,30):enable=gt(mod(t\,20)\,10)" -codec:v libx265 -codec:a copy -y yuyeoutput.mp4

录播存文件

ffmpeg -i "https://pull-flv-l11.douyincdn.com/third/stream-113600999814857180_hd.flv?expire=1693496208&sign=7f78bd2484c9cd7cc988fd2991d62e79&abr_pts=-800&session_id=037-20230824233648BA7803B33585A629C906" -c:a copy -c:v copy -t 24:00:00 -r 30 亮剑.mp4

优化后的推流代码

ffmpeg -re -stream_loop -1 -i videoinput.mp4 -vf "drawtext=text='%{localtime\:%Y-%m-%d %H.%M.%S}':x=10:y=10:expansion=normal:fontfile=font.ttf:fontcolor=white:fontsize=36"  -vcodec libx264 -b:v 600k -acodec aac -f flv -max_delay 5000 -bufsize 5000000 -rtbufsize 5000000 "rtmp://edge-static-push.voip.yximgs.com/gifshow/kwai_actL_ol_act_11399522796_strL_origin?sign=651e34b7-8156c8439e34c56b6755aa5acb5f581b&ks_fix_ts"

循环片段合并
-f concat是指合并
-safe 为了避免权限报错
-c copy 一定要指定,不然会重新封装,数据文件就会变大。

先准备txt文件

file 'birdlogo.mp4'
file 'birdlogo.mp4'
file 'birdlogo.mp4'
file 'birdlogo.mp4'
file 'birdlogo.mp4'

命名all.txt

ffmpeg -f concat -safe 0 -i all.txt -c copy -y birdytb.mp4

右下角加水印适合720×1080调试代码

ffplay -i input.mp4 -vf "drawtext=fontsize=30:fontfile=lazy.ttf:text='@深度睡眠音乐直播,喜欢的朋友欢迎点赞关注。':x=90:y=1250:fontcolor=green:box=1:boxcolor=black"

目录下所有吗MP4文件统一操作。批处理.bat

for %%a in (*.mp4) do ffmpeg -threads 15 -i "%%a" -vf "drawtext=fontsize=30:fontfile=lazy.ttf:text='@深度睡眠音乐直播,喜欢的朋友欢迎点赞关注。':x=90:y=1250:fontcolor=green:box=1:boxcolor=black" "%%a.mov" -n
pause