Php使用Fopen功能和直播(rtp)
I am trying to prepare a webcam streaming page. I created a vlc streaming and here is what I wrote in the command line to run my webcam.
cvlc -vvv v4l2:///dev/video0 --sout '#transcode{vcodec=mp2v,vb=800,acodec=none}:rtp{dst=239.0.0.1,port=5004,mux=ts}'
After typing this code i can see my webcam by typing
rtp://239.0.0.1:5004/
to the browser. Its okay up to here.
I prepared a php streaming file and it opens static video files with
fopen('localhost/sample.mp4','rb')
command and it works properly. But when I pass "rtp://239.0.0.1:5004"/ in
fopen( 'rtp://239.0.0.1:5004/', "rb" )
command, I get en error 502 gateway that probably means it has not opened rtp file.
What should I do ? Thanks
我正在尝试准备网络摄像头流媒体页面。 我创建了一个 vlc strong>流媒体,这是我在命令行中编写的用于运行我的网络摄像头的内容。 p>
输入此代码后,我可以通过输入 p>
到浏览器。 它还可以到这里。 p>
我准备了一个php流媒体文件,它打开了静态视频文件 p>
命令,它可以正常工作。 但是当我传递“rtp://239.0.0.1:5004”/ in p>
命令,我得到错误502网关,这可能意味着它没有打开rtp文件。 p>
我应该怎么做 ? 谢谢 p>
div>
cvlc -vvv v4l2:/// dev / video0 --sout'#transcode {vcodec = mp2v,vb = 800,acodec = none}:rtp {dst = 239.0.0.1,port = 5004,mux = ts}'
code> pre> \ n
rtp://239.0.0.1:5004 /
code> pre来查看我的网络摄像头 >
fopen('localhost / sample .mp4','rb')
code> pre>
fopen('rtp://239.0.0.1:5004 /',“rb”)
code> pre>
PHP can only open resources using some protocols.
file:// — Accessing local filesystem
http:// — Accessing HTTP(s) URLs
ftp:// — Accessing FTP(s) URLs
php:// — Accessing various I/O streams
zlib:// — Compression Streams
data:// — Data (RFC 2397)
glob:// — Find pathnames matching pattern
phar:// — PHP Archive
ssh2:// — Secure Shell 2
rar:// — RAR
ogg:// — Audio streams
expect:// — Process Interaction Streams
As you see rtp is not one of theese. you need to find/write rtp wrapper to reed this resource.