在github上搜到说可以用node-rtsp-stream
来转码视频流,
根据https://www.npmjs.com/package...上写的,
我npm install node-rtsp-stream
以后,在node上执行
Stream = require('node-rtsp-stream'); stream = new Stream({ name: 'name', streamUrl: 'rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov', wsPort: 9999 });
之后在js里写的
client = new Websocket('ws://localhost:9999'); player = new jsmpeg(client, { canvas: canvas // Canvas should be a canvas DOM element });
我不明白Websocket
里这个地址是什么地址?,求大神
第一个问题,
websocket
是什么,请 google 或者 baidu。第二个问题,代码里的地址,即是你作为 stream server 的地址,上面的代码里那个 stream 起来后会监听 9999 端口,于是客户端通过 websocket 协议与之 9999 端口连接并接受推流。
这个需要安装ws 你可以 npm install ws ws:ip:port 来读取服务器的流
不过 你这个方案需要服务器 安装ffmpeg的 二次转码 延迟比较大