基于jsmpeg实现网页无插件播放h264/h265实时视频

基于jsmpeg实现网页无插件播放h264/h265实时视频
视频源为基于rtsp的海康IPC(h265编码)

环境:centos 7.6.1810 内核: 3.10.0-957.el7.x86_64

  1. 下载并安装ffmpeg
    wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz
    此处采用了ffmpeg 5.0

  2. 下载并安装nodejs

wget https://nodejs.org/dist/v16.14.0/node-v16.14.0-linux-x64.tar.xz
此处 nodejs采用了16.14.0版本, npm采用了8.3.1版本
较低的nodejs和npm版本可能无正常工作

  1. 获取jsmpeg

wget https://github.com/phoboslab/jsmpeg/archive/refs/heads/master.zip

  1. npm install ws -g
  2. npm install http-server -g
  3. export NODE_PATH=/opt/node/lib/node_modules
  4. node websocket-relay.js passwd 8081 8082
    从ffmpeg进程获取码流并通过websocket推送给web浏览器
  5. ffmpeg -i "rtsp://admin:Hy123456@192.168.5.208:554/Streaming/Channels/101" -r 30 -q 0 -f mpegts -codec:v mpeg1video -s 1366x768 http://127.0.0.1:8081/123456
    从海康摄像机拉流并推送给websocket-relay代理
  6. http-server
    web容器
    10 http://127.0.0.1:8080/view-stream.html
    web浏览器运行jsmpeg,对视频流进行h265解码,渲染
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容