【问题标题】:How can one use ffmpeg to position a video exactly at a specific pixel position in jpeg?如何使用 ffmpeg 将视频准确定位在 jpeg 中的特定像素位置?
【发布时间】:2021-09-02 06:02:02
【问题描述】:

例如,

  • 有一个尺寸为 1900x1000 的 jpeg,它有一个像素坐标为 490x100 和 1400x500 的框架(矩形)
  • 分辨率为 720p 的视频需要放置在此矩形内

您能否分享 ffmpeg 命令来连接 jpeg 和视频?我尝试了-hstack-xstack 过滤器。但是,无法获取矩形内的视频。

TIA

【问题讨论】:

    标签: ffmpeg pixel video-processing ffmpeg-php


    【解决方案1】:

    您的矩形大小为 910x400,因此您必须缩小 1280x720 视频以适应。但纵横比不匹配。因此,如果您想保留纵横比,还需要填充或裁剪 1280x720 视频以正确适应 910x400。

    结合这些答案:

    裁剪以适应

    ffmpeg -i image.jpg -i video.mp4 -filter_complex "[1]scale=910:400:force_original_aspect_ratio=increase,crop=910:400[fg];[0][fg]overlay=x=490:y=100,format=yuv420p" -c:a copy -movflags +faststart output.mp4
    

    适合的垫子

    ffmpeg -i image.jpg -i video.mp4 -filter_complex "[1]scale=910:400:force_original_aspect_ratio=decrease,pad=910:400:-1:-1[fg];[0][fg]overlay=x=490:y=100,format=yuv420p" -c:a copy -movflags +faststart output.mp4
    

    挤压/拉伸以适应

    这将忽略纵横比并导致图像失真。

    ffmpeg -i image.jpg -i video.mp4 -filter_complex "[1]scale=910:400,setsar=1[fg];[0][fg]overlay=x=490:y=100,format=yuv420p" -c:a copy -movflags +faststart output.mp4
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-31
    • 1970-01-01
    • 1970-01-01
    • 2017-02-26
    • 2013-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多