直播搭建

https://blog.youkuaiyun.com/boonya/article/details/52210576

https://www.nihaoshijie.com.cn/index.php/archives/615

 

 

RTMP 
RTMP是Real Time Messaging Protocol(实时消息传输协议) 
RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。支持该协议的软件包括Adobe Media Server/Ultrant Media Server/red5等。

nginx 
毛子开发的服务器,很强,很轻

nginx-rtmp-module 

相关文档:

https://github.com/arut/nginx-rtmp-module/wiki/

1、下载nginx  rtmp模块

wget https://codeload.github.com/arut/nginx-rtmp-module/zip/master

2、解压zip包

unzip master.zip

3、找到nginx源码包,添加 rtmp模块

 ./configure --add-module=/home/likang/package/nginx-rtmp-module

4、编译 编译安装

 
  1. make

  2. make install

5、添加配置

 
  1. rtmp {

  2.  
  3. server {

  4.  
  5.  
  6. listen 2018; #监听的端口

  7.  
  8. chunk_size 4000; #块大小

  9.  
  10.  
  11. application hls { #rtmp推流请求路径

  12. live on;

  13. hls on;

  14. hls_path /var/www/html/zhibo_rtmp;

  15. hls_fragment 5s;

  16. }

  17. }

  18. }

 
  1. server {

  2. listen 81;

  3. server_name _;

  4. root /var/www/html/zhibo_rtmp;

  5. #charset koi8-r;

  6.  
  7. access_log logs/81.access.log main;

  8. error_log logs/81.error.log;

  9.  
  10. location / {

  11. index index.html index.htm index.php;

  12. autoindex on;

  13. }

  14.  
  15. #error_page 404 /404.html;

  16.  
  17. # redirect server error pages to the static page /50x.html

  18. #

  19. error_page 500 502 503 504 /50x.html;

  20. location = /50x.html {

  21. }

  22.  
  23. # proxy the PHP scripts to Apache listening on 127.0.0.1:80

  24. #

  25. #location ~ \.php$ {

  26. # proxy_pass http://127.0.0.1;

  27. #}

  28.  
  29. # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

  30. #

  31. location ~ \.php$ {

  32. fastcgi_pass 127.0.0.1:9000;

  33. fastcgi_index index.php;

  34. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

  35. include fastcgi_params;

  36. }

  37.  
  38. # deny access to .htaccess files, if Apache's document root

  39. # concurs with nginx's one

  40. #

  41. #location ~ /\.ht {

  42. # deny all;

  43. #}

  44. }

6、下载obs,用obs软件进行推流

点击设置进入设置页面

 

串流类型选择: 自定义流媒体服务器

URL: rtmp://47.94.150.11:2018/hls

流秘钥 : test

      自己定义,注意后边在拉直播流的时候 和这里保持一致

7、拉取直播流

 

 
  1. <!DOCTYPE html>

  2. <html lang="en">

  3. <head>

  4.  
  5. <title>Video.js | HTML5 Video Player</title>

  6.  
  7. <link href="http://vjs.zencdn.net/5.20.1/video-js.css" rel="stylesheet">

  8. <script src="http://vjs.zencdn.net/5.20.1/videojs-ie8.min.js"></script>

  9.  
  10. </head>

  11. <body>

  12.  
  13. <video id="example_video_1" class="video-js vjs-default-skin" controls preload="auto" width="1280" height="720" poster="http://vjs.zencdn.net/v/oceans.png" data-setup="{}">

  14. <!-- <source src="1.mp4" type="video/mp4"> -->

  15. # 这个地方修改为自己的流媒体服务器 如何访问直播流

  16. <source src="http://47.94.150.11:8088/test.m3u8" type='application/x-mpegURL'>

  17. <p class="vjs-no-js">To view this video please enable JavaScript, and consider upgrading to a web browser that <a href="http://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a></p>

  18. </video>

  19.  
  20. <script src="http://vjs.zencdn.net/5.20.1/video.js"></script>

  21. </body>

  22.  
  23. </html>

 

 

 

<think>好的,用户想了解如何搭建AI直播系统或平台的架构方案。首先,我需要回忆一下相关的知识,并结合之前的引用内容来组织回答。用户之前提到了大模型应用的平台架构和技术架构,这可能与AI直播系统的搭建有共通之处。 首先,AI直播系统的基本架构应该包括哪些模块呢?通常直播系统有采集、处理、传输、分发、播放这几个环节。加入AI功能的话,可能涉及实时处理、智能推荐、内容审核等。需要结合AI模型,比如计算机视觉或自然语言处理模型,来处理视频流或弹幕。 然后,用户提到的引用[1]中提到了大模型应用的业务架构和技术架构,这可能涉及到如何将AI模型集成到业务中。比如,使用提示工程、指令调优等方法,这可能适用于AI直播中的实时交互或内容生成。引用[2]中的架构模式,如适配器模式,可能在系统集成时有用,尤其是在不同模块之间的接口适配。 接下来,我需要分步骤说明搭建的架构方案。可能需要分为基础设施层、AI能力层、业务逻辑层、应用层等。基础设施包括云服务器、CDN、存储等。AI能力层需要集成实时视频分析、语音识别、推荐算法等模型。业务逻辑层处理直播流程,如房间管理、弹幕、礼物系统。应用层则是用户界面。 技术选型方面,视频处理可能需要FFmpeg,AI框架可能用TensorFlow或PyTorch,部署可能用Docker或Kubernetes。引用[1]提到的代码示例,比如向GPT-3.5灌入新知识,可能适用于直播中的智能客服或自动回复功能。 还需要考虑实时性和高并发,比如使用WebRTC降低延迟,消息队列处理高并发请求。AI模型的优化也很重要,比如模型压缩、分布式推理,以应对实时处理的需求。 最后,生成相关的问题,可能涉及性能优化、技术选型对比、具体AI功能的实现细节等。确保问题与用户的需求相关,帮助他们深入理解搭建过程中的关键点。</think>### AI直播系统架构搭建方案 搭建AI直播平台需要融合传统直播技术与人工智能能力,以下是分层次架构方案: $$ \begin{array}{ccc} \text{应用层} & \rightarrow & \text{客户端/管理后台} \\ \downarrow & & \uparrow \\ \text{业务逻辑层} & \leftrightarrow & \text{AI能力层} \\ \downarrow & & \uparrow \\ \text{基础设施层} & \leftarrow & \text{数据处理层} \end{array} $$ #### 一、核心架构模块 1. **基础设施层** - 视频处理:采用$FFmpeg$进行实时转码,支持HLS/DASH协议 - 网络传输:使用$WebRTC$实现低延迟通信(<500ms) - 分布式存储:对象存储服务处理$4K/60fps$视频流 - 负载均衡:Nginx+Keepalived实现百万级并发连接[^1] 2. **AI能力层** - 实时视频分析:YOLOv8实现$30fps$物体检测 - 语音处理:Whisper模型实现实时字幕生成 - 智能推荐:基于GNN的用户兴趣图谱(准确率>85%) - 内容审核:多模态检测模型(召回率>99%) 3. **业务逻辑层** ```python # 示例:AI弹幕互动系统 class AIChatProcessor: def __init__(self): self.nlp_model = load_bert_model() self.emotion_model = load_emotion_classifier() def process_message(self, msg): intent = self.nlp_model.predict(msg) emotion = self.emotion_model.predict(msg) return generate_response(intent, emotion) ``` #### 二、关键技术选型 | 模块 | 推荐方案 | 性能指标 | |-------------|---------------------------|----------------------| | 视频编码 | NVIDIA Video Codec SDK | 8K@120fps实时编码 | | AI推理 | TensorRT + Triton Server | <10ms推理延迟 | | 消息队列 | Kafka + Pulsar | 百万级TPS处理能力 | | 数据库 | Redis+TiDB组合方案 | 50万QPS读写性能 | #### 三、典型工作流程 1. 视频采集端通过$RTMP$推流到边缘节点 2. 智能调度系统动态分配$CDN$节点(响应时间<200ms) 3. AI处理引擎实时分析视频流: $$ \text{处理延迟} = T_{\text{decode}} + T_{\text{inference}} + T_{\text{encode}} < 300ms $$ 4. 用户终端通过$HTTP-FLV$协议拉流播放 #### 四、系统优化要点 1. **模型压缩**:使用$Pruning+Quantization$技术,将ResNet-50模型从98MB压缩到12MB 2. **边缘计算**:部署$AWS Wavelength$实现5G网络边缘处理 3. **弹性扩缩容**:基于Kubernetes的自动扩缩容策略(CPU利用率>80%触发)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值