Firefly开源社区

123
发表新贴
打印 上一主题 下一主题

关于播放rtsp流的问题

109

积分

0

威望

0

贡献

技术小白

积分
109

关于播放rtsp流的问题

发表于 2022-4-12 10:55:33      浏览:22151 | 回复:20        打印      只看该作者   [复制链接] 楼主
你好,我在3588板子上使用opencv的videocapture打开海康rtsp流,画面为绿屏。
使用gstreamer命令和ffplay命令播放均未成功。打印信息如图、

请问这是什么问题。如何解决

ffplay.jpg (177.37 KB, 下载次数: 802)

ffplay.jpg

gstreamer.jpg (148.59 KB, 下载次数: 814)

gstreamer.jpg

opencv解rtsp.jpg (32.63 KB, 下载次数: 769)

opencv解rtsp.jpg
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11182

优秀版主

发表于 2022-4-12 14:19:37        只看该作者  沙发
gstreamer 请指定其他sink 运行,再autovideosink 验证一下
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11182

优秀版主

发表于 2022-4-12 14:29:17        只看该作者  板凳
如您提供的 log 图,gstreamer 使用了 kmssink,kmssink 默认不指定图层的话默认使用第一个图层,而 rk3588 有4个 esmart 和 4个 cluster 图层,cluster 只支持 afbc 格式,不支持 rgb/yuv,同时 kmssink 不能再 ui 层播放。如果要使用 kmssink 需要指定图层。例如:

gst-launch-1.0 playbin video-sink='kmssink plane-id=105' uri=file:///usr/local/test.mp4



回复

使用道具 举报

109

积分

0

威望

0

贡献

技术小白

积分
109
发表于 2022-4-12 14:46:07        只看该作者  地板
板蓝根 发表于 2022-4-12 14:29
如您提供的 log 图,gstreamer 使用了 kmssink,kmssink 默认不指定图层的话默认使用第一个图层,而 rk3588 ...

加上video-sink参数后确实可以显示画面了。  那请问如何使用opencv直接拉流呢?
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11182

优秀版主

发表于 2022-4-12 14:50:25        只看该作者  5#
为什么 opencv 会支持 mpp 解码,按道理官方只适配了第三方的 gstreamer、ffmpeg
回复

使用道具 举报

109

积分

0

威望

0

贡献

技术小白

积分
109
发表于 2022-4-12 14:56:30        只看该作者  6#
板蓝根 发表于 2022-4-12 14:50
为什么 opencv 会支持 mpp 解码,按道理官方只适配了第三方的 gstreamer、ffmpeg

我是重新编译的opencv,那软解在板子上也是无法使用的吗
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11182

优秀版主

发表于 2022-4-12 14:58:52        只看该作者  7#
纯 cpu 软解跟硬件没关系,应该是可以用的,你把你的测试流程发我一下,我验证一下。
回复

使用道具 举报

109

积分

0

威望

0

贡献

技术小白

积分
109
发表于 2022-4-12 15:05:46        只看该作者  8#
板蓝根 发表于 2022-4-12 14:58
纯 cpu 软解跟硬件没关系,应该是可以用的,你把你的测试流程发我一下,我验证一下。
  1. #include<opencv2/opencv.hpp>
  2. #include<iostream>

  3. using namespace std;
  4. using namespace cv;

  5. int main(int argc,char **argv)
  6. {
  7.     VideoCapture capture("rtsp://admin:ai123456@192.168.165.109:554/h264/ch1/sub/av_stream");
  8. //    VideoCapture capture("/home/firefly/222.h264");
  9.     namedWindow("myCamera",CV_WINDOW_AUTOSIZE);
  10.     while(true)
  11.     {
  12.         Mat frame;
  13.         capture>>frame;
  14.         imshow("myCamera",frame);
  15.         waitKey(30);
  16.     }
  17.     return 0;
  18. }
复制代码

opencv官方下载3.4.5的源码,cmake -D CMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .. ,make,make install进行编译。opencv打开海康相机的测试代码已经贴上。  rtsp地址用vlc测试可以播放
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11182

优秀版主

发表于 2022-4-12 15:39:09        只看该作者  9#
1.  sudo apt update
2.  sudo apt install libopencv-dev
3.  sudo apt install g++
4. g++ -o test test.c -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_highgui -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hdf -lopencv_hfs -lopencv_img_hash -lopencv_line_descriptor -lopencv_quality -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_shape -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_dnn -lopencv_plot -lopencv_ml -lopencv_videostab -lopencv_videoio -lopencv_viz -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_imgcodecs -lopencv_features2d -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core -I/usr/include/opencv4/opencv -I/usr/include/opencv4

5. ./test



我这边测试没有问题,另外我发现这真的好像在调用 mpp。
回复

使用道具 举报

109

积分

0

威望

0

贡献

技术小白

积分
109
发表于 2022-4-12 16:00:50        只看该作者  10#
板蓝根 发表于 2022-4-12 15:39
1.  sudo apt update
2.  sudo apt install libopencv-dev
3.  sudo apt install g++

你说直接命令安装的opencv吗。我试试
回复

使用道具 举报

返回列表
123
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表