我的 GStreamer 管道仅适用于 sudo。原因是 vpudec 插件无法初始化。
发生这种情况的原因是 VPU 设备归 root 所有。我将当前用户添加到一个新组并将 VPU 设备的组更改为新组然后我更改了该组的读写权限。
# 将 VPU 设备组更改为名为视频的组
sudo chgrp 视频 /dev/mxc_*
sudo chgrp 视频 /dev/ion
# 授予组读写权限
须藤 chmod 660 /dev/mxc_*
须藤 chmod 660 /开发/离子这适用于我的 Yocto-Dunfell。但现在我正在使用 Yocto-Kirkstone,但我缺少 /dev/ion 设备。仅更改 mxc_* 设备的组和读写权限并不能解决问题。有谁知道 /dev/ion 设备是什么以及它是否更改或重命名?
我发现 ION 是一个从 Android 移植过来的 imxdma 分配器。现在应该使用 dma-heap 分配器。在/dev 中还有一个名为dma_heap 的目录。我也尝试将其设置为具有读写权限的视频分组,但没有成功。