JSMpeg是一个JAVAScript编写的视频解码器,支持MPEG1视频、MP2音频解码,WebGL&Canvas2D渲染、WebAudio音频输出。
JSMpeg可以通过Ajax加载静态视频、或通过WebSocket加载低延迟的流媒体(延时50ms)。
JSMpeg 在iphone 5S上支持以30fps的速度解码720P的视频,支持绝大多数的现代浏览器,并且库非常的小巧。
https://github.com/phoboslab/jsmpeg
下载可执行的ffmpeg,并在系统环境变量PATH里指向ffmpeg可执行文件的目录 。
更详细的配置过程可见本系列文章上一篇的内容。
多数linux发行版已包含nodejs,本安装过程省略。
npm install -g ws
npm install ws
npm install http-server -g
jsmpeg
打开一个命令行,进入jsmpeg目录,运行:
node websocket-relay.js supersecret 8081 8082
参数说明:
再打开一个命令行启动推流
ffmpeg -I "rtspurl节目源地址" -q 0 -f mpegts -codec:v mpeg1video -s 1366x768 http://127.0.0.1:8081/supersecret
再打开一个命令行进入jsmpeg目录,输入:
http-server
用浏览器打开网址
http://ip:8080/view-stream.html
正常就能看到视频画面了。
本测试只看单路视频,实际使用中需要再进行开发完善功能。