ffmpeg指令

1. 将图片转换为视频(可指定起始帧号)

bash 复制代码
ffmpeg -framerate 20  -start_number 121 -i "%08d.000.jpeg" -c:v libx264 -pix_fmt yuv420p output.mp4
  1. -framerate 20: 设置视频的帧率为每秒30帧。你可以根据需要调整这个值。
  2. -start_number 121: 这个新增的参数告诉FFmpeg从编号121开始读取图片。
  3. -i "folder/*.jpg": 指定输入文件。这里假设你的图片都在名为 "folder" 的文件夹中,并且都是 .jpg 格式。根据实际情况修改路径和文件格式。
  4. -c:v libx264: 使用 H.264 编码器来编码视频。
  5. -pix_fmt yuv420p: 设置像素格式,这能确保输出的视频在大多数播放器上都能正常播放。
  6. output.mp4: 输出文件的名称和格式。

注意事项:

  • 确保你的图片文件名是按照字母顺序或数字顺序命名的,这样 FFmpeg 才能按正确的顺序处理它们。
  • 如果你的图片不是 .jpg 格式,请相应地修改文件扩展名。
  • 如果你想要更高质量的输出,可以增加比特率,例如添加 -b:v 5M 参数来设置视频比特率为 5Mbps。
  • 如果你的图片分辨率不一致,可以添加 -vf scale=1920:1080 参数来将所有图片缩放到指定的分辨率。

2. 使用 FFmpeg 将视频的分辨率宽高各降低一半

要使用 FFmpeg 将视频的分辨率宽高各降低一半,可以使用以下命令:

复制代码
ffmpeg -i input.mp4 -vf "scale=iw/2:ih/2" output.mp4

命令解释:

  • -i input.mp4: 指定输入文件
  • -vf "scale=iw/2:ih/2": 这是视频滤镜(video filter)选项
    • scale: 缩放滤镜
    • iw/2: 将宽度设置为原宽度的一半(iw 代表 input width)
    • ih/2: 将高度设置为原高度的一半(ih 代表 input height)
  • output.mp4: 指定输出文件

一些注意事项和可选参数:

  1. 保持宽高比:

    上面的命令会精确地将宽高各减半。如果你想确保输出是偶数分辨率(某些编码器需要),可以使用:

    复制代码
    ffmpeg -i input.mp4 -vf "scale=iw/2:ih/2:force_original_aspect_ratio=decrease,scale=trunc(iw/2)*2:trunc(ih/2)*2" output.mp4
  2. 指定编码器:

    如果你想指定特定的视频编码器,可以添加 -c:v 选项,例如:

    复制代码
    ffmpeg -i input.mp4 -vf "scale=iw/2:ih/2" -c:v libx264 output.mp4
  3. 控制质量:

    对于 H.264 编码,你可以使用 -crf 选项控制质量:

    复制代码
    ffmpeg -i input.mp4 -vf "scale=iw/2:ih/2" -c:v libx264 -crf 23 output.mp4
  4. 保持音频不变:

    默认情况下,FFmpeg 会重新编码音频。如果你想保持原始音频,可以添加 -c:a copy

    复制代码
    ffmpeg -i input.mp4 -vf "scale=iw/2:ih/2" -c:v libx264 -c:a copy output.mp4
  5. 显示进度:

    添加 -stats 选项可以在处理过程中显示进度信息。

相关推荐
xmode6 小时前
centos7.9安装ffmpeg6.1和NASM、Yasm、x264、x265、fdk-aac、lame、opus解码器
ffmpeg·centos
王江奎15 小时前
FFmpeg 升级指北
ffmpeg
雨夜和阳晨20 小时前
FFmpeg录制屏幕及声音
ffmpeg
吴声子夜歌20 小时前
FFmpeg——基础知识及FFmpeg框架
ffmpeg
aqi002 天前
FFmpeg开发笔记(七十二)Linux给FFmpeg集成MPEG-5视频编解码器EVC
android·ffmpeg·音视频·流媒体
不太会编程的IT男2 天前
在 Jetson Orin 开发套件上使用 Hardware Encoder / Decoder 构建 FFmpeg
ffmpeg·视频编解码·h.264
m0_687399842 天前
写一个Ununtu C++ 程序,调用ffmpeg API, 来判断一个数字电影的视频文件mxf 是不是Jpeg2000?
开发语言·c++·ffmpeg
aqi003 天前
FFmpeg开发笔记(七十一)使用国产的QPlayer2实现双播放器观看视频
android·ffmpeg·音视频·流媒体
Java患者·3 天前
【小白】linux安装ffmpeg | java转码 【超详细】
ffmpeg
suifen_3 天前
RK平台ffmpeg支持硬件编解码
ffmpeg