ffmpeg – 业余语言练习

ffmpeg x11grab+mp3

ffmpeg -f x11grab -framerate 30 -video_size 938×523 \ -i :0.0+79,193 -vf “setpts=(RTCTIME-RTCSTART)/(TB*1000000),\ drawtext=fontfile=/usr/share/fonts/msyh.ttf:\ fontcolor=#FF0000:fontsize=30:x=25:y=20:\ text=’mofayingyu'” -strict -2 -t 00:15:00 -f mp4 20250711jd.mp4 \ -f pulse -i ‘bluez_sink.41_42_FF_28_DF_E0.a2dp_sink.monitor’ \ -vf ‘setpts=(RTCTIME-RTCSTART)/(TB*1000000)’ \ -t 00:15:00 -c:a mp3 -y && exit 这个代码实现了网页视频与音频同步,录制15分钟自动停止。可以长期使用!主要在于\ -vf ‘setpts=(RTCTIME-RTCSTART)/(TB*1000000)’ 测试效果可以,令我非常满意。

Published
Categorized as ffmpeg

ffmpeg crop complex

ffmpeg -i IMG_0001.jpg -filter_complex \ “[0:v]crop=1700:2300:0:0,eq=contrast=1.5:brightness=0.2[out];\ [0:v][out]overlay=0:0” output1_0.jpg && ffmpeg -i output1_0.jpg -filter_complex \ “[0:v]crop=1700:1150:0:0,eq=contrast=1.5:brightness=0.5[out];\ [0:v][out]overlay=0:0” output1_1.jpg && exit

Published
Categorized as ffmpeg

ffmpeg lavfi filter_complex pot

ffmpeg画图 ffmpeg -i IMG_0001.jpg -f lavfi -i color=#FFFFFF@0.8:size=600×300 \ -frames:v 1 -filter_complex “[1]format=yuva420p,geq=lum=’p(X,Y)’:\ a=’if(gt(abs(W/2-X),W/4-145)*gt(abs(H/2-Y),H/4-70),\ if(lte(hypot(150-(W/2-abs(W/2-X)),155-(H/2-abs(H/2-Y))),30),100,50),180)’\ [rounded];[0][rounded]overlay=x=(W-w)/15:y=(H-h)/15” \ -f image2 input.jpg -y ffmpeg -f lavfi -i color=#FF0000:size=650×350 -f lavfi \ -i color=#FFFFFF@0.8:size=600×300 -frames:v 1 -filter_complex \ “[1]format=yuva420p,geq=lum=’p(X,Y)’:\ a=’if(gt(abs(W/2-X),W/4-145)*gt(abs(H/2-Y),H/4-70),\ if(lte(hypot(150-(W/2-abs(W/2-X)),155-(H/2-abs(H/2-Y))),30),100,50),180)’\ [rounded];[0][rounded]overlay=x=(W-w)/15:y=(H-h)/15” \ -f image2 input_0.jpg -y ffmpeg -i input_0.jpg -vf “rotate=PI/3” -f image2 input_0_60°.jpg

Published
Categorized as ffmpeg

ffmpeg filter_complex rotate

ffmpeg -i IMG_0001.jpg -frames:v 1 -filter_complex “color=#FFFFFF:s=500×400[v1];\ [v1]drawtext=fontfile=/usr/share/fonts/msyh.ttf:text=’这是什么东西?’:borderw=3:bordercolor=#FF0000:\ x=30:y=130:fontsize=80[v1];[v1]rotate=a=-PI*30/180:fillcolor=#FFFFFF@0[v1];[v1]colorkey=#00FF00:0.05:1[v2];\ [0:v][v2]overlay=main_w-overlay_w-240:main_h-overlay_h-240″\ -y input_1_1.jpg 在一张图片上画一块区域,在区域中写入文字,然后让文字旋转,就实在了文字打斜功能。 ffmpeg -f lavfi -i color=#FF0000:size=500×400 -frames:v 1 -filter_complex “color=#FFFFFF:s=500×400[v1];\ [v1]drawtext=fontfile=/usr/share/fonts/msyh.ttf:text=’这是什么东西?’:borderw=3:bordercolor=#FF0000:\ x=30:y=130:fontsize=80[v1];[v1]rotate=a=-PI*30/180:fillcolor=#FFFFFF@0[v1];[v1]colorkey=#00FF00:0.05:1[v2];\ [0:v][v2]overlay=main_w-overlay_w-10:main_h-overlay_h-10″\ -y input_1_2.jpg ffmpeg -f lavfi -i color=#FF0000:size=1000×600 -frames:v 1 -filter_complex “color=#FFFF00:s=1000×600[v1];[v1]drawtext=fontfile=/usr/share/fonts/msyh.ttf:text=’It has been exist’:borderw=1:bordercolor=#FF0000:x=50:y=250:fontsize=130[v1];[v1]rotate=PI/9:fillcolor=#FFFFFF@0[v1];v1]colorkey=#00FF00:0.05:1[v2];[0:v][v2]overlay=main_w-overlay_w-10:main_h-overlay_h-10” -f image2 exist_0.jpg -y ffmpeg -f lavfi -i color=#FFFFFF:size=1000×600 -frames:v 1 -filter_complex “color=#FFFFFF:s=1000×600[v1];\ [v1]drawtext=fontfile=/usr/share/fonts/msyh.ttf:text=’It has been… Continue reading ffmpeg filter_complex rotate

Published
Categorized as ffmpeg

x11grab

#Linux系统下录屏 #ffplay -window_title monitor -f x11grab\ -video_size 200:100 -i :0.0+800,25 \ -vf “drawbox=x=30:y=0.5:w=50:h=20:color=ff0000:t=1,\ scale=300×300” -left 880 -top 1 ffmpeg -f x11grab -framerate 30 -video_size 200:100 \ -i :0.0+800,25 \ -vf “setpts=(RTCTIME-RTCSTART)/(TB*1000000),\ drawbox=x=30:y=0.5:w=50:h=20:color=#FF0000” \ -f mp4 wubi.mp4 && exit 先用ffplay播放,体验录制区域,再用ffmpeg真正录制屏幕。

Published
Categorized as ffmpeg