Firefly开源社区

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

[Linux] libffrtsp.so

23

积分

0

威望

0

贡献

技术小白

积分
23

libffrtsp.so

发表于 2021-8-21 12:43:15      浏览:8505 | 回复:19        打印      只看该作者   [复制链接] 楼主
本帖最后由 aure 于 2021-8-21 12:47 编辑

之前提供的libffrtsp.so是gcc-arm-6.3.1工具链编译的,由于我的工程使用的是gcc-arm-8.3,在链接libffrtsp.so是出错。请问下能提供下gcc-arm-8.3编译的libffrtsp.so或源码吗?
libffrtsp.so: undefined reference to `operator delete[](void*)@GLIBCXX_3.4'
libffrtsp.so: undefined reference to `operator new(unsigned int)@GLIBCXX_3.4'
libffrtsp.so: undefined reference to `vtable for __cxxabiv1::__class_type_info@CXXABI_1.3'
libffrtsp.so: undefined reference to `operator delete(void*, unsigned int)@CXXABI_1.3.9'
libffrtsp.so: undefined reference to `__cxa_end_cleanup@CXXABI_1.3'
libffrtsp.so: undefined reference to `__gxx_personality_v0@CXXABI_1.3'
libffrtsp.so: undefined reference to `vtable for __cxxabiv1::__si_class_type_info@CXXABI_1.3'
libffrtsp.so: undefined reference to `operator new[](unsigned int)@GLIBCXX_3.4'

回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11367

突出贡献

发表于 2021-8-21 14:10:22        只看该作者  沙发
试一下这个,是用 SDK_PATH/prebuilts/gcc/linux-x86/arm/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf 编译出来的

libffrtsp.so

47.9 KB, 下载次数: 20, 下载积分: 灯泡 -1 , 经验 -1

回复

使用道具 举报

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2021-8-21 14:14:03        只看该作者  板凳
这个可以用了。还想请问下,这个能提供源码吗?我想要修改下参数,在FFRtspGet中加入用户参数(void *user_data),用于在C++调用中加入this指针对象
回复

使用道具 举报

1万

积分

7

威望

0

贡献

技术大神

Rank: 8Rank: 8

积分
11367

突出贡献

发表于 2021-8-21 15:16:18        只看该作者  地板
源码不开放的哦
回复

使用道具 举报

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2021-8-21 16:37:09        只看该作者  5#
本帖最后由 aure 于 2021-8-21 17:04 编辑

那能实现一下这个吗?在callback中加入用户参数?还有就是想请教一下,callback中的最后一个参数为vdec通道号,这个是怎么填写进去的?是根据count这参数来的吗?count==1,那么vdec_chn=0;count == 2,那么vdec_chn == 0、vdec_chn == 1这样的吗?如果是这样的话,能否增加一个channel参数来指定呢?
structFFRTSPGet {   int count;
   struct  FFRTSPGet_URL_INFO ffrtsp_get_info[MAXFFRTSPChn];
   int (*callback)(u_int8_t*,unsigned,bool*,int);
};


回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11138

优秀版主

发表于 2021-8-21 17:06:08        只看该作者  6#
本帖最后由 板蓝根 于 2021-8-21 17:12 编辑
aure 发表于 2021-8-21 16:37
那能实现一下这个吗?在callback中加入用户参数?还有就是想请教一下,callback中的最后一个参数为vdec通 ...

diff --git a/ffrtsp/ffrtsp.hh b/ffrtsp/ffrtsp.hh
index 654c1be..025d6eb 100644
--- a/ffrtsp/ffrtsp.hh
+++ b/ffrtsp/ffrtsp.hh
@@ -25,8 +25,9 @@ struct FFRTSPGet_URL_INFO {
  
struct FFRTSPGet {
    int count;
+   void * user_data;
    struct  FFRTSPGet_URL_INFO ffrtsp_get_info[MAXFFRTSPChn];
-   int (*callback)(u_int8_t*,unsigned,bool*,int);
+   int (*callback)(u_int8_t*,unsigned,bool*,int,void*);
};



这是 Callback 函数,为什么需要填写呢?这只是为了多码流获取的时候区分具体哪条码流。

ffrtsp_for_aure.tar.gz

16.01 KB, 下载次数: 17, 下载积分: 灯泡 -1 , 经验 -1

回复

使用道具 举报

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2021-8-21 17:13:03        只看该作者  7#
板蓝根 发表于 2021-8-21 17:06
diff --git a/ffrtsp/ffrtsp.hh b/ffrtsp/ffrtsp.hh
index 654c1be..025d6eb 100644
--- a/ffrtsp/ffrt ...

首先,非常感谢。还有就是想请教一下,callback中的最后一个参数为vdec通道号,这个是怎么填写进去的?是根据count这参数来的吗?count==1,那么vdec_chn=0;count == 2,那么vdec_chn == 0、vdec_chn == 1这样的吗?如果是这样的话,能否增加一个channel参数来指定呢?
structFFRTSPGet {   int count;
   struct  FFRTSPGet_URL_INFO ffrtsp_get_info[MAXFFRTSPChn];
   int (*callback)(u_int8_t*,unsigned,bool*,int);
};
回复

使用道具 举报

1万

积分

14

威望

13

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
11138

优秀版主

发表于 2021-8-21 17:22:19        只看该作者  8#
本帖最后由 板蓝根 于 2021-8-21 17:23 编辑

这是 Callback 函数,为什么需要填写呢?这只是为了多码流获取的时候区分具体哪条码流。
count 是码流总数
callback 最后一个参数:接口会根据 count 创建多条线程,谁最快就是0,第二就是1,第三就是2.。。。。。以此类推,这个不需要自己填,内部接口在 rtsp 注册的时候分配的。用户可以以此区分码流,来喂入不同的解码通道
回复

使用道具 举报

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2021-8-21 17:29:01        只看该作者  9#
板蓝根 发表于 2021-8-21 17:22
这是 Callback 函数,为什么需要填写呢?这只是为了多码流获取的时候区分具体哪条码流。
count 是码流总数 ...

好的,了解。就是根据传入的count个RTSP流URL,然后根据count来创建count个线程,然后解码通道就是0 ~ count-1。这样的对吧
回复

使用道具 举报

100

积分

0

威望

0

贡献

技术小白

积分
100
发表于 2021-8-28 15:00:05        只看该作者  10#
这个rtsp的效率怎嘛样
回复

使用道具 举报

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

本版积分规则

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