【问题标题】:ffmpeg convert from H.264 (High 4:4:4 Profile) to H.264 (Main Profile)ffmpeg 从 H.264(高 4:4:4 配置文件)转换为 H.264(主配置文件)
【发布时间】:2016-10-24 08:12:00
【问题描述】:

如何使用 ffmpeg 将视频从 H.264(高 4:4:4 配置文件)转换为 H.264(主要配置文件)?

我不能用这个命令:ffmpeg -i 1/25359.mp4 -profile:v main out.mp4

这会返回一个错误:

...
That'd return an error:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '1/25359.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf56.40.101
  Duration: 00:00:06.08, start: 0.000000, bitrate: 1059 kb/s
    Stream #0:0(und): Video: h264 (High 4:4:4 Predictive) (avc1 / 0x31637661), yuv444p, 351x297, 1057 kb/s, 12.50 fps, 12.50 tbr, 12800 tbn, 25 tbc (default)
    Metadata:
      handler_name    : VideoHandler
No pixel format specified, yuv444p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
x264 [error]: main profile doesn't support 4:4:4
[libx264 @ 0x8fa9640] Error setting profile main.
[libx264 @ 0x8fa9640] Possible profiles: baseline main high high10 high422 high444
Output #0, mp4, to '1/24545.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf56.40.101
    Stream #0:0(und): Video: h264, none, q=2-31, 128 kb/s, 12.50 fps (default)
    Metadata:
      handler_name    : VideoHandler
      encoder         : Lavc56.60.100 libx264
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height

【问题讨论】:

    标签: video ffmpeg converter codec


    【解决方案1】:

    您的源视频具有全尺寸色度平面 - 如 YUV444P 中的后两个 4 所示 - 主配置文件不支持该格式,因此您必须选择像 YUV 4:2:0 这样的像素格式

    ffmpeg -i 1/25359.mp4 -vf "scale=2*trunc(iw/2):-2,setsar=1" -profile:v main -pix_fmt yuv420p out.mp4
    

    【讨论】:

    • 只有一个问题。每个视频都可以使用“-pix_fmt yuv420p”吗?我的意思是,它会给某些视频带来任何错误吗?它如何影响视频? (我只想创建一个好的 ffmpeg 命令在我的网站中使用它。)
    • 对于网页播放,你必须使用它。这是唯一受支持的像素格式。
    • 这对我有用,我的视频与 whatsapp 和其他社交媒体兼容
    • 这些选项的目标是什么:-vf "scale=2*trunc(iw/2):-2,setsar=1" ?
    • web (Chrome) 现在支持 4:4:4,没问题。
    【解决方案2】:

    前面的答案是对的,但我认为下面的答案正是提问者想要的。

    ffmpeg -i 1/25359.mp4 -profile:v main -pix_fmt yuv420p out.mp4
    
    • -profile:v:表示你要编码视频的模式,有一些选项here
    • -pix_fmt: yuv420p 适合老视频。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-17
      • 1970-01-01
      • 2010-11-24
      • 1970-01-01
      • 2022-01-06
      • 2014-09-24
      • 2011-12-25
      • 2018-04-15
      相关资源
      最近更新 更多