首页 > 其他分享 >ffmpng 对rtmp服务器 推流做压力测试

ffmpng 对rtmp服务器 推流做压力测试

时间:2023-12-25 11:24:39浏览次数:42  
标签:scale ffmpeg vf command ffmpng rtmp import 推流

使用 ffmpeg-python  对rtmp 服务器做压力测试
FFmpeg 下载: https://github.com/BtbN/FFmpeg-Builds/releases    ffmpeg-master-latest-win64-gpl.zip
 
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @mail    : [email protected]
# @Time    : 2023/12/23 16:05
# @Author  : Sea
# @File    : ffmpngtest4.py
# @history:   使用 ffmpeg-python  对rtmp 服务器做压力测试
# ****************************
import subprocess
import threading
import datetime
import uuid

RTMP_SERVER = "rtmp://192.168.18.61:1935/Sea1/test212"
MP4_FILE =  "F:\SeaCode\pytest\FFmpeg\zbh_zp_bg.mp4"
NUM_CLIENTS = 10  # 模拟客户端数量
# ffmpeg_command = "ffmpeg -re -i /home/sea/test/video.mp4 -c:v copy -f flv rtmp://192.168.18.61:1935/Sea1/test212"
# 调整分辨率 -vf scale=1280:720   -vf scale=854:480参数来指定视频的分辨率为480p
# ffmpeg_command = "ffmpeg -re -i /home/sea/test/video.mp4 -vf scale=1280:720 -c:v libx264 -f flv rtmp://192.168.18.61:1935/Sea1/test212"

def push_to_rtmp(url):
    strftime = datetime.datetime.now().strftime("%Y-%m-%d-%H_%M_%S")
    command = [
        "ffmpeg",
        "-re",
        "-i", MP4_FILE,
        "-vf", "scale=854:480",
        "-c:v", "libx264",
        "-preset", "ultrafast",
        "-tune", "zerolatency",
        "-c:a", "aac",
        "-f", "flv",
        url+str(strftime)
    ]
    subprocess.run(command)

threads = []

for i in range(NUM_CLIENTS):
    t = threading.Thread(target=push_to_rtmp, args=(RTMP_SERVER+str(i),))
    threads.append(t)
    t.start()

for t in threads:
    t.join()

 

标签:scale,ffmpeg,vf,command,ffmpng,rtmp,import,推流
From: https://www.cnblogs.com/lshan/p/17925728.html

相关文章

  • Android平台RTMP推送|轻量级RTSP服务能力封装代码实现
    好多开发者问我们,有没有针对Android平台RTMP直播推送、轻量级RTSP服务模块的进一步封装,可以更便捷的调用大牛直播SDK接口。为此,我们分享下我们针对Android平台SmartPublisher做的二次封装代码:packagecom.daniulive.smartpublisher;importandroid.util.Log;importjava.nio.By......
  • Android平台RTSP流如何添加动态水印后转推RTMP或轻量级RTSP服务
    技术背景我们在对接外部开发者的时候,遇到这样的技术诉求,客户用于地下管道检测场景,需要把摄像头的数据拉取过来,然后叠加上实时位置、施工单位、施工人员等信息,然后对外输出新的RTSP流,并本地录制一份带动态水印叠加后的数据。整个过程,因为摄像头位置一直在变化,所以需要整体尽可能的低......
  • iTOP-RK3588开发板使用FFMpeg进行推流
    Debian/Ubuntu系统使用以下命令安装FFMpeg,如下图所示:apt-getinstallffmpeg使用ifconfig查看开发板ip为192.168.1.245如下图所示:使用FFMpeg推流一个mp4视频进行测试,作者将测试视频test.mp4放在了根目录下,可根据实际目录修改以下命令,如下图所示:ffmpeg-re-stream_l......
  • WVP+ZLMediaKit实现摄像头GB28181推流播放
    一、介绍概述WVP-PRO基于GB/T28181-2016标准实现的流媒体平台,依托优秀的开源流媒体服务ZLMediaKit,提供完善丰富的功能。GB/T28181-2016中文标准名称是《公共安全视频监控联网系统信息传输、交换、控制技术要求》是监控领域的国家标准。大量应用于政府视频平台。通过28181......
  • rkmedia的视频采集、编码、推流与保存
    rkmedia简介RKMedia是由瑞芯微提供的专门用于音视频处理的系统。它提供了丰富的功能,包括音视频采集、编解码、加密解密等操作。在音视频传输中,编解码是必不可少的环节,它可以减小文件大小,节省带宽。RKMedia支持多种视频编码方式,如H264,并且在H264编码中,将视频数据帧分为关键帧(I帧)、单......
  • Qt/C++视频监控拉流显示/各种rtsp/rtmp/http视频流/摄像头采集/视频监控回放/录像存储
    一、前言本视频播放组件陆陆续续写了6年多,一直在持续更新迭代,视频监控行业客户端软件开发首要需求就是拉流显示,比如给定一个rtsp视频流地址,你需要在软件上显示实时画面,其次就是录像保存,再次就是一些周边的处理比如贴OSD,做图片分析等。拉流显示是第一步,如果有跨平台的需求,个人推荐......
  • 使用RTMP推流到安防监控平台LiteCVR,FLV视频无法播放的原因排查
    有用户反馈,现场设备使用RTMP协议接入到视频监控汇聚LiteCVR平台,HLS和webrtc格式的视频流都能正常播放,FLV视频流却播放不了,请求我们协助排查和解决。LiteCVR可支持的协议非常多,包括国标GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,比如海康Ehome协议、海大宇等设备的SDK等......
  • RTMP协议学习——Message与Chunk解读
    前言之前通过对抓包数据的学习和分析,对RTMP协议有了一个整体的认知,大致了解了RTMP从建立连接到播放视频的流程,文章请看《RTMP协议学习——从握手到播放》。但是对于RTMP消息传输的载体还没有过多的分析。本文将会就RTMP的传输数据方面,对RTMP协议进行进一步的研究和学习。Messag......
  • 【直播协议详解】RTMP、HLS、HTTP-FLV、WebRTC、RTSP的区别
    本期我们详细讨论直播的相关协议,包括:HTTP-FLV、HLS、RTMP、Web-RTC、RTSP等等。我们将会详细介绍这些协议的工作原理、应用场景、及延迟的原因。我们按这样的顺序讨论​:RTMP、HTTP-FLVHLSWeb-RTCRTSP一、RTMP、HTTP-FLV协议RTMP和HTTP-FLV都是建立在FLV封装之上的。RTM......
  • 摄像头 推流打电视大屏集成 easydarwin 项目备忘
    EasyDarwin直播(推流、拉流)配置好像有点麻烦,不推荐使用开源的。用商用版本的配置简单一点。前后端分离,静态html页面集成大屏接口数据,这样不用安装编程工具,轻量。推流的视频容易断流(稳定性不太乐观)。  winform, wpf还是比较靠谱,集成海康dll,就是开发环境重量,不好现场......