文章目录

  • 1. FFMPEG 推流:
    • 1.1 FFmpeg 源码准备
    • 1.2 RTSP 推流服务器
  • 2. 执行流程
    • 2.1 启动服务器
    • 2.2 执行桌面推流
    • 2.3 播放
  • 3. 安卓测试

1. FFMPEG 推流:

1.1 FFmpeg 源码准备

官网,GitHub,CSDN中选一个就好:

● 官网:

Builds - CODEX FFMPEG @ gyan.dev

下载源码:选择一个就好


● GitHub

Releases · BtbN/FFmpeg-Builds (github.com)

● CSDN 已上传 ffmpeg 和 rtsp 服务器:

‍FFmpeg RTSP 推流桌面

1.2 RTSP 推流服务器

● GitHub

Releases · aler9/mediamtx (github.com)

2. 执行流程

​ 解压后:

2.1 启动服务器

● ​双击 运行 即可:

● ​弹出此界面:

2.2 执行桌面推流

● 在源码 bin 文件下打开终端:

● 运行指令:

ffmpeg -f gdigrab -i desktop -s 1280x720 -rtsp_transport tcp -preset ultrafast -acodec libfaac -f rtsp rtsp://127.0.0.1:8554/stream

参数说明:

-f gdigrab ​​ ,gdigrab基于Win32 GDI的屏幕捕获设备。可以捕获Windows桌面屏幕显示区域的画面图像

-i desktop​ : 指定输入文件。 desktop是指输入设备是桌面屏幕

-f rtsp rtsp://127.0.0.1:8554/stream​: 输出格式为rtsp流,地址为本机地址

● 开始推流

● 打开打开北京时间:

北京时间校准_北京时间在线校准显示毫秒 - 倒计时器 (daojishiqi.com)

2.3 播放

● vlc 播放流:

rtsp://127.0.0.1:8554/stream

● 显示:

可以看出vlc的延时相当大的:

3. 安卓测试

● ipconfig 查到window本机地址为 192.168.xx.xx

● 安卓端播放器输入地址 rtsp://192.168.xx.xx/stream

安卓采用 FFMPEG 4.4.1版本,使用 QVideoFrame 代替sws方案,VideoOutput 来刷新图片



加上图传再测试,约增加50~100ms延时

● 其它方式推流

  • 本文介绍的桌面推流:
    ​ffmpeg -f gdigrab -i desktop -s 1280x720 -rtsp_transport tcp -preset ultrafast -acodec libfaac -f rtsp rtsp://127.0.0.1:8554/stream

  • UDP推流:
    ffmpeg -re -i input.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/stream

  • TCP推流:
    ffmpeg -re -i input.mp4 -c copy -rtsp_transport tcp -f rtsp rtsp://127.0.0.1:8554/stream

  • 循环推流:
    ffmpeg -re -stream_loop -1 -i input.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/stream

      其中:-re 为以流的方式读取;-stream_loop 为循环读取视频源的次数,-1为无限循环;-i 为输入的文件;-f 为格式化输出到哪里
    

FFmpeg 中 RTSP推流桌面和Android设备延时测试相关推荐

  1. 设置VLC播放器进行RTSP推流桌面(共享桌面)

    设置VLC播放器进行RTSP推流桌面(共享桌面) 一.推流与拉流概念 二.设置推流端 三.设置拉流端(播放端) VLC官网:https://www.videolan.org/ 一.推流与拉流概念 首先 ...

  2. 基于VLC实现RTSP推流桌面(共享桌面)

    基于VLC实现RTSP推流桌面(共享桌面) 一.添加VLC头文件和库文件 二.封装RTSPServer推流类 三.测试代码 不清楚推流大概原理的小伙伴,参考<设置VLC播放器进行RTSP推流桌面 ...

  3. rtsp推流桌面,vlc拉流

    rtsp推流桌面,vlc拉流 首先去vlc下载官网:https://www.videolan.org/ 下载vlc播放器. 1.vlc下载完成之后打开vlc,点击媒体->流 2.在捕获模式选择' ...

  4. android 蓝牙链接电脑,如何使从台式电脑到Android设备的测试蓝牙连接

    我正在使用具有蓝牙适配器的Ubuntu 11.10台式电脑和使用带有蓝牙的Android 2.2的Android平板电脑. (两款设备上的蓝牙版本应为2.0或2.1版本)如何使从台式电脑到Androi ...

  5. 使用EasyDarwin+FFmpeg实现rtsp推流

    一.背景 ​ 最近在学习ffmpeg的基本操作,ffmpeg功能非常强大,可以运行音频和视频多种格式的录影.转换.流功能,包含了libavcodec--这是一个用于多个项目中音频和视频的解码器库,以及 ...

  6. FFmpeg 中的 log 输出到 Android 的 logcat 中

    FFmpeg 的 log 重定向到 Android 的 logcat FFmpeg 打印日志的函数 首先,来了解下 FFmpeg 自己的日志系统 – 使用 av_log() 函数打印日志,其声明位于: ...

  7. FFmpeg中RTSP客户端拉流测试代码

    之前在https://blog.csdn.net/fengbingchun/article/details/91355410中给出了通过LIVE555实现拉流的测试代码,这里通过FFmpeg来实现,代 ...

  8. LIVE555中RTSP客户端接收媒体流分析及测试代码

    LIVE555中testProgs目录下的testRTSPClient.cpp代码用于测试接收RTSP URL指定的媒体流,向服务器端发送的命令包括:DESCRIBE.SETUP.PLAY.TERAD ...

  9. MP4转RTSP推流(ffmpeg和easydarwin)

    准备工作:ffmpeg包.easydarwin服务包.测试环境(windows) ffmpeg和easydarwin都支持全平台; PS: 直接使用VLC也可以推流,更加简单,我这是特殊使用场景 安装 ...

最新文章

  1. 路由交换-hc-文档
  2. 使用libFuzzer fuzz Chrome V8入门指南
  3. 超全的 Linux Shell 文本处理工具集锦,快收藏
  4. first-软件工程
  5. #589. 图图的游戏
  6. vue 实现数据滚动显示_vue实现动态添加数据滚动条自动滚动到底部的示例代码...
  7. VBA学习过程中遇到的问题(主要针对Excel)
  8. 小米这个系列绝了!7款之后再添新机,完全分不清
  9. php统计字数指定位置,php实现的统计字数函数定义与使用示例
  10. 二十、SAP中定义内表
  11. 新建Scrapy项目
  12. mysql connections 作用_MySQL性能优化之max_connections配置参数浅析
  13. bitcoin 源码解析 - 交易 Transaction(三) - Script
  14. html一像素等于多少px,pt和px换算(一pt等于多少像素)
  15. java中操作docker
  16. (C语言版)百钱买百鸡问题:公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱, 用100文钱买100只鸡,公鸡、母鸡、小鸡各买多少只?
  17. LaTeX 如何安装一些非免费字体 getnonfreefonts
  18. 香港云服务器比香港服务器更快吗?
  19. AUTOCAD2008注册
  20. 【翻译】TypeScript: Documentation - Narrowing

热门文章

  1. 【先楫HPM6750系列】RT-Thread SDIO驱动和文件系统
  2. Linux命令行的艺术
  3. 下载网站(不是爬虫)
  4. mysql 把表名改成大写_MYSQL将表名称修改成大写的存储过程
  5. foxmai过滤器无效的解决办法
  6. SSD 驱动ssw101b 无线wifi
  7. Golang流媒体实战之五:lal推流服务源码阅读
  8. ArcGIS中不小心移动的图斑怎么还原?(附自动保存插件下载)
  9. 直播视频搭建平台----如何短期实现快速搭建上线占据市场吸取流量
  10. 解决在excel绘制折线图或面积图中横坐标时间间隔不相等问题