gpt4 book ai didi

video - FFMPEG 硬件编码 H264

转载 作者:行者123 更新时间:2023-12-04 22:55:44 28 4
gpt4 key购买 nike

我目前正在尝试将 FFMPEG 与硬件/GPU 编码和 H264 编解码器一起使用。

我所做的是,我将原始数据直接导入 ffmpeg 以将它们输出到 udp 流。这些是我的设置:

var ffmpegArgs = [
'-c:v', 'rawvideo',// input container
'-f', 'rawvideo',
'-pix_fmt', 'rgba', // input pixel format
'-s', '600x600', //input size
'-video_size', '600x600',
'-i', 'pipe:0', // input source
'-f', 'mpegts', // output container format
'-s', '600x600',
'-video_size', '600x600',
'-c:v', 'libx264', // output video codec
'-b:v', '1m', // output bitrate
'udp://239.255.123.46:1234' // output destination
];

总的来说它是有效的,但质量和延迟真的很糟糕。帧大约落后 5 秒,然后有很多错误,因此至少需要 10 或 15 秒才能看到孔帧(视频是 Canvas 上的“实时流”)。

但是我认为 GPU 编码在这里可能会有所帮助,但我没有得到这个工作。我正在尝试使用 VAAPI ,但是无论我尝试使用来自 ffmpeg 的哪个命令(描述为 here ),它都不起作用....

我正在尝试在 Ubuntu 16.04 上的英特尔 NUC ( this one ) 上运行它。

有什么提示可以让我运行吗?

最佳答案

您使用的编码器 libx264 未实现硬件加速编码。仅(部分)OpenCL-accelerated look-ahead function(s)可用,并且性能提升最多,marginal ,尤其是在高端系统上。要在该库中公开前瞻加速前瞻,请确保系统上存在 OpenCL ICD 和 OpenCL header ,并且选项 --disable-opencl在 x264 的配置阶段省略。同样,对于 FFmpeg,确保 --enable-opencl在配置阶段启用。

查看有关使用 FFmpeg 进行硬件加速编码的查询时提供的类似答案。

  • NVENC .
  • QuickSync (需要在配置和构建 FFmpeg 时安装 Intel Media SDK)。
  • VAAPI .

  • FFmpeg wiki关于硬件加速。

    关于video - FFMPEG 硬件编码 H264,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45373358/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com