55、RK3588使用MPP编码yuv到h264、解码h264到yuv模块开发和集成OAK深度相机解码&编码&推流测试

2023-05-16

基本思想:需要使用独立模块代码去实现自己的逻辑功能,所以在基于官方源码基础上,和参考附录几个官方链接,搞出一版rk3588编码测试和解码测试demo

测试视频/生成h264/生成yuv

 链接: https://pan.baidu.com/s/1HbpeqMJb8HcgFpzaKhUxHw?pwd=zmtj 提取码: zmtj

一、先看工程rk_yuv_mpp_h264编码demo

测试结果rk3588测试结果 

firefly@firefly:~/rk_yuv_mpp_h264/build$ sudo ./rk_yuv_mpp_h264

视频播放

firefly@firefly:~/rk_yuv_mpp_h264/build$ ffplay sample.h264

代码:https://github.com/sxj731533730/rk_yuv_mpp_h264

二、先看工程rk_h264_mpp_yuv编码demo

 测试结果

firefly@firefly:~/rk_h264_mpp_yuv/build$ sudo ./rk_h264_mpp_yuv 
decode_get_frame get info changed found.
decoder require buffer w:h [1280:720] stride [1280:720]found last packet.
decode h264 to yuv
decode h264 to yuv
decode h264 to yuv
decode h264 to yuv
decode h264 to yuv
decode h264 to yuv
decode h264 to yuv
decode h264 to yuv
decode h264 to yuv
decode h264 to yuv
decode h264 to yuv
found last frame.
codec decode exec success id:
firefly@firefly:~/rk_h264_mpp_yuv/build$ 

对生成得yuv进行播放

firefly@firefly:~/rk_h264_mpp_yuv$ ffplay -f rawvideo -video_size 1280*720 -pixel_format nv12 sample.yuv

测试结果

代码:https://github.com/sxj731533730/rk_h264_mpp_yuv

最后基于oak深度相机实现

oak编码---->rk3588解码-----cv::Mat 写hello world----->rk3588编码---->rtsp推流(非ffmpeg)

测试结果

拉流 

ubuntu@ubuntu:~$ ffplay rtsp://10.10.14.49:5554/live   0B f=0/0 

信息

 

代码:https://github.com/sxj731533730/OAK_MPP_D_E_RTSP

参考: 

https://github.com/rockchip-linux/mpp

https://github.com/EhsanVahab/rockchip-mpp-encoder

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

55、RK3588使用MPP编码yuv到h264、解码h264到yuv模块开发和集成OAK深度相机解码&编码&推流测试 的相关文章

  • 如何访问 Oak/Deno 中的表单主体

    我用的是橡木 德诺 我有一个从提供的 ejs 文件提交的表单 如何访问表单主体 当我将其记录到控制台时 它会打印 type form value URLSearchParamsImpl 帖子处理程序如下所示 router post add
  • 从 TangoService_connectOnFrameAvailable 保存帧

    如何通过 TangoService connectOnFrameAvailable 保存帧并在我的计算机上正确显示它 作为此参考页 https developers google com project tango apis c struc
  • 如何转换 RGB -> YUV -> RGB(双向)

    我想要一对转换算法 一个从 RGB 到 YUV 另一个从 YUV 到 RGB 它们彼此相反 也就是说 往返转换应保持该值不变 如果愿意 可以将 YUV 替换为 Y UV YUV YCbCr YPbPr 这样的事情存在吗 如果是这样 那是什么
  • 如何对透明背景的视频进行编码

    我正在使用 OSX 的 cocoa 使用 AVAssetWriter 以 h264 编码视频 这是配置 Configure video writer AVAssetWriter m videoWriter AVAssetWriter all
  • H264 中的 Elementary Stream 是什么意思

    我读了 Elementary Stream 的内容维基百科 http en wikipedia org wiki Elementary stream 我正在使用的工具 Live555 需要 H 264 视频基本流文件 因此 当从视频应用程序
  • 开发 H264 硬件解码器 Android - Stagefright 还是 OpenMax IL?

    我正在为 Android 开发 H264 H W 加速视频解码器 到目前为止 我已经接触过一些图书馆MediaCodec Stagefright OpenMax IL OpenMax AL and FFmpeg 经过一番研究 我发现 我找到
  • 如何用FFMPEG正确将H264封装成FLV?

    首先 标题中的 适当 指的是这个相关问题 https stackoverflow com questions 44952940 ffmpeg how to wrap h264 stream into flv container 其中的答案并
  • ffmpeg 复制以保留时间戳

    我正在尝试修改 HLS 段传输流 并使用 ffmpeg 保留其开始时间 但是 即使提到了 copyts 输出也不会保留输入文件的 start time 值 这是我的命令行 ffmpeg i fileSequence1 ts i x png
  • 如何在 Ubuntu 上从 JPEG 或其他图像创建 YUV422 帧

    我想在 Ubuntu 上从任何图像创建一个示例 YUV422 帧 这样我就可以为了学习而编写 YUV422 到 RGB888 函数 我真的很希望能够使用值得信赖的工具来创建示例并转换回 jpeg 我尝试过 ImageMagick 但显然做错
  • 如何使用Android MediaCodec编码相机数据(YUV420sp)

    感谢您的关注 我想使用Android MediaCodec API对从Camera获取的视频帧进行编码 不幸的是 我没有成功做到这一点 我对 MediaCodec API 还不太熟悉 以下是我的代码 我需要你的帮助来弄清楚我应该做什么 1
  • 在C/C++中编写YUV图像帧的问题

    我正在尝试将从 OpenGL glReadPixels 获取的 RGB 帧转换为 YUV 帧 并将 YUV 帧写入文件 yuv 后来我想将其写入命名管道作为 FFMPEG 的输入 但现在我只想将其写入文件并使用 YUV 图像查看器查看图像结
  • 直接从 numpy 进行 h.264 编码

    我想直接从视频帧的 numpy 数组中编码视频 Open cv 通过以下方式提供此类功能cv2 VideoWriter 但是我需要 h 264 编解码器 但该编解码器不可用 到目前为止 我最好的方法是使用 open cv 编写视频 然后通过
  • 我的视频没有关键帧,怎么可能?

    当我在视频上运行以下行时 它仅输出 P 帧和 B 帧 没有 I 帧 ffprobe select streams v show frames show entries frame pict type of csv 00000 MTS 视频怎
  • 使用 VLC imem 从内存播放 h264 视频文件但收到错误“主流错误:无法预填充缓冲区”

    我有一个加载到内存中的 h264 视频文件 我尝试使用参数 imem cat 4 使用 imem 播放它 以便 vlc 将使用访问模块来解复用视频 并且 vlc 启动并接收我的 imem参数成功 0x7f38a0000e28 access
  • 非 IDR 图片 NAL 单元 - 0x21 和 0x61 含义

    有谁知道是什么0x21 and 0x61是指在 h 264 编码的视频流中吗 我知道0x01意味着它是一个b frame and 0x41意味着它是一个p frame 我的编码视频给了我两个0x21帧后跟一帧b frame I 21 21
  • Html5 视频和 Flash 方法

    研究 HTML5 视频标签 并研究哪些浏览器支持哪些视频文件类型 我最初的想法是事情变得比仅仅使用 Flash 更困难 我想知道是否有人已经找到一些骨架代码 与视频的开发方法相结合 来执行以下操作 如果闪光灯可用 请使用它 如果没有 请尝试
  • C# 中的 H.264(或类似)编码器?

    有谁知道 C 或任何其他托管语言 的开源 H 264 编码器 我也许也可以用 python 实现 我发现的库 例如 x264 是用相当低级的 c 带有大量宏的程序 和汇编语言编写的 调整它们比我想象的要复杂得多 我的项目不关心性能或兼容性
  • 如何使用AVAssetWriter将h264流写入视频?

    我想将 h 264 流从服务器传输到视频文件 但是当我使用assetwrite finishwrite XCode 报告 Video var mobile Applications DE4196F1 BB77 4B7D 8C20 7A5D6
  • FFMPEG:将 YUV 数据转储到 AVFrame 结构中

    我正在尝试转储YUV420数据进入AVFrameFFMPEG 的结构 从下面的链接 http ffmpeg org doxygen trunk structAVFrame html http ffmpeg org doxygen trunk
  • OpenGL 使用着色器将 NV12 转换为 RGB24

    我尝试编写一个应用程序来在 OpenGL 中显示 YUV 图像 我使用此代码片段在 C 中成功将 Y UV 转换为 RGB source https blog csdn net subfate article details 4730514

随机推荐