gpt4 book ai didi

php - 树莓派相机流媒体不会从 php 开始

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:54:17 25 4
gpt4 key购买 nike

最近我一直在玩 R-Pi。现在我正在尝试使用 Raspberry pi b+ 和相机进行流式传输。我有一个基本的 php 网站,我从那里向相机发出命令(开始 - 停止流式传输)。

问题是,当我按下 Start Streaming 时,摄像头的红色 LED 指示灯会亮起一秒钟,然后熄灭。当我选择从命令行(终端)运行流时,它起作用了。

这是我的脚本:

#!/bin/sh raspivid -o - -t 0 -n -w 600 -h 400 -fps 12 | cvlc -vvv stream:///dev/stdin --sout '#rtp{sdp=rtsp://:8554/}' :demux=h264

这是我的 php 文件,我在哪里调用 shell 脚本:

$trimite = shell_exec('sudo sh streaming.sh');

有什么想法吗?提前致谢!

最佳答案

这听起来可能是由权限错误引起的。运行命令 sudo chmod +x streaming.sh

如果这不能解决问题,(假设您有一个运行 apache 的网络服务器)在终端中运行“sudo a2enmod”,然后 sudo chmod +x/usr/lib/cgi-bin 然后重新启动apache (sudo service apache restart)


注意:如果出现“无法写入权限,目录不存在”错误,您需要在终端中运行命令'sudo mkdir/usr/lib/cgi-bin/'


创建一个cgi脚本来调用bash脚本:

 #!/bin/bash
echo ""
echo "Content-type: text/html"
echo "<html><head><title>Light on"
echo "</title>"
echo "</head><body>"
echo "$(bash /home/pi/streaming.sh) #this calls the shell script"
echo "</body></html>"

然后你必须将这个文件保存为/usr/lib/cgi-bin/first.cgi 并用“sudo chmod +x/usr/lib/cgi-bin/first.cgi”给它分配权限假设你的apache服务器设置正确(如果 a2enmod 不能正常工作,可以找到关于正确启用 cgi 模块的各种指南),您现在应该能够转到另一台 LAN 机器上的 Web 浏览器并浏览到 http://IPofRPI/cgi-bin/first.cgi .

脚本应该执行。恭喜!

如果脚本没有执行,您可以在线阅读有关 CGI 和 apache 模块的信息,看看您的脚本有什么问题。

我前一段时间遇到了同样的问题,可以在这里找到这个问题:Here

我希望这对你或其他人有帮助:)

关于php - 树莓派相机流媒体不会从 php 开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27825774/

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