[英]How to make 1920X1080 resolution video as background with full video visibility?
[英]FFmpeg: How to render horizontal non full hd video with black frames, to video in 1920x1080, with blurred background
完整的命令可能如下所示:
ffmpeg -y -i in.jpg -filter_complex "scale=1920:1080,setsar=1:1,crop=1584:896:172:92,split[crp0][crp1];[crp0]scale=1920:1080,setsar=1:1,gblur=sigma=30[blur];[blur][crp1]overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2" out.jpg
該命令應用您發布的圖像(名為in.jpg
)。
過濾器鏈:
scale=1920:1080,setsar=1:1
- 將輸入調整為 1920x1080( setsar
用於固定縱橫比)。crop=1584:896:172:92
- 裁剪黑框內的部分。split[crp0][crp1]
- 將裁剪后的 output 拆分為兩個相同的流(兩個相同的圖像)。[crp0]scale=1920:1080,setsar=1:1,gblur=sigma=30[blur]
- 將裁剪后的圖像調整為 1920x1080 並對調整后的圖像進行模糊處理。[blur]
中。[blur][crp1]overlay=...
- 在模糊圖像上疊加[crp1]
。 對於視頻文件,它的工作方式相同。
例子:
ffmpeg -y -i in.mp4 -filter_complex "scale=1920:1080,setsar=1:1,crop=1584:896:172:92,split[crp0][crp1];[crp0]scale=1920:1080,setsar=1:1,gblur=sigma=30[blur];[blur][crp1]overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2" -vcodec libx264 -pix_fmt yuv420p -acodec copy out.mp4
使用cropdetect
過濾器查找crop
參數:
cropdetect過濾器說明:
自動檢測裁剪尺寸。
它計算必要的裁剪參數並通過日志系統打印推薦參數。
檢測到的尺寸對應於輸入視頻的非黑色區域。
這篇文章描述了使用 Linux 的cropdetect
結果。
我想在 Windows 10 中使用它,並找到了這個例子,
但它不工作...
以下代碼有效(使用 ffmpeg 版本 4.4.1-full_build-www.gyan.dev):
ffmpeg -hide_banner -i in.jpg -vf scale=1920:1080,setsar=1:1,cropdetect=skip=0 -t 1 -f null - 2>&1 | findstr /R /C:"crop=" > log.txt
for /F "tokens=14* delims= " %%i in (log.txt) do set crop=%%i
echo %crop%
使用%crop%
和 FFmpeg 命令:
ffmpeg -y -i in.jpg -filter_complex "scale=1920:1080,setsar=1:1,%crop%,split[crp0][crp1];[crp0]scale=1920:1080,setsar=1:1,gblur=sigma=30[blur];[blur][crp1]overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2" out.jpg
不寫入log.txt
的批處理文件:
@echo off
setlocal EnableExtensions EnableDelayedExpansion
set count=1
for /F "tokens=2* delims==" %%F in ('"ffmpeg -hide_banner -i in.jpg -vf scale=1920:1080,setsar=1:1,cropdetect=skip=0 -t 1 -f null - 2>&1"') do (
set var!count!=%%F
set /a count=!count!+1
)
echo %var1%
ffmpeg -y -i in.jpg -filter_complex "scale=1920:1080,setsar=1:1,crop=%var1%,split[crp0][crp1];[crp0]scale=1920:1080,setsar=1:1,gblur=sigma=30[blur];[blur][crp1]overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2" out.jpg
endlocal
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.