使用ffmpeg调整视频分辨率/帧率并保持高清晰度

1、原始视频信息

通过ffmpeg -i命令查看视频基本信息

python 复制代码
 ffmpeg -i input.mp4
ffmpeg version 6.1-essentials_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --pkg-config=pkgconf --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
  libavutil      58. 29.100 / 58. 29.100
  libavcodec     60. 31.102 / 60. 31.102
  libavformat    60. 16.100 / 60. 16.100
  libavdevice    60.  3.100 / 60.  3.100
  libavfilter     9. 12.100 /  9. 12.100
  libswscale      7.  5.100 /  7.  5.100
  libswresample   4. 12.100 /  4. 12.100
  libpostproc    57.  3.100 / 57.  3.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0000024c98921a00] st: 0 edit list: 1 Missing key frame while searching for timestamp: 1000
[mov,mp4,m4a,3gp,3g2,mj2 @ 0000024c98921a00] st: 0 edit list 1 Cannot find an index entry before timestamp: 1000.
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 1
    compatible_brands: mp42hvc1CAEP
    make            :
    make-eng        :
    model           :
    model-eng       :
    creation_time   : 2023-09-14T07:26:06.000000Z
    timecode        : 00:25:37:02
  Duration: 00:07:01.44, start: 0.000000, bitrate: 214391 kb/s
  Stream #0:0[0x1](eng): Video: hevc (Rext) (hvc1 / 0x31637668), yuv422p10le(tv, bt709), 4096x2160, 214092 kb/s, 50 fps, 50 tbr, 50k tbn (default)
    Metadata:
      creation_time   : 2023-09-14T07:26:06.000000Z
      vendor_id       : [0][0][0][0]
  Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 253 kb/s (default)
    Metadata:
      creation_time   : 2023-09-14T07:26:06.000000Z
      vendor_id       : [0][0][0][0]
  Stream #0:2[0x3](eng): Data: none (tmcd / 0x64636D74), 1 kb/s (default)
    Metadata:
      creation_time   : 2023-09-14T07:26:06.000000Z
      timecode        : 00:25:37:02
At least one output file must be specified

通过命令查看,原始视频信息

python 复制代码
Video: hevc (Rext) (hvc1 / 0x31637668), yuv422p10le(tv, bt709), 4096x2160, 214092 kb/s, 50 fps, 50 tbr, 50k tbn (default)

2、ffmpeg视频转换-保持清晰度

python 复制代码
ffmpeg -i input.mp4 -r 25 -qscale 0 -q:v 1 -c:a aac -b:v 20000k -vf scale=2048:-1 output.mp4

-qscale value:使用固定的视频量化标度(VBR),以value质量为基础的VBR,取值0.01-255,越小质量越好

-q:v:表示存储jpeg的图像质量

-b:v:设置输出文件的视频比特率(码率)

-c:a:指定音频编码器

-r 输出帧率

-vf:设置视频滤镜,scale=2048:-1,宽度为2048,保持长宽比


参考自:https://blog.csdn.net/lsb2002/article/details/135276109

相关推荐
半拉老头1 小时前
用360安全浏览器插件图片助手批量下载图片
windows
2601_965454239 小时前
做新闻视频没素材?AI按文稿语义自动配画面的工作流
音视频
Vex2une11 小时前
Docker Desktop WSL2后端:2026年性能调优与避坑实战指南
windows·docker·desktop·gpu容器·容器开发·virtiofs·buildkit
钱栈up13 小时前
搜狗中文模式打不出顿号?在 Windows 沙箱里探测输入法配置的踩坑实录
windows
白搞电子13 小时前
ZeroClaw 是什么?与 ESP-Claw 的区别及文件整理用途示例
windows·物联网
BeiGuTing_code14 小时前
Java动态数组(一)
java·数据结构·windows
我就是不信18 小时前
Java8 lambda 表达式 forEach 如何提前终止?
开发语言·windows·python
Maxwin18 小时前
Manim 竖屏画布选 9×16 还是 4.5×8?从 font_size 和每单位像素数说起
python·ffmpeg
陈工大模型18 小时前
2026 Windows 免费压缩软件横向评测:7-Zip、WinRAR、Bandizip、NanaZip 与 Win 解压缩
windows·电脑·winrar·7-zip·web app·软件·win解压缩
燃烧的枫19 小时前
Windows 下 YOLO26 的 TensorRT C++ 部署
人工智能·pytorch·windows·计算机视觉·tensorrt·cuda·yolo26