Zoompan 的 FFMPEG 文档https://ffmpeg.org/ffmpeg-filters.html#Examples-89说
放大至 1.5 并同时平移到图片中心附近的某个点:
zoompan=z='min(zoom+0.0015,1.5)':d=700:x='if(gte(zoom,1.5),x,x+1/a)':y='if(gte(zoom,1.5),y,y+1)':s=640x360
Run Code Online (Sandbox Code Playgroud)
放大至 1.5 并始终在图片中心平移:
zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'
Run Code Online (Sandbox Code Playgroud)
我尝试了这两个选项,但仍然对缩放效果不满意。变焦时我可以看到一些抖动问题。
想知道是否有更好的方法来实现这一目标。我想将图像(16:9 比例)缩放到其中心位置 XX 秒,下面是我的相同代码
ffmpeg -r 25 -i image.png -filter_complex "zoompan=z='min(zoom+0.0032,5)':d=125:x='iw/1.7777-(iw/zoom/1.7777)':y='ih/1.7777-(ih/zoom/1.7777)'" -shortest -pix_fmt yuv420p -c:v libx264 image_output.mp4
Run Code Online (Sandbox Code Playgroud)
视频文件: http: //sendvid.com/zn6oftiu
我遇到了同样的问题,并得到了一个非常有效的答案。关键是在应用变焦滤镜之前首先放大图像。您可以随后缩小至所需的分辨率。
以下放大 10 倍,缩放到中心,然后缩小回 720p(-2
缩放过滤器中的 x 值保持宽高比,即scale=-2:10*ih
)。这几乎消除了抖动:
ffmpeg -r 25 -i LVjYi.jpg -filter_complex "scale=-2:10*ih,zoompan=z='min(zoom+0.0015,1.5)':d=125:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)',scale=-2:720" -y -shortest -c:v libx264 image_output.mp4
Run Code Online (Sandbox Code Playgroud)
请注意,初始高档似乎越高,最终的缩放就越平滑。将以上与仅 2 倍的高档进行比较:
ffmpeg -r 25 -i LVjYi.jpg -filter_complex "scale=-2:2*ih,zoompan=z='min(zoom+0.0015,1.5)':d=125:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)',scale=-2:720" -y -shortest -c:v libx264 image_output.mp4
Run Code Online (Sandbox Code Playgroud)
那个还是摇摇晃晃的。
归档时间: |
|
查看次数: |
5823 次 |
最近记录: |