关于前端:Electron播放-RTMP流-实现-mac版本

在打包mac版本的时候,发现在windows下能够播放RTMP流,不能播放,剖析起因,有三个:
1、widnows下flash插件是DLL文件,在mac不能用,mac下是后缀为plugin的插件,这个须要替换
2、另外,vue-video-player`videojs-flash`这两个插件须要卸载之后,在重装,起因参照https://segmentfault.com/a/11… 这篇文章外面有说

MAC下装置adobe文件之后,会在对应目录下生成文件PepperFlashPlayer.plugin,须要把这个文件放到我的项目外面resources外面,当然打包的时候也要把该文件带上一起打包,所以批改vue.config.js的局部代码如下:

 mac: {
      target: 'dmg',
      icon: './public/app.png',
      extraResources: [
            {
              "from": "resources/",
              "to": "./",
            }
      ]
    }

在background.js主过程代码中退出mac的判断如下:

if (process.platform ==’darwin’){

console.log('以后是mac 零碎')
if( process.arch == 'x64' ){
  plugins =process.env.WEBPACK_DEV_SERVER_URL? path.join(__dirname,`../resources/PepperFlashPlayer.plugin`) :path.join(__dirname,`../PepperFlashPlayer.plugin`)
}else{
  plugins =app.getPath('pepperFlashSystemPlugin') 
}}else{
console.log('以后是windows零碎')
if( process.arch == 'x64' ){
  plugins =process.env.WEBPACK_DEV_SERVER_URL? path.join(__dirname,`../resources/pepflashplayer64_32_0_0_238.dll`) :path.join(__dirname,`../pepflashplayer64_32_0_0_238.dll`)
}else{
  plugins =app.getPath('pepperFlashSystemPlugin') 
} }

以上根本实现第一条;
在我npm 卸载和装置 vue-video-player videojs-flash的时候,会呈现在某一步卡死的状态,百度一番,说是网络问题,我换了有线也无解,这里我用了个麒麟技巧,把windows下node_modules外面的这两个包间接copy到MAC下的node_modules文件夹下,亲测可用!
以上就是MAC播放RTMP流遇到的和windows不一样须要解决的点

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理