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

后台运行:

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

相关推荐
疯狂打码的少年4 小时前
【数据库技术】关系模型基本概念(关系/属性/元组/键)
java·服务器·数据库·笔记
浮生望6 小时前
Docker 入门实战:容器化思想、nginx 反向代理与容器生命周期管理
docker
2601_966799047 小时前
酷嗨米J300:一台相机同步推三平台
运维·服务器·负载均衡
Bamtone20258 小时前
Bamtone班通:TDR阻抗测试仪如何高效助力AI服务器高速信号完整性验证?
服务器·人工智能·阻抗测试·阻抗分析
Brilliantwxx8 小时前
【Linux】 进程(7)深度剖析 进程内核O(1)调度队列 + 饥饿问题
linux·运维·服务器
疯狂打码的少年9 小时前
【数据库技术】关系完整性约束(实体/参照/用户定义)
运维·服务器·数据库·笔记
刚入门的大一新生9 小时前
Linux-命令行参数和环境变量
linux·运维·服务器
FreeTinker9 小时前
Java文件服务器的技术选型与实现路径:从嵌入式工具到企业级系统
java·服务器·开发语言
我星期八休息10 小时前
Linux I/O多路转接—epoll
java·linux·运维·服务器·开发语言·jvm·算法
土星云SaturnCloud10 小时前
超轻量 OCR 实战:PP-OCR 边缘部署实践
服务器·人工智能·ai·ocr·边缘计算