当前位置: 首页 > article >正文

rtmp推流

获取摄像头名称
  • 打开命令行工具,运行以下命令以列出所有可用的视频设备:
    ffmpeg -f dshow -list_devices true -i dummy
    
  • 查找输出中的“Video devices”部分,记录下你的摄像头名称。

构建推流命令

ffmpeg -f dshow -i video="摄像头名称":audio="麦克风名称" -vcodec libx264 -preset veryfast -tune zerolatency -acodec aac -ar 44100 -ac 2 -b:a 128k -f flv rtmp://服务器地址/应用名/流名称

  • -acodec aac 设置音频编码为AAC。
  • -ar 44100 设置音频采样率为44100Hz。
  • -ac 2 设置音频通道数为2(立体声)。
  • -b:a 128k 设置音频比特率为128kbit/s。

如果想要同时使用两个摄像头进行推流,其中一个是本地摄像头(同时录制声音和视频),另一个是外接摄像头(仅录制视频),你可以使用FFmpeg的concat功能或者使用两个独立的FFmpeg进程。以下是使用两个FFmpeg进程的方法:

首先,为每个摄像头分别启动一个FFmpeg进程。

1. 本地摄像头(录制声音和视频)

ffmpeg -f dshow -i video="本地摄像头名称":audio="麦克风名称" -vcodec libx264 -acodec aac -preset veryfast -tune zerolatency -f flv rtmp://服务器地址/应用名/本地摄像头流名称

2. 外接摄像头(仅录制视频)

ffmpeg -f dshow -i video="外接摄像头名称" -vcodec libx264 -preset veryfast -tune zerolatency -an -f flv rtmp://服务器地址/应用名/外接摄像头流名称

-an 参数用于禁用音频录制,因为我们只想要外接摄像头的视频流。

执行两个FFmpeg命令

  • 打开两个命令提示符窗口。
  • 在第一个窗口中运行本地摄像头的FFmpeg命令。
  • 在第二个窗口中运行外接摄像头的FFmpeg命令。

这样,两个摄像头就会分别推流到服务器上指定的不同流名称。


http://www.kler.cn/a/312819.html

相关文章:

  • NVIDIA NIM 简介
  • Redis主从复制(replication)
  • Java项目实战II基于Spring Boot的药店管理系统的设计与实现(开发文档+数据库+源码)
  • Linux驱动开发(4):Linux的设备模型
  • 可编辑PPT | 指挥中心系统建设与应用方案
  • 【LLM】3:从零开始训练大语言模型(预训练、微调、RLHF)
  • Linux基础命令——账户简单管理
  • 英集芯IP5902:集成电压可调异步升压转换充电管理功能的8位MCU芯片
  • uniapp使用uview2上传图片功能
  • 通威股份半年报业绩巨降:销售费用大增,近一年股价跌四成
  • 算法-分治和逆序
  • 操作系统笔记三
  • Jboss 低版本JMX Console未授权
  • 828华为云征文|华为Flexus云服务器打造FastBee物联网平台
  • Linux Inode 概念、查看、引发的问题及常见解决方案
  • Unity多语言插件I2 Localization国际化应用
  • JAIN SLEE 中Container Managed Persistent (CMP)
  • 使用 Spring Boot + Redis + Vue 实现动态路由加载页面
  • centos 安装VNC,实现远程连接
  • Unity3d开发的C#编码规范
  • 【自然语言处理】补充:布尔模型
  • VMware Fusion虚拟机Mac版 安装Win10系统教程
  • 如何在Windows上安装Docker
  • centos 7.9安装k8s
  • SpringBoot开发-数据加密
  • 鸿蒙开发(NEXT/API 12)【同步读写流】远场通信服务