Toybrick

标题: RK3399Pro入门教程(7)RTSP库的使用 [打印本页]

作者: hisping    时间: 2019-8-19 15:45
标题: RK3399Pro入门教程(7)RTSP库的使用

[attach]501[/attach]


RTSP(Real Time Streaming Protocol),RFC2326,实时流传输协议,是TCP/IP协议体系中的一个应用层协议,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。目前越来越多的场所如商场,连锁店,教育,交通,银行,政府,工业使用到网络摄像头,而大多网络摄像头均采用RTSP协议传输多媒体数据,TB-rk3399proD强大的硬解码配合librockchip_rtsp库可以非常简单高效的解码rtsp多媒体数据,TB-rk3399proD中强大的NPU配合rknn-toolkit可以对解码的多媒体数据进行物体检测,提取有价值的信息,使网络摄像头更加智能!
TB-rk3399proD中VPU模块支持4K VP9 and 4K 10bits H265/H264 视频解码,高达60fps;1080P 多格式视频解码 (WMV, MPEG-1/2/4, VP8),支持6路1080P@30fps解码;1080P 视频编码,支持H.264,VP8格式,支持2路1080P@30fps编码;用户只需要安装rockchip_mpp rockchip_rtsp库就可以获取rtsp视频流并调用硬件VPU自动解码,非常简单高效。

本教程基于TB-RK3399proD开发板,采用fedora28系统(固件v1.2测试通过),网络摄像头采用大华IPC-HFW8431D-Z型号进行测试

1.环境安装,细节参考wiki环境安装教程
  1. sudo dnf install -y cmake gcc gcc-c++ protobuf-devel protobuf-compiler lapack-devel opencv-devel
  2. sudo dnf install -y python3-devel python3-opencv python3-numpy-f2py python3-h5py python3-lmdb  python3-grpcio
复制代码


2.安装相关系统软件包,细节参考wiki系统软件包安装
  1. sudo dnf install librockchip_mpp-devel
  2. sudo dnf install librockchip_rga-devel
  3. sudo dnf install librockchip_rtsp-devel curl-devel
复制代码
3.下载并解压附件[attach]482[/attach]
4.修改rtsp_ssd.cpp文件中RTSP_URL  RTSP_USER  RTSP_PWD宏,指向用户自己的网络摄像头地址
5.编译执行
  1. cd local_rtsp/build
  2. cmake ..
  3. make
  4. ./rtsp_ssd
复制代码

可以正常获取网络摄像头图像数据并显示,效果如下:

[attach]492[/attach]


代码分析
  1. RtspClient rtsp_client(RTSP_URL, RTSP_USER, RTSP_PWD);
  2. //设置回调函数,每接收一帧数据调用一次该函数
  3. rtsp_client.setDataCallback(onRtspHandle);
复制代码
  1. void onRtspHandle(unsigned char *buf, size_t len)
  2. {
  3.         std::cout << "frame recived " << len << std::endl;
  4. //调用mpp库将接收到的数据入队
  5.         mpp_dec->ops->enqueue(mpp_dec, buf, len);
  6. }
复制代码
  1. //将之前的入队数据进行硬件解码,得到解码数据
  2. DecFrame *frame = mpp_dec->ops->dequeue_timeout(mpp_dec, 300);
复制代码
  1. //调用rga对图片进行resize操作,并转换图片为rgb格式
  2. rga->ops->initCtx(rga);
  3.         rga->ops->setRotate(rga, RGA_ROTATE_NONE);
  4.         rga->ops->setSrcFormat(rga, V4L2_PIX_FMT_NV12, width, height);
  5.         rga->ops->setDstFormat(rga, V4L2_PIX_FMT_RGB24, resize_w, resize_h);
复制代码













作者: yaowei    时间: 2019-8-23 13:33
really?这么简单的吗
作者: zhouzhouzlove    时间: 2019-8-23 14:03
这个是使用已经编译好的固件,各项功能都齐全了,但是如果是自己制作的ubuntu文件系统呢?应该怎么部署开发环境?
如:
1、mpp库的配置选项,
2、rtsp库如何配置安装


这种是否有教程?
授人以鱼不如授人以渔。
作者: yaowei    时间: 2019-8-27 16:55
本帖最后由 yaowei 于 2019-8-28 18:25 编辑

为什么报错没有dequeue_timeout这个函数呢?(fedora 28,固件1.3)

error: ‘DecOps’ {aka ‘struct _DecOps’} has no member named ‘dequeue_timeout’

这是在哪个头文件里面的?没有include对吗?

PS:
sudo dnf clean/ sudo dnf update后编译过了,但是读不到摄像头,显示错误为decode_get_frame failed, 返回错误值-8。

PPS:
已经可以运行了。

作者: 15992605143    时间: 2019-9-3 01:10
请问rockchip_mpp  rockchip_rtsp的源码下载链接在哪里?怎样编译安装?
作者: yaowei    时间: 2019-9-3 15:44
15992605143 发表于 2019-9-3 01:10
请问rockchip_mpp  rockchip_rtsp的源码下载链接在哪里?怎样编译安装?

sudo dnf install librockchip_mpp-devel librockchip_rtsp-devel
作者: 15992605143    时间: 2019-9-3 20:36
rockchip_rtsp开源了吗?在github上找不到这个包。
作者: hisping    时间: 2019-9-4 08:25
15992605143 发表于 2019-9-3 20:36
rockchip_rtsp开源了吗?在github上找不到这个包。

开源了mpp rga isp,没有开源rtsp
作者: RK用户    时间: 2019-9-5 09:08
新买的3399ProD的板子,MPP库无法使用,一直返回错误,官方编译的也不能用,RK3288上MPP库正常使用,这个例子也不正常[attach]537[/attach]

作者: hisping    时间: 2019-9-6 08:31
RK用户 发表于 2019-9-5 09:08
新买的3399ProD的板子,MPP库无法使用,一直返回错误,官方编译的也不能用,RK3288上MPP库正常使用,这个例 ...

你这是没有接收到数据,检查下rtsp路径及用户名密码
作者: zhy163    时间: 2019-9-23 16:07
yaowei 发表于 2019-8-27 16:55
为什么报错没有dequeue_timeout这个函数呢?(fedora 28,固件1.3)

error: ‘DecOps’ {aka ‘struct _De ...

请问一下,decode_get_frame failed最后怎么解决的?
作者: zhy163    时间: 2019-9-23 17:35
yaowei 发表于 2019-8-27 16:55
为什么报错没有dequeue_timeout这个函数呢?(fedora 28,固件1.3)

error: ‘DecOps’ {aka ‘struct _De ...

请问一下,decode_get_frame failed这个错误最终怎么解决的?
作者: hisping    时间: 2019-9-24 08:42
zhy163 发表于 2019-9-23 17:35
请问一下,decode_get_frame failed这个错误最终怎么解决的?

这个一般是rtsp源有问题,确认下源路径,用户名,密码是否正确
作者: yuys    时间: 2019-9-24 15:54
hisping 发表于 2019-9-24 08:42
这个一般是rtsp源有问题,确认下源路径,用户名,密码是否正确

这个大华、海康的相机没法使用啊。版主用的啥相机做的示例?
作者: hisping    时间: 2019-9-26 08:54
yuys 发表于 2019-9-24 15:54
这个大华、海康的相机没法使用啊。版主用的啥相机做的示例?

文章有说啊,大华IPC-HFW8431D-Z型号
作者: zerollzeng    时间: 2019-9-26 16:32
跑例子的时候失败了,请问一下是什么原因?刚拿到板子还不熟悉
[toybrick@localhost build]$ ./rtsp_ssd
mpi: mpp version: Without VCS info
hal_h264d_api: Assertion vcodec_type & ((0x00000200) | (0x00000001) | (0x00000002)) failed at hal_h264d_init:104
hal_h264d_api: hal_h264d_init hard mode error, value=0
hal_h264d_api: Assertion 0 failed at hal_h264d_init:154
mpp_device: mpp_device_init failed to find device for coding 7 type 0
mpp_rt: NOT found ion allocator
mpp_rt: found drm allocator
Segmentation fault

gdb 看了一下在 mpp_dec = MppDecoderCreate(DECODE_TYPE_H264) 这里崩溃了
作者: hisping    时间: 2019-9-27 08:48
zerollzeng 发表于 2019-9-26 16:32
跑例子的时候失败了,请问一下是什么原因?刚拿到板子还不熟悉
[toybrick@localhost build]$ ./rtsp_ssd
mpi ...

已近按照教程安装了mpp库?修改了rtsp地址为你自己的网络摄像头了吗?
作者: zerollzeng    时间: 2019-9-27 09:03
hisping 发表于 2019-9-27 08:48
已近按照教程安装了mpp库?修改了rtsp地址为你自己的网络摄像头了吗?

嗯,都是按照教程来的
作者: zerollzeng    时间: 2019-9-29 17:15
更新了1.5的固件,没有报上面的错误了,但是还是取不到流是什么原因?
[toybrick@toybrick build]$ ./rtsp_ssd
mpi: mpp version: Without VCS info
mpp_rt: NOT found ion allocator
mpp_rt: found drm allocator
[2019/09/29 05:13:49] D/: listening rtcp port 31544
[2019/09/29 05:13:49] D/: listening rtp port 31553
[2019/09/29 05:13:49] D/: listening rtcp port 31554
[2019/09/29 05:13:49] D/: curlto rtsp://10.1.36.51/shcheck/pg/01.264 , cli 31543:31553, tcp: 0
[2019/09/29 05:13:49] D/: listening rtp port 31543
[2019/09/29 05:13:49] E/: (checkRet in curl_rtsp.cpp:313): [options:124] check error(7)! rtsp://10.1.36.51/shcheck/pg/01.264,
[2019/09/29 05:13:49] E/: (enable in unit_rtsp_client.cpp:279): rtsp client connect rtsp://10.1.36.51/shcheck/pg/01.264 failed.
[2019/09/29 05:13:49] D/: close curl rtsp://10.1.36.51/shcheck/pg/01.264
[2019/09/29 05:13:49] E/: (checkRet in curl_rtsp.cpp:313): [teardown:206] check error(7)! rtsp://10.1.36.51/shcheck/pg/01.264,
[2019/09/29 05:13:49] D/: destroying curl rtsp ...
[2019/09/29 05:13:49] D/: destroying curl rtsp ... done
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.

试了好几个摄像头都不行,直接取服务器的测试视频流也不行...是不是摄像头必须要在同一个网段?摄像头是大华的摄像头
作者: zerollzeng    时间: 2019-9-29 17:16
如果这个不能用的话用ffmpeg有没有性能上的影响?
作者: hisping    时间: 2019-9-30 09:15
zerollzeng 发表于 2019-9-29 17:16
如果这个不能用的话用ffmpeg有没有性能上的影响?

你有试过使用vlc能播放你的rtsp流吗?
作者: zerollzeng    时间: 2019-10-8 10:08
hisping 发表于 2019-9-30 09:15
你有试过使用vlc能播放你的rtsp流吗?

谢谢可以了,用vlc也不能打开,后来发现是路由问题,后来人引以为鉴哈哈
作者: 15992605143    时间: 2019-10-8 17:06
依赖库能不能发一下?另外1808的库文件有吗?能否上传一下,谢谢。
作者: zerollzeng    时间: 2019-10-9 15:51
问一个小问题, rtspclient的回调函数只有两个参数,所以enqueue到mpp队列的时候需要用到mpp_dec的全局变量,如果是多线程的情况下需要为每一个线程都创建一个MppDecoder,那么这个mpp_dec有什么比较好的方式来传递进去呢,如果还用全局变量就显得很麻烦,有相关的例子吗?
作者: will92    时间: 2019-10-12 15:53
RTSP库是否有ubuntu的版本呢
作者: yuys    时间: 2019-10-17 19:46
4.修改rtsp_ssd.cpp文件中RTSP_URL  RTSP_USER  RTSP_PWD宏,指向用户自己的网络摄像头地址,其中下面这种网络摄像头的地址不行:
"rtsp://admin:whatsfunning666@172.16.0.25/ffmepg/ch1/sub/av_stream"
无法正常的cmake ..
作者: yuys    时间: 2019-10-22 16:38
本示例,已运行成功,欢迎交流
作者: hjf515    时间: 2019-10-26 15:45
hisping 发表于 2019-9-4 08:25
开源了mpp rga isp,没有开源rtsp

请问mpp rga开源的地址在哪里?多谢!!
作者: cr7jj    时间: 2019-11-9 10:00
你好,我试过用你这个代码不能播放VLC流,怎么解决?
作者: cr7jj    时间: 2019-11-12 22:26
用这个代码 播放不了 VLC的RTSP流,请问怎么解决
作者: hisping    时间: 2019-11-13 08:59
cr7jj 发表于 2019-11-12 22:26
用这个代码 播放不了 VLC的RTSP流,请问怎么解决

1.直接在板子上安装vlc即可,这样最简单,但是没有使用到硬件  2.使用live555获取rtsp流,再使用mpp库去解码
作者: cr7jj    时间: 2019-11-13 14:25
用VLC推的RTSP流  用给出的代码运行会报错误mpp_log: decode_get_frame failed, return -8.,取不到流。如何解决
作者: cr7jj    时间: 2019-11-13 17:19
zerollzeng 发表于 2019-10-8 10:08
谢谢可以了,用vlc也不能打开,后来发现是路由问题,后来人引以为鉴哈哈

我想问问,后来怎么解决

作者: zouxf    时间: 2019-11-20 09:25
这里用到的Mpp库有开源吗? github rockhip-linux中开源的mpp库, 没有提供MppDecoderCreate的api, 也没有rockchip_mpp.h
https://github.com/rockchip-linux/mpp
作者: hisping    时间: 2019-11-20 09:36
zouxf 发表于 2019-11-20 09:25
这里用到的Mpp库有开源吗? github rockhip-linux中开源的mpp库, 没有提供MppDecoderCreate的api, 也没有 ...

为了方便使用,我们在mpp基础上又封装了一层;你也可以直接使用github rockhip-linux中开源的mpp库
作者: zouxf    时间: 2019-11-22 15:33
本帖最后由 zouxf 于 2019-11-23 10:13 编辑

多路解码的时候, 采用多个RGA(多个rga ctx)线程快,   或者一个RGA线程(一个rga ctx),不断的修改ctx 源地址和目标地址, 哪种效率更好?
作者: zouxf    时间: 2019-11-25 10:18
在RTSP解码的时候, 一版在画面有较大改变的时候(i帧?), 经常会报这两个错误, 这是什么原因导致的?  enqueue和dequeue之间,需要加互斥锁吗?
mpp_log: decode_get_frame failed, return -8.

mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
作者: someone9388    时间: 2019-12-13 16:23
本帖最后由 someone9388 于 2019-12-16 12:03 编辑

按照步骤完成,运行得到如下错误:
Open file(/boot/toybrick-release) failed
MppDecoderCreate error!

@hisping 请问,这个问题是什么问题? 该怎么解决?多谢!!!

作者: mrzs    时间: 2019-12-19 11:19
浏览器可以播这个RTSP流吗
作者: w910820618    时间: 2019-12-27 11:24
可以用来解h.265的视频吗
作者: lipandeng    时间: 2020-1-15 15:11
本帖最后由 lipandeng 于 2020-1-15 15:12 编辑

是不是不能解码1080p的h265视频啊 ,用264没问题,265图像错位了
作者: lipandeng    时间: 2020-1-15 15:14
有么有python调用硬解码功能的例子呢(rtsp)
作者: lipandeng    时间: 2020-1-15 17:38
硬解码后的图像颜色偏差很大,尤其和软解码对比更明显,不知道啥原因还有就是硬解码下cpu使用率还是有些高啊 70%-80%


作者: Sean    时间: 2020-3-9 14:11
someone9388 发表于 2019-12-13 16:23
按照步骤完成,运行得到如下错误:
Open file(/boot/toybrick-release) failed
MppDecoderCreate error!

请问大哥,你最后解决了吗,我也遇到了这个问题
作者: cr7jj    时间: 2020-3-10 17:01
[toybrick@toybrick build]$ ./rtsp_ssd
mpi: mpp version: Without VCS info
mpp_rt: NOT found ion allocator
mpp_rt: found drm allocator

什么原因?请问如何解决
作者: hisping    时间: 2020-3-23 09:04
liyang 发表于 2020-3-22 22:56
同样请教 unbuntu中如何拿到rtsp流

你可以使用任意一款开源架构比如live555获取rtsp数据,然后h264编码使用硬编码即可
作者: 1881949    时间: 2020-3-27 15:39
会出现延时吗?
作者: christian    时间: 2020-4-3 17:21
这个支持硬解的吗?
作者: christian    时间: 2020-4-10 16:32
lipandeng 发表于 2020-1-15 17:38
硬解码后的图像颜色偏差很大,尤其和软解码对比更明显,不知道啥原因还有就是硬解码下cpu使用率还是有些高 ...

你好,颜色偏差大有解决吗?
作者: christian    时间: 2020-4-10 16:36
局域网下测试,摄像头分辨率为1280*720,可以跑起来,但是发现硬解和软解对比颜色偏差比较大,而且硬解的时候,晃动摄像头会有偶尔会有 一点卡顿。还请版主给指导下这个该怎么排查的?
作者: lipandeng    时间: 2020-4-29 12:26
christian 发表于 2020-4-10 16:32
你好,颜色偏差大有解决吗?

解决了,系统是debian10 ,解决不了可以发邮寄给我:li.pandeng@163.com你参考下,
  1. #include <stdio.h>
  2. #include <unistd.h>
  3. #include <iostream>
  4. #include <string.h>
  5. #include <sys/types.h>
  6. #include <sys/stat.h>
  7. #include <fcntl.h>
  8. #include <thread>
  9. #include <memory.h>
  10. #include <sys/time.h>
  11. #include <queue>

  12. using namespace std;

  13. #include "opencv2/core/core.hpp"
  14. #include "opencv2/highgui/highgui.hpp"

  15. #include <rockchip/rockchip_rtsp.h>
  16. #include <rockchip/rockchip_mpp.h>
  17. extern "C" {
  18. #include <rockchip/rockchip_rga.h>
  19. }

  20. #define RTSP_URL        "rtsp://192.168.1.200/h264/ch1/main/av_stream"
  21. #define RTSP_USER        "admin"
  22. #define RTSP_PWD        "123456"

  23. static MppDecoder *mpp_dec = NULL;
  24. static std::queue<DecFrame *> frame_queue;
  25. static int run_flag = 0;

  26. unsigned long get_time(void)
  27. {
  28.         struct timeval ts;
  29.         gettimeofday(&ts, NULL);
  30.         return (ts.tv_sec * 1000 + ts.tv_usec / 1000);
  31. }

  32. void onRtspHandle(unsigned char *buf, size_t len)
  33. {
  34.         std::cout << "frame recived " << len << std::endl;

  35.         mpp_dec->ops->enqueue(mpp_dec, buf, len);
  36. }

  37. void inference_thread(RockchipRga *rga, int width, int height)
  38. {
  39.         int ret;
  40.         int resize_w = 1920, resize_h = 1080;
  41.         static int frame_size = 0;
  42.         unsigned char *frame_rgb = NULL;

  43.         rga->ops->initCtx(rga);
  44.         rga->ops->setRotate(rga, RGA_ROTATE_NONE);
  45.         rga->ops->setSrcFormat(rga, V4L2_PIX_FMT_NV12, width, height);
  46.         rga->ops->setDstFormat(rga, V4L2_PIX_FMT_BGR24, resize_w, resize_h);
  47.        
  48.         frame_size = resize_w * resize_h * 3;
  49.         frame_rgb = (unsigned char *)malloc(frame_size);
  50.         cv::Mat img(resize_h , resize_w , CV_8UC3, frame_rgb);
  51.         if (!frame_rgb)
  52.                 goto exit;
  53.        
  54.         rga->ops->setDstBufferPtr(rga, frame_rgb);

  55.         while (run_flag) {
  56.                 if (frame_queue.empty()) {
  57.                         usleep(1000);
  58.                         continue;
  59.                 }

  60.                 auto frame = frame_queue.front();

  61.                 rga->ops->setSrcBufferPtr(rga, frame->data);

  62.                 ret = rga->ops->go(rga);
  63.                 printf("inference_thread ................\n");
  64.                 if (!ret) {
  65.                         ///do something with frame_rgb

  66.                         cv::imshow("test", img);
  67.                         cv::waitKey(10);
  68.                 }

  69.                 frame_queue.pop();
  70.                 mpp_dec->ops->freeFrame(frame);
  71.         }

  72. exit:
  73.         run_flag = 0;

  74.         while (!frame_queue.empty()) {
  75.                 auto frame = frame_queue.front();
  76.                 mpp_dec->ops->freeFrame(frame);
  77.                 frame_queue.pop();
  78.         }

  79.         if (frame_rgb)
  80.                 free(frame_rgb);
  81. }

  82. void decode_thread(RockchipRga *rga)
  83. {
  84.         int ret;
  85.         int first_frame = 0;
  86.         std::thread t_inference;

  87.         while (run_flag) {
  88.                 DecFrame *frame = mpp_dec->ops->dequeue_timeout(mpp_dec, 300);
  89.                 if (frame != NULL) {
  90.                         std::cout << "decode frame" << frame->width << "x" << frame->height << std::endl;
  91.                
  92.                         if (!first_frame) {
  93.                                 std::cout << "first_frame" << std::endl;
  94.                                 t_inference = std::thread(inference_thread, rga, frame->width, frame->height);
  95.                                 first_frame = 1;
  96.                         }

  97.                         if (frame_queue.size() < 30)
  98.                                 frame_queue.push(frame);
  99.                         else
  100.                                 mpp_dec->ops->freeFrame(frame);
  101.                 }
  102.         }

  103. exit:
  104.         run_flag = 0;

  105.         t_inference.join();

  106.         while (!frame_queue.empty()) {
  107.                 auto frame = frame_queue.front();
  108.                 mpp_dec->ops->freeFrame(frame);
  109.                 frame_queue.pop();
  110.         }

  111. }

  112. int main(int argc, char **argv)
  113. {
  114.         int ret;
  115.         RockchipRga *rga;
  116.         unsigned char ready[5] = {'r', 'e', 'a', 'd', 'y'};
  117.         RtspClient rtsp_client(RTSP_URL, RTSP_USER, RTSP_PWD);

  118.         rtsp_client.setDataCallback(onRtspHandle);

  119.         mpp_dec = MppDecoderCreate(DECODE_TYPE_H264);
  120.         if (!mpp_dec) {
  121.                 std::cout << "MppDecoderCreate error!\n" << std::endl;
  122.                 return -1;
  123.         }

  124.         rga = RgaCreate();
  125.         if (!rga) {
  126.                 MppDecoderDestroy(mpp_dec);
  127.                 std::cout << "rgaCreate error!\n" << std::endl;
  128.                 return -1;
  129.         }

  130.         run_flag = 1;

  131.         rtsp_client.enable();

  132.         std::thread t_decode(decode_thread, rga);

  133.         while (run_flag) {
  134.                 usleep(10000);
  135.         }

  136.         rtsp_client.disable();

  137.         run_flag = 0;

  138.         t_decode.join();

  139.         RgaDestroy(rga);

  140.         MppDecoderDestroy(mpp_dec);

  141.         return 0;
  142. }

复制代码

作者: Davie_zju    时间: 2020-5-20 15:54
zerollzeng 发表于 2019-10-8 10:08
谢谢可以了,用vlc也不能打开,后来发现是路由问题,后来人引以为鉴哈哈

怎么解决的啊,我改网段的时候把路由也改了但还是有错,请问你是怎么解决的?
作者: Davie_zju    时间: 2020-5-20 15:56
cr7jj 发表于 2020-3-10 17:01
[toybrick@toybrick build]$ ./rtsp_ssd
mpi: mpp version: Without VCS info
mpp_rt: NOT found ion allo ...

请问你解决了吗
作者: Davie_zju    时间: 2020-5-20 15:56
cr7jj 发表于 2019-11-13 17:19
我想问问,后来怎么解决

请问你解决了吗
作者: hellosong    时间: 2020-6-11 14:31
Debian10  按照wiki安装了rtsp client 的依赖库, cmake这个demo提示没有curl库?Debian如何安装curl库
作者: hellosong    时间: 2020-6-11 14:34
lipandeng 发表于 2020-4-29 12:26
解决了,系统是debian10 ,解决不了可以发邮寄给我:你参考下,

请问你Debian10的rtsp client的环境怎么配的,我在debian10 下编译找不到curl库
作者: hellosong    时间: 2020-6-11 15:08
Debian10  有依赖库安装教程吗?? 之前编译报错curl找不到,安装之后编译报找不到opencv2/core/core.hpp 这些opencv的头文件,系统中可以找到opencv的库但却没有opencv的头文件?
作者: hellosong    时间: 2020-6-12 11:26
我这边在Debian10 上运行这个取流demo,wiki的以来环境都装了, mpp这边报错了 请帮忙解答一下
作者: lipandeng    时间: 2020-6-22 10:04
hellosong 发表于 2020-6-11 14:34
请问你Debian10的rtsp client的环境怎么配的,我在debian10 下编译找不到curl库

你参考下:https://www.jianshu.com/p/6e86980aa563
作者: lipandeng    时间: 2020-6-22 11:32
hellosong 发表于 2020-6-11 14:34
请问你Debian10的rtsp client的环境怎么配的,我在debian10 下编译找不到curl库

参考下我简书的内容:https://www.jianshu.com/p/6e86980aa563
作者: zhangyichent    时间: 2020-6-23 10:28
cr7jj 发表于 2019-11-13 14:25
用VLC推的RTSP流  用给出的代码运行会报错误mpp_log: decode_get_frame failed, return -8.,取不到流。如 ...

请问后面是怎么解决的啊
作者: zhangyichent    时间: 2020-6-23 10:33
你好,我运行local_rtsp这个demo里的报如下错误
[2020/06/23 01:41:40] E/: (determineVideoType in unit_rtp_video_unpack_ex.cpp:74): Can not determine rtp video type !!!
[2020/06/23 01:41:40] E/: (determineVideoType in unit_rtp_video_unpack_ex.cpp:74): Can not determine rtp video type !!!
[2020/06/23 01:41:40] E/: (determineVideoType in unit_rtp_video_unpack_ex.cpp:74): Can not determine rtp video type !!!
[2020/06/23 01:41:40] E/: (determineVideoType in unit_rtp_video_unpack_ex.cpp:74): Can not determine rtp video type !!!
[2020/06/23 01:41:40] E/: (determineVideoType in unit_rtp_video_unpack_ex.cpp:74): Can not determine rtp video type !!!
[2020/06/23 01:41:40] E/: (determineVideoType in unit_rtp_video_unpack_ex.cpp:74): Can not determine rtp video type !!!
[2020/06/23 01:41:40] E/: (determineVideoType in unit_rtp_video_unpack_ex.cpp:74): Can not determine rtp video type !!!
[2020/06/23 01:41:40] E/: (determineVideoType in unit_rtp_video_unpack_ex.cpp:74): Can not determine rtp video type !!!
mpp_log: decode_get_frame failed, return -8.

作者: 谁谁谁    时间: 2020-7-16 09:16
debian 9 的有mpp吗,这个一直安装失败  
有debian9 mpp+rtsp教程例子吗,主要是环境安装失败
作者: sunxiaolin9325    时间: 2020-9-7 19:00

使用demo,接的海康网络摄像头,遇到两个问题,如图所示
1,画面顶部一直出现彩色横条
2,mpp_log显示持续1~3s获取帧失败,从而画面会卡住1-3s
作者: sunxiaolin9325    时间: 2020-9-7 19:06
补补补补补补补图

作者: seanx    时间: 2020-9-9 10:13
sunxiaolin9325 发表于 2020-9-7 19:06
补补补补补补补图

我在解码图像有填充的情况下,用 rga 扣出原始部分,没有处理对会遇到过顶部彩条。仅供参考。
作者: sunxiaolin9325    时间: 2020-9-9 16:00
问题1顶部彩条的问题,apt upgrade升级相关库就没有出现了
问题2报错位置是在封装的mpp库里,没法排查
作者: lian    时间: 2020-10-15 14:50
本帖最后由 lian 于 2020-10-15 16:31 编辑

在RK1808M0上运行sudo ./rtsp_ssd时报错:
  1. mpp[26153]: mpp_info: mpp version: unknown mpp version for missing VCS info
  2. mpp[26153]: mpp_rt: NOT found ion allocator
  3. mpp[26153]: mpp_rt: found drm allocator
  4. [2020/10/15 08:28:54] D/: listening rtp port 45886
  5. [2020/10/15 08:28:54] D/: listening rtp port 45876
  6. [2020/10/15 08:28:54] D/: listening rtcp port 45877
  7. [2020/10/15 08:28:54] D/: listening rtcp port 45887
  8. [2020/10/15 08:28:54] D/: curlto rtsp://192.168.1.97:554/h264 , cli 45876:45886, tcp: 0
  9. [2020/10/15 08:28:54] D/: # FOUND[0] media: video
  10. [2020/10/15 08:28:54] D/: # FOUND[0] control: rtsp://192.168.1.97:554/h264/trackID=1
  11. [2020/10/15 08:28:54] D/: # FOUND[0] rtpmap: id:96 format:H264 bitrate:90000
  12. [2020/10/15 08:28:54] D/: # TOTAL FOUND  1
  13. [2020/10/15 08:28:54] D/: TRACK [0] : rtsp://192.168.1.97:554/h264/trackID=1
  14. [2020/10/15 08:28:54] D/: setup 45876 , 45877, uri: rtsp://192.168.1.97:554/h264/trackID=1
  15. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  16. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  17. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  18. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  19. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  20. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  21. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  22. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  23. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  24. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  25. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
  26. mpp[26153]: mpp_log: decode_get_frame failed, return -8.
复制代码

用vlc可以打开流地址,如何解决问题

作者: yuys    时间: 2020-10-29 18:39
lian 发表于 2020-10-15 14:50
在RK1808M0上运行sudo ./rtsp_ssd时报错:
用vlc可以打开流地址,如何解决问题

用网桥模式。
作者: lily393    时间: 2020-11-11 14:19
hisping 发表于 2019-9-4 08:25
开源了mpp rga isp,没有开源rtsp

想问下,那现在想用rk3399的板子来拉流,建议使用哪种方式呢?ubuntu上可以直接安装rtsp的库么?
作者: q179060322    时间: 2020-11-18 17:31
hash: ./rtsp_ssdermission denied
请问编译到./rtsp_ssd时候报这个是什么原因?
作者: q179060322    时间: 2020-11-18 17:52
./rtsp_ssd: error while loading shared libraries:librockchip_rtsp.sp.0  cannot open shared object file : No such file or  报这个错误
作者: 苏苏    时间: 2020-11-20 18:15
你好,请问我在板卡上编译和运行rtsp_ssd的时候遇到下面的错误是怎么回事
Vendor storage device open failed
Get manufacture ID failed
Toybrick(-1): this may NOT be toybrick board!

作者: how0723    时间: 2020-11-23 10:24
有没有RtspClient 的源码啊?有没有mpp封装的源码?
作者: decoder    时间: 2021-1-12 15:18
创建解码器失败 是什么原因?
main 191 mpp_dec = (nil)
作者: 闲花落地    时间: 2021-1-26 09:53
这个库支持用tcp的方式连接吗?
作者: zhuyuliang0    时间: 2021-2-22 10:36
闲花落地 发表于 2021-1-26 09:53
这个库支持用tcp的方式连接吗?

我试过,好像tcp支持不太好
作者: loveltyoic    时间: 2021-5-10 18:16
lian 发表于 2020-10-15 14:50
在RK1808M0上运行sudo ./rtsp_ssd时报错:
用vlc可以打开流地址,如何解决问题

你好,遇到了同样的错误。
我后来换了一个流,可以正常解码。我怀疑是有些流解不了码
作者: cliffgao2s    时间: 2021-5-14 14:26
本帖最后由 cliffgao2s 于 2021-5-17 11:04 编辑

DONE  已解决
作者: hhhjjjwww    时间: 2021-9-30 15:06
本帖最后由 hhhjjjwww 于 2021-9-30 15:20 编辑

while (run_flag) {
                DecFrame *frame = mpp_dec->ops->dequeue_timeout(mpp_dec, 300);
                std::cout<<"!!!!!!!!!!!!!!!"<<endl;
                if (frame != NULL) {
                        std::cout << "decode frame" << frame->width << "x" << frame->height << std::endl;
               
                        if (!first_frame) {
                                std::cout << "first_frame" << std::endl;
                                t_inference = std::thread(inference_thread, rga, frame->width, frame->height);
                                first_frame = 1;
                        }
frame 这里一直为空,是什么原因?用ffplay能够在板子上打开视频流

运行时打印的log:
mpp[9900]: mpp_info: mpp version: unknown mpp version for missing VCS info
mpp[9900]: mpp_rt: NOT found ion allocator
mpp[9900]: mpp_rt: found drm allocator
[2021/09/30 07:19:41] D/: listening rtp port 27731
[2021/09/30 07:19:41] D/: curlto rtsp://litinghong:Ax30hcDgx9@172 ... eaming/Channels/801 , cli 27721:27731, tcp: 0
[2021/09/30 07:19:41] D/: listening rtcp port 27732
[2021/09/30 07:19:41] D/: listening rtp port 27721
[2021/09/30 07:19:41] D/: listening rtcp port 27722
[2021/09/30 07:19:41] D/: # FOUND[0] media: video
[2021/09/30 07:19:41] D/: # FOUND[0] rtpmap: id:96 format:H264 bitrate:90000
[2021/09/30 07:19:41] D/: # FOUND[0] control: trackID=video
[2021/09/30 07:19:41] D/: # TOTAL FOUND  1
[2021/09/30 07:19:41] D/: TRACK [0] : trackID=video
[2021/09/30 07:19:41] D/: setup 27721 , 27722, uri: rtsp://litinghong:Ax30hcDgx9@172 ... s/801/trackID=video
[2021/09/30 07:19:41] D/: Video SSRC Changed! 0 -> 2090724292
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 65535 > 47330
[2021/09/30 07:19:41] D/: RTP4UP_UNIT_SE [0x55839a2e58] loss/recv:-606.87/ 0.03 SEI|SPS|PPS|NI|I: 0.00|0.00|0.00|0.03|0.00
frame recived 312
frame recived 28
frame recived 8
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47402 > 47404
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47404 > 47414
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47414 > 47419
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47419 > 47425
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47425 > 47432
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47432 > 47439
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47439 > 47446
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47446 > 47449
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47449 > 47456
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47456 > 47463
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47463 > 47470
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47470 > 47477
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47477 > 47482
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47482 > 47488
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47488 > 47494
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47494 > 47497
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47497 > 47504
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47504 > 47513
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47514 > 47516
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47516 > 47522
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47522 > 47529
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47529 > 47535
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47535 > 47538
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47538 > 47541
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47541 > 47545
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47547 > 47550
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47550 > 47554
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47554 > 47557
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47557 > 47559
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47559 > 47562
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47562 > 47566
[2021/09/30 07:19:41] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 47566 > 47570
frame recived 216
frame recived 248
frame recived 296
mpp[9900]: mpp_log: decode_get_frame failed, return -8.
frame recived 296
frame recived 280
frame recived 264
frame recived 312
frame recived 296
frame recived 312
frame recived 344
frame recived 328
mpp[9900]: mpp_log: decode_get_frame failed, return -8.
frame recived 376
frame recived 344
frame recived 328
frame recived 312
frame recived 344
frame recived 328
frame recived 328
frame recived 376
mpp[9900]: mpp_log: decode_get_frame failed, return -8.
frame recived 328
frame recived 312
frame recived 280
frame recived 264
frame recived 280
frame recived 264
mpp[9900]: mpp_log: decode_get_frame failed, return -8.
frame recived 312
frame recived 264
frame recived 248
frame recived 248
frame recived 264
frame recived 312
frame recived 264
frame recived 296
mpp[9900]: mpp_log: decode_get_frame failed, return -8.
frame recived 328
frame recived 280
frame recived 312
frame recived 360
frame recived 312
frame recived 280
frame recived 296
frame recived 296
mpp[9900]: mpp_log: decode_get_frame failed, return -8.
frame recived 280
frame recived 328
frame recived 312
frame recived 312
frame recived 296
frame recived 312
frame recived 360
mpp[9900]: mpp_log: decode_get_frame failed, return -8.
frame recived 888
frame recived 456
frame recived 360
frame recived 376
frame recived 360
frame recived 328
frame recived 328
frame recived 296
mpp[9900]: mpp_log: decode_get_frame failed, return -8.
frame recived 360
frame recived 296
frame recived 360
frame recived 248


作者: Bbjmonsoon    时间: 2021-12-21 22:02
学习.............
作者: caizhoucun    时间: 2022-1-14 13:01
lian 发表于 2020-10-15 14:50
在RK1808M0上运行sudo ./rtsp_ssd时报错:
用vlc可以打开流地址,如何解决问题

你好,你这个怎么解决的,我也遇到这个问题
作者: mbs6176966    时间: 2022-1-14 15:38
yuys 发表于 2020-10-29 18:39
用网桥模式。

一般不是网络的问题导致的,demo的RTSPClient兼容性很差,也不知道内部如何组包取帧的,打算自己写rstp组包的部分
作者: mbs6176966    时间: 2022-1-14 15:39
loveltyoic 发表于 2021-5-10 18:16
你好,遇到了同样的错误。
我后来换了一个流,可以正常解码。我怀疑是有些流解不了码 ...

是帧取不到导致的,看图还没走到解码部分
作者: hhhjjjwww    时间: 2022-1-18 15:37
有没有多路同时解码的案例?
作者: Google    时间: 2022-4-12 20:06
1808板子可用用这个库么?
作者: richard    时间: 2022-5-13 16:59
这个是解码流程,有没有用MppEncoderCreate这套接口编码的示例代码呢
作者: dragonfly007    时间: 2022-6-10 16:11
TB-RK3399pro debain10系统如何进行环境安装和系统软件包的安装呢?
作者: richard    时间: 2022-6-22 11:25
这论坛现在都没人管了吗
作者: gyx    时间: 2022-6-29 14:31
给你们瑞星微提一个意见,你们,不开放demo,让我们学,我们就不会用你们的芯片,岂不是逼着我们不用你们的芯片?
作者: yingfalu    时间: 2022-8-22 15:55

toybrick@debian10:~/RtspHardDecoding-master/local_rtsp/build$
toybrick@debian10:~/RtspHardDecoding-master/local_rtsp/build$ cmake ..
CMake Error: The current CMakeCache.txt directory /home/toybrick/RtspHardDecoding-master/local_rtsp/build/CMakeCache.txt is different than the directory /home/toybrick/local_rtsp/build where CMakeCache.txt was created. This may result in binaries being created in the wrong place. If you are not sure, reedit the CMakeCache.txt
CMake Error: The source "/home/toybrick/RtspHardDecoding-master/local_rtsp/CMakeLists.txt" does not match the source "/home/toybrick/local_rtsp/CMakeLists.txt" used to generate cache.  Re-run cmake with a different source directory.

请问我执行,cmake..为啥会报这个错误呢?
作者: yingfalu    时间: 2022-8-23 11:30
toybrick@debian10:~/local_rtsp/build$ sudo dnf install -y python3-devel python3-opencv python3-numpy-f2py python3-h5py python3-lmdb  python3-grpcio
sudo: dnf: command not found

为啥没有dnf呀。
我的是debian系统的原因吗?
作者: yingfalu    时间: 2022-8-29 15:02
为啥我执行cd local_rtsp/build
cmake ..
的时候会报如下的错误呢?
toybrick@debian10:~/Documents/local_rtsp/build$ cmake ..
CMake Error: The current CMakeCache.txt directory /home/toybrick/Documents/local_rtsp/build/CMakeCache.txt is different than the directory /home/toybrick/local_rtsp/build where CMakeCache.txt was created. This may result in binaries being created in the wrong place. If you are not sure, reedit the CMakeCache.txt
CMake Error: The source "/home/toybrick/Documents/local_rtsp/CMakeLists.txt" does not match the source "/home/toybrick/local_rtsp/CMakeLists.txt" used to generate cache.  Re-run cmake with a different source directory.

是路径不对,然后我修改了路径之后执行又报如下的错误了
toybrick@debian10:~/local_rtsp/build$ cmake ..
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /bin/cc
CMake Error: Generator: execution of make failed. Make command was: "/bin/gmake" "cmTC_bc0c8/fast"
-- Check for working C compiler: /bin/cc -- broken
CMake Error at /usr/share/cmake-3.13/Modules/CMakeTestCCompiler.cmake:52 (message):
  The C compiler

    "/bin/cc"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: /home/toybrick/local_rtsp/build/CMakeFiles/CMakeTmp

    Run Build Command:"/bin/gmake" "cmTC_bc0c8/fast"
    No such file or directory
    Generator: execution of make failed. Make command was: "/bin/gmake" "cmTC_bc0c8/fast"




  CMake will not be able to correctly generate this project.


-- Configuring incomplete, errors occurred!
See also "/home/toybrick/local_rtsp/build/CMakeFiles/CMakeOutput.log".
See also "/home/toybrick/local_rtsp/build/CMakeFiles/CMakeError.log".




作者: yingfalu    时间: 2022-8-31 05:23
toybrick@debian10:~/local_rtsp/build$ cmake ..
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /bin/cc
CMake Error: Generator: execution of make failed. Make command was: "/bin/gmake" "cmTC_dc915/fast"
-- Check for working C compiler: /bin/cc -- broken
CMake Error at /usr/share/cmake-3.13/Modules/CMakeTestCCompiler.cmake:52 (message):
  The C compiler

    "/bin/cc"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: /home/toybrick/local_rtsp/build/CMakeFiles/CMakeTmp

    Run Build Command:"/bin/gmake" "cmTC_dc915/fast"
    No such file or directory
    Generator: execution of make failed. Make command was: "/bin/gmake" "cmTC_dc915/fast"




  CMake will not be able to correctly generate this project.


-- Configuring incomplete, errors occurred!
See also "/home/toybrick/local_rtsp/build/CMakeFiles/CMakeOutput.log".
See also "/home/toybrick/local_rtsp/build/CMakeFiles/CMakeError.log".

为啥我执行这个会报这个错误呢?是我有什么依赖没有安装吗?
我查看了g++的版本
看了600多行的log,看不懂,想放弃。
楼主能踢我一脚吗?
作者: yingfalu    时间: 2022-8-31 05:24
caizhoucun 发表于 2022-1-14 13:01
你好,你这个怎么解决的,我也遇到这个问题

这个问题是什么原因呢?
作者: ltp4399    时间: 2023-9-20 16:44
我在RV1126调用librockchip_rtsp出现如图所示错误:
  1. [2023/09/20 08:31:20] D/: listening rtp port 22540
  2. [2023/09/20 08:31:20] D/: listening rtcp port 22541
  3. [2023/09/20 08:31:20] D/: listening rtp port 22550
  4. [2023/09/20 08:31:20] D/: listening rtcp port 22551
  5. [2023/09/20 08:31:20] D/: curlto rtsp://192.168.0.239/test , cli 22540:22550, tcp: 0
  6. terminate called after throwing an instance of 'std::bad_alloc'
  7.   what():  std::bad_alloc
  8. Aborted
复制代码


安装采用如下形式:
  1. sudo apt install rockchip-rtsp rockchip-rtsp-dev libcurl4-openssl-dev
复制代码
这个视频流可以用VLC播放器秒开,是1920*1080的H.264编码的视频流
  1. 流 0
  2.     编解码器: H264 - MPEG-4 AVC (part 10) (h264)
  3.     类型: 视频
  4.     视频分辨率: 1920x1080
  5.     缓冲分辨率: 1920x1088
  6.     帧率: 25
  7.     已解码格式:
  8.     方向: 上左
  9.     色度位置: 左
  10. 流 1
  11.     编解码器: PCM ALAW (alaw)
  12.     类型: 音频
  13.     声道: 单声道
  14.     采样率: 8000 Hz
  15.     位每采样: 16
复制代码

有谁遇到过类似的问题吗?在线等个回复





欢迎光临 Toybrick (https://t.rock-chips.com/) Powered by Discuz! X3.3