imx6ull 开发板,RTMP 推流本地视频 到虚拟机

提前在电脑上把视频转码为 H.264 视频 + AAC 音频 封装的 MP4 文件。

这样在开发板上推流时,可以直接使用 -c copy(不解码不编码),CPU 占用率不到10%

在电脑上用 FFmpeg ,把视频转换成 imx6ull 开发板专用的格式:

设置分辨率: "scale=480:272" 或者 "scale=800:480"

下面是视频的转换命令:

ffmpeg -i 原始视频.mp4 -c:v libx264 -profile:v baseline -preset fast -vf "scale=480:272" -c:a aac -b:a 64k output-imx6ull.mp4

转换后的视频,拷贝到开发板。

开发板的推流命令:

ffmpeg -re -i output-imx6ull.mp4 -c copy -f flv rtmp://192.168.137.199:1935/live/test

虚拟机的拉流命令:

ffplay -fflags nobuffer -flags low_delay -framedrop rtmp://192.168.137.199:1935/live/test

虚拟机拉流播放 800x480 mp4 视频

imx6ull CPU 占用率不到10%

如果想让这个视频像监控一样 24 小时循环推流,需要加一个 -stream_loop -1 参数:

ffmpeg -stream_loop -1 -re -i output-imx6ull.mp4 -c copy -f flv rtmp://192.168.137.199:1935/live/test

-stream_loop -1:表示无限循环。0表示不循环,1表示循环1次(播放2遍),-1表示永远播下去。

结合上一篇博客,阶段性总结:

  1. 推摄像头(必须软编码):用 -c:v libx264 -pix_fmt yuv420p -preset ultrafast 死压 CPU。
  2. 推本地视频(必须硬拷贝):提前在 PC 转好 H.264 格式,用 -c copy 零消耗推流。
  3. 低延迟拉流:用 ffplay -fflags nobuffer -flags low_delay -framedrop 强制追赶最新帧。
相关推荐
7yewh10 小时前
SLAM 三维空间刚体运动(2)
数据结构·人工智能·机器人·嵌入式·slam
LCG元11 小时前
树莓派 Pico RP2040 PIO 逻辑分析仪实战:SM 指令周期拆解、DREQ 触发 DMA 环形缓冲与采样率参数实测
嵌入式·树莓派·rp2040
企业数字化笔记12 小时前
视频目标跟踪怎么选?SORT、DeepSORT、ByteTrack 的连续性、遮挡与计算成本对比
人工智能·目标跟踪·音视频
Ivanqhz12 小时前
激活函数在 Transformer 中的作用及各种变体简述
java·linux·数据库·人工智能·深度学习
殷色玫瑰15 小时前
C/C++ 内存管理详解:从内存分布到 new/delete 底层原理
java·linux·c语言·c++
zhizhizhuzhuxia15 小时前
情感解说短视频的配音选型:从工程视角看情感音色与批量出片
人工智能·音视频
꯭自꯭闭꯭16 小时前
DM7主备升级方案
linux·服务器·数据库
用户41071920132516 小时前
VMware 虚拟机Ubuntu 环境linux远程连接失败
linux
lisanmengmeng16 小时前
Nagios邮件报警的配置
linux·运维·服务器
Ruiery16 小时前
Linux 6.6内核 CPU 深度解析(六):cpufreq
linux·运维·服务器