问题标签 [vaapi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
udp - 使用 GStreamer + vaapi 进行视频流式传输
我正在尝试使用 vaapi***enc 压缩网络摄像头图像并使用 UDP 协议流式传输图像。
有没有好的样品或参考资料?
我能找到的所有示例都不要同时尝试 vaapi 和 UDP 视频流。
另一方面,我可以在不使用 vaapi 的情况下找到视频流,例如
Sender :
gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw, width=640, height=480 ! timeoverlay ! tee name="local" ! queue ! autovideosink local. ! queue ! jpegenc! rtpjpegpay ! udpsink host=127.0.0.1 port= 5000
Receiver :
gst-launch-1.0 udpsrc port=5000 ! application/x-rtp,encoding-name=JPEG,payload=26 ! rtpjpegdepay ! jpegdec ! autovideosink
但是,我不知道如何使用 vaapijpegenc 或 vaapih264enc 代替不使用 GPU 的 ***enc。
如果我只是用 vaapijpegenc 替换 jpegenc,我会得到以下结果。
- 错误:来自元素 /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:内部数据流错误
- 流式传输任务暂停,原因未协商 (-4)
我怎么解决这个问题 ?任何样品或参考?
提前致谢。
ffmpeg - ffmpeg vaapi 和 drawtext
像地狱一样的简单问题:是否可以使用带有 drawtext 的文本覆盖的 ffmpeg、Intel CPU 和 VAAPI 使用硬件加速转码?
我当前没有drawtext的工作命令是:
但似乎 hwaccel 和 drawtext 过滤器不能共存,至少乍一看是这样。
video - FFMPEG 硬件编码 H264
我目前正在尝试将 FFMPEG 与硬件/GPU 编码和 H264 编解码器一起使用。
我所做的是,我将原始数据直接导入 ffmpeg 以将它们输出到 udp 流。这些是我的设置:
总的来说它是有效的,但质量和延迟真的很糟糕。帧大约落后 5 秒,然后有很多错误,因此至少需要 10 或 15 秒才能看到孔帧(视频是画布上的“实时流”)。
但是我认为 GPU 编码在这里可能会有所帮助,但我没有得到这个工作。我正在尝试使用VAAPI
,但无论我尝试使用来自 ffmpeg 的哪个命令(在此处描述),它都无法正常工作....
我正在尝试在 Ubuntu 16.04上的英特尔 NUC(这个)上运行它。
有什么提示可以让我运行吗?
ffmpeg - FFMPEG Hwaccel 错误与 hwupload
我目前正在尝试在 FFMPEG 上使用 vaapi hwaccelleration。
在我的命令中,我有hwaccel
on vaapi
、hwaccel_output_fomrat
on vaapi
、-hwaccel_device
on/dev/dri/renderD128
以及 as-vf
和format=nv12, hwupload
as 视频编解码器-c:v
on h264_vaapi
。
当我现在尝试启动它时,我收到了错误
grep stderr: [hwupload @ 0x30bb660] A hardware deveice reference is required to upload frames to.
[Parsed_hwupload_1 @ 0x30bb560] Query format failed for 'Parsed_hwupload_1': Invalid argument
我可以在某处定义硬件设备引用吗?我以为这是我所做的hwaccel_device
,但似乎不是。那么我该怎么做才能让它工作呢?
docker - Docker Swarm 通用设备资源连接
Docker 帮助请求:我正在尝试将 Swarm 中的容器连接到/dev
. 在 docker 容器中运行时,连接通过设备映射正常工作,但是我们无法连接到 Swarm 节点中的设备。
该设备恰好是图形硬件,可将 vaapi 驱动程序与我们的 Gstreamer 管道一起使用,位于此处:/dev/dri/renderD128
,但这是从集群中的容器连接到任何设备的通用问题。
我正在寻找有关通过 Swarmkit 通用资源映射到我们的设备的建议。
有关于 Swarmkit 和图形硬件的讨论,包括:
- (问题)添加对 Swarmkit 通用资源 #33439 的支持: https ://github.com/moby/moby/issues/33439
- (合并 PR)添加通用资源 #5416:https ://github.com/docker/docker.github.io/pull/5416
但是,我一直无法将这些提炼成解决方案。
一个在 swarm 中未运行时成功连接到该设备的 docker run 命令如下所示:
但同样,这是容器、群和设备映射的一般问题,与此特定设备无关。
我们正在使用 docker compose file version 3,并尝试了device
按预期失败的“”选项:
https ://docs.docker.com/compose/compose-file/#devices
“在使用(版本 3)Compose 文件以 swarm 模式部署堆栈时,此选项将被忽略。”
我很感激你的帮助。
c++ - 如何使用 FFMPEG sws_scaler api 从 AV_PIX_FMT_VAAPI 转换为 AV_PIX_FMT_YUV420?
我正在使用下面的代码从 VAAPI 转换为 YUV420 格式。
有人能告诉我为什么我得到 SwsContext 指针的 NULL 值吗?
ffmpeg - 如何将 ffmpeg 与 mjpeg_vaapi 编码器一起使用(带硬件加速)?
当我在没有硬件加速的情况下将 ffmpeg 与 mjpeg 编码器一起使用时,一切正常。我使用以下命令:
但是,当我尝试将 mjpeg 与硬件加速一起使用时,我总是会收到错误消息:
我尝试了一些其他选项,但仍然失败:
可以请任何人提出正确的选择来使其发挥作用吗?
ffmpeg - FFMpeg libavcodec hwaccel 工作原理
谁能解释 hwaccel 解码、过滤和编码如何在 FFMpeg libavcodec 中工作?大局是什么?主要功能和结构是什么?
VAAPI 和 CUDA GPU 的处理方式有什么不同吗?任何用于 VAAPI 和 CUDA 的解码、过滤和编码的示例代码都会很棒。
ffmpeg - 使用 libav* 库实现 FFMpeg -r 和 -vf 之类的功能?
想知道是否有人可以提供一些关于如何使用 FFMpeg libav* 库来实现以下内容的指示?特别是 -r 和 -vf 选项?