node.js fluent-ffmpeg 桌面推流

devtools/2024/11/27 2:32:40/

1,安装fluent-ffmpeg,npm install fluent-ffmpeg

2,推流代码:

//stream.js
const ffmpeg = require('fluent-ffmpeg');

  const rtmpUrl = "rtmp://localhost:1935/live/desktop";
  //ffmpeg -f gdigrab -i desktop -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -f flv -pix_fmt yuv420p rtmp://localhost:1935/live/desktop

  // 配置 ffmpeg
  const command = ffmpeg()
    .input('desktop') // 捕获桌面
    .inputFormat('gdigrab')  //windows
    //.inputOptions([
    //  '-framerate 30',
    //  '-video_size 1920x1080'
    //])
    .outputOptions([
      '-c:v libx264',
      '-preset ultrafast',
      '-tune zerolatency',
      '-f flv',
      '-pix_fmt yuv420p'
    ])
    .output(rtmpUrl);

  // 开始推流
  command.run();

  console.log('开始推流到:', rtmpUrl);
 


http://www.ppmy.cn/devtools/137284.html

相关文章

Axure PR 9 二级滑动选择器 设计交互

​大家好,我是大明同学。 这期内容,我们来探讨Axure中二级滑动选择器设计与交互技巧。 二级滑动选择器 创建滑动选择器所需的元件 1.在元件库中拖出两个中继器元件。 2.选中中继器元件,样式窗格中分别命名,“左边,…

裸金属服务器能够帮助企业解决哪些问题?

随着网络科技的快速发展,企业业务也在不断的进行扩张和复杂化,传统的服务已经无法满足企业对于高性能和高稳定性的需求,而裸金属服务器则能够帮助企业来解决这一问题,下面我们就来具体看一下吧! 裸金属服务器能够允许应…

docker离线安装linux部分问题整理

0:离线安装docker过程命令 echo $PATH tar -zxvf docker-26.1.4.tgz chmod 755 -R docker cp docker/* /usr/bin/ root 权限 vim /etc/systemd/system/docker.service --------- [Unit] DescriptionDocker Application Container Engine Documentationhttps://docs.do…

如何用通义灵码快速绘制流程图?

使用通义灵码快速绘制流程图?新功能体验 不想读前人“骨灰级”代码,不想当“牛马”程序员,想像看图片一样快速读复杂代码和架构? 通义灵码已经支持代码逻辑可视化,可以把你的每段代码画成流程图。像个脑图工具一样帮你…

web组态软件

1、强大的画面显示web组态功能 2、良好的开放性。 开放性是指组态软件能与多种通信协议互联,支持多种硬件设备,向上能与管理层通信,实现上位机和下位机的双向通信。 3、丰富的功能模块。 web组态提供丰富的控制功能库,满足用户的测…

如何定制谷歌浏览器的外观主题

在数字化时代,浏览器已成为我们日常生活中不可或缺的一部分。谷歌浏览器,以其快速、稳定和丰富的扩展程序而广受用户喜爱。但你知道吗?除了强大的功能外,谷歌浏览器还允许用户通过定制外观主题来打造更加个性化的浏览体验。本文将…

C#(12) 内部类和分部类

前言 我们发现,其实我们这几节一直都在学习拓展相关的方法,不管是拓展方法,还是运算符重载,还是今天的内部类和分部类。它们都可以用来增强、扩展或重新定义类的功能,使得代码更加灵活和可重用。 研究分部类和内部类…

python VS c++

一、语法特点 Python: 语法简洁、优雅,代码可读性极强,采用缩进来表示代码块,摒弃了像 C 那样使用大括号的传统方式,使得代码看上去十分清晰简洁。例如: ​ if 5 > 3:print("5大于3") elif 5 …