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

后台运行:

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

相关推荐
70后写java的老码农2 小时前
docker-compose 部署 Redis Stack Server 6.2.6-v19
redis·docker
AOI小白新手上路2 小时前
深度学习算力购置方案分析:本地 RTX 4090 服务器 vs 云端租赁
服务器·人工智能·深度学习
千桐科技2 小时前
qKnow智能体构建平台专业版 v3.1.5 发布:扩容工作流编排调用能力,上线Text2SQL插件,拓宽数据类智能应用构建边界
服务器·数据库·oracle·qknow
雪落漂泊2 小时前
Linux进程(四)概念:命令行参数和环境变量篇
linux·运维·服务器
方便面不加香菜2 小时前
Docker Container -- 容器命令详解
运维·docker·容器
NextTech_2 小时前
不想学 vim,怎么改服务器上的配置文件?
服务器·编辑器·vim
say_fall3 小时前
【Linux系统编程】Linux进程信号:从“外卖到了“到内核里的一张位图
linux·运维·服务器·车载系统·智能硬件
坤坤子吖4 小时前
Linux网络编程:UDP进阶,从字典服务器到简单聊天室
linux·服务器·网络·c++·笔记·学习
FungLeo4 小时前
成为全栈·基础补充·Linux 服务器入门
linux·运维·服务器·ssh·部署·成为全栈
爱和冰阔落4 小时前
【Linux网络】TCP 服务器怎么写?从 listen、accept 到 read/write,手写完整 Echo Server
linux·运维·服务器·网络