基于jsmpeg库下使用ffmpeg建立视频流链接websocket中继器传输视频并播放

这个功能的基本工做是这样的:html

  1.使用node运行jsmpeg库下的websocket-relay.js文件,这个文件的做用是建立一个websocket视频传输中继器node

  2.运行ffmpeg,将输出发送到中继的HTTP端口,这个http端口是使用node.js搭建的一个简易的http服务器git

  3.将浏览器中的JSMpeg链接到中继的Websocket端口,浏览器中的JSMpeg是node.js环境搭建的时候输出的一个html文件,文件里面引用了JSMpeg库,             并实例化一个新的基于JSMpeg库下的Player;github

  必备工具:web

  1)安装ffmpeg,到http://ffmpeg.org/download.html下载window版本的exe文件,须要在电脑的环境变量中的path设置ffmpeg目录所在的路径 express

  

  2)安装Node.js和npm,这个安装方法就不详细介绍了npm

  3)安装http-server,固然能够使用node.js的express()搭建一个简单的服务器,咱们将使用它来提供静态文件(view-stream.html,jsmpeg.min.js),以便咱们能够在浏览器中使用视频浏览器

  

  4)安装git并克隆jsmpeg库(或者直接将它下载为ZIP并解压)服务器

    sudo apt-get install git
    git clone https://github.com/phoboslab/jsmpeg.git
 

   5)转到jsmpeg /目录 cd jsmpeg/ 安装Node.js Websocket库: npm install wswebsocket

  

   6)在jsmpeg目录中使用git命令行启用websocket中继器,这个中继器在jsmpeg库的websocket-delay.js中已经提供了,只需命令node  websocket-delay.js videoPassword streamPort websocketPort 就能够启动,其中videoPassword就是本身定义的视频流传输的密码,在后面的ffmpeg建立视频流过程会用到,streamPort则是视频流的端口号,websocketPort是websocket中继器的端口号,需跟jsmpeg库中的view-stream.html文件建立的Player的端口保持一致

   7)node启动本身搭建的简易http服务器,view-stream.html文件输出并在浏览器中打开对应的地址查看,将参见必备工具3,在浏览器中输入127.0.0.1:1023就能够看到服务器输出的view-stream.html文件

  8)在git命令中使用ffmpeg生成推流视频并输出视频到自定义的websocket中继器提供的命令node  websocket-delay.js videoPassword streamPort websocketPort地址,如:

       ffmpeg -i "video.mp4" -f mpegts -codec:v mpeg1video -s 360x480 -b:v 150k -r 30 -bf 0 -ac 1 -b:a 128k http://127.0.0.1:1024/lpgvideo
  video.mp4就是jsmpeg中视频文件,后面的http://127.0.0.1:1024/lpgvideo就是websocket中继器中自定义的视频流传输协议host+streamPort+videoPassword,参见6)跟多ffmpeg命令参见中文文档:https://xdsnet.gitbooks.io/other-doc-cn-ffmpeg/content/index.html,jsmpeg库的地址=>https://github.com/phoboslab/jsmpeg
  end:不出意外的话就能够在浏览器中看到ffmpeg推过来的video.mp4视频文件在播放,固然还有许多诸如实现实时录屏直播,使用vicam实时录播等功能,就不一一介绍了!!
相关文章
相关标签/搜索