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

后台运行:

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

相关推荐
wdfk_prog9 分钟前
ROS教程07:从 ros::start() 顺着源码读懂 Master、XML-RPC 与 Topic 注册发现
运维·缓存·docker·容器·ros
mengge.cloud30 分钟前
0917Docker 小白实验教程(理论+实操)
linux·服务器·网络·docker
两点王爷2 小时前
常用的 Docker 镜像拉取地址仓库及常用命令详解
运维·服务器·容器
wdfk_prog2 小时前
用 Git Submodule + Sparse Checkout 管理 RT-Thread:内核、BSP、第三方库与业务代码分层实践
运维·缓存·docker·容器·ros
努力努力再努力wz2 小时前
【Docker入门系列】镜像为什么能复用?一文吃透 Docker Image、Registry、运行时架构与常用命令
缓存·docker·容器
神.秘.人2 小时前
【BIOS/UEFI 与 MBR/GPT 的区别详解】
运维·服务器
第十人i2 小时前
Linux 一键重装系统脚本:reinstall 工具详解
linux·服务器
aramae3 小时前
Python 使用库:标准库与第三方库实战
服务器·开发语言·windows·python
yuzhiboyouye3 小时前
XML写接口适用场景举例
java·服务器·前端
yuzhiboyouye4 小时前
零sql和xml写接口,的区别是什么,过程是什么,举例一下下,用mybatis-plus+ spring-boot
java·服务器·前端