• ffmpeg -视频旋转和高清转码示例


    手头有一个竖屏拍摄的视频(真诚建议不要这么做。。),导入到电脑上以后势必要把它旋转90°,可是没想到就这样简单的一个功能,尝试了N个非编软件(openshot, pitivi,还有坑爹的lives)后竟然没有一个可以满足我的要求。要么>是不支持自定义分辨率(openshot),要么是图像比例失调(pitivi),要么是奇慢无比(lives,感觉这货是面向工作站的大型非编工具,我等屌丝驾驭不了)。最后无奈,自己google,发现还是老外靠谱,一条命令拯救世界:

    ffmpeg -i INPUT.AVI -vcodec libx264 -preset slower -crf 18 -threads 4 -acodec copy OUTPUT.MKV

    解释一下参数:

    • -i 待转码文件
    • -vcodec 选择视频编码。做过一番搜索,相比与MPEG2, MPEG4等,H.264是公认最好的高清编码格式,同时压缩率也高于MPEG4,所以我选择使用H.264(libx264)进行视频编码。
    • -preset 选择编码预设,更慢=更好的视频质量,可选取值为 ultrafast,superfastveryfastfasterfastmediumslowslowerveryslowplaceboplacebo是没用的取值。
    • -crf Constant Rate Factor,0~51之间取值,0为无损,23为默认取值,取值越大,视频整体质量越差。一般建议在18~28之间取值。18已经达到视觉无损的效果,即人眼几乎察觉不到和原片的差别。
    • -threads 编码使用线程数,CPU几个核心就设置几个线程好了。
    • -vf 滤镜,我们只需要用到旋转滤镜transpose=2transpose滤镜可取0-3,0为逆时针90°且垂直翻转,1为顺时针旋转90°,2为逆时针旋转90°,3为顺时针90°且垂直翻转。
    • -acodec 音频编码,这里直接设置为copy保留原文件音频编码。
    • 最后设置输出文件为OUTPUT.MKV

    详细参数说明可以参考FFmpeg and x264 Encoding Guide

  • 相关阅读:
    am335x gpio控制
    递归删除子目录下所有.la后缀文件
    linphone 在am335x的编译过程
    linphone 调试信息
    【POJ 3020】Antenna Placement(二分图匹配)
    【POJ 1062】昂贵的聘礼(最短路)
    【POJ 2485】Highways(Prim最小生成树)
    【Gym 100947E】Qwerty78 Trip(组合数取模/费马小定理)
    解决already defined in .obj 的问题(定义/声明的区别)
    C语言+SDL2 图形化编程
  • 原文地址:https://www.cnblogs.com/CnKker/p/11531596.html
Copyright © 2020-2023  润新知