0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【Firefly自研】高性能全流程视频处理框架:FFMedia

Firefly开源团队 2025-07-01 16:32 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群


什么是FFMedia?

RK3588 系列芯片拥有超强的视频编解码能力,尤其在多路视频并发处理上表现优异。然而我们在视频处理应用开发时,经常面对 gstreamer、ffmpeg 等通用框架未能充分发挥芯片性能、官方原始 api 太靠近底层、学习成本高、周期长、开发工作量大等问题。


为此,Firefly 基于 Rockchip MPP/RGA 库,开发了一套性能高效、接口简洁、功能完善的视频处理框架——FFMedia。它完整支持市面上主流容器、协议的媒体数据前处理和后处理,同时还支持媒体数据从内存、管道及文件描述符等方式输入和输出,方便对接其他应用和编程语言。


各单元主要组件如下:

输入单元

包含 rtsp、rtmp、whep、camera、file 等输入单元;

处理单元

包含硬件解码、编码、图像处理及推理单元等支持硬件加速的处理单元;

输出单元

包含 rtsp、rtmp、whip、drm display、gb28181、file 等输出单元。



功能与特点

核心架构

- 模块化架构:整个框架采用 Productor / Consumer 模型,将各个单元都抽象为 ModuleMedia 类;

- 高效内存管理技术:单元之间及硬件的数据交互均使用零拷贝实现。


媒体处理能力

- 格式支持:支持 mp4 / mkv / flv / ts 等主流容器格式及 rtsp / rtmp / gb28181 / webrtc 等主流协议的解析与封装;

- 转码和处理:支持视频转码、裁剪、拼接、水印添加等处理;

- 流媒体处理:支持从摄像头、网络流等源拉取媒体流进行实时处理、转发和存储等处理。


性能优化

- 低负载和低延迟性:深度优化数据流处理及传递,与 GStreamer 和 FFmpeg 相比,CPU 占用更低,且具备更高的数据实时性;

- 高效 Python 模块:通过 pybind11 实现 C++ 和 Python 之间的无缝互操作性;

- 统一接口:屏蔽和优化复杂的底层操作,为使用者提供高效、统一的接口。


平台兼容性

- 芯片级适配:支持 Firefly 平台下所有瑞芯微芯片机器版型;

- 系统支持:支持 Buildroot / Ubuntu / Debian 等不同版本系统。



下载源码

拉取源码

gitclonehttps://github.com/Firefly-rk-linux-utils/ffmedia_release.git


编译测试

参考:编译与运行



开发接口

所有接口支持 C++ 与 Python 调用。

C++ 语言范式

autortsp_c =make_shared("rtsp://xxx");autoret = rtsp_c->init()

Python 语言范式

rtsp_c= ff_pymedia.ModuleRtspClient("rtsp://xxx")ret= rtsp_c.init()



典型场景与性能测试

测试环境:ITX-3588J

低延迟实时流播放


测试播放 H265 的 1080p@30fps 的 RTSP 实时流,使用相关模块:

- RTSP 客户端:

采用自实现的轻量级 RTSP 客户端模块;取流一帧耗时 0.03 毫秒左右;

- MPP 解码:

基于 MPP 实现的解码模块;解码一帧耗时 1.2 毫秒(多通道模式可低至0.7)左右;

- DRM 显示:

基于 DRM 框架实现的显示模块;送显一帧耗时 0.9 毫秒左右。


可计算出直播一路 H265(p帧系列为顺序方式)、1080P 延迟:数据流从网络到解码成 YUV 裸流延迟在1.3 毫秒左右,画面显示还受到屏幕刷新率影响。如 60fps 的屏幕刷新间隔为 16.667 毫秒,可得出显示延迟在 0.9~16.667 毫秒之间。综上,直播一路 1080P 视频的最低延迟为 2.4 毫秒左右。


性能指标如下表所示:

e4156526-5655-11f0-9776-92fbcf53809c.png

简单测试命令如下:

./demo rtsp://xxx -d 0


测试播放 32 路 H265 的 1080p@30fps rtsp 实时流性能指标如下表所示:

e426ba9c-5655-11f0-9776-92fbcf53809c.png

简单测试命令如下:

./demo rtsp://xxx -d 0 -c 32




实时视频流转码转播


测试将 H265 的 1080p@30fps 的 RTSP 实时流转码成 H264 的 RTSP 流,使用相关模块:

- RTSP 客户端:

轻量级 RTSP 客户端模块;取流一帧耗时 0.03 毫秒左右;

- MPP 解码:

基于 MPP 实现的解码模块;解码一帧耗时 1.2 毫秒(多通道模式可低至0.7)左右;

- MPP 编码:

基于 MPP 实现的编码模块;编码一帧耗时 4.8 毫秒(多通道模式可低至 2.5)左右;

- RTSP 服务端:

轻量级 RTSP 服务端模块;推流一帧耗时 0.1 毫秒左右。


可初步估计视频帧从取流、转码最后推流理论耗时为6.3毫秒左右。


性能指标如下表所示:

e430b286-5655-11f0-9776-92fbcf53809c.png

简单测试命令如下:

./demo rtsp://xxx -e h264 -p 8554# 可用demo或其他软件拉取转码后的rtsp流:rtsp://ip:8554/live/0


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    463

    文章

    54706

    浏览量

    471483
  • 视频编解
    +关注

    关注

    0

    文章

    3

    浏览量

    6331
  • Firefly
    +关注

    关注

    2

    文章

    549

    浏览量

    9204
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深入剖析ADV7180:高性能10位SDTV视频解码器

    深入剖析ADV7180:高性能10位SDTV视频解码器 在当今数字化的时代,视频处理技术的发展日新月异。对于电子工程师而言,选择一款性能卓越
    的头像 发表于 05-29 12:40 151次阅读

    MCU vs 通用MCU:其利天下13万转暴力风扇驱动的性能与成本全面对比

    其利天下作为专业暴力风扇方案商、行业龙头企业,深耕高速无刷驱动领域多年,推出基于KY32DQ020高性能MCU打造的暴力风扇无刷电机驱动方案,历经破千万级成品验证,以无感方波+PID先进算法
    的头像 发表于 05-19 15:00 223次阅读
    <b class='flag-5'>自</b><b class='flag-5'>研</b>MCU vs 通用MCU:其利天下13万转暴力风扇驱动的<b class='flag-5'>性能</b>与成本全面对比

    探索DVP - 7033HE:高性能PCIe视频采集卡的卓越之选

    探索DVP - 7033HE:高性能PCIe视频采集卡的卓越之选 在当今的视频处理领域,一款出色的视频采集卡对于各类应用而言至关重要。今天,
    的头像 发表于 05-13 10:05 349次阅读

    RK3576 单板机高清视频图像处理开发实战手册(二)

    工业相机采集、OpenCV 边缘检测等实战案例,支持 4K@60fps 高性能处理。创龙科技通过标准化流程与工程化案例,帮助用户高效完成嵌入式视频与视觉应用开发。
    的头像 发表于 04-28 10:33 171次阅读
    RK3576 单板机高清<b class='flag-5'>视频</b>图像<b class='flag-5'>处理</b>开发实战手册(二)

    THS8135:高性能视频DAC的卓越之选

    THS8135:高性能视频DAC的卓越之选 在当今的电子世界中,视频处理技术不断发展,对于高性能视频
    的头像 发表于 04-23 12:05 251次阅读

    ADV8003:高性能视频信号处理器的卓越之选

    ADV8003:高性能视频信号处理器的卓越之选 在当今数字化时代,视频处理技术的发展日新月异,对于高性能
    的头像 发表于 04-18 17:45 1008次阅读

    ADV7340/ADV7341:高性能多格式视频编码器的技术解析

    ADV7340/ADV7341:高性能多格式视频编码器的技术解析 在当今数字化的时代,视频处理技术不断发展,对于高质量、多格式视频编码器的需
    的头像 发表于 04-18 16:20 604次阅读

    软通动力基于OpenClaw开源框架深度端侧智能体平台

    随着人工智能加速从云端下沉至终端、从被动交互迈向主动执行,端侧智能体正成为定义智能硬件体验的核心引擎。软通动力基于OpenClaw开源框架深度端侧智能体平台,以轻量化推理、本地自主决策、端云协同
    的头像 发表于 02-27 11:48 1000次阅读

    高性能视频放大器AD8013:设计与应用解析

    高性能视频放大器AD8013:设计与应用解析 在当今的电子设备中,视频信号的处理和传输至关重要。视频
    的头像 发表于 01-25 10:25 533次阅读

    国产高性能ONFI IP解决方案解析

    1. 什么是ONFI IP?其在AI时代的作用是什么?ONFI (Open NAND Flash Interface) 是连接闪存控制器与NAND颗粒的关键高速接口协议。在AI和高性能计算(HPC
    发表于 01-13 16:15

    季丰电子PCB管理系统的简单介绍

    季丰电子的PCB管理系统,整合报价+投板+Release三大核心模块,覆盖从设计发布、订单对接到生产交付的业务流程
    的头像 发表于 11-11 14:51 1473次阅读

    数据复用高性能池化层设计思路分享

    大家好,本团队此次分享的内容为可实现数据复用高性能池化层设计思路,核心部分主要由以下3个部分组成; 1.SRAM读取模块;——池化使用的存储为SRAM 基于SRAM读与写时序,约束池化模块读与写
    发表于 10-29 07:10

    志A733:高性能八核AI处理器,智能终端优选

    实现大规模量产。此外,其芯片产品已广泛应用于扫地机器人、四机器狗等设备,如小米仿生四足机器人“铁蛋”就采用了该公司的芯片。   志科技A733芯片是一款高集成度平台处理器,集成了高性能处理
    的头像 发表于 10-20 08:12 8488次阅读
    <b class='flag-5'>全</b>志A733:<b class='flag-5'>高性能</b>八核AI<b class='flag-5'>处理</b>器,智能终端优选

    国产真高性能图形 GPU 重磅发布:跑分超 RTX4060,畅玩《黑神话・悟空》

    系列。   砺算科技创始人、CEO 宣以方表示,砺算 7G100 系列 GPU 从计算核心到指令集完全由自主设计,基于 “天图” 架构,并配备指令集、
    发表于 07-26 21:45 6307次阅读
    国产真<b class='flag-5'>自</b><b class='flag-5'>研</b><b class='flag-5'>高性能</b>图形 GPU 重磅发布:跑分超 RTX4060,畅玩《黑神话・悟空》

    睿思芯科携灵羽处理器亮相2025 RISC-V中国峰会

    第五届RISC-V中国峰会于16日在上海张江开幕,会上睿思芯科展示了中国首款高性能RISC-V服务器处理器——灵羽
    的头像 发表于 07-21 09:15 2521次阅读