openhisilicon / hiview Goto Github PK
View Code? Open in Web Editor NEWA multi-process software framework for hisilicon (海思) ipc/dvr/nvr/ebox
Home Page: http://hiview-tech.cn
A multi-process software framework for hisilicon (海思) ipc/dvr/nvr/ebox
Home Page: http://hiview-tech.cn
If there is Hi3516dv300 imx335_2l.so driver or any code available?
Is there an example for how to use ae_piris_init
, ae_piris_status_get
functions?
It seems that they work with /dev/piris
🤔
请问HIVIEW能够对接IPC的live stream么(比如海康的IPC)?因为后续需要送入mpp/svp进行处理,麻烦解答下,多谢!
http.c 和signling.c都有调用webrtc_proc,http.c处理是本地的webrtc连接,signaling.c是处理https://openhisilicon.glitch.me/ 的webrtc连接吗?
Good morning,
Would it be possible to have the code added to the repo to be able to compile the libraries/binaries?
svp 模块中 VpssCapture 成员函数 int VpssCapture::YUV2Mat(VIDEO_FRAME_S* pVBuf, cv::Mat& img)
,有调用 HI_MPI_SYS_MmzAlloc_Cached。 如果连续使用空 img 做参数,导致持续分配,最终 mmz 耗尽失败 orz...
改进建议:在 HI_MPI_SYS_MmzAlloc_Cached分配前若非空则调用 HI_MPI_SYS_MmzFree 释放。
官方和srs中的state_thread中epoll中对EPOLLET没有直接支持. 我尝试做了如下修改
ST_HIDDEN int _st_epoll_pollset_add(struct pollfd *pds, int npds) { ... if (events != old_events) { op = old_events ? EPOLL_CTL_MOD : EPOLL_CTL_ADD; ev.events = events | EPOLLET; ev.data.fd = fd; if (epoll_ctl(_st_epoll_data->epfd, op, fd, &ev) < 0 && (op != EPOLL_CTL_ADD || errno != EEXIST)) break; if (op == EPOLL_CTL_ADD) { _st_epoll_data->evtlist_cnt++; if (_st_epoll_data->evtlist_cnt > _st_epoll_data->evtlist_size) _st_epoll_evtlist_expand(); } } ... }
EPOLLET没有起效. 后来使用原生的接口调用时正常的. 请问一下, 这个是什么原因导致的?
HIVIEW$ source build/3516e
HIVIEW$ ls
bin build fw inc ins.sh lib Makefile mod README.md README.TXT res tools
HIVIEW$ make
================ GSF-IPC ================
Env: 3516e
...
ipc/codec.c: In function 'mpp_start':
ipc/codec.c:775:46: error: 'gsf_mpp_cfg_t {aka struct <anonymous>}' has no member named 'second'
gsf_lens_af_start(0, (cfg.snscnt < 2 && !cfg.second)?"/dev/ttyAMA2":"/dev/ttyAMA4");
^
Makefile:56: recipe for target 'ipc/codec.o' failed
make[1]: *** [ipc/codec.o] Error 1
make[1]: Leaving directory '/home/vroot/nfs/HIVIEW/mod/codec'
Makefile:68: recipe for target 'mod/codec' failed
make: *** [mod/codec] Error 2
你好,我在使用onvif模块对接华为nvr时失败了;抓包显示onvif流程正常,在获取到rtsp播放地址之后播放失败(onplay之后客户端又发送了一个getparameter请求,然后就停下了),请教一下有没有遇到过类似问题
b站上讲解webrtc signaling那块的视频是不是被删除了?找不到啦
Is there a way to make usb uart adapters work with something like HI3516DV300 ?
I have downloaded all the resources + toolchains+sdk on the board. How can i compile them on dv300 board?
使用开源的libst库交叉编译后, epoll监听端口处理连接请求会出现段错误.
初步分析 _x86_64 架构正常, __arm__架构编译会有问题
怀疑问题出在md.h中 _st_md_cxt_restore 和 _st_md_cxt_save这两个接口的问题
线程中上下文信息保存和还原 数据丢失了
HIVIEW-master/mod/codec/ipc/main_3403_3519d.c:741: undefined reference to `gsf_mpp_ao_send_pcm'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:79: bin/codec.exe] Error 1
make[1]: Leaving directory '/home/cmt/21062024/HIVIEW-master/mod/codec'
make: *** [Makefile:69: mod/codec] Error 2
海康大华需要下载工具才能支持web的rtsp流播放,HIVIEW是直接支持web播放还是也要安装软件才能播放?谢谢
在svp的VpssCapture类中,变量采用了static的定义方式,这样导致VpssCapture类会形成单例的功能。当我们希望多路算法切换不同的grp或者chn的时候,在任意一处修改VpssCapture中的参数,就会导致其它路算法使用的数据也被一起修改。
这里给出一个建议:
VpssCapture按照正常类的设计方式,去除所有的static定义。
在使用VpssCapture的是时候,采用类似static VpssCapture s_Vcap;这样的方式去避免不同算法引用VpssCapture的冲突问题。
以上修改在3516dv300的双sensor,多路算法中已验证可行。
由于没有arm-hisiv510-linux编译工具,将build中3536d对应交叉编译工具改为arm-hisiv400-linux
再使用
source build/3536d
make
报入下错误
Env: 3536d
make[1]: Entering directory '/home/lh/Hi3536/temp/02_HIVIEW-master/mod/bsp'
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/wdg.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/wdg.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/bsp.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/bsp.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/wifi.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/wifi.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/dio.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/dio.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/sjb_bsp.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/sjb_bsp.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/cfg.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/cfg.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/sadp.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/sadp.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/rtc.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/rtc.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/ppp.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/ppp.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/upg.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/upg.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/netinf.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/netinf.o
arm-hisiv400-linux-gcc -g -fstack-protector -fPIC -DGSF_DEV_NVR -DGSF_CPU_3536d -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -mno-unaligned-access -fno-aggressive-loop-optimizations -c -MMD src/msg_func.c -I/home/lh/Hi3536/temp/02_HIVIEW-master -Isrc -Iinc -o src/msg_func.o
arm-hisiv400-linux-gcc -g -o bin/bsp.exe src/wdg.o src/bsp.o src/wifi.o src/dio.o src/sjb_bsp.o src/cfg.o src/sadp.o src/rtc.o src/ppp.o src/upg.o src/netinf.o src/msg_func.o -L/home/lh/Hi3536/temp/02_HIVIEW-master/lib/3536d -lcfifo -lrt -lnm -lcjson -lcomm -lm -lpthread
/opt/hisi-linux/x86-arm/arm-hisiv400-linux/bin/../lib/gcc/arm-hisiv400-linux-gnueabi/4.8.3/../../../../arm-hisiv400-linux-gnueabi/bin/ld: warning: libc.so.0, needed by /home/lh/Hi3536/temp/02_HIVIEW-master/lib/3536d/libcfifo.so, not found (try using -rpath or -rpath-link)
/opt/hisi-linux/x86-arm/arm-hisiv400-linux/bin/../lib/gcc/arm-hisiv400-linux-gnueabi/4.8.3/../../../../arm-hisiv400-linux-gnueabi/bin/ld: warning: ld-uClibc.so.0, needed by /home/lh/Hi3536/temp/02_HIVIEW-master/lib/3536d/libcfifo.so, not found (try using -rpath or -rpath-link)
/home/lh/Hi3536/temp/02_HIVIEW-master/lib/3536d/libnm.so:对‘__fputc_unlocked’未定义的引用
/home/lh/Hi3536/temp/02_HIVIEW-master/lib/3536d/libnm.so:对‘__ctype_b’未定义的引用
/home/lh/Hi3536/temp/02_HIVIEW-master/lib/3536d/libnm.so:对‘__stdout’未定义的引用
collect2: error: ld returned 1 exit status
Makefile:19: recipe for target 'bin/bsp.exe' failed
make[1]: *** [bin/bsp.exe] Error 1
make[1]: Leaving directory '/home/lh/Hi3536/temp/02_HIVIEW-master/mod/bsp'
Makefile:69: recipe for target 'mod/bsp' failed
make: *** [mod/bsp] Error 2
您好,我目前使用的板载平台为您公司产品Hi3516DV300,目前出现海康IPC对接HIVIEW后,输出VO的第二屏一直是IPC摄像头采集数据的一个回放情况【几分钟前到当前时间】,而且速度非常快,请问这个需要如何解决?
It's unclear how to use srt
It looks like there should be an udp
provider that srt-live-transmit
hooks up to. but then how to enable the udp source 🤔
如题,使用不同版本的编译器或者库去链接是否有兼容性问题,比如020和030的不同版本?
onvif
module depends on libgsoap.a
and the current version was pushed May 24, 2020
Since then there were a couple of major vulnerability disclosures about the library, including TALOS-2021-1245
Also the code snippet from the report :
soap_decode(char *buf, size_t len, const char *val, const char *sep)
{
const char *s;
char *t = buf;
size_t i = len;
if (!buf || !val || !sep || len == 0)
return val;
for (s = val; *s; s++)
if (*s != ' ' && *s != '\t' && !strchr(sep, *s))
break;
if (len > 0)
{
if (*s == '"')
{
s++;
while (*s && *s != '"' && i-- > 1)
*t++ = *s++;
}
else
{
while (*s && !strchr(sep, *s) && i-- > 1)
{
if (*s == '%' && s[1] && s[2])
{
*t++ = ((s[1] >= 'A' ? (s[1] & 0x7) + 9 : s[1] - '0') << 4)
+ (s[2] >= 'A' ? (s[2] & 0x7) + 9 : s[2] - '0');
s += 3;
}
else
*t++ = *s++;
}
}
buf[len - 1] = '\0'; /* appease static checkers that get confused */
}
*t = '\0';
while (*s && !strchr(sep, *s))
s++;
return s;
}
looks very similar ( after translation back into C ) to what you provide in this repo:
byte * soap_decode(byte *param_1,int param_2,byte *param_3,undefined4 param_4)
{
char cVar1;
int iVar2;
char cVar3;
int iStack24;
byte *pbStack16;
byte *pbStack12;
pbStack16 = param_3;
while ((*pbStack16 != 0 &&
(((*pbStack16 == 0x20 || (*pbStack16 == 9)) ||
(iVar2 = strchr(param_4,*pbStack16), iVar2 != 0))))) {
pbStack16 = pbStack16 + 1;
}
iStack24 = param_2;
pbStack12 = param_1;
if (*pbStack16 == 0x22) {
while (((pbStack16 = pbStack16 + 1, *pbStack16 != 0 && (*pbStack16 != 0x22)) &&
(iStack24 = iStack24 + -1, iStack24 != 0))) {
*pbStack12 = *pbStack16;
pbStack12 = pbStack12 + 1;
}
}
else {
while ((((*pbStack16 != 0 && ((*pbStack16 == 0xffffffff || (0x20 < *pbStack16)))) &&
(iVar2 = strchr(param_4,*pbStack16), iVar2 == 0)) &&
(iStack24 = iStack24 + -1, iStack24 != 0))) {
if (*pbStack16 == 0x25) {
if (pbStack16[1] < 0x41) {
cVar1 = (char)((pbStack16[1] - 0x30 & 0xff) << 4);
}
else {
cVar1 = ((pbStack16[1] & 7) + 9) * '\x10';
}
if (pbStack16[2] < 0x41) {
cVar3 = pbStack16[2] - 0x30;
}
else {
cVar3 = (pbStack16[2] & 7) + 9;
}
*pbStack12 = cVar1 + cVar3;
pbStack16 = pbStack16 + 3;
pbStack12 = pbStack12 + 1;
}
else {
*pbStack12 = *pbStack16;
pbStack16 = pbStack16 + 1;
pbStack12 = pbStack12 + 1;
}
}
}
*pbStack12 = 0;
while ((*pbStack16 != 0 && (iVar2 = strchr(param_4,*pbStack16), iVar2 == 0))) {
pbStack16 = pbStack16 + 1;
}
return pbStack16;
}
but it's even older version without len check at all 🤔
How to convert a YOLOv8-trained model to an OM file? Also, what are the differences between the model and the official website?
https://github.com/openhisilicon/HIVIEW/tree/master/mod/mpp/3516a/lib/hisisdk/libsns_imx335_2l.so
When running this driver on 3516dv300, an error occurred. I had set the corresponding parameters in sample_comm_vi.c of 3516av300, using 10 bits, 0 and 2 lane, as well as LANE.DIVIDE-MODE_1.
The following is the error message:
[Func]:IMX335_exit [Line]:208 [Info]:i2c exit failed!
linear mode
[Func]:HI_ISP_Init [Line]:498 [Info]:ISP[0] DngInfo not initialized in Cmos.c!
Very nice project!
But I only have one hi3516cv300 development board in my hand.
How to add support, thank you very much.
3516DV300用020sdk移植遇到的错误
请问运行时的各模块的parm.json在哪里?有没有例子?
有在lvgl上测试过argb1555 吗?
Can you please suggest me any tool where i could edit, debug and run this code.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.