基于electron和ffmpeg下载rtmp直播流

背景

利用electron 封装一个下载器,底层使用的是ffmpeg 去下载直播流。

支持 单次下载文件的合并功能。

技术

  • electron
  • ffmpeg
  • child_process.spawn
  • electron-packager

核心

打包

利用 electron-packager 进行打包

{
    "package": "electron-packager ./"
}

测试

可以利用nginx rtmp 插件 转发流

具体配置: https://www.jianshu.com/p/cf74a34af15d

rtmp {
  server {
    listen 1935;

    application rtmplive {
        live on;
        max_connections 1024;
    }
    application hls {

        live on;
        hls on;
        hls_path /usr/local/var/www/hls;
        hls_fragment 1s;

   }

  }

}

然后使用ffmpeg 进行推流

ffmpeg -re -i [你的视频文件的绝对路径] -vcodec copy -f flv rtmp://localhost:1935/abcs/room

然后使用客户端下载流。

截图

基于electron和ffmpeg下载rtmp直播流_第1张图片

github

https://github.com/bosscheng/electron-download

你可能感兴趣的:(nodejs)