FFmpeg UHD编码(管道至x265)

FFmpeg UHD编码(管道至x265),ffmpeg,piping,hevc,Ffmpeg,Piping,Hevc,根据正确答案进行更新: 资料来源: Prores HQ 4:2:2 10位 4kp25 记录:2020年 下面是我的语法: ffmpeg -pix_fmt yuv422p10 -i JUNGLES_PLUTO_UHD_HDR_HLG.mov -pix_fmt yuv420p10 -f yuv4mpegpipe - | x265 --y4m - --input-res 3840x2160 --fps 25 --preset veryslow --b-adapt 2 --ref 4 --no-ope

根据正确答案进行更新:

资料来源: Prores HQ 4:2:2 10位 4kp25 记录:2020年

下面是我的语法:

ffmpeg -pix_fmt yuv422p10 -i JUNGLES_PLUTO_UHD_HDR_HLG.mov -pix_fmt yuv420p10 -f yuv4mpegpipe - | x265 --y4m - --input-res 3840x2160 --fps 25 --preset veryslow --b-adapt 2 --ref 4 --no-open-gop --keyint 50 --min-keyint 50 --no-scenecut --profile main --level-idc 5 --no-high-tier --sar 1:1 --colorprim bt709 --transfer bt709 --colormatrix bt709 --bframes 3 --hrd --vbv-bufsize 25000 --bitrate 25000 --vbv-maxrate 25000 --aud --no-info --b-pyramid -o test.h265

output: Option pixel_format not found. 
目标:(非hdr超高清机顶盒)

  • 问题1:如何将一个管道正确地从ffmpeg连接到x265
  • 问题2:如何确保中央处理器都被征税?我有 16vcores,但我在所有设备上都获得了2-3%的使用率
  • 问题3:是否有关于参数的建议,以增加 质量
  • 问题4:由于内容是BT2020,但我的目标设备目前无法显示/渲染BT2020,但BT709。。如何更改语法以最好的方式启用此功能..(缩小规模) 将:

    --colorprim bt2020——传输bt2020——colormatrix bt709

对吗

未找到选项像素\u格式。

删除
-pix_fmt yuv422p10
输入选项。这是不需要的,因为您的输入不是rawvideo,
ffmpeg
可以从您的输入文件中自动检测到它

问题1:如何将一个管道正确地从ffmpeg连接到x265

避开管道 如果您的
ffmpeg
支持libx265,那么您甚至不需要管道:

ffmpeg -i input.mov -c:v libx265 -crf 28 output.mp4
使用管道 您没有从
ffmpeg
提供任何输出。使用管道时,可以使用
-
作为输出

ffmpeg -i input.mov -f yuv4mpegpipe - | x265 --y4m - -o output.265
  • 输入为MOV,因此此容器包含像素格式、大小和帧速率信息,因此您可以忽略所有输入选项。此外,正如Andrey在评论中提到的,您也不需要
    -f rawvideo
    ,因为它将覆盖MOV解复用器的自动选择

  • 如果您实际输入的是rawvideo,那么您需要额外的选项,但它们应该被更改:
    -pxt\u fmt
    -pixel\u格式
    -s
    -video\u大小
    ,以及
    -r
    -framerate
    ,如图所示

  • 使用
    -f yuv4mpegpipe
    而不是
    -t yuv4mpegpipe

  • 对于x265,不需要使用Y4M输入声明
    --input res
    --fps

问题2:如何确保中央处理器都被征税?我有16个vCores,但我的使用率是2-3%

您可以一次运行多个编码实例

问题3:对提高质量的参数有何建议

使用
--crf
代替
--bitrate
。值越低,质量越高。范围是0-51。看

问题4:由于内容是BT2020,但我的目标设备目前无法显示/渲染BT2020,但BT709。。如何更改语法以最好的方式启用此功能..(缩小规模)

您可以使用
ffmpeg
-vf scale=-2:1080

未找到选项像素\u格式。

删除
-pix_fmt yuv422p10
输入选项。这是不需要的,因为您的输入不是rawvideo,
ffmpeg
可以从您的输入文件中自动检测到它

问题1:如何将一个管道正确地从ffmpeg连接到x265

避开管道 如果您的
ffmpeg
支持libx265,那么您甚至不需要管道:

ffmpeg -i input.mov -c:v libx265 -crf 28 output.mp4
使用管道 您没有从
ffmpeg
提供任何输出。使用管道时,可以使用
-
作为输出

ffmpeg -i input.mov -f yuv4mpegpipe - | x265 --y4m - -o output.265
  • 输入为MOV,因此此容器包含像素格式、大小和帧速率信息,因此您可以忽略所有输入选项。此外,正如Andrey在评论中提到的,您也不需要
    -f rawvideo
    ,因为它将覆盖MOV解复用器的自动选择

  • 如果您实际输入的是rawvideo,那么您需要额外的选项,但它们应该被更改:
    -pxt\u fmt
    -pixel\u格式
    -s
    -video\u大小
    ,以及
    -r
    -framerate
    ,如图所示

  • 使用
    -f yuv4mpegpipe
    而不是
    -t yuv4mpegpipe

  • 对于x265,不需要使用Y4M输入声明
    --input res
    --fps

问题2:如何确保中央处理器都被征税?我有16个vCores,但我的使用率是2-3%

您可以一次运行多个编码实例

问题3:对提高质量的参数有何建议

使用
--crf
代替
--bitrate
。值越低,质量越高。范围是0-51。看

问题4:由于内容是BT2020,但我的目标设备目前无法显示/渲染BT2020,但BT709。。如何更改语法以最好的方式启用此功能..(缩小规模)


您可以使用
ffmpeg
-vf scale=-2:1080

缩小比例,如果输入是在mov中,则输入上的
-f rawvideo
是错误的,因为它将覆盖解复用器选择。关于Q4:BT2020和BT709,指的是颜色空间,而不是图像分辨率,因此将图像缩小到1080p没有帮助。如果您的rec.2020图像包含rec.709色域之外的颜色,则需要色彩师在原始介质上执行“修剪过程”,以防止在旧设备上剪裁颜色。配色师还可以创建一个LUT,YouTube的mkvmerge工具(例如)可以使用该LUT提示SDR下变频。DolbyVision提供了一种类似的、更具特色但专有(且价格昂贵)的替代方案。如果输入为mov,则输入上的
-f rawvideo
是错误的,因为它会覆盖解复用器选择。关于Q4:BT2020和BT709指的是颜色空间,而不是图像分辨率,因此将图像缩小到1080p没有帮助。如果您的rec.2020图像包含rec.709色域之外的颜色,则需要色彩师在原始介质上执行“修剪过程”,以防止在旧设备上剪裁颜色。配色师还可以创建一个LUT,YouTube的mkvmerge工具(例如)可以使用它来提示SDR dow