Docker中创建nginx-rtmp流媒体服务器

准备工作

  • 需要安装好docker
  • 安装好镜像
bash 复制代码
docker pull alfg/nginx-rtmp
docker run -it -p 1935:1935 -p 8080:80 --rm alfg/nginx-rtmp  #创建临时容器,容器停止即删除
  • 安装好ffmpeg
bash 复制代码
sudo apt update
sudo apt install ffmpeg
ffmpeg -version

安装成功出现如下信息:

ffmpeg推流

采用循环推流模式

bash 复制代码
ffmpeg -re -stream_loop -1 -i ./5-2.mp4 -vcodec copy -acodec aac -ar 44100 -f flv rtmp://ip:1935/stream/example

参数解释如下:

  • ffmpeg: FFmpeg工具的启动命令。
  • re: 强制FFmpeg以输入文件的本来速度读取,即按照实际帧速率进行处理。这对于直播场景很重要。
  • stream_loop -1: 循环播放输入文件,-1表示无限循环。
  • i ./5-2.mp4: 指定输入文件为名为5-2.mp4的视频文件。
  • vcodec copy: 复制视频编解码器,保持原视频的编码方式。
  • acodec aac: 设置音频编解码器为AAC。
  • ar 44100: 设置音频采样率为44.1 kHz。
  • f flv: 指定输出格式为FLV。
  • rtmp://IP:1935/stream/example: 指定RTMP服务器的地址以及流的名称,流的名称为example

后台运行:

在局域网其他电脑打开效果

相关推荐
2501_9437823510 分钟前
【共创季稿事节】摇骰子:用 ArkTS 实现随机动画与交互反馈
运维·nginx·交互·harmonyos·鸿蒙·鸿蒙系统
tryCbest30 分钟前
Python 文件操作
服务器·python
梦梦代码精40 分钟前
电商系统不是技术堆叠:LikeShop如何用分层Hold住复杂业务?
java·docker·代码规范
负责的蛋挞1 小时前
异步HttpModule的实现方式
java·服务器·前端
Tian_Hang1 小时前
Eclipse Ditto 物模型相关代码
java·运维·服务器·ide·eureka·eclipse
zhoupenghui1683 小时前
【AI大模型应用开发】【项目实战】13.RAG智慧问答项目-(一)项目介绍&项目架构&项目环境配置
人工智能·docker·ai·milvus·rag·attu·rag智慧问答项目
iangyu3 小时前
linux配置时间同步
linux·运维·服务器
从零开始的代码生活_3 小时前
NAT、代理服务与内网穿透详解
linux·服务器·网络·c++·http·智能路由器
灯厂码农4 小时前
C语言内存管理——内存对齐与共用体union
linux·服务器·c语言
GV191rLvq4 小时前
基于Socket实现的最简单的Web服务器【ASP.NET原理分析】
服务器·前端·asp.net