*无法打开vchiq实例

时间:2017-03-03 16:24:04

标签: php shell audio raspberry-pi

我尝试通过音频插孔将声音从php脚本播放到我的raspberry pi 3。我在php脚本中使用以下代码:

<?php
$fetch = 'wget "http://192.168.1.127/sound.mp3" -O sound.mp3 --no-check-certificate';
$play = 'omxplayer -o local sound.mp3';
echo shell_exec($fetch);
echo shell_exec("sudo chown upload sound.mp3");
echo shell_exec($play);
?>

我从本地ip地址获取文件并将其保存到pi。然后我通过omxplayer命令播放声音。在真正的shell(通过Putty中的SSH)上,Pi将输出声音而没有任何问题。当我尝试使用脚本时,我在使用omxplayer command时收到以下错误消息。

* failed to open vchiq instance

我在论坛中搜索了这个错误。它们意味着它将缺少文件的权限。为此,我将整个目录设置为权限级别777,并将文件所有者(如脚本中所示)设置为upload

不幸的是,这不起作用。有没有人有另一个解决方案来从pi获得输出?

感谢您的每一个回复。

3 个答案:

答案 0 :(得分:7)

最后,在我再次搜索之后,我找到了解决该问题的方法。问题在于/dev中的目录。我在命令行中点击了以下命令,效果很好。

sudo chmod 777 /dev/vchiq

答案 1 :(得分:5)

请勿在/ dev / vchiq上使用“ 777”模式,因为它不安全!通常,您只需要将确实需要使用摄像机的用户添加到称为“视频”的系统组即可。例如:如果您需要在Linux系统中允许用户“ testuser”使用摄像机,只需使用用户修改命令:

usermod -G video testuser

答案 2 :(得分:2)

实际上很多用户都被带到了这个问题,因为他们尝试了 raspistill 并返回了这个错误。

无论如何,错误通常是因为您忘记添加 sudo,所以 sudo raspistill -o output.jpg 应该可以工作。