├── .gitignore ├── 3rdparty ├── clipper │ ├── include │ │ └── clipper.h │ └── src │ │ └── clipper.cpp ├── freetype2 │ ├── .clang-format │ ├── .gitignore │ ├── .gitlab-ci.yml │ ├── .gitmodules │ ├── .mailmap │ ├── CMakeLists.txt │ ├── LICENSE.TXT │ ├── Makefile │ ├── README │ ├── README.git │ ├── autogen.sh │ ├── builds │ │ ├── amiga │ │ │ ├── README │ │ │ ├── include │ │ │ │ └── config │ │ │ │ │ ├── ftconfig.h │ │ │ │ │ └── ftmodule.h │ │ │ ├── makefile │ │ │ ├── makefile.os4 │ │ │ ├── smakefile │ │ │ └── src │ │ │ │ └── base │ │ │ │ ├── ftdebug.c │ │ │ │ └── ftsystem.c │ │ ├── ansi │ │ │ ├── ansi-def.mk │ │ │ └── ansi.mk │ │ ├── atari │ │ │ ├── ATARI.H │ │ │ ├── FNames.SIC │ │ │ ├── FREETYPE.PRJ │ │ │ ├── README.TXT │ │ │ ├── deflinejoiner.awk │ │ │ └── gen-purec-patch.sh │ │ ├── beos │ │ │ ├── beos-def.mk │ │ │ ├── beos.mk │ │ │ └── detect.mk │ │ ├── cmake │ │ │ ├── FindBrotliDec.cmake │ │ │ ├── FindHarfBuzz.cmake │ │ │ ├── iOS.cmake │ │ │ └── testbuild.sh │ │ ├── compiler │ │ │ ├── ansi-cc.mk │ │ │ ├── bcc-dev.mk │ │ │ ├── bcc.mk │ │ │ ├── emx.mk │ │ │ ├── gcc-dev.mk │ │ │ ├── gcc.mk │ │ │ ├── intelc.mk │ │ │ ├── unix-lcc.mk │ │ │ ├── visualage.mk │ │ │ ├── visualc.mk │ │ │ ├── watcom.mk │ │ │ └── win-lcc.mk │ │ ├── detect.mk │ │ ├── dos │ │ │ ├── detect.mk │ │ │ ├── dos-def.mk │ │ │ ├── dos-emx.mk │ │ │ ├── dos-gcc.mk │ │ │ └── dos-wat.mk │ │ ├── exports.mk │ │ ├── freetype.mk │ │ ├── link_dos.mk │ │ ├── link_std.mk │ │ ├── mac │ │ │ ├── FreeType.m68k_cfm.make.txt │ │ │ ├── FreeType.m68k_far.make.txt │ │ │ ├── FreeType.ppc_carbon.make.txt │ │ │ ├── FreeType.ppc_classic.make.txt │ │ │ ├── README │ │ │ ├── ascii2mpw.py │ │ │ ├── freetype-Info.plist │ │ │ ├── ftlib.prj.xml │ │ │ └── ftmac.c │ │ ├── meson │ │ │ ├── extract_freetype_version.py │ │ │ ├── extract_libtool_version.py │ │ │ ├── generate_reference_docs.py │ │ │ ├── parse_modules_cfg.py │ │ │ └── process_ftoption_h.py │ │ ├── modules.mk │ │ ├── os2 │ │ │ ├── detect.mk │ │ │ ├── os2-def.mk │ │ │ ├── os2-dev.mk │ │ │ └── os2-gcc.mk │ │ ├── symbian │ │ │ ├── bld.inf │ │ │ └── freetype.mmp │ │ ├── toplevel.mk │ │ ├── unix │ │ │ ├── .gitignore │ │ │ ├── ax_compare_version.m4 │ │ │ ├── ax_prog_python_version.m4 │ │ │ ├── ax_pthread.m4 │ │ │ ├── configure.raw │ │ │ ├── detect.mk │ │ │ ├── freetype-config.in │ │ │ ├── freetype2.in │ │ │ ├── freetype2.m4 │ │ │ ├── ft-munmap.m4 │ │ │ ├── ftconfig.h.in │ │ │ ├── ftsystem.c │ │ │ ├── install.mk │ │ │ ├── pkg.m4 │ │ │ ├── unix-cc.in │ │ │ ├── unix-def.in │ │ │ ├── unix-dev.mk │ │ │ ├── unix-lcc.mk │ │ │ ├── unix.mk │ │ │ └── unixddef.mk │ │ ├── vms │ │ │ ├── LIBS.OPT_IA64 │ │ │ ├── _LINK.OPT_IA64 │ │ │ ├── ftconfig.h │ │ │ ├── ftsystem.c │ │ │ └── vmslib.dat │ │ ├── wince │ │ │ ├── ftdebug.c │ │ │ ├── vc2005-ce │ │ │ │ ├── freetype.sln │ │ │ │ ├── freetype.vcproj │ │ │ │ └── index.html │ │ │ └── vc2008-ce │ │ │ │ ├── freetype.sln │ │ │ │ ├── freetype.vcproj │ │ │ │ └── index.html │ │ └── windows │ │ │ ├── .gitignore │ │ │ ├── detect.mk │ │ │ ├── ftdebug.c │ │ │ ├── ftsystem.c │ │ │ ├── vc2010 │ │ │ ├── freetype.sln │ │ │ ├── freetype.user.props │ │ │ ├── freetype.vcxproj │ │ │ ├── freetype.vcxproj.filters │ │ │ └── index.html │ │ │ ├── visualc │ │ │ ├── freetype.dsp │ │ │ ├── freetype.dsw │ │ │ ├── freetype.sln │ │ │ ├── freetype.vcproj │ │ │ └── index.html │ │ │ ├── visualce │ │ │ ├── freetype.dsp │ │ │ ├── freetype.dsw │ │ │ ├── freetype.vcproj │ │ │ └── index.html │ │ │ ├── w32-bcc.mk │ │ │ ├── w32-bccd.mk │ │ │ ├── w32-dev.mk │ │ │ ├── w32-gcc.mk │ │ │ ├── w32-icc.mk │ │ │ ├── w32-intl.mk │ │ │ ├── w32-lcc.mk │ │ │ ├── w32-mingw32.mk │ │ │ ├── w32-vcc.mk │ │ │ ├── w32-wat.mk │ │ │ └── win32-def.mk │ ├── configure │ ├── devel │ │ ├── ft2build.h │ │ └── ftoption.h │ ├── docs │ │ ├── .gitignore │ │ ├── CHANGES │ │ ├── CMAKE │ │ ├── CUSTOMIZE │ │ ├── DEBUG │ │ ├── DOCGUIDE │ │ ├── FTL.TXT │ │ ├── GPLv2.TXT │ │ ├── INSTALL │ │ ├── INSTALL.ANY │ │ ├── INSTALL.CROSS │ │ ├── INSTALL.GNU │ │ ├── INSTALL.MAC │ │ ├── INSTALL.UNIX │ │ ├── INSTALL.VMS │ │ ├── MAKEPP │ │ ├── PROBLEMS │ │ ├── README │ │ ├── TODO │ │ ├── VERSIONS.TXT │ │ ├── formats.txt │ │ ├── freetype-config.1 │ │ ├── markdown │ │ │ ├── javascripts │ │ │ │ └── extra.js │ │ │ └── stylesheets │ │ │ │ └── extra.css │ │ ├── oldlogs │ │ │ ├── ChangeLog.20 │ │ │ ├── ChangeLog.21 │ │ │ ├── ChangeLog.210 │ │ │ ├── ChangeLog.22 │ │ │ ├── ChangeLog.23 │ │ │ ├── ChangeLog.24 │ │ │ ├── ChangeLog.25 │ │ │ ├── ChangeLog.26 │ │ │ ├── ChangeLog.27 │ │ │ ├── ChangeLog.28 │ │ │ └── ChangeLog.29 │ │ ├── raster.txt │ │ └── release │ ├── include │ │ ├── freetype │ │ │ ├── config │ │ │ │ ├── ftconfig.h │ │ │ │ ├── ftheader.h │ │ │ │ ├── ftmodule.h │ │ │ │ ├── ftoption.h │ │ │ │ ├── ftstdlib.h │ │ │ │ ├── integer-types.h │ │ │ │ ├── mac-support.h │ │ │ │ └── public-macros.h │ │ │ ├── freetype.h │ │ │ ├── ftadvanc.h │ │ │ ├── ftbbox.h │ │ │ ├── ftbdf.h │ │ │ ├── ftbitmap.h │ │ │ ├── ftbzip2.h │ │ │ ├── ftcache.h │ │ │ ├── ftchapters.h │ │ │ ├── ftcid.h │ │ │ ├── ftcolor.h │ │ │ ├── ftdriver.h │ │ │ ├── fterrdef.h │ │ │ ├── fterrors.h │ │ │ ├── ftfntfmt.h │ │ │ ├── ftgasp.h │ │ │ ├── ftglyph.h │ │ │ ├── ftgxval.h │ │ │ ├── ftgzip.h │ │ │ ├── ftimage.h │ │ │ ├── ftincrem.h │ │ │ ├── ftlcdfil.h │ │ │ ├── ftlist.h │ │ │ ├── ftlogging.h │ │ │ ├── ftlzw.h │ │ │ ├── ftmac.h │ │ │ ├── ftmm.h │ │ │ ├── ftmodapi.h │ │ │ ├── ftmoderr.h │ │ │ ├── ftotval.h │ │ │ ├── ftoutln.h │ │ │ ├── ftparams.h │ │ │ ├── ftpfr.h │ │ │ ├── ftrender.h │ │ │ ├── ftsizes.h │ │ │ ├── ftsnames.h │ │ │ ├── ftstroke.h │ │ │ ├── ftsynth.h │ │ │ ├── ftsystem.h │ │ │ ├── fttrigon.h │ │ │ ├── fttypes.h │ │ │ ├── ftwinfnt.h │ │ │ ├── internal │ │ │ │ ├── autohint.h │ │ │ │ ├── cffotypes.h │ │ │ │ ├── cfftypes.h │ │ │ │ ├── compiler-macros.h │ │ │ │ ├── ftcalc.h │ │ │ │ ├── ftdebug.h │ │ │ │ ├── ftdrv.h │ │ │ │ ├── ftgloadr.h │ │ │ │ ├── fthash.h │ │ │ │ ├── ftmemory.h │ │ │ │ ├── ftobjs.h │ │ │ │ ├── ftpsprop.h │ │ │ │ ├── ftrfork.h │ │ │ │ ├── ftserv.h │ │ │ │ ├── ftstream.h │ │ │ │ ├── fttrace.h │ │ │ │ ├── ftvalid.h │ │ │ │ ├── psaux.h │ │ │ │ ├── pshints.h │ │ │ │ ├── services │ │ │ │ │ ├── svbdf.h │ │ │ │ │ ├── svcfftl.h │ │ │ │ │ ├── svcid.h │ │ │ │ │ ├── svfntfmt.h │ │ │ │ │ ├── svgldict.h │ │ │ │ │ ├── svgxval.h │ │ │ │ │ ├── svkern.h │ │ │ │ │ ├── svmetric.h │ │ │ │ │ ├── svmm.h │ │ │ │ │ ├── svotval.h │ │ │ │ │ ├── svpfr.h │ │ │ │ │ ├── svpostnm.h │ │ │ │ │ ├── svprop.h │ │ │ │ │ ├── svpscmap.h │ │ │ │ │ ├── svpsinfo.h │ │ │ │ │ ├── svsfnt.h │ │ │ │ │ ├── svttcmap.h │ │ │ │ │ ├── svtteng.h │ │ │ │ │ ├── svttglyf.h │ │ │ │ │ └── svwinfnt.h │ │ │ │ ├── sfnt.h │ │ │ │ ├── svginterface.h │ │ │ │ ├── t1types.h │ │ │ │ ├── tttypes.h │ │ │ │ └── wofftypes.h │ │ │ ├── otsvg.h │ │ │ ├── t1tables.h │ │ │ ├── ttnameid.h │ │ │ ├── tttables.h │ │ │ └── tttags.h │ │ └── ft2build.h │ ├── meson.build │ ├── meson_options.txt │ ├── modules.cfg │ ├── objs │ │ ├── .gitignore │ │ └── README │ ├── src │ │ ├── autofit │ │ │ ├── afblue.c │ │ │ ├── afblue.cin │ │ │ ├── afblue.dat │ │ │ ├── afblue.h │ │ │ ├── afblue.hin │ │ │ ├── afcjk.c │ │ │ ├── afcjk.h │ │ │ ├── afcover.h │ │ │ ├── afdummy.c │ │ │ ├── afdummy.h │ │ │ ├── aferrors.h │ │ │ ├── afglobal.c │ │ │ ├── afglobal.h │ │ │ ├── afhints.c │ │ │ ├── afhints.h │ │ │ ├── afindic.c │ │ │ ├── afindic.h │ │ │ ├── aflatin.c │ │ │ ├── aflatin.h │ │ │ ├── afloader.c │ │ │ ├── afloader.h │ │ │ ├── afmodule.c │ │ │ ├── afmodule.h │ │ │ ├── afranges.c │ │ │ ├── afranges.h │ │ │ ├── afscript.h │ │ │ ├── afshaper.c │ │ │ ├── afshaper.h │ │ │ ├── afstyles.h │ │ │ ├── aftypes.h │ │ │ ├── afws-decl.h │ │ │ ├── afws-iter.h │ │ │ ├── autofit.c │ │ │ ├── module.mk │ │ │ └── rules.mk │ │ ├── base │ │ │ ├── ftadvanc.c │ │ │ ├── ftbase.c │ │ │ ├── ftbase.h │ │ │ ├── ftbbox.c │ │ │ ├── ftbdf.c │ │ │ ├── ftbitmap.c │ │ │ ├── ftcalc.c │ │ │ ├── ftcid.c │ │ │ ├── ftcolor.c │ │ │ ├── ftdbgmem.c │ │ │ ├── ftdebug.c │ │ │ ├── fterrors.c │ │ │ ├── ftfntfmt.c │ │ │ ├── ftfstype.c │ │ │ ├── ftgasp.c │ │ │ ├── ftgloadr.c │ │ │ ├── ftglyph.c │ │ │ ├── ftgxval.c │ │ │ ├── fthash.c │ │ │ ├── ftinit.c │ │ │ ├── ftlcdfil.c │ │ │ ├── ftmac.c │ │ │ ├── ftmm.c │ │ │ ├── ftobjs.c │ │ │ ├── ftotval.c │ │ │ ├── ftoutln.c │ │ │ ├── ftpatent.c │ │ │ ├── ftpfr.c │ │ │ ├── ftpsprop.c │ │ │ ├── ftrfork.c │ │ │ ├── ftsnames.c │ │ │ ├── ftstream.c │ │ │ ├── ftstroke.c │ │ │ ├── ftsynth.c │ │ │ ├── ftsystem.c │ │ │ ├── fttrigon.c │ │ │ ├── fttype1.c │ │ │ ├── ftutil.c │ │ │ ├── ftver.rc │ │ │ ├── ftwinfnt.c │ │ │ ├── md5.c │ │ │ ├── md5.h │ │ │ └── rules.mk │ │ ├── bdf │ │ │ ├── README │ │ │ ├── bdf.c │ │ │ ├── bdf.h │ │ │ ├── bdfdrivr.c │ │ │ ├── bdfdrivr.h │ │ │ ├── bdferror.h │ │ │ ├── bdflib.c │ │ │ ├── module.mk │ │ │ └── rules.mk │ │ ├── bzip2 │ │ │ ├── ftbzip2.c │ │ │ └── rules.mk │ │ ├── cache │ │ │ ├── ftcache.c │ │ │ ├── ftcbasic.c │ │ │ ├── ftccache.c │ │ │ ├── ftccache.h │ │ │ ├── ftccback.h │ │ │ ├── ftccmap.c │ │ │ ├── ftcerror.h │ │ │ ├── ftcglyph.c │ │ │ ├── ftcglyph.h │ │ │ ├── ftcimage.c │ │ │ ├── ftcimage.h │ │ │ ├── ftcmanag.c │ │ │ ├── ftcmanag.h │ │ │ ├── ftcmru.c │ │ │ ├── ftcmru.h │ │ │ ├── ftcsbits.c │ │ │ ├── ftcsbits.h │ │ │ └── rules.mk │ │ ├── cff │ │ │ ├── cff.c │ │ │ ├── cffcmap.c │ │ │ ├── cffcmap.h │ │ │ ├── cffdrivr.c │ │ │ ├── cffdrivr.h │ │ │ ├── cfferrs.h │ │ │ ├── cffgload.c │ │ │ ├── cffgload.h │ │ │ ├── cffload.c │ │ │ ├── cffload.h │ │ │ ├── cffobjs.c │ │ │ ├── cffobjs.h │ │ │ ├── cffparse.c │ │ │ ├── cffparse.h │ │ │ ├── cfftoken.h │ │ │ ├── module.mk │ │ │ └── rules.mk │ │ ├── cid │ │ │ ├── ciderrs.h │ │ │ ├── cidgload.c │ │ │ ├── cidgload.h │ │ │ ├── cidload.c │ │ │ ├── cidload.h │ │ │ ├── cidobjs.c │ │ │ ├── cidobjs.h │ │ │ ├── cidparse.c │ │ │ ├── cidparse.h │ │ │ ├── cidriver.c │ │ │ ├── cidriver.h │ │ │ ├── cidtoken.h │ │ │ ├── module.mk │ │ │ ├── rules.mk │ │ │ └── type1cid.c │ │ ├── dlg │ │ │ ├── dlgwrap.c │ │ │ └── rules.mk │ │ ├── gxvalid │ │ │ ├── README │ │ │ ├── gxvalid.c │ │ │ ├── gxvalid.h │ │ │ ├── gxvbsln.c │ │ │ ├── gxvcommn.c │ │ │ ├── gxvcommn.h │ │ │ ├── gxverror.h │ │ │ ├── gxvfeat.c │ │ │ ├── gxvfeat.h │ │ │ ├── gxvfgen.c │ │ │ ├── gxvjust.c │ │ │ ├── gxvkern.c │ │ │ ├── gxvlcar.c │ │ │ ├── gxvmod.c │ │ │ ├── gxvmod.h │ │ │ ├── gxvmort.c │ │ │ ├── gxvmort.h │ │ │ ├── gxvmort0.c │ │ │ ├── gxvmort1.c │ │ │ ├── gxvmort2.c │ │ │ ├── gxvmort4.c │ │ │ ├── gxvmort5.c │ │ │ ├── gxvmorx.c │ │ │ ├── gxvmorx.h │ │ │ ├── gxvmorx0.c │ │ │ ├── gxvmorx1.c │ │ │ ├── gxvmorx2.c │ │ │ ├── gxvmorx4.c │ │ │ ├── gxvmorx5.c │ │ │ ├── gxvopbd.c │ │ │ ├── gxvprop.c │ │ │ ├── gxvtrak.c │ │ │ ├── module.mk │ │ │ └── rules.mk │ │ ├── gzip │ │ │ ├── README.freetype │ │ │ ├── adler32.c │ │ │ ├── crc32.c │ │ │ ├── crc32.h │ │ │ ├── ftgzip.c │ │ │ ├── ftzconf.h │ │ │ ├── gzguts.h │ │ │ ├── infback.c │ │ │ ├── inffast.c │ │ │ ├── inffast.h │ │ │ ├── inffixed.h │ │ │ ├── inflate.c │ │ │ ├── inflate.h │ │ │ ├── inftrees.c │ │ │ ├── inftrees.h │ │ │ ├── patches │ │ │ │ └── freetype-zlib.diff │ │ │ ├── rules.mk │ │ │ ├── zlib.h │ │ │ ├── zutil.c │ │ │ └── zutil.h │ │ ├── lzw │ │ │ ├── ftlzw.c │ │ │ ├── ftzopen.c │ │ │ ├── ftzopen.h │ │ │ └── rules.mk │ │ ├── otvalid │ │ │ ├── module.mk │ │ │ ├── otvalid.c │ │ │ ├── otvalid.h │ │ │ ├── otvbase.c │ │ │ ├── otvcommn.c │ │ │ ├── otvcommn.h │ │ │ ├── otverror.h │ │ │ ├── otvgdef.c │ │ │ ├── otvgpos.c │ │ │ ├── otvgpos.h │ │ │ ├── otvgsub.c │ │ │ ├── otvjstf.c │ │ │ ├── otvmath.c │ │ │ ├── otvmod.c │ │ │ ├── otvmod.h │ │ │ └── rules.mk │ │ ├── pcf │ │ │ ├── README │ │ │ ├── module.mk │ │ │ ├── pcf.c │ │ │ ├── pcf.h │ │ │ ├── pcfdrivr.c │ │ │ ├── pcfdrivr.h │ │ │ ├── pcferror.h │ │ │ ├── pcfread.c │ │ │ ├── pcfread.h │ │ │ ├── pcfutil.c │ │ │ ├── pcfutil.h │ │ │ └── rules.mk │ │ ├── pfr │ │ │ ├── module.mk │ │ │ ├── pfr.c │ │ │ ├── pfrcmap.c │ │ │ ├── pfrcmap.h │ │ │ ├── pfrdrivr.c │ │ │ ├── pfrdrivr.h │ │ │ ├── pfrerror.h │ │ │ ├── pfrgload.c │ │ │ ├── pfrgload.h │ │ │ ├── pfrload.c │ │ │ ├── pfrload.h │ │ │ ├── pfrobjs.c │ │ │ ├── pfrobjs.h │ │ │ ├── pfrsbit.c │ │ │ ├── pfrsbit.h │ │ │ ├── pfrtypes.h │ │ │ └── rules.mk │ │ ├── psaux │ │ │ ├── afmparse.c │ │ │ ├── afmparse.h │ │ │ ├── cffdecode.c │ │ │ ├── cffdecode.h │ │ │ ├── module.mk │ │ │ ├── psarrst.c │ │ │ ├── psarrst.h │ │ │ ├── psaux.c │ │ │ ├── psauxerr.h │ │ │ ├── psauxmod.c │ │ │ ├── psauxmod.h │ │ │ ├── psblues.c │ │ │ ├── psblues.h │ │ │ ├── psconv.c │ │ │ ├── psconv.h │ │ │ ├── pserror.c │ │ │ ├── pserror.h │ │ │ ├── psfixed.h │ │ │ ├── psfont.c │ │ │ ├── psfont.h │ │ │ ├── psft.c │ │ │ ├── psft.h │ │ │ ├── psglue.h │ │ │ ├── pshints.c │ │ │ ├── pshints.h │ │ │ ├── psintrp.c │ │ │ ├── psintrp.h │ │ │ ├── psobjs.c │ │ │ ├── psobjs.h │ │ │ ├── psread.c │ │ │ ├── psread.h │ │ │ ├── psstack.c │ │ │ ├── psstack.h │ │ │ ├── pstypes.h │ │ │ ├── rules.mk │ │ │ ├── t1cmap.c │ │ │ ├── t1cmap.h │ │ │ ├── t1decode.c │ │ │ └── t1decode.h │ │ ├── pshinter │ │ │ ├── module.mk │ │ │ ├── pshalgo.c │ │ │ ├── pshalgo.h │ │ │ ├── pshglob.c │ │ │ ├── pshglob.h │ │ │ ├── pshinter.c │ │ │ ├── pshmod.c │ │ │ ├── pshmod.h │ │ │ ├── pshnterr.h │ │ │ ├── pshrec.c │ │ │ ├── pshrec.h │ │ │ └── rules.mk │ │ ├── psnames │ │ │ ├── module.mk │ │ │ ├── psmodule.c │ │ │ ├── psmodule.h │ │ │ ├── psnamerr.h │ │ │ ├── psnames.c │ │ │ ├── pstables.h │ │ │ └── rules.mk │ │ ├── raster │ │ │ ├── ftmisc.h │ │ │ ├── ftraster.c │ │ │ ├── ftraster.h │ │ │ ├── ftrend1.c │ │ │ ├── ftrend1.h │ │ │ ├── module.mk │ │ │ ├── raster.c │ │ │ ├── rasterrs.h │ │ │ └── rules.mk │ │ ├── sdf │ │ │ ├── ftbsdf.c │ │ │ ├── ftsdf.c │ │ │ ├── ftsdf.h │ │ │ ├── ftsdfcommon.c │ │ │ ├── ftsdfcommon.h │ │ │ ├── ftsdferrs.h │ │ │ ├── ftsdfrend.c │ │ │ ├── ftsdfrend.h │ │ │ ├── module.mk │ │ │ ├── rules.mk │ │ │ └── sdf.c │ │ ├── sfnt │ │ │ ├── module.mk │ │ │ ├── pngshim.c │ │ │ ├── pngshim.h │ │ │ ├── rules.mk │ │ │ ├── sfdriver.c │ │ │ ├── sfdriver.h │ │ │ ├── sferrors.h │ │ │ ├── sfnt.c │ │ │ ├── sfobjs.c │ │ │ ├── sfobjs.h │ │ │ ├── sfwoff.c │ │ │ ├── sfwoff.h │ │ │ ├── sfwoff2.c │ │ │ ├── sfwoff2.h │ │ │ ├── ttbdf.c │ │ │ ├── ttbdf.h │ │ │ ├── ttcmap.c │ │ │ ├── ttcmap.h │ │ │ ├── ttcmapc.h │ │ │ ├── ttcolr.c │ │ │ ├── ttcolr.h │ │ │ ├── ttcpal.c │ │ │ ├── ttcpal.h │ │ │ ├── ttkern.c │ │ │ ├── ttkern.h │ │ │ ├── ttload.c │ │ │ ├── ttload.h │ │ │ ├── ttmtx.c │ │ │ ├── ttmtx.h │ │ │ ├── ttpost.c │ │ │ ├── ttpost.h │ │ │ ├── ttsbit.c │ │ │ ├── ttsbit.h │ │ │ ├── ttsvg.c │ │ │ ├── ttsvg.h │ │ │ ├── woff2tags.c │ │ │ └── woff2tags.h │ │ ├── smooth │ │ │ ├── ftgrays.c │ │ │ ├── ftgrays.h │ │ │ ├── ftsmerrs.h │ │ │ ├── ftsmooth.c │ │ │ ├── ftsmooth.h │ │ │ ├── module.mk │ │ │ ├── rules.mk │ │ │ └── smooth.c │ │ ├── svg │ │ │ ├── ftsvg.c │ │ │ ├── ftsvg.h │ │ │ ├── module.mk │ │ │ ├── rules.mk │ │ │ ├── svg.c │ │ │ └── svgtypes.h │ │ ├── tools │ │ │ ├── afblue.pl │ │ │ ├── apinames.c │ │ │ ├── chktrcmp.py │ │ │ ├── cordic.py │ │ │ ├── ftrandom │ │ │ │ ├── Makefile │ │ │ │ ├── README │ │ │ │ └── ftrandom.c │ │ │ ├── glnames.py │ │ │ ├── make_distribution_archives.py │ │ │ ├── no-copyright │ │ │ ├── test_afm.c │ │ │ ├── test_bbox.c │ │ │ ├── test_trig.c │ │ │ ├── update-copyright │ │ │ └── update-copyright-year │ │ ├── truetype │ │ │ ├── module.mk │ │ │ ├── rules.mk │ │ │ ├── truetype.c │ │ │ ├── ttdriver.c │ │ │ ├── ttdriver.h │ │ │ ├── tterrors.h │ │ │ ├── ttgload.c │ │ │ ├── ttgload.h │ │ │ ├── ttgxvar.c │ │ │ ├── ttgxvar.h │ │ │ ├── ttinterp.c │ │ │ ├── ttinterp.h │ │ │ ├── ttobjs.c │ │ │ ├── ttobjs.h │ │ │ ├── ttpload.c │ │ │ ├── ttpload.h │ │ │ ├── ttsubpix.c │ │ │ └── ttsubpix.h │ │ ├── type1 │ │ │ ├── module.mk │ │ │ ├── rules.mk │ │ │ ├── t1afm.c │ │ │ ├── t1afm.h │ │ │ ├── t1driver.c │ │ │ ├── t1driver.h │ │ │ ├── t1errors.h │ │ │ ├── t1gload.c │ │ │ ├── t1gload.h │ │ │ ├── t1load.c │ │ │ ├── t1load.h │ │ │ ├── t1objs.c │ │ │ ├── t1objs.h │ │ │ ├── t1parse.c │ │ │ ├── t1parse.h │ │ │ ├── t1tokens.h │ │ │ └── type1.c │ │ ├── type42 │ │ │ ├── module.mk │ │ │ ├── rules.mk │ │ │ ├── t42drivr.c │ │ │ ├── t42drivr.h │ │ │ ├── t42error.h │ │ │ ├── t42objs.c │ │ │ ├── t42objs.h │ │ │ ├── t42parse.c │ │ │ ├── t42parse.h │ │ │ ├── t42types.h │ │ │ └── type42.c │ │ └── winfonts │ │ │ ├── fnterrs.h │ │ │ ├── module.mk │ │ │ ├── rules.mk │ │ │ ├── winfnt.c │ │ │ └── winfnt.h │ ├── subprojects │ │ ├── libpng.wrap │ │ └── zlib.wrap │ ├── tests │ │ ├── README.md │ │ ├── issue-1063 │ │ │ └── main.c │ │ ├── meson.build │ │ └── scripts │ │ │ └── download-test-fonts.py │ └── vms_make.com ├── gtest │ ├── include │ │ └── gtest │ │ │ ├── gtest-death-test.h │ │ │ ├── gtest-message.h │ │ │ ├── gtest-param-test.h │ │ │ ├── gtest-param-test.h.pump │ │ │ ├── gtest-printers.h │ │ │ ├── gtest-spi.h │ │ │ ├── gtest-test-part.h │ │ │ ├── gtest-typed-test.h │ │ │ ├── gtest.h │ │ │ ├── gtest_pred_impl.h │ │ │ ├── gtest_prod.h │ │ │ └── internal │ │ │ ├── gtest-death-test-internal.h │ │ │ ├── gtest-filepath.h │ │ │ ├── gtest-internal.h │ │ │ ├── gtest-linked_ptr.h │ │ │ ├── gtest-param-util-generated.h │ │ │ ├── gtest-param-util-generated.h.pump │ │ │ ├── gtest-param-util.h │ │ │ ├── gtest-port.h │ │ │ ├── gtest-string.h │ │ │ ├── gtest-tuple.h │ │ │ ├── gtest-tuple.h.pump │ │ │ ├── gtest-type-util.h │ │ │ └── gtest-type-util.h.pump │ └── src │ │ ├── gtest-all.cc │ │ ├── gtest-death-test.cc │ │ ├── gtest-filepath.cc │ │ ├── gtest-internal-inl.h │ │ ├── gtest-port.cc │ │ ├── gtest-printers.cc │ │ ├── gtest-test-part.cc │ │ ├── gtest-typed-test.cc │ │ ├── gtest.cc │ │ └── gtest_main.cc ├── httplib │ └── httplib.h ├── nlohmann-json │ └── include │ │ └── nlohmann │ │ └── json.hpp ├── spdlog │ └── include │ │ └── spdlog │ │ ├── async.h │ │ ├── async_logger.h │ │ ├── common.h │ │ ├── details │ │ ├── async_logger_impl.h │ │ ├── circular_q.h │ │ ├── console_globals.h │ │ ├── file_helper.h │ │ ├── fmt_helper.h │ │ ├── log_msg.h │ │ ├── logger_impl.h │ │ ├── mpmc_blocking_q.h │ │ ├── null_mutex.h │ │ ├── os.h │ │ ├── pattern_formatter.h │ │ ├── periodic_worker.h │ │ ├── registry.h │ │ └── thread_pool.h │ │ ├── fmt │ │ ├── bundled │ │ │ ├── LICENSE.rst │ │ │ ├── color.h │ │ │ ├── colors.h │ │ │ ├── core.h │ │ │ ├── format-inl.h │ │ │ ├── format.h │ │ │ ├── locale.h │ │ │ ├── ostream.h │ │ │ ├── posix.h │ │ │ ├── printf.h │ │ │ ├── ranges.h │ │ │ └── time.h │ │ ├── fmt.h │ │ └── ostr.h │ │ ├── formatter.h │ │ ├── logger.h │ │ ├── sinks │ │ ├── android_sink.h │ │ ├── ansicolor_sink.h │ │ ├── base_sink.h │ │ ├── basic_file_sink.h │ │ ├── daily_file_sink.h │ │ ├── dist_sink.h │ │ ├── msvc_sink.h │ │ ├── null_sink.h │ │ ├── ostream_sink.h │ │ ├── rotating_file_sink.h │ │ ├── sink.h │ │ ├── stdout_color_sinks.h │ │ ├── stdout_sinks.h │ │ ├── syslog_sink.h │ │ └── wincolor_sink.h │ │ ├── spdlog.h │ │ ├── tweakme.h │ │ └── version.h ├── tpu_kernel_module │ └── libbm1684x_kernel_module.so └── websocketpp │ └── websocketpp │ ├── CMakeLists.txt │ ├── base64 │ └── base64.hpp │ ├── client.hpp │ ├── close.hpp │ ├── common │ ├── asio.hpp │ ├── asio_ssl.hpp │ ├── chrono.hpp │ ├── connection_hdl.hpp │ ├── cpp11.hpp │ ├── functional.hpp │ ├── md5.hpp │ ├── memory.hpp │ ├── network.hpp │ ├── platforms.hpp │ ├── random.hpp │ ├── regex.hpp │ ├── stdint.hpp │ ├── system_error.hpp │ ├── thread.hpp │ ├── time.hpp │ └── type_traits.hpp │ ├── concurrency │ ├── basic.hpp │ └── none.hpp │ ├── config │ ├── asio.hpp │ ├── asio_client.hpp │ ├── asio_no_tls.hpp │ ├── asio_no_tls_client.hpp │ ├── boost_config.hpp │ ├── core.hpp │ ├── core_client.hpp │ ├── debug.hpp │ ├── debug_asio.hpp │ ├── debug_asio_no_tls.hpp │ ├── minimal_client.hpp │ └── minimal_server.hpp │ ├── connection.hpp │ ├── connection_base.hpp │ ├── endpoint.hpp │ ├── endpoint_base.hpp │ ├── error.hpp │ ├── extensions │ ├── extension.hpp │ └── permessage_deflate │ │ ├── disabled.hpp │ │ └── enabled.hpp │ ├── frame.hpp │ ├── http │ ├── constants.hpp │ ├── impl │ │ ├── parser.hpp │ │ ├── request.hpp │ │ └── response.hpp │ ├── parser.hpp │ ├── request.hpp │ └── response.hpp │ ├── impl │ ├── connection_impl.hpp │ ├── endpoint_impl.hpp │ └── utilities_impl.hpp │ ├── logger │ ├── basic.hpp │ ├── levels.hpp │ ├── stub.hpp │ └── syslog.hpp │ ├── message_buffer │ ├── alloc.hpp │ ├── message.hpp │ └── pool.hpp │ ├── processors │ ├── base.hpp │ ├── hybi00.hpp │ ├── hybi07.hpp │ ├── hybi08.hpp │ ├── hybi13.hpp │ └── processor.hpp │ ├── random │ ├── none.hpp │ └── random_device.hpp │ ├── roles │ ├── client_endpoint.hpp │ └── server_endpoint.hpp │ ├── server.hpp │ ├── sha1 │ └── sha1.hpp │ ├── transport │ ├── asio │ │ ├── base.hpp │ │ ├── connection.hpp │ │ ├── endpoint.hpp │ │ └── security │ │ │ ├── base.hpp │ │ │ ├── none.hpp │ │ │ └── tls.hpp │ ├── base │ │ ├── connection.hpp │ │ └── endpoint.hpp │ ├── debug │ │ ├── base.hpp │ │ ├── connection.hpp │ │ └── endpoint.hpp │ ├── iostream │ │ ├── base.hpp │ │ ├── connection.hpp │ │ └── endpoint.hpp │ └── stub │ │ ├── base.hpp │ │ ├── connection.hpp │ │ └── endpoint.hpp │ ├── uri.hpp │ ├── utf8_validator.hpp │ ├── utilities.hpp │ └── version.hpp ├── CMakeLists.txt ├── Doxyfile ├── LICENSE ├── README.md ├── README_EN.md ├── VERSION ├── docs ├── EnvironmentInstallGuide.md ├── EnvironmentInstallGuide_EN.md ├── FAQ.md ├── FAQ_EN.md ├── HowToAddElement.md ├── HowToMake.md ├── HowToMake_EN.md ├── Sophon_Stream_User_Guide.md ├── Sophon_Stream_User_Guide_EN.md └── pics │ ├── dec_det_track_osd_enc.png │ ├── element.png │ ├── engine.png │ ├── graph.png │ ├── stream_sdk.png │ ├── stress.png │ └── tracker.png ├── element ├── algorithm │ ├── algorithmApi │ │ ├── context.h │ │ ├── inference.h │ │ ├── post_process.h │ │ └── pre_process.h │ ├── algorithm_maker.sh │ ├── bytetrack │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── bytetrack.h │ │ │ ├── bytetrack_bytetracker.h │ │ │ ├── bytetrack_kalmanfilter.h │ │ │ ├── bytetrack_lapjv.h │ │ │ └── bytetrack_strack.h │ │ └── src │ │ │ ├── bytetrack.cc │ │ │ ├── bytetrack_bytetracker.cc │ │ │ ├── bytetrack_kalmanfilter.cc │ │ │ ├── bytetrack_lapjv.cc │ │ │ └── bytetrack_strack.cc │ ├── fastpose │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── fastpose.h │ │ │ ├── fastpose_context.h │ │ │ ├── fastpose_inference.h │ │ │ ├── fastpose_post_process.h │ │ │ └── fastpose_pre_process.h │ │ └── src │ │ │ ├── fastpose.cc │ │ │ ├── fastpose_inference.cc │ │ │ ├── fastpose_post_process.cc │ │ │ └── fastpose_pre_process.cc │ ├── lightstereo │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── include │ │ │ ├── lightstereo.h │ │ │ ├── lightstereo_context.h │ │ │ ├── lightstereo_inference.h │ │ │ ├── lightstereo_post_process.h │ │ │ └── lightstereo_pre_process.h │ │ └── src │ │ │ ├── lightstereo.cc │ │ │ ├── lightstereo_inference.cc │ │ │ ├── lightstereo_post_process.cc │ │ │ └── lightstereo_pre_process.cc │ ├── lprnet │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── lprnet.h │ │ │ ├── lprnet_context.h │ │ │ ├── lprnet_inference.h │ │ │ ├── lprnet_post_process.h │ │ │ └── lprnet_pre_process.h │ │ └── src │ │ │ ├── lprnet.cc │ │ │ ├── lprnet_inference.cc │ │ │ ├── lprnet_post_process.cc │ │ │ └── lprnet_pre_process.cc │ ├── openpose │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── openpose.h │ │ │ ├── openpose_context.h │ │ │ ├── openpose_inference.h │ │ │ ├── openpose_post_process.h │ │ │ └── openpose_pre_process.h │ │ └── src │ │ │ ├── openpose.cc │ │ │ ├── openpose_inference.cc │ │ │ ├── openpose_post_process.cc │ │ │ └── openpose_pre_process.cc │ ├── posec3d │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── posec3d.h │ │ │ ├── posec3d_context.h │ │ │ ├── posec3d_inference.h │ │ │ ├── posec3d_post_process.h │ │ │ └── posec3d_pre_process.h │ │ └── src │ │ │ ├── posec3d.cc │ │ │ ├── posec3d_inference.cc │ │ │ ├── posec3d_post_process.cc │ │ │ └── posec3d_pre_process.cc │ ├── ppocr │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── ppocr_det │ │ │ │ ├── ppocr_det.h │ │ │ │ ├── ppocr_det_context.h │ │ │ │ ├── ppocr_det_inference.h │ │ │ │ ├── ppocr_det_post_process.h │ │ │ │ ├── ppocr_det_post_processor.h │ │ │ │ └── ppocr_det_pre_process.h │ │ │ └── ppocr_rec │ │ │ │ ├── ppocr_rec.h │ │ │ │ ├── ppocr_rec_context.h │ │ │ │ ├── ppocr_rec_inference.h │ │ │ │ ├── ppocr_rec_post_process.h │ │ │ │ └── ppocr_rec_pre_process.h │ │ └── src │ │ │ ├── ppocr_det │ │ │ ├── ppocr_det.cc │ │ │ ├── ppocr_det_inference.cc │ │ │ ├── ppocr_det_post_process.cc │ │ │ ├── ppocr_det_post_processor.cc │ │ │ └── ppocr_det_pre_process.cc │ │ │ └── ppocr_rec │ │ │ ├── ppocr_rec.cc │ │ │ ├── ppocr_rec_inference.cc │ │ │ ├── ppocr_rec_post_process.cc │ │ │ └── ppocr_rec_pre_process.cc │ ├── resnet │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── resnet.h │ │ │ ├── resnet_context.h │ │ │ └── resnet_multitask.h │ │ └── src │ │ │ ├── resnet.cc │ │ │ └── resnet_multitask.cc │ ├── retinaface │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── retinaface.h │ │ │ ├── retinaface_context.h │ │ │ ├── retinaface_inference.h │ │ │ ├── retinaface_post_process.h │ │ │ └── retinaface_pre_process.h │ │ └── src │ │ │ ├── retinaface.cc │ │ │ ├── retinaface_inference.cc │ │ │ ├── retinaface_post_process.cc │ │ │ └── retinaface_pre_process.cc │ ├── template │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── include │ │ │ ├── template.h │ │ │ ├── template_context.h │ │ │ ├── template_inference.h │ │ │ ├── template_post_process.h │ │ │ └── template_pre_process.h │ │ └── src │ │ │ ├── template.cc │ │ │ ├── template_inference.cc │ │ │ ├── template_post_process.cc │ │ │ └── template_pre_process.cc │ ├── yolov5 │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── yolov5.h │ │ │ ├── yolov5_context.h │ │ │ ├── yolov5_inference.h │ │ │ ├── yolov5_post_process.h │ │ │ └── yolov5_pre_process.h │ │ └── src │ │ │ ├── yolov5.cc │ │ │ ├── yolov5_inference.cc │ │ │ ├── yolov5_post_process.cc │ │ │ └── yolov5_pre_process.cc │ ├── yolov7 │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── yolov7.h │ │ │ ├── yolov7_context.h │ │ │ ├── yolov7_inference.h │ │ │ ├── yolov7_post_process.h │ │ │ └── yolov7_pre_process.h │ │ └── src │ │ │ ├── yolov7.cc │ │ │ ├── yolov7_inference.cc │ │ │ ├── yolov7_post_process.cc │ │ │ └── yolov7_pre_process.cc │ ├── yolov8 │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── yolov8.h │ │ │ ├── yolov8_context.h │ │ │ ├── yolov8_inference.h │ │ │ ├── yolov8_post_process.h │ │ │ └── yolov8_pre_process.h │ │ └── src │ │ │ ├── yolov8.cc │ │ │ ├── yolov8_inference.cc │ │ │ ├── yolov8_post_process.cc │ │ │ └── yolov8_pre_process.cc │ └── yolox │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ ├── yolox.h │ │ ├── yolox_context.h │ │ ├── yolox_inference.h │ │ ├── yolox_post_process.h │ │ └── yolox_pre_process.h │ │ └── src │ │ ├── yolox.cc │ │ ├── yolox_inference.cc │ │ ├── yolox_post_process.cc │ │ └── yolox_pre_process.cc ├── multimedia │ ├── decode │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── channel.h │ │ │ ├── decode.h │ │ │ ├── decoder.h │ │ │ ├── ff_decode.h │ │ │ └── http_base64_mgr.h │ │ └── src │ │ │ ├── decode.cc │ │ │ ├── decoder.cc │ │ │ ├── ff_decode.cc │ │ │ └── http_base64_mgr.cc │ ├── encode │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ │ ├── encode.h │ │ │ ├── encoder.h │ │ │ ├── wss.h │ │ │ └── wss_boost.h │ │ └── src │ │ │ ├── encode.cc │ │ │ ├── encoder.cc │ │ │ ├── wss.cc │ │ │ └── wss_boost.cc │ └── osd │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── README_EN.md │ │ ├── include │ │ ├── checked.h │ │ ├── core.h │ │ ├── cvUniText.h │ │ ├── draw_utils.h │ │ ├── osd.h │ │ ├── unchecked.h │ │ └── utf8.h │ │ ├── pics │ │ └── track.jpg │ │ └── src │ │ ├── cvUniText.cc │ │ └── osd.cc └── tools │ ├── blank │ ├── CMakeLists.txt │ ├── README.md │ ├── include │ │ └── blank.h │ └── src │ │ └── blank.cc │ ├── blend │ ├── CMakeLists.txt │ ├── README.md │ ├── include │ │ └── blend.h │ └── src │ │ └── blend.cc │ ├── converger │ ├── CMakeLists.txt │ ├── README.md │ ├── README_EN.md │ ├── include │ │ └── converger.h │ └── src │ │ └── converger.cc │ ├── distributor │ ├── CMakeLists.txt │ ├── README.md │ ├── README_EN.md │ ├── include │ │ └── distributor.h │ └── src │ │ └── distributor.cc │ ├── dpu │ ├── CMakeLists.txt │ ├── README.md │ ├── include │ │ └── dpu.h │ └── src │ │ └── dpu.cc │ ├── dwa │ ├── CMakeLists.txt │ ├── README.md │ ├── include │ │ └── dwa.h │ └── src │ │ └── dwa.cc │ ├── faiss │ ├── CMakeLists.txt │ ├── README.md │ ├── README_EN.md │ ├── include │ │ └── faiss.h │ └── src │ │ └── faiss.cc │ ├── filter │ ├── CMakeLists.txt │ ├── README.md │ ├── include │ │ └── filter.h │ └── src │ │ └── filter.cc │ ├── http_push │ ├── CMakeLists.txt │ ├── README.md │ ├── README_EN.md │ ├── include │ │ └── http_push.h │ └── src │ │ └── http_push.cc │ ├── ive │ ├── CMakeLists.txt │ ├── README.md │ ├── include │ │ └── ive.h │ └── src │ │ └── ive.cc │ ├── qt_display │ ├── CMakeLists.txt │ ├── README.md │ ├── README_EN.md │ ├── include │ │ ├── BMLabel.h │ │ └── qt_display.h │ └── src │ │ ├── BMLabel.cc │ │ ├── moc_bmlabel.cc │ │ └── qt_display.cc │ ├── resize │ ├── CMakeLists.txt │ ├── README.md │ ├── include │ │ └── resize.h │ └── src │ │ └── resize.cc │ └── stitch │ ├── CMakeLists.txt │ ├── README.md │ ├── include │ └── stitch.h │ └── src │ └── stitch.cc ├── framework ├── CMakeLists.txt ├── common │ ├── bmnn_utils.h │ ├── clocker.h │ ├── common_defs.h │ ├── common_tool.cc │ ├── common_tool.h │ ├── detected_object_metadata.h │ ├── error_code.h │ ├── face_object_metadata.h │ ├── frame.h │ ├── graphics.h │ ├── http_defs.cc │ ├── http_defs.h │ ├── logger.cc │ ├── logger.h │ ├── no_copyable.h │ ├── obb_object_metadata.h │ ├── object_metadata.h │ ├── posed_object_metadata.h │ ├── profiler.cc │ ├── profiler.h │ ├── recognized_object_metadata.h │ ├── segmented_object_metadata.h │ ├── serialize.h │ ├── singleton.h │ └── tracked_object_metadata.h ├── include │ ├── connector.h │ ├── datapipe.h │ ├── element.h │ ├── element_factory.h │ ├── engine.h │ ├── graph.h │ ├── group.h │ └── listen_thread.h └── src │ ├── connector.cc │ ├── datapipe.cc │ ├── element.cc │ ├── element_factory.cc │ ├── engine.cc │ ├── graph.cc │ └── listen_thread.cc ├── samples ├── CMakeLists.txt ├── README.md ├── README_EN.md ├── bird_dwa_blend_encode │ ├── README.md │ ├── config │ │ ├── blend1.json │ │ ├── blend2.json │ │ ├── blend3.json │ │ ├── camera_dwa_blend_encode_demo.json │ │ ├── decode.json │ │ ├── dwa_0.json │ │ ├── dwa_1.json │ │ ├── dwa_2.json │ │ ├── dwa_3.json │ │ ├── dwa_blend_encode_demo.json │ │ ├── encode.json │ │ ├── engine.json │ │ └── resize.json │ └── scripts │ │ └── download.sh ├── bytetrack │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── bytetrack.json │ │ ├── bytetrack_demo.json │ │ ├── decode.json │ │ ├── engine.json │ │ ├── yolox_infer.json │ │ ├── yolox_post.json │ │ └── yolox_pre.json │ ├── pics │ │ └── tracker.png │ └── scripts │ │ └── download.sh ├── dwa_blend_encode │ ├── README.md │ ├── config │ │ ├── blend.json │ │ ├── camera_dwa_blend_encode_demo.json │ │ ├── decode.json │ │ ├── dwa_L.json │ │ ├── dwa_R.json │ │ ├── dwa_blend_encode_demo.json │ │ ├── encode.json │ │ ├── engine.json │ │ └── resize.json │ ├── gridinfo_and_wgt.md │ ├── pic │ │ └── image.jpg │ └── scripts │ │ └── download.sh ├── dwa_dpu_encode │ ├── Calibration.md │ ├── README.md │ ├── config │ │ ├── camera_dwa_dpu_encode_demo.json │ │ ├── decode.json │ │ ├── dpu.json │ │ ├── dwa_L.json │ │ ├── dwa_R.json │ │ ├── dwa_dpu_encode_demo_imgs.json │ │ ├── encode.json │ │ ├── engine_dwa_dpu_ive_resize.json │ │ ├── ive.json │ │ └── resize.json │ ├── pic │ │ └── image.png │ ├── scripts │ │ └── download.sh │ └── web │ │ └── ui │ │ ├── .gitignore │ │ ├── README.md │ │ ├── package.json │ │ ├── public │ │ ├── favicon.ico │ │ ├── index.html │ │ ├── logo192.png │ │ ├── logo512.png │ │ ├── manifest.json │ │ └── robots.txt │ │ └── src │ │ ├── App.css │ │ ├── App.js │ │ ├── App.test.js │ │ ├── components │ │ ├── ConfigLayer │ │ │ ├── ConfigLayer.css │ │ │ └── ConfigLayer.js │ │ ├── VideoDisplay │ │ │ ├── VideoDisplay.css │ │ │ └── VideoDisplay.js │ │ └── VideoDisplayBlend │ │ │ ├── VideoDisplay.css │ │ │ └── VideoDisplay.js │ │ ├── index.css │ │ ├── index.js │ │ ├── logo.svg │ │ ├── reportWebVitals.js │ │ └── setupTests.js ├── dwa_lightstereo_encode │ ├── README.md │ ├── config │ │ ├── camera_dwa_lightstereo_encode_demo.json │ │ ├── decode.json │ │ ├── dwa_L.json │ │ ├── dwa_R.json │ │ ├── encode.json │ │ ├── engine.json │ │ ├── lightstereo_infer.json │ │ ├── lightstereo_post.json │ │ └── lightstereo_pre.json │ ├── pic │ │ └── image.png │ └── scripts │ │ └── download.sh ├── gdwa_blend_encode │ ├── README.md │ ├── config │ │ ├── blend.json │ │ ├── camera_dwa_blend_encode_demo.json │ │ ├── decode.json │ │ ├── dwa_L.json │ │ ├── dwa_R.json │ │ ├── dwa_blend_encode_demo_imgs.json │ │ ├── encode.json │ │ ├── engine_dwa_blend_resize.json │ │ └── resize.json │ ├── pic │ │ └── image.jpg │ └── scripts │ │ └── download.sh ├── include │ ├── draw_funcs.h │ └── init_engine.h ├── license_area_intrusion │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── converger.json │ │ ├── decode.json │ │ ├── distributor_time_class.json │ │ ├── engine_group.json │ │ ├── filter.json │ │ ├── http_push.json │ │ ├── license_area_intrusion_demo.json │ │ ├── lprnet_group.json │ │ └── yolov5_group.json │ └── scripts │ │ └── download.sh ├── license_plate_recognition │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── converger.json │ │ ├── decode.json │ │ ├── distributor_time_class.json │ │ ├── engine.json │ │ ├── engine_group.json │ │ ├── license_plate_recognition_demo.json │ │ ├── lprnet_group.json │ │ ├── lprnet_infer.json │ │ ├── lprnet_post.json │ │ ├── lprnet_pre.json │ │ ├── yolov5_group.json │ │ ├── yolov5_infer.json │ │ ├── yolov5_post.json │ │ └── yolov5_pre.json │ └── scripts │ │ └── download.sh ├── line_crossing │ ├── README.md │ ├── config │ │ ├── bytetrack.json │ │ ├── decode.json │ │ ├── encode.json │ │ ├── engine_group.json │ │ ├── filter.json │ │ ├── line_crossing_demo.json │ │ ├── osd.json │ │ └── yolox_group.json │ └── scripts │ │ └── download.sh ├── multi_graph │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── decode.json │ │ ├── encode_rtsp.json │ │ ├── encode_video.json │ │ ├── engine.json │ │ ├── multi_graph_demo.json │ │ └── yolov5.json │ └── pics │ │ └── multi_graph.jpg ├── openpose │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── decode.json │ │ ├── engine.json │ │ ├── engine_group.json │ │ ├── openpose_demo.json │ │ ├── openpose_group.json │ │ ├── openpose_infer.json │ │ ├── openpose_post.json │ │ └── openpose_pre.json │ └── scripts │ │ └── download.sh ├── ppocr │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── converger.json │ │ ├── decode.json │ │ ├── distributor_frame_class.json │ │ ├── engine_group.json │ │ ├── ppocr_demo.json │ │ ├── ppocr_det_group.json │ │ └── ppocr_rec_group.json │ └── scripts │ │ └── download.sh ├── resnet │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── decode.json │ │ ├── engine.json │ │ ├── resnet.json │ │ ├── resnet_demo.json │ │ └── resnet_roi.json │ └── scripts │ │ └── download.sh ├── retinaface │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── decode.json │ │ ├── engine.json │ │ ├── engine_group.json │ │ ├── retinaface_demo.json │ │ ├── retinaface_group.json │ │ ├── retinaface_infer.json │ │ ├── retinaface_post.json │ │ └── retinaface_pre.json │ └── scripts │ │ └── download.sh ├── retinaface_distributor_resnet_faiss_converger │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── converger.json │ │ ├── decode.json │ │ ├── distributor_class.json │ │ ├── distributor_frame.json │ │ ├── distributor_frame_class.json │ │ ├── distributor_time.json │ │ ├── distributor_time_class.json │ │ ├── engine.json │ │ ├── engine_group.json │ │ ├── faiss.json │ │ ├── resnet_face.json │ │ ├── retinaface_distributor_resnet_faiss_converger.json │ │ ├── retinaface_group.json │ │ ├── retinaface_infer.json │ │ ├── retinaface_post.json │ │ └── retinaface_pre.json │ └── scripts │ │ ├── download.sh │ │ └── resnet_opencv_faiss_write.py ├── src │ └── main.cc ├── structured_recognition │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── converger.json │ │ ├── decode.json │ │ ├── distributor_frame.json │ │ ├── distributor_time_class.json │ │ ├── encode.json │ │ ├── engine_group.json │ │ ├── lprnet_group.json │ │ ├── retinaface_group.json │ │ ├── structured_recognition_demo.json │ │ ├── yolov5_group.json │ │ └── yolov5_lpr_group.json │ ├── pics │ │ ├── engine_group.png │ │ ├── res0.png │ │ ├── res1.png │ │ ├── res2.png │ │ ├── structured_recognition.png │ │ ├── web.png │ │ └── web1.png │ └── scripts │ │ └── download.sh ├── trinocular_panorama_stitch │ ├── README.md │ ├── config │ │ ├── blend_left_right.json │ │ ├── blend_up_down.json │ │ ├── camera.json │ │ ├── camera_sensor.json │ │ ├── decode.json │ │ ├── distributor_full_frame.json │ │ ├── dwa_D.json │ │ ├── dwa_L.json │ │ ├── dwa_R.json │ │ ├── encode.json │ │ ├── encode_dwa.json │ │ ├── engine.json │ │ ├── engine_resize.json │ │ ├── resize_D.json │ │ ├── resize_L.json │ │ └── resize_R.json │ ├── cpp │ │ ├── CMakeLists.txt │ │ └── main.cpp │ ├── pics │ │ ├── flow_chart.png │ │ └── panorama.jpg │ └── scripts │ │ └── download.sh ├── tripwire │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── bytetrack.json │ │ ├── decode.json │ │ ├── engine_group.json │ │ ├── filter.json │ │ ├── http_push.json │ │ ├── osd.json │ │ ├── tripwire_demo.json │ │ └── yolox_group.json │ └── scripts │ │ └── download.sh ├── yolov5 │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── decode.json │ │ ├── engine.json │ │ ├── engine_group.json │ │ ├── yolov5_classthresh_roi_example.json │ │ ├── yolov5_demo.json │ │ ├── yolov5_group.json │ │ ├── yolov5_infer.json │ │ ├── yolov5_post.json │ │ └── yolov5_pre.json │ ├── pics │ │ └── elements.jpg │ └── scripts │ │ └── download.sh ├── yolov5_bytetrack_distributor_resnet_converger │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── bytetrack.json │ │ ├── converger.json │ │ ├── decode.json │ │ ├── distributor_class.json │ │ ├── distributor_frame.json │ │ ├── distributor_frame_class.json │ │ ├── distributor_time.json │ │ ├── distributor_time_class.json │ │ ├── engine.json │ │ ├── engine_group.json │ │ ├── resnet_car.json │ │ ├── resnet_person.json │ │ ├── yolov5_bytetrack_distributor_resnet_converger_demo.json │ │ ├── yolov5_group.json │ │ ├── yolov5_infer.json │ │ ├── yolov5_post.json │ │ └── yolov5_pre.json │ ├── pics │ │ ├── distributor.png │ │ └── result.jpg │ └── scripts │ │ └── download.sh ├── yolov5_fastpose_posec3d │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── decode.json │ │ ├── engine.json │ │ ├── engine_group.json │ │ ├── engine_group_alphapose.json │ │ ├── fastpose_group.json │ │ ├── fastpose_infer.json │ │ ├── fastpose_post.json │ │ ├── fastpose_pre.json │ │ ├── posec3d_group.json │ │ ├── posec3d_pre.json │ │ ├── yolov5_fastpose_posec3d_demo.json │ │ ├── yolov5_group.json │ │ ├── yolov5_infer.json │ │ ├── yolov5_post.json │ │ └── yolov5_pre.json │ ├── pics │ │ ├── posec3d.jpg │ │ ├── yolov5_fastpose.jpg │ │ └── yolov5_fastpose_posec3d.jpg │ └── scripts │ │ └── download.sh ├── yolov7 │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── decode.json │ │ ├── engine_group.json │ │ ├── yolov7_classthresh_roi_example.json │ │ ├── yolov7_demo.json │ │ └── yolov7_group.json │ ├── pics │ │ └── elements.jpg │ └── scripts │ │ └── download.sh ├── yolov8 │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── decode.json │ │ ├── engine_group.json │ │ ├── yolov8_classthresh_roi_example.json │ │ ├── yolov8_demo.json │ │ └── yolov8_group.json │ └── scripts │ │ └── download.sh ├── yolov8_obb │ ├── README.md │ ├── config │ │ ├── decode.json │ │ ├── encode.json │ │ ├── engine_obb_group.json │ │ ├── engine_obb_group_encode.json │ │ ├── osd.json │ │ ├── yolov8_obb_demo.json │ │ └── yolov8_obb_group.json │ └── scripts │ │ └── download.sh ├── yolox │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── decode.json │ │ ├── engine.json │ │ ├── engine_group.json │ │ ├── yolox_classthresh_roi_example.json │ │ ├── yolox_demo.json │ │ ├── yolox_group.json │ │ ├── yolox_infer.json │ │ ├── yolox_post.json │ │ └── yolox_pre.json │ ├── pics │ │ └── elements.jpg │ └── scripts │ │ └── download.sh ├── yolox_bytetrack_osd_encode │ ├── README.md │ ├── README_EN.md │ ├── config │ │ ├── bytetrack.json │ │ ├── decode.json │ │ ├── encode.json │ │ ├── engine.json │ │ ├── engine_group.json │ │ ├── osd.json │ │ ├── ws.json │ │ ├── yolox_bytetrack_osd_encode_demo.json │ │ ├── yolox_group.json │ │ ├── yolox_infer.json │ │ ├── yolox_post.json │ │ └── yolox_pre.json │ ├── pics │ │ └── dec_det_track_osd_enc.png │ └── scripts │ │ └── download.sh └── yolox_bytetrack_osd_qt │ ├── README.md │ ├── README_EN.md │ ├── config │ ├── bytetrack.json │ ├── decode.json │ ├── engine_group.json │ ├── osd.json │ ├── qt_display.json │ ├── yolox_bytetrack_osd_qt_demo.json │ └── yolox_group.json │ └── scripts │ ├── download.sh │ └── run_hdmi_show.sh ├── scripts ├── release.sh └── stream_jenkins_review.sh └── tools ├── cvs20_1690 └── video-vue │ ├── .gitignore │ ├── README.md │ ├── index.html │ ├── package.json │ ├── public │ └── vite.svg │ ├── src │ ├── App.vue │ ├── assets │ │ └── vue.svg │ ├── components │ │ ├── HelloWorld.vue │ │ └── WebSocketImage.vue │ ├── main.js │ └── style.css │ └── vite.config.js ├── stream-agent ├── README.md ├── common.py ├── config_algorithm.py ├── docs │ └── stream-agent.md ├── pics │ ├── add_task.png │ ├── alarm_res.png │ ├── client.png │ ├── image.png │ ├── start.png │ ├── start_task.png │ └── struct.png ├── samples │ ├── license_area_intrusion │ │ ├── config │ │ │ ├── converger.json │ │ │ ├── decode.json │ │ │ ├── distributor_time_class.json │ │ │ ├── engine_group.json │ │ │ ├── filter.json │ │ │ ├── http_push.json │ │ │ ├── license_area_intrusion_demo.json │ │ │ ├── lprnet_group.json │ │ │ └── yolov5_group.json │ │ └── license_area_intrusion.py │ ├── openpose │ │ ├── config │ │ │ ├── decode.json │ │ │ ├── engine_group.json │ │ │ ├── filter.json │ │ │ ├── http_push.json │ │ │ ├── openpose_demo.json │ │ │ └── openpose_group.json │ │ └── openpose.py │ ├── tripwire │ │ ├── config │ │ │ ├── bytetrack.json │ │ │ ├── decode.json │ │ │ ├── engine_group.json │ │ │ ├── filter.json │ │ │ ├── http_push.json │ │ │ ├── osd.json │ │ │ ├── tripwire_demo.json │ │ │ └── yolox_group.json │ │ └── tripwire.py │ ├── yolov5 │ │ ├── config │ │ │ ├── decode.json │ │ │ ├── engine_group.json │ │ │ ├── filter.json │ │ │ ├── http_push.json │ │ │ ├── yolov5_demo.json │ │ │ └── yolov5_group.json │ │ └── yolov5.py │ └── yolov8 │ │ ├── config │ │ ├── decode.json │ │ ├── engine_group.json │ │ ├── filter.json │ │ ├── http_push.json │ │ ├── yolov8_demo.json │ │ └── yolov8_group.json │ │ └── yolov8.py ├── server.py └── start_server.sh ├── stress ├── README.md ├── get_stress_metric.py └── stress.sh └── visualize ├── README.md ├── qt_ui ├── imageget.cpp ├── imageget.h ├── jsonhighlighter.cpp ├── jsonhighlighter.h ├── main.cpp ├── mainwindow.cpp ├── mainwindow.h ├── mainwindow.ui └── qt_ui.pro ├── server ├── CMakeLists.txt ├── README.md ├── config │ └── all_files_preview.json ├── include │ ├── http_interact_mgr.h │ └── http_struct_utils.h ├── scripts │ └── gen_jsons.py └── src │ ├── http_interact_mgr.cc │ ├── http_struct_utils.cc │ └── server.cc └── web_ui ├── README.md ├── interface.jpg ├── package.json ├── public ├── favicon.ico ├── index.html └── manifest.json └── src ├── App.css ├── App.js ├── components ├── ConfigPreview │ ├── ConfigPreview.css │ └── ConfigPreview.js ├── DisplayLayer │ ├── DisplayLayer.css │ └── DisplayLayer.js ├── Navigation │ ├── Navigation.css │ └── Navigation.js └── VideoDisplay │ ├── VideoDisplay.css │ └── VideoDisplay.js ├── index.css └── index.js /.gitignore: -------------------------------------------------------------------------------- 1 | # Distribution / packaging 2 | build/ 3 | build_soc/ 4 | data/ 5 | images/ 6 | models/ 7 | 8 | *.zip 9 | *.tar 10 | *.tar.gz 11 | *.tgz 12 | 13 | # Model file 14 | *.mlir 15 | *.onnx 16 | *.pt 17 | *.pth 18 | *.prototxt 19 | *.profile 20 | *.bmodel.json 21 | *.bmodel 22 | 23 | # VSCode settings 24 | .vscode 25 | 26 | # OSX dir files 27 | .DS_Store 28 | __MACOSX/ 29 | 30 | # web tools 31 | node_modules/ 32 | yarn.lock 33 | package-lock.json 34 | 35 | __pycache__ -------------------------------------------------------------------------------- /3rdparty/freetype2/.clang-format: -------------------------------------------------------------------------------- 1 | BasedOnStyle: Chromium 2 | AlignAfterOpenBracket: Align 3 | AlignConsecutiveAssignments: true 4 | AlignConsecutiveDeclarations: true 5 | AlignConsecutiveMacros: true 6 | AlignEscapedNewlines: true 7 | # AlignOperands: Align 8 | AlignTrailingComments: true 9 | AlwaysBreakAfterReturnType: AllDefinitions 10 | BreakBeforeBraces: Allman 11 | ColumnLimit: 80 12 | DerivePointerAlignment: false 13 | IndentCaseLabels: false 14 | PointerAlignment: Left 15 | SpaceBeforeParens: ControlStatements 16 | SpacesInParentheses: true 17 | -------------------------------------------------------------------------------- /3rdparty/freetype2/.gitignore: -------------------------------------------------------------------------------- 1 | /build/ 2 | /config.mk 3 | include/dlg/ 4 | src/dlg/dlg.c 5 | subprojects/* 6 | !subprojects/*.wrap 7 | /tests/data/* 8 | -------------------------------------------------------------------------------- /3rdparty/freetype2/.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "dlg"] 2 | path = subprojects/dlg 3 | url = https://github.com/nyorain/dlg.git 4 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/amiga/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/3rdparty/freetype2/builds/amiga/README -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/amiga/include/config/ftconfig.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/3rdparty/freetype2/builds/amiga/include/config/ftconfig.h -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/amiga/include/config/ftmodule.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/3rdparty/freetype2/builds/amiga/include/config/ftmodule.h -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/amiga/makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/3rdparty/freetype2/builds/amiga/makefile -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/amiga/makefile.os4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/3rdparty/freetype2/builds/amiga/makefile.os4 -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/amiga/smakefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/3rdparty/freetype2/builds/amiga/smakefile -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/amiga/src/base/ftsystem.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/3rdparty/freetype2/builds/amiga/src/base/ftsystem.c -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/ansi/ansi.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 configuration rules for a `normal' pseudo ANSI compiler/system 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | include $(TOP_DIR)/builds/ansi/ansi-def.mk 17 | include $(TOP_DIR)/builds/compiler/ansi-cc.mk 18 | include $(TOP_DIR)/builds/link_std.mk 19 | 20 | 21 | # EOF 22 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/atari/ATARI.H: -------------------------------------------------------------------------------- 1 | #if defined( GXVALID_H_ ) 2 | #pragma warn -aus /* too many unevaluated variables in gxvalid */ 3 | #endif 4 | 5 | #ifndef ATARI_H 6 | #define ATARI_H 7 | 8 | #pragma warn -stu 9 | 10 | /* PureC doesn't like 32bit enumerations */ 11 | 12 | #ifndef FT_IMAGE_TAG 13 | #define FT_IMAGE_TAG( value, _x1, _x2, _x3, _x4 ) value 14 | #endif /* FT_IMAGE_TAG */ 15 | 16 | #ifndef FT_ENC_TAG 17 | #define FT_ENC_TAG( value, a, b, c, d ) value 18 | #endif /* FT_ENC_TAG */ 19 | 20 | #endif /* ATARI_H */ 21 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/atari/FREETYPE.PRJ: -------------------------------------------------------------------------------- 1 | ;FreeType project file 2 | 3 | FREETYPE.LIB 4 | 5 | .C [-K -P -R -A] 6 | .L [-J -V] 7 | .S 8 | 9 | = 10 | 11 | ..\..\src\base\ftsystem.c 12 | ..\..\src\base\ftdebug.c 13 | 14 | ..\..\src\base\ftinit.c 15 | ..\..\src\base\ftglyph.c 16 | ..\..\src\base\ftmm 17 | ..\..\src\base\ftbbox 18 | 19 | ..\..\src\base\ftbase.c 20 | ..\..\src\autohint\autohint.c 21 | ;..\..\src\cache\ftcache.c 22 | ..\..\src\cff\cff.c 23 | ..\..\src\cid\type1cid.c 24 | ..\..\src\psaux\psaux.c 25 | ..\..\src\pshinter\pshinter.c 26 | ..\..\src\psnames\psnames.c 27 | ..\..\src\raster\raster.c 28 | ..\..\src\sfnt\sfnt.c 29 | ..\..\src\smooth\smooth.c 30 | ..\..\src\truetype\truetype.c 31 | ..\..\src\type1\type1.c 32 | ..\..\src\type42\type42.c 33 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/atari/README.TXT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/3rdparty/freetype2/builds/atari/README.TXT -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/beos/beos.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 configuration rules for a BeOS system 3 | # 4 | 5 | # Copyright (C) 1996-2022 by 6 | # David Turner, Robert Wilhelm, and Werner Lemberg. 7 | # 8 | # This file is part of the FreeType project, and may only be used, modified, 9 | # and distributed under the terms of the FreeType project license, 10 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 11 | # indicate that you have read the license and understand and accept it 12 | # fully. 13 | 14 | include $(TOP_DIR)/builds/beos/beos-def.mk 15 | include $(TOP_DIR)/builds/compiler/ansi-cc.mk 16 | include $(TOP_DIR)/builds/link_std.mk 17 | 18 | 19 | # EOF 20 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/dos/dos-emx.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 configuration rules for the EMX gcc compiler 3 | # 4 | 5 | 6 | # Copyright (C) 2003-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | include $(TOP_DIR)/builds/dos/dos-def.mk 17 | include $(TOP_DIR)/builds/compiler/emx.mk 18 | include $(TOP_DIR)/builds/link_dos.mk 19 | 20 | 21 | # EOF 22 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/dos/dos-gcc.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 configuration rules for the DJGPP compiler 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | include $(TOP_DIR)/builds/dos/dos-def.mk 17 | include $(TOP_DIR)/builds/compiler/gcc.mk 18 | include $(TOP_DIR)/builds/link_dos.mk 19 | 20 | 21 | # EOF 22 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/dos/dos-wat.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 configuration rules for the Watcom C/C++ compiler 3 | # 4 | 5 | 6 | # Copyright (C) 2003-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | include $(TOP_DIR)/builds/dos/dos-def.mk 16 | include $(TOP_DIR)/builds/compiler/watcom.mk 17 | include $(TOP_DIR)/builds/link_dos.mk 18 | 19 | 20 | # EOF 21 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/os2/os2-gcc.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 configuration rules for the OS/2 + gcc 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | # include OS/2-specific definitions 17 | include $(TOP_DIR)/builds/os2/os2-def.mk 18 | 19 | # include gcc-specific definitions 20 | include $(TOP_DIR)/builds/compiler/gcc.mk 21 | 22 | # include linking instructions 23 | include $(TOP_DIR)/builds/link_dos.mk 24 | 25 | 26 | # EOF 27 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/unix/.gitignore: -------------------------------------------------------------------------------- 1 | aclocal.m4 2 | autom4te.cache 3 | config.cache 4 | config.guess 5 | config.log 6 | config.status 7 | config.sub 8 | configure 9 | configure.ac 10 | freetype2.pc 11 | freetype-config 12 | ftconfig.h 13 | ftoption.h 14 | install-sh 15 | libtool 16 | ltmain.sh 17 | unix-cc.mk 18 | unix-def.mk 19 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/unix/freetype2.in: -------------------------------------------------------------------------------- 1 | prefix=%prefix% 2 | exec_prefix=%exec_prefix% 3 | libdir=%libdir% 4 | includedir=%includedir% 5 | 6 | Name: FreeType 2 7 | URL: https://freetype.org 8 | Description: A free, high-quality, and portable font engine. 9 | Version: %ft_version% 10 | Requires: %PKGCONFIG_REQUIRES% 11 | Requires.private: %PKGCONFIG_REQUIRES_PRIVATE% 12 | Libs: %PKGCONFIG_LIBS% 13 | Libs.private: %PKGCONFIG_LIBS_PRIVATE% 14 | Cflags: -I${includedir}/freetype2 15 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/unix/unix-dev.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 Configuration rules for Unix + GCC 3 | # 4 | # Development version without optimizations & libtool 5 | # and no installation. 6 | # 7 | 8 | 9 | # Copyright (C) 1996-2022 by 10 | # David Turner, Robert Wilhelm, and Werner Lemberg. 11 | # 12 | # This file is part of the FreeType project, and may only be used, modified, 13 | # and distributed under the terms of the FreeType project license, 14 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 15 | # indicate that you have read the license and understand and accept it 16 | # fully. 17 | 18 | 19 | DEVEL_DIR := $(TOP_DIR)/devel 20 | 21 | include $(TOP_DIR)/builds/unix/unixddef.mk 22 | include $(TOP_DIR)/builds/compiler/gcc-dev.mk 23 | include $(TOP_DIR)/builds/link_std.mk 24 | 25 | 26 | # EOF 27 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/unix/unix-lcc.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 Configuration rules for Unix + LCC 3 | # 4 | # Development version without optimizations & libtool 5 | # and no installation. 6 | # 7 | 8 | 9 | # Copyright (C) 1996-2022 by 10 | # David Turner, Robert Wilhelm, and Werner Lemberg. 11 | # 12 | # This file is part of the FreeType project, and may only be used, modified, 13 | # and distributed under the terms of the FreeType project license, 14 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 15 | # indicate that you have read the license and understand and accept it 16 | # fully. 17 | 18 | 19 | include $(TOP_DIR)/builds/unix/unixddef.mk 20 | include $(TOP_DIR)/builds/compiler/unix-lcc.mk 21 | include $(TOP_DIR)/builds/link_std.mk 22 | 23 | 24 | # EOF 25 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/vms/LIBS.OPT_IA64: -------------------------------------------------------------------------------- 1 | sys$library:libpng.olb/libsys$library:libbz2.olb/libsys$library:libz.olb/lib -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/windows/.gitignore: -------------------------------------------------------------------------------- 1 | # user-specific cache/settings files 2 | *.opensdf 3 | *.sdf 4 | *.suo 5 | *.user 6 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/windows/visualc/freetype.dsw: -------------------------------------------------------------------------------- 1 | Microsoft Developer Studio Workspace File, Format Version 6.00 2 | # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 3 | 4 | ############################################################################### 5 | 6 | Project: "freetype"=.\freetype.dsp - Package Owner=<4> 7 | 8 | Package=<5> 9 | {{{ 10 | }}} 11 | 12 | Package=<4> 13 | {{{ 14 | }}} 15 | 16 | ############################################################################### 17 | 18 | Global: 19 | 20 | Package=<5> 21 | {{{ 22 | }}} 23 | 24 | Package=<3> 25 | {{{ 26 | }}} 27 | 28 | ############################################################################### 29 | 30 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/windows/visualce/freetype.dsw: -------------------------------------------------------------------------------- 1 | Microsoft Developer Studio Workspace File, Format Version 6.00 2 | # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 3 | 4 | ############################################################################### 5 | 6 | Project: "freetype"=.\freetype.dsp - Package Owner=<4> 7 | 8 | Package=<5> 9 | {{{ 10 | }}} 11 | 12 | Package=<4> 13 | {{{ 14 | }}} 15 | 16 | ############################################################################### 17 | 18 | Global: 19 | 20 | Package=<5> 21 | {{{ 22 | }}} 23 | 24 | Package=<3> 25 | {{{ 26 | }}} 27 | 28 | ############################################################################### 29 | 30 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/windows/w32-bccd.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 Borland C++ on Win32 + debugging 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | DEVEL_DIR := $(TOP_DIR)/devel 17 | 18 | include $(TOP_DIR)/builds/windows/win32-def.mk 19 | 20 | include $(TOP_DIR)/builds/compiler/bcc-dev.mk 21 | 22 | # include linking instructions 23 | include $(TOP_DIR)/builds/link_dos.mk 24 | 25 | 26 | # EOF 27 | -------------------------------------------------------------------------------- /3rdparty/freetype2/builds/windows/w32-lcc.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 configuration rules for Win32 + LCC 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | SEP := / 17 | include $(TOP_DIR)/builds/windows/win32-def.mk 18 | include $(TOP_DIR)/builds/compiler/win-lcc.mk 19 | 20 | # include linking instructions 21 | include $(TOP_DIR)/builds/link_dos.mk 22 | 23 | # EOF 24 | 25 | -------------------------------------------------------------------------------- /3rdparty/freetype2/docs/.gitignore: -------------------------------------------------------------------------------- 1 | # Static site folder 2 | reference/ 3 | 4 | # HTML and Markdown files 5 | *.html 6 | *.md 7 | 8 | # MkDocs Config file 9 | mkdocs.yml 10 | 11 | # Python virtualenv 12 | env/ 13 | -------------------------------------------------------------------------------- /3rdparty/freetype2/docs/CMAKE: -------------------------------------------------------------------------------- 1 | Support for a cmake build has been contributed. See the remarks in the 2 | top-level `CMakeLists.txt' file for more. 3 | -------------------------------------------------------------------------------- /3rdparty/freetype2/docs/MAKEPP: -------------------------------------------------------------------------------- 1 | As a special exception, FreeType can also be built with the 'makepp' 2 | build tool, available from https://makepp.sourceforge.net. 3 | 4 | Note, however, that you will need at least version 2.0 and pass the 5 | option --norc-substitution to have it work correctly. 6 | -------------------------------------------------------------------------------- /3rdparty/freetype2/objs/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !README 3 | !.gitignore 4 | -------------------------------------------------------------------------------- /3rdparty/freetype2/objs/README: -------------------------------------------------------------------------------- 1 | This directory contains all the object files created when building the 2 | library. 3 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/autofit/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 auto-fitter module definition 3 | # 4 | 5 | 6 | # Copyright (C) 2003-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += AUTOFIT_MODULE 17 | 18 | define AUTOFIT_MODULE 19 | $(OPEN_DRIVER) FT_Module_Class, autofit_module_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)autofit $(ECHO_DRIVER_DESC)automatic hinting module$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/cff/cff.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * cff.c 4 | * 5 | * FreeType OpenType driver component (body only). 6 | * 7 | * Copyright (C) 1996-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | 19 | #define FT_MAKE_OPTION_SINGLE_OBJECT 20 | 21 | #include "cffcmap.c" 22 | #include "cffdrivr.c" 23 | #include "cffgload.c" 24 | #include "cffparse.c" 25 | #include "cffload.c" 26 | #include "cffobjs.c" 27 | 28 | /* END */ 29 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/cff/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 CFF module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += CFF_DRIVER 17 | 18 | define CFF_DRIVER 19 | $(OPEN_DRIVER) FT_Driver_ClassRec, cff_driver_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)cff $(ECHO_DRIVER_DESC)OpenType fonts with extension *.otf$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/cid/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 CID module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += TYPE1CID_DRIVER 17 | 18 | define TYPE1CID_DRIVER 19 | $(OPEN_DRIVER) FT_Driver_ClassRec, t1cid_driver_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)cid $(ECHO_DRIVER_DESC)Postscript CID-keyed fonts, no known extension$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/cid/type1cid.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * type1cid.c 4 | * 5 | * FreeType OpenType driver component (body only). 6 | * 7 | * Copyright (C) 1996-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | 19 | #define FT_MAKE_OPTION_SINGLE_OBJECT 20 | 21 | #include "cidgload.c" 22 | #include "cidload.c" 23 | #include "cidobjs.c" 24 | #include "cidparse.c" 25 | #include "cidriver.c" 26 | 27 | 28 | /* END */ 29 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/gxvalid/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 gxvalid module definition 3 | # 4 | 5 | # Copyright (C) 2004-2022 by 6 | # suzuki toshiya, Masatake YAMATO, Red Hat K.K., 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += GXVALID_MODULE 17 | 18 | define GXVALID_MODULE 19 | $(OPEN_DRIVER) FT_Module_Class, gxv_module_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)gxvalid $(ECHO_DRIVER_DESC)TrueTypeGX/AAT validation module$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/gzip/inffast.h: -------------------------------------------------------------------------------- 1 | /* inffast.h -- header to use inffast.c 2 | * Copyright (C) 1995-2003, 2010 Mark Adler 3 | * For conditions of distribution and use, see copyright notice in zlib.h 4 | */ 5 | 6 | /* WARNING: this file should *not* be used by applications. It is 7 | part of the implementation of the compression library and is 8 | subject to change. Applications should only use zlib.h. 9 | */ 10 | 11 | void ZLIB_INTERNAL inflate_fast OF((z_streamp strm, unsigned start)); 12 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/otvalid/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 otvalid module definition 3 | # 4 | 5 | 6 | # Copyright (C) 2004-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += OTVALID_MODULE 17 | 18 | define OTVALID_MODULE 19 | $(OPEN_DRIVER) FT_Module_Class, otv_module_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)otvalid $(ECHO_DRIVER_DESC)OpenType validation module$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/pfr/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 PFR module definition 3 | # 4 | 5 | 6 | # Copyright (C) 2002-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += PFR_DRIVER 17 | 18 | define PFR_DRIVER 19 | $(OPEN_DRIVER) FT_Driver_ClassRec, pfr_driver_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)pfr $(ECHO_DRIVER_DESC)PFR/TrueDoc font files with extension *.pfr$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/pfr/pfr.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * pfr.c 4 | * 5 | * FreeType PFR driver component. 6 | * 7 | * Copyright (C) 2002-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | 19 | #define FT_MAKE_OPTION_SINGLE_OBJECT 20 | 21 | #include "pfrcmap.c" 22 | #include "pfrdrivr.c" 23 | #include "pfrgload.c" 24 | #include "pfrload.c" 25 | #include "pfrobjs.c" 26 | #include "pfrsbit.c" 27 | 28 | 29 | /* END */ 30 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/psaux/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 PSaux module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += PSAUX_MODULE 17 | 18 | define PSAUX_MODULE 19 | $(OPEN_DRIVER) FT_Module_Class, psaux_module_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)psaux $(ECHO_DRIVER_DESC)Postscript Type 1 & Type 2 helper module$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/pshinter/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 PSHinter module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += PSHINTER_MODULE 17 | 18 | define PSHINTER_MODULE 19 | $(OPEN_DRIVER) FT_Module_Class, pshinter_module_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)pshinter $(ECHO_DRIVER_DESC)Postscript hinter module$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/pshinter/pshinter.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * pshinter.c 4 | * 5 | * FreeType PostScript Hinting module 6 | * 7 | * Copyright (C) 2001-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | 19 | #define FT_MAKE_OPTION_SINGLE_OBJECT 20 | 21 | #include "pshalgo.c" 22 | #include "pshglob.c" 23 | #include "pshmod.c" 24 | #include "pshrec.c" 25 | 26 | 27 | /* END */ 28 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/psnames/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 PSnames module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += PSNAMES_MODULE 17 | 18 | define PSNAMES_MODULE 19 | $(OPEN_DRIVER) FT_Module_Class, psnames_module_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)psnames $(ECHO_DRIVER_DESC)Postscript & Unicode Glyph name handling$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/psnames/psnames.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * psnames.c 4 | * 5 | * FreeType psnames module component (body only). 6 | * 7 | * Copyright (C) 1996-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | 19 | #define FT_MAKE_OPTION_SINGLE_OBJECT 20 | 21 | #include "psmodule.c" 22 | 23 | 24 | /* END */ 25 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/raster/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 renderer module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += RASTER_MODULE 17 | 18 | define RASTER_MODULE 19 | $(OPEN_DRIVER) FT_Renderer_Class, ft_raster1_renderer_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)raster $(ECHO_DRIVER_DESC)monochrome bitmap renderer$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/raster/raster.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * raster.c 4 | * 5 | * FreeType monochrome rasterer module component (body only). 6 | * 7 | * Copyright (C) 1996-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | 19 | #define FT_MAKE_OPTION_SINGLE_OBJECT 20 | 21 | #include "ftraster.c" 22 | #include "ftrend1.c" 23 | 24 | 25 | /* END */ 26 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/sdf/sdf.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * sdf.c 4 | * 5 | * FreeType Signed Distance Field renderer module component (body only). 6 | * 7 | * Copyright (C) 2020-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * Written by Anuj Verma. 11 | * 12 | * This file is part of the FreeType project, and may only be used, 13 | * modified, and distributed under the terms of the FreeType project 14 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 15 | * this file you indicate that you have read the license and 16 | * understand and accept it fully. 17 | * 18 | */ 19 | 20 | 21 | #define FT_MAKE_OPTION_SINGLE_OBJECT 22 | 23 | #include "ftsdfrend.c" 24 | #include "ftsdfcommon.c" 25 | #include "ftbsdf.c" 26 | #include "ftsdf.c" 27 | 28 | 29 | /* END */ 30 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/sfnt/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 SFNT module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += SFNT_MODULE 17 | 18 | define SFNT_MODULE 19 | $(OPEN_DRIVER) FT_Module_Class, sfnt_module_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)sfnt $(ECHO_DRIVER_DESC)helper module for TrueType & OpenType formats$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/smooth/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 smooth renderer module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += SMOOTH_RENDERER 17 | 18 | define SMOOTH_RENDERER 19 | $(OPEN_DRIVER) FT_Renderer_Class, ft_smooth_renderer_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)smooth $(ECHO_DRIVER_DESC)anti-aliased bitmap renderer$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/smooth/smooth.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * smooth.c 4 | * 5 | * FreeType anti-aliasing rasterer module component (body only). 6 | * 7 | * Copyright (C) 1996-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | 19 | #define FT_MAKE_OPTION_SINGLE_OBJECT 20 | 21 | #include "ftgrays.c" 22 | #include "ftsmooth.c" 23 | 24 | 25 | /* END */ 26 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/svg/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 SVG renderer module definition 3 | # 4 | 5 | 6 | # Copyright (C) 2022 by 7 | # David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += SVG_MODULE 17 | 18 | define SVG_MODULE 19 | $(OPEN_DRIVER) FT_Renderer_Class, ft_svg_renderer_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)ot-svg $(ECHO_DRIVER_DESC)OT-SVG glyph renderer module$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/svg/svg.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * svg.c 4 | * 5 | * FreeType SVG renderer module component (body only). 6 | * 7 | * Copyright (C) 2022 by 8 | * David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | #define FT_MAKE_OPTION_SINGLE_OBJECT 19 | 20 | #include "svgtypes.h" 21 | #include "ftsvg.c" 22 | 23 | 24 | /* END */ 25 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/tools/update-copyright: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Run the `update-copyright-year' script on all files in the git repository, 4 | # taking care of exceptions stored in file `no-copyright'. 5 | 6 | topdir=`git rev-parse --show-toplevel` 7 | toolsdir=$topdir/src/tools 8 | 9 | git ls-files --full-name $topdir \ 10 | | sed 's|^|../../|' \ 11 | | grep -vFf $toolsdir/no-copyright \ 12 | | xargs $toolsdir/update-copyright-year 13 | 14 | # EOF 15 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/truetype/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 TrueType module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += TRUETYPE_DRIVER 17 | 18 | define TRUETYPE_DRIVER 19 | $(OPEN_DRIVER) FT_Driver_ClassRec, tt_driver_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)truetype $(ECHO_DRIVER_DESC)Windows/Mac font files with extension *.ttf or *.ttc$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/type1/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 Type1 module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += TYPE1_DRIVER 17 | 18 | define TYPE1_DRIVER 19 | $(OPEN_DRIVER) FT_Driver_ClassRec, t1_driver_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)type1 $(ECHO_DRIVER_DESC)Postscript font files with extension *.pfa or *.pfb$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/type1/type1.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * type1.c 4 | * 5 | * FreeType Type 1 driver component (body only). 6 | * 7 | * Copyright (C) 1996-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | 19 | #define FT_MAKE_OPTION_SINGLE_OBJECT 20 | 21 | #include "t1afm.c" 22 | #include "t1driver.c" 23 | #include "t1gload.c" 24 | #include "t1load.c" 25 | #include "t1objs.c" 26 | #include "t1parse.c" 27 | 28 | 29 | /* END */ 30 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/type42/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 Type42 module definition 3 | # 4 | 5 | 6 | # Copyright (C) 2002-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += TYPE42_DRIVER 17 | 18 | define TYPE42_DRIVER 19 | $(OPEN_DRIVER) FT_Driver_ClassRec, t42_driver_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)type42 $(ECHO_DRIVER_DESC)Type 42 font files with no known extension$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/type42/type42.c: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | * 3 | * type42.c 4 | * 5 | * FreeType Type 42 driver component. 6 | * 7 | * Copyright (C) 2002-2022 by 8 | * David Turner, Robert Wilhelm, and Werner Lemberg. 9 | * 10 | * This file is part of the FreeType project, and may only be used, 11 | * modified, and distributed under the terms of the FreeType project 12 | * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 | * this file you indicate that you have read the license and 14 | * understand and accept it fully. 15 | * 16 | */ 17 | 18 | 19 | #define FT_MAKE_OPTION_SINGLE_OBJECT 20 | 21 | #include "t42drivr.c" 22 | #include "t42objs.c" 23 | #include "t42parse.c" 24 | 25 | 26 | /* END */ 27 | -------------------------------------------------------------------------------- /3rdparty/freetype2/src/winfonts/module.mk: -------------------------------------------------------------------------------- 1 | # 2 | # FreeType 2 Windows FNT/FON module definition 3 | # 4 | 5 | 6 | # Copyright (C) 1996-2022 by 7 | # David Turner, Robert Wilhelm, and Werner Lemberg. 8 | # 9 | # This file is part of the FreeType project, and may only be used, modified, 10 | # and distributed under the terms of the FreeType project license, 11 | # LICENSE.TXT. By continuing to use, modify, or distribute this file you 12 | # indicate that you have read the license and understand and accept it 13 | # fully. 14 | 15 | 16 | FTMODULE_H_COMMANDS += WINDOWS_DRIVER 17 | 18 | define WINDOWS_DRIVER 19 | $(OPEN_DRIVER) FT_Driver_ClassRec, winfnt_driver_class $(CLOSE_DRIVER) 20 | $(ECHO_DRIVER)winfnt $(ECHO_DRIVER_DESC)Windows bitmap fonts with extension *.fnt or *.fon$(ECHO_DRIVER_DONE) 21 | endef 22 | 23 | # EOF 24 | -------------------------------------------------------------------------------- /3rdparty/freetype2/subprojects/libpng.wrap: -------------------------------------------------------------------------------- 1 | [wrap-file] 2 | directory = libpng-1.6.37 3 | source_url = https://github.com/glennrp/libpng/archive/v1.6.37.tar.gz 4 | source_filename = libpng-1.6.37.tar.gz 5 | source_hash = ca74a0dace179a8422187671aee97dd3892b53e168627145271cad5b5ac81307 6 | patch_filename = libpng_1.6.37-5_patch.zip 7 | patch_url = https://wrapdb.mesonbuild.com/v2/libpng_1.6.37-5/get_patch 8 | patch_hash = 822200906ad2e82dc8b44e79fe960e980ccad96263548c35eef721086a9926f1 9 | 10 | [provide] 11 | libpng = libpng_dep 12 | 13 | -------------------------------------------------------------------------------- /3rdparty/freetype2/subprojects/zlib.wrap: -------------------------------------------------------------------------------- 1 | [wrap-file] 2 | directory = zlib-1.2.11 3 | source_url = http://zlib.net/fossils/zlib-1.2.11.tar.gz 4 | source_filename = zlib-1.2.11.tar.gz 5 | source_hash = c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1 6 | patch_url = https://wrapdb.mesonbuild.com/v2/zlib_1.2.11-5/get_patch 7 | patch_filename = zlib-1.2.11-5-wrap.zip 8 | patch_hash = 728c8e24acbc2e6682fbd950fec39e2fc77528af361adb87259f8a8511434004 9 | 10 | [provide] 11 | zlib = zlib_dep 12 | 13 | -------------------------------------------------------------------------------- /3rdparty/freetype2/tests/README.md: -------------------------------------------------------------------------------- 1 | # Unit and regression tests for the FreeType library 2 | 3 | ## Quick Start 4 | 5 | ### Download test fonts 6 | 7 | Run the `tests/scripts/download-fonts.py` script, which will 8 | download test fonts to the `tests/data/` directory first. 9 | 10 | ### Build the test programs 11 | 12 | The tests are only built with the Meson build system, and 13 | are disabled by default, enable the 'tests' option to compile 14 | them, as in: 15 | 16 | meson setup out -Dtests=enabled 17 | meson compile -C out 18 | 19 | ### Run the test programs 20 | 21 | meson test -C out 22 | 23 | -------------------------------------------------------------------------------- /3rdparty/freetype2/tests/meson.build: -------------------------------------------------------------------------------- 1 | test_issue_1063 = executable('issue-1063', 2 | files([ 'issue-1063/main.c' ]), 3 | dependencies: freetype_dep, 4 | ) 5 | 6 | test_env = ['FREETYPE_TESTS_DATA_DIR=' 7 | + join_paths(meson.current_source_dir(), 'data')] 8 | 9 | test('issue-1063', 10 | test_issue_1063, 11 | env: test_env, 12 | suite: 'regression') 13 | 14 | # EOF 15 | -------------------------------------------------------------------------------- /3rdparty/spdlog/include/spdlog/fmt/bundled/locale.h: -------------------------------------------------------------------------------- 1 | // Formatting library for C++ - locale support 2 | // 3 | // Copyright (c) 2012 - 2016, Victor Zverovich 4 | // All rights reserved. 5 | // 6 | // For the license information refer to format.h. 7 | 8 | #include "format.h" 9 | #include 10 | 11 | namespace fmt { 12 | class locale 13 | { 14 | private: 15 | std::locale locale_; 16 | 17 | public: 18 | explicit locale(std::locale loc = std::locale()) 19 | : locale_(loc) 20 | { 21 | } 22 | std::locale get() 23 | { 24 | return locale_; 25 | } 26 | }; 27 | } // namespace fmt 28 | -------------------------------------------------------------------------------- /3rdparty/spdlog/include/spdlog/fmt/fmt.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright(c) 2016-2018 Gabi Melman. 3 | // Distributed under the MIT License (http://opensource.org/licenses/MIT) 4 | // 5 | 6 | #pragma once 7 | 8 | // 9 | // Include a bundled header-only copy of fmtlib or an external one. 10 | // By default spdlog include its own copy. 11 | // 12 | 13 | #if !defined(SPDLOG_FMT_EXTERNAL) 14 | #ifndef FMT_HEADER_ONLY 15 | #define FMT_HEADER_ONLY 16 | #endif 17 | #ifndef FMT_USE_WINDOWS_H 18 | #define FMT_USE_WINDOWS_H 0 19 | #endif 20 | #include "bundled/core.h" 21 | #include "bundled/format.h" 22 | #else // external fmtlib 23 | #include 24 | #include 25 | #endif 26 | -------------------------------------------------------------------------------- /3rdparty/spdlog/include/spdlog/fmt/ostr.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright(c) 2016 Gabi Melman. 3 | // Distributed under the MIT License (http://opensource.org/licenses/MIT) 4 | // 5 | 6 | #pragma once 7 | // 8 | // include bundled or external copy of fmtlib's ostream support 9 | // 10 | #if !defined(SPDLOG_FMT_EXTERNAL) 11 | #ifndef FMT_HEADER_ONLY 12 | #define FMT_HEADER_ONLY 13 | #endif 14 | #include "bundled/ostream.h" 15 | #include "fmt.h" 16 | #else 17 | #include 18 | #endif 19 | -------------------------------------------------------------------------------- /3rdparty/spdlog/include/spdlog/formatter.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright(c) 2015 Gabi Melman. 3 | // Distributed under the MIT License (http://opensource.org/licenses/MIT) 4 | // 5 | 6 | #pragma once 7 | 8 | #include "fmt/fmt.h" 9 | #include "spdlog/details/log_msg.h" 10 | 11 | namespace spdlog { 12 | 13 | class formatter 14 | { 15 | public: 16 | virtual ~formatter() = default; 17 | virtual void format(const details::log_msg &msg, fmt::memory_buffer &dest) = 0; 18 | virtual std::unique_ptr clone() const = 0; 19 | }; 20 | } // namespace spdlog 21 | -------------------------------------------------------------------------------- /3rdparty/spdlog/include/spdlog/sinks/null_sink.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright(c) 2015 Gabi Melman. 3 | // Distributed under the MIT License (http://opensource.org/licenses/MIT) 4 | // 5 | 6 | #pragma once 7 | 8 | #include "spdlog/details/null_mutex.h" 9 | #include "spdlog/sinks/base_sink.h" 10 | 11 | #include 12 | 13 | namespace spdlog { 14 | namespace sinks { 15 | 16 | template 17 | class null_sink : public base_sink 18 | { 19 | protected: 20 | void sink_it_(const details::log_msg &) override {} 21 | void flush_() override {} 22 | }; 23 | 24 | using null_sink_mt = null_sink; 25 | using null_sink_st = null_sink; 26 | 27 | } // namespace sinks 28 | } // namespace spdlog 29 | -------------------------------------------------------------------------------- /3rdparty/spdlog/include/spdlog/version.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright(c) 2015 Gabi Melman. 3 | // Distributed under the MIT License (http://opensource.org/licenses/MIT) 4 | // 5 | 6 | #pragma once 7 | 8 | #define SPDLOG_VER_MAJOR 1 9 | #define SPDLOG_VER_MINOR 1 10 | #define SPDLOG_VER_PATCH 0 11 | 12 | #define SPDLOG_VERSION (SPDLOG_VER_MAJOR * 10000 + SPDLOG_VER_MINOR * 100 + SPDLOG_VER_PATCH) 13 | -------------------------------------------------------------------------------- /3rdparty/tpu_kernel_module/libbm1684x_kernel_module.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/3rdparty/tpu_kernel_module/libbm1684x_kernel_module.so -------------------------------------------------------------------------------- /3rdparty/websocketpp/websocketpp/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | init_target("websocketpp") 2 | final_target () 3 | -------------------------------------------------------------------------------- /VERSION: -------------------------------------------------------------------------------- 1 | 1.0.1 2 | -------------------------------------------------------------------------------- /docs/pics/dec_det_track_osd_enc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/docs/pics/dec_det_track_osd_enc.png -------------------------------------------------------------------------------- /docs/pics/element.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/docs/pics/element.png -------------------------------------------------------------------------------- /docs/pics/engine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/docs/pics/engine.png -------------------------------------------------------------------------------- /docs/pics/graph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/docs/pics/graph.png -------------------------------------------------------------------------------- /docs/pics/stream_sdk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/docs/pics/stream_sdk.png -------------------------------------------------------------------------------- /docs/pics/stress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/docs/pics/stress.png -------------------------------------------------------------------------------- /docs/pics/tracker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/docs/pics/tracker.png -------------------------------------------------------------------------------- /element/algorithm/template/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/element/algorithm/template/README.md -------------------------------------------------------------------------------- /element/multimedia/osd/pics/track.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/element/multimedia/osd/pics/track.jpg -------------------------------------------------------------------------------- /element/tools/blank/README.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ```json 5 | { 6 | "configure": {}, 7 | "shared_object": "../../build/lib/libblank.so", 8 | "name": "blank", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } 12 | ``` -------------------------------------------------------------------------------- /framework/common/common_tool.h: -------------------------------------------------------------------------------- 1 | //===----------------------------------------------------------------------===// 2 | // 3 | // Copyright (C) 2022 Sophgo Technologies Inc. All rights reserved. 4 | // 5 | // SOPHON-STREAM is licensed under the 2-Clause BSD License except for the 6 | // third-party components. 7 | // 8 | //===----------------------------------------------------------------------===// 9 | 10 | 11 | #ifndef SOPHON_STREAM_COMMON_TOOL_H_ 12 | #define SOPHON_STREAM_COMMON_TOOL_H_ 13 | 14 | #include "common/common_defs.h" 15 | #include "opencv2/opencv.hpp" 16 | 17 | int save_frame_to_yuv(bm_handle_t& handle, AVFrame* frame, const char* filename, 18 | bool data_on_device_mem = true); 19 | 20 | #endif // SOPHON_STREAM_COMMON_TOOL_H_ 21 | -------------------------------------------------------------------------------- /framework/common/no_copyable.h: -------------------------------------------------------------------------------- 1 | //===----------------------------------------------------------------------===// 2 | // 3 | // Copyright (C) 2022 Sophgo Technologies Inc. All rights reserved. 4 | // 5 | // SOPHON-STREAM is licensed under the 2-Clause BSD License except for the 6 | // third-party components. 7 | // 8 | //===----------------------------------------------------------------------===// 9 | 10 | #ifndef SOPHON_STREAM_COMMON_NO_COPYABLE_H_ 11 | #define SOPHON_STREAM_COMMON_NO_COPYABLE_H_ 12 | 13 | namespace sophon_stream { 14 | namespace common { 15 | 16 | class NoCopyable { 17 | protected: 18 | NoCopyable() = default; 19 | ~NoCopyable() = default; 20 | NoCopyable(const NoCopyable&) = delete; 21 | NoCopyable& operator=(const NoCopyable& rhs) = delete; 22 | }; 23 | 24 | } // namespace common 25 | } // namespace sophon_stream 26 | 27 | #endif // SOPHON_STREAM_COMMON_NO_COPYABLE_H_ -------------------------------------------------------------------------------- /framework/common/singleton.h: -------------------------------------------------------------------------------- 1 | //===----------------------------------------------------------------------===// 2 | // 3 | // Copyright (C) 2022 Sophgo Technologies Inc. All rights reserved. 4 | // 5 | // SOPHON-STREAM is licensed under the 2-Clause BSD License except for the 6 | // third-party components. 7 | // 8 | //===----------------------------------------------------------------------===// 9 | 10 | #ifndef SOPHON_STREAM_COMMON_SINGLETON_H_ 11 | #define SOPHON_STREAM_COMMON_SINGLETON_H_ 12 | 13 | namespace sophon_stream { 14 | namespace common { 15 | 16 | template 17 | class Singleton { 18 | public: 19 | typedef T ObjectType; 20 | 21 | static ObjectType& getInstance() { 22 | static ObjectType obj; 23 | return obj; 24 | } 25 | }; 26 | 27 | } // namespace common 28 | } // namespace sophon_stream 29 | 30 | #endif // SOPHON_STREAM_COMMON_SINGLETON_H_ -------------------------------------------------------------------------------- /framework/common/tracked_object_metadata.h: -------------------------------------------------------------------------------- 1 | #ifndef SOPHON_STREAM_COMMON_TRACKED_OBJECT_METADATA_H_ 2 | #define SOPHON_STREAM_COMMON_TRACKED_OBJECT_METADATA_H_ 3 | 4 | #include 5 | #include 6 | 7 | namespace sophon_stream { 8 | namespace common { 9 | 10 | enum TrackFlag { TrNormal, TrLast }; 11 | 12 | struct TrackedObjectMetadata { 13 | TrackedObjectMetadata() : mPerferScore(0.f), mCoverArea(0) {} 14 | 15 | std::string mUuid; 16 | float mPerferScore; 17 | int mCoverArea; 18 | 19 | // 新加的 20 | std::string mName; 21 | bool mTrackerFilter = false; 22 | long long mTrackId = -1; // 跟踪id 23 | int mTrackFlag = TrNormal; 24 | float mQualityScore = 0.0; 25 | std::string mCaptureTime; 26 | std::string mImagePath; 27 | }; 28 | 29 | } // namespace common 30 | } // namespace sophon_stream 31 | 32 | #endif // SOPHON_STREAM_COMMON_TRACKED_OBJECT_METADATA_H_ -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/blend1.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "wgt1": "../bird_dwa_blend_encode/data/wgt/alpha_weight_0.bin", 4 | "wgt2": "../bird_dwa_blend_encode/data/wgt/beta_weight_0.bin", 5 | "ovlp_lx": 0, 6 | "ovlp_rx": 1919, 7 | "bd_lx0": 0, 8 | "bd_rx0": 0, 9 | "bd_lx1": 0, 10 | "bd_rx1": 0, 11 | "src_h": 1920 12 | }, 13 | "shared_object": "../../build/lib/libblend.so", 14 | "name": "blend", 15 | "side": "sophgo", 16 | "thread_number": 1 17 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/blend2.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "wgt1": "../bird_dwa_blend_encode/data/wgt/alpha_weight_1.bin", 4 | "wgt2": "../bird_dwa_blend_encode/data/wgt/beta_weight_1.bin", 5 | "ovlp_lx": 0, 6 | "ovlp_rx": 1919, 7 | "bd_lx0": 0, 8 | "bd_rx0": 0, 9 | "bd_lx1": 0, 10 | "bd_rx1": 0, 11 | "src_h": 1920 12 | }, 13 | "shared_object": "../../build/lib/libblend.so", 14 | "name": "blend", 15 | "side": "sophgo", 16 | "thread_number": 1 17 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/blend3.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "wgt1": "../bird_dwa_blend_encode/data/wgt/alpha_weight_2.bin", 4 | "wgt2": "../bird_dwa_blend_encode/data/wgt/beta_weight_2.bin", 5 | "ovlp_lx": 0, 6 | "ovlp_rx": 1919, 7 | "bd_lx0": 0, 8 | "bd_rx0": 0, 9 | "bd_lx1": 0, 10 | "bd_rx1": 0, 11 | "src_h": 1920 12 | }, 13 | "shared_object": "../../build/lib/libblend.so", 14 | "name": "blend", 15 | "side": "sophgo", 16 | "thread_number": 1 17 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/camera_dwa_blend_encode_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "/dev/video0", 6 | "source_type": "CAMERA", 7 | "loop_num": -1, 8 | "decode_id": 5000 9 | }, 10 | { 11 | "channel_id": 3, 12 | "url": "/dev/video1", 13 | "source_type": "CAMERA", 14 | "loop_num": -1, 15 | "decode_id": 5001 16 | }, 17 | { 18 | "channel_id": 4, 19 | "url": "/dev/video2", 20 | "source_type": "CAMERA", 21 | "loop_num": -1, 22 | "decode_id": 6001 23 | }, 24 | { 25 | "channel_id": 5, 26 | "url": "/dev/video3", 27 | "source_type": "CAMERA", 28 | "loop_num": -1, 29 | "decode_id": 6002 30 | } 31 | ], 32 | "download_image": false, 33 | "engine_config_path": "../bird_dwa_blend_encode/config/engine.json" 34 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/dwa_0.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": false, 5 | "dst_h": 1920, 6 | "dst_w": 1920, 7 | "dwa_mode": "DWA_FISHEYE_MODE", 8 | "dis_mode": "BMCV_MODE_PANORAMA_360", 9 | "use_grid": true, 10 | "grid_name": "../bird_dwa_blend_encode/data/gridinfo/0grid_info_bev_60_60_2920_60_60_dst_1920x1920_src_1920x1080.dat", 11 | "grid_size": 293536, 12 | "resize_h": 1920, 13 | "resize_w": 1920 14 | }, 15 | "shared_object": "../../build/lib/libdwa.so", 16 | "name": "dwa", 17 | "side": "sophgo", 18 | "thread_number": 1 19 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/dwa_1.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": false, 5 | "dst_h": 1920, 6 | "dst_w": 1920, 7 | "dwa_mode": "DWA_FISHEYE_MODE", 8 | "dis_mode": "BMCV_MODE_PANORAMA_360", 9 | "use_grid": true, 10 | "grid_name": "../bird_dwa_blend_encode/data/gridinfo/1grid_info_bev_60_60_2381_60_60_dst_1920x1920_src_1920x1080.dat", 11 | "grid_size": 250416, 12 | "resize_h": 1920, 13 | "resize_w": 1920 14 | }, 15 | "shared_object": "../../build/lib/libdwa.so", 16 | "name": "dwa", 17 | "side": "sophgo", 18 | "thread_number": 1 19 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/dwa_2.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": false, 5 | "dst_h": 1920, 6 | "dst_w": 1920, 7 | "dwa_mode": "DWA_FISHEYE_MODE", 8 | "dis_mode": "BMCV_MODE_PANORAMA_360", 9 | "use_grid": true, 10 | "grid_name": "../bird_dwa_blend_encode/data/gridinfo/2grid_info_bev_60_60_2772_60_60_dst_1920x1920_src_1920x1080.dat", 11 | "grid_size": 281696, 12 | "resize_h": 1920, 13 | "resize_w": 1920 14 | }, 15 | "shared_object": "../../build/lib/libdwa.so", 16 | "name": "dwa", 17 | "side": "sophgo", 18 | "thread_number": 1 19 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/dwa_3.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": false, 5 | "dst_h": 1920, 6 | "dst_w": 1920, 7 | "dwa_mode": "DWA_FISHEYE_MODE", 8 | "dis_mode": "BMCV_MODE_PANORAMA_360", 9 | "use_grid": true, 10 | "grid_name": "../bird_dwa_blend_encode/data/gridinfo/3grid_info_bev_60_60_2904_60_60_dst_1920x1920_src_1920x1080.dat", 11 | "grid_size": 292256, 12 | "resize_h": 1920, 13 | "resize_w": 1920 14 | }, 15 | "shared_object": "../../build/lib/libdwa.so", 16 | "name": "dwa", 17 | "side": "sophgo", 18 | "thread_number": 1 19 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "WS", 4 | "rtsp_port": "8554", 5 | "rtmp_port": "1935", 6 | "wss_port": "9000", 7 | "enc_fmt": "h264_bm", 8 | "pix_fmt": "I420", 9 | "fps": 25 10 | }, 11 | "shared_object": "../../build/lib/libencode.so", 12 | "name": "encode", 13 | "side": "sophgo", 14 | "thread_number": 1 15 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/config/resize.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "dst_h": 268, 4 | "dst_w": 268, 5 | "crop_w": 1920, 6 | "crop_h": 1920, 7 | "crop_top": 0, 8 | "crop_left": 0 9 | }, 10 | "shared_object": "../../build/lib/libresize.so", 11 | "name": "resize", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } -------------------------------------------------------------------------------- /samples/bird_dwa_blend_encode/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | res=$(which 7z) 4 | if [ $? != 0 ]; 5 | then 6 | echo "Please install 7z on your system!" 7 | echo "To install, use the following command:" 8 | echo "sudo apt install p7zip;sudo apt install p7zip-full" 9 | exit 10 | fi 11 | 12 | pip3 install dfss --upgrade 13 | # sudo apt install unzip 14 | 15 | scripts_dir=$(dirname $(readlink -f "$0")) 16 | # echo $scripts_dir 17 | 18 | pushd $scripts_dir 19 | # datasets 20 | if [ ! -d "../data" ]; 21 | then 22 | pushd .. 23 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/bird_dwa_blend_encode/data.tar.gz 24 | tar -zxvf data.tar.gz 25 | rm -f data.tar.gz 26 | popd 27 | else 28 | echo "test image exist!" 29 | fi 30 | 31 | popd -------------------------------------------------------------------------------- /samples/bytetrack/config/bytetrack.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "track_thresh": 0.5, 4 | "high_thresh": 0.6, 5 | "match_thresh": 0.7, 6 | "min_box_area": 10, 7 | "frame_rate": 30, 8 | "track_buffer": 30 9 | }, 10 | "shared_object": "../../build/lib/libbytetrack.so", 11 | "name": "bytetrack", 12 | "side": "sophgo", 13 | "thread_number": 4 14 | } -------------------------------------------------------------------------------- /samples/bytetrack/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/bytetrack/pics/tracker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/bytetrack/pics/tracker.png -------------------------------------------------------------------------------- /samples/bytetrack/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | pip3 install dfss 3 | # sudo apt install unzip 4 | 5 | scripts_dir=$(dirname $(readlink -f "$0")) 6 | # echo $scripts_dir 7 | 8 | pushd $scripts_dir 9 | 10 | mkdir -p ../data 11 | 12 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/bytetrack/models.zip 13 | unzip models.zip 14 | rm -rf models.zip 15 | mv ./models ../data/ 16 | 17 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/bytetrack/videos.zip 18 | unzip videos.zip 19 | rm -rf videos.zip 20 | mv ./videos ../data/ 21 | 22 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/common/coco.names 23 | mv ./coco.names ../data/ 24 | 25 | popd 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /samples/dwa_blend_encode/config/blend.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "wgt1": "../dwa_blend_encode/data/wgt/alpha_4096x2048.bin", 4 | "wgt2": "../dwa_blend_encode/data/wgt/beta_4096x2048.bin", 5 | "src_h": 2048, 6 | "ovlp_lx": 0, 7 | "ovlp_rx": 4095, 8 | "bd_lx0": 0, 9 | "bd_rx0": 0, 10 | "bd_lx1": 0, 11 | "bd_rx1": 0 12 | }, 13 | "shared_object": "../../build/lib/libblend.so", 14 | "name": "blend", 15 | "side": "sophgo", 16 | "thread_number": 1 17 | } -------------------------------------------------------------------------------- /samples/dwa_blend_encode/config/camera_dwa_blend_encode_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "/dev/video0", 6 | "source_type": "CAMERA", 7 | "sample_interval": 1, 8 | "loop_num": -1, 9 | "decode_id": 5000 10 | }, 11 | { 12 | "channel_id": 3, 13 | "url": "/dev/video1", 14 | "source_type": "CAMERA", 15 | "sample_interval": 1, 16 | "loop_num": -1, 17 | "decode_id": 5001 18 | } 19 | ], 20 | "download_image": false, 21 | "engine_config_path": "../dwa_blend_encode/config/engine.json" 22 | } -------------------------------------------------------------------------------- /samples/dwa_blend_encode/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/dwa_blend_encode/config/dwa_L.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": false, 5 | "dst_h": 2048, 6 | "dst_w": 4096, 7 | "dwa_mode": "DWA_FISHEYE_MODE", 8 | "dis_mode": "BMCV_MODE_PANORAMA_360", 9 | "use_grid": true, 10 | "grid_name": "../dwa_blend_encode/data/gridinfo/Lgrid_info_bev_128_64_4496_128_64_dst_4096x2048_src_2240x2240.dat", 11 | "grid_size": 494240, 12 | "resize_h": 2240, 13 | "resize_w": 2240 14 | }, 15 | "shared_object": "../../build/lib/libdwa.so", 16 | "name": "dwa", 17 | "side": "sophgo", 18 | "thread_number": 1 19 | } -------------------------------------------------------------------------------- /samples/dwa_blend_encode/config/dwa_R.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": false, 5 | "dst_h": 2048, 6 | "dst_w": 4096, 7 | "dwa_mode": "DWA_FISHEYE_MODE", 8 | "dis_mode": "BMCV_MODE_PANORAMA_360", 9 | "use_grid": true, 10 | "grid_name": "../dwa_blend_encode/data/gridinfo/Rgrid_info_bev_128_64_4413_128_64_dst_4096x2048_src_2240x2240.dat", 11 | "grid_size": 487600, 12 | "resize_h": 2240, 13 | "resize_w": 2240 14 | }, 15 | "shared_object": "../../build/lib/libdwa.so", 16 | "name": "dwa", 17 | "side": "sophgo", 18 | "thread_number": 1 19 | } -------------------------------------------------------------------------------- /samples/dwa_blend_encode/config/dwa_blend_encode_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "../dwa_blend_encode/data/images/left", 6 | "source_type": "IMG_DIR", 7 | "loop_num": -1, 8 | "decode_id": 5000 9 | }, 10 | { 11 | "channel_id": 3, 12 | "url": "../dwa_blend_encode/data/images/right", 13 | "source_type": "IMG_DIR", 14 | "loop_num": -1, 15 | "decode_id": 5001 16 | } 17 | ], 18 | "download_image": false, 19 | "engine_config_path": "../dwa_blend_encode/config/engine.json" 20 | } -------------------------------------------------------------------------------- /samples/dwa_blend_encode/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "WS", 4 | "rtsp_port": "8554", 5 | "rtmp_port": "1935", 6 | "wss_port": "9000", 7 | "enc_fmt": "h264_bm", 8 | "pix_fmt": "I420", 9 | "fps": 25 10 | }, 11 | "shared_object": "../../build/lib/libencode.so", 12 | "name": "encode", 13 | "side": "sophgo", 14 | "thread_number": 2 15 | } -------------------------------------------------------------------------------- /samples/dwa_blend_encode/config/resize.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "dst_h": 512, 4 | "dst_w": 1024, 5 | "crop_w": 4096, 6 | "crop_h": 2048, 7 | "crop_top": 0, 8 | "crop_left": 0 9 | }, 10 | "shared_object": "../../build/lib/libresize.so", 11 | "name": "resize", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } -------------------------------------------------------------------------------- /samples/dwa_blend_encode/pic/image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/dwa_blend_encode/pic/image.jpg -------------------------------------------------------------------------------- /samples/dwa_blend_encode/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | 5 | pip3 install dfss --upgrade 6 | # sudo apt install unzip 7 | 8 | scripts_dir=$(dirname $(readlink -f "$0")) 9 | # echo $scripts_dir 10 | 11 | pushd $scripts_dir 12 | # datasets 13 | if [ ! -d "../data" ]; 14 | then 15 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/dwa_blend_encode/data.tar.gz 16 | tar -zxvf data.tar.gz 17 | mv data .. 18 | rm -f data.tar.gz 19 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/dwa_blend_encode/cvi_sdr_bin 20 | mv cvi_sdr_bin ../data 21 | 22 | 23 | else 24 | echo "test image exist!" 25 | fi 26 | 27 | popd -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/config/camera_dwa_dpu_encode_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "/dev/video0", 6 | "source_type": "CAMERA", 7 | "sample_interval": 1, 8 | "loop_num": -1, 9 | "fps": 30, 10 | "decode_id": 5000 11 | }, 12 | { 13 | "channel_id": 3, 14 | "url": "/dev/video1", 15 | "source_type": "CAMERA", 16 | "sample_interval": 1, 17 | "loop_num": -1, 18 | "fps": 30, 19 | "decode_id": 5001 20 | } 21 | ], 22 | "download_image": false, 23 | "engine_config_path": "../dwa_dpu_encode/config/engine_dwa_dpu_ive_resize.json" 24 | } -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/config/dpu.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "dpu_type": "DPU_SGBM", 4 | "dpu_mode": "DPU_SGBM_MUX0", 5 | "disp_start_pos": 0, 6 | "dpu_census_shift": 1, 7 | "dpu_rshift1": 0, 8 | "dpu_rshift2": 2, 9 | "dpu_ca_p1": 1800, 10 | "dpu_ca_p2": 38800, 11 | "dpu_uniq_ratio": 10, 12 | "dpu_disp_shift": 4, 13 | "fgs_max_count": 19, 14 | "fgs_max_t": 3, 15 | "fxbase_line": 864000 16 | }, 17 | "shared_object": "../../build/lib/libdpu.so", 18 | "name": "dpu", 19 | "side": "sophgo", 20 | "thread_number": 1 21 | } -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/config/dwa_L.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": true, 4 | "is_resize": true, 5 | "dst_h": 1080, 6 | "dst_w": 1920, 7 | "dwa_mode": "DWA_GDC_MODE", 8 | "is_rot": false, 9 | "dis_mode": "BMCV_MODE_PANORAMA_360", 10 | "use_grid": true, 11 | "grid_name": "../dwa_dpu_encode/data/gridinfo/LL.dat", 12 | "grid_size": 183120 13 | }, 14 | "shared_object": "../../build/lib/libdwa.so", 15 | "name": "dwa", 16 | "side": "sophgo", 17 | "thread_number": 1 18 | } -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/config/dwa_R.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": true, 4 | "is_resize": true, 5 | "dst_h": 1080, 6 | "dst_w": 1920, 7 | "dwa_mode": "DWA_GDC_MODE", 8 | "is_rot": false, 9 | "dis_mode": "BMCV_MODE_PANORAMA_360", 10 | "use_grid": true, 11 | "grid_name": "../dwa_dpu_encode/data/gridinfo/RR.dat", 12 | "grid_size": 183120 13 | }, 14 | "shared_object": "../../build/lib/libdwa.so", 15 | "name": "dwa", 16 | "side": "sophgo", 17 | "thread_number": 1 18 | } -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/config/dwa_dpu_encode_demo_imgs.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "../dwa_dpu_encode/data/images/left/", 6 | "source_type": "IMG_DIR", 7 | "loop_num": -1, 8 | "fps": -1, 9 | "decode_id": 5000 10 | }, 11 | { 12 | "channel_id": 3, 13 | "url": "../dwa_dpu_encode/data/images/right/", 14 | "source_type": "IMG_DIR", 15 | "loop_num": -1, 16 | "fps": -1, 17 | "decode_id": 5001 18 | } 19 | ], 20 | "download_image": false, 21 | "engine_config_path": "../dwa_dpu_encode/config/engine_dwa_dpu_ive_resize.json" 22 | } -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "WS", 4 | "rtsp_port": "8554", 5 | "rtmp_port": "1935", 6 | "wss_port": "8999", 7 | "enc_fmt": "h264_bm", 8 | "pix_fmt": "I420", 9 | "fps": 30 10 | }, 11 | "shared_object": "../../build/lib/libencode.so", 12 | "name": "encode", 13 | "side": "sophgo", 14 | "thread_number": 1 15 | } -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/config/ive.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "ive_mapy": "../dwa_dpu_encode/data/maps/mapY.txt", 4 | "ive_mapu": "../dwa_dpu_encode/data/maps/mapU.txt", 5 | "ive_mapv": "../dwa_dpu_encode/data/maps/mapV.txt", 6 | "is_ive": true 7 | }, 8 | "shared_object": "../../build/lib/libive.so", 9 | "name": "ive", 10 | "side": "sophgo", 11 | "thread_number": 1 12 | } 13 | -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/config/resize.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "dst_w":1536, 4 | "dst_h":435, 5 | "crop_w": 3776, 6 | "crop_h": 1014, 7 | "crop_top": 0, 8 | "crop_left": 0 9 | }, 10 | "shared_object": "../../build/lib/libresize.so", 11 | "name": "resize", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/pic/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/dwa_dpu_encode/pic/image.png -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/dwa_dpu_encode/web/ui/public/favicon.ico -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/public/logo192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/dwa_dpu_encode/web/ui/public/logo192.png -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/public/logo512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/dwa_dpu_encode/web/ui/public/logo512.png -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "64x64 32x32 24x24 16x16", 8 | "type": "image/x-icon" 9 | }, 10 | { 11 | "src": "logo192.png", 12 | "type": "image/png", 13 | "sizes": "192x192" 14 | }, 15 | { 16 | "src": "logo512.png", 17 | "type": "image/png", 18 | "sizes": "512x512" 19 | } 20 | ], 21 | "start_url": ".", 22 | "display": "standalone", 23 | "theme_color": "#000000", 24 | "background_color": "#ffffff" 25 | } 26 | -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/src/App.css: -------------------------------------------------------------------------------- 1 | /* 设置页面根容器 */ 2 | body, html { 3 | margin: 0; 4 | padding: 0; 5 | height: 100%; 6 | } 7 | 8 | /* 设定 .App 根容器的样式 */ 9 | .App { 10 | display: flex; 11 | flex-direction: column; /* 垂直排列 */ 12 | height: 100%; 13 | } 14 | 15 | select { 16 | padding: 8px; 17 | font-size: 16px; 18 | border: 1px solid #ccc; 19 | border-radius: 5px; 20 | width: 200px; /* 设置宽度 */ 21 | background-color: #f0f0f0; 22 | color: #333; 23 | } 24 | 25 | /* 样式 VideoDisplay 组件 */ 26 | .VideoDisplay, .ConfigLayer { 27 | flex: 1; /* 平均占据父容器的空间 */ 28 | background-color: #f0f0f0; /* 设置背景色 */ 29 | padding: 20px; /* 添加内边距 */ 30 | border: 1px solid #ccc; /* 添加边框 */ 31 | border-radius: 5px; /* 设置圆角边框 */ 32 | margin: 10px; /* 添加间距 */ 33 | } -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/src/App.test.js: -------------------------------------------------------------------------------- 1 | import { render, screen } from '@testing-library/react'; 2 | import App from './App'; 3 | 4 | test('renders learn react link', () => { 5 | render(); 6 | const linkElement = screen.getByText(/learn react/i); 7 | expect(linkElement).toBeInTheDocument(); 8 | }); 9 | -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 4 | 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 5 | sans-serif; 6 | -webkit-font-smoothing: antialiased; 7 | -moz-osx-font-smoothing: grayscale; 8 | } 9 | 10 | code { 11 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', 12 | monospace; 13 | } 14 | -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom/client'; 3 | import './index.css'; 4 | import App from './App'; 5 | import reportWebVitals from './reportWebVitals'; 6 | 7 | const root = ReactDOM.createRoot(document.getElementById('root')); 8 | root.render( 9 | 10 | 11 | 12 | ); 13 | 14 | // If you want to start measuring performance in your app, pass a function 15 | // to log results (for example: reportWebVitals(console.log)) 16 | // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals 17 | reportWebVitals(); 18 | -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/src/reportWebVitals.js: -------------------------------------------------------------------------------- 1 | const reportWebVitals = onPerfEntry => { 2 | if (onPerfEntry && onPerfEntry instanceof Function) { 3 | import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => { 4 | getCLS(onPerfEntry); 5 | getFID(onPerfEntry); 6 | getFCP(onPerfEntry); 7 | getLCP(onPerfEntry); 8 | getTTFB(onPerfEntry); 9 | }); 10 | } 11 | }; 12 | 13 | export default reportWebVitals; 14 | -------------------------------------------------------------------------------- /samples/dwa_dpu_encode/web/ui/src/setupTests.js: -------------------------------------------------------------------------------- 1 | // jest-dom adds custom jest matchers for asserting on DOM nodes. 2 | // allows you to do things like: 3 | // expect(element).toHaveTextContent(/react/i) 4 | // learn more: https://github.com/testing-library/jest-dom 5 | import '@testing-library/jest-dom'; 6 | -------------------------------------------------------------------------------- /samples/dwa_lightstereo_encode/config/camera_dwa_lightstereo_encode_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "/dev/video1", 6 | "source_type": "CAMERA", 7 | "sample_interval": 1, 8 | "loop_num": -1, 9 | "fps": 25, 10 | "decode_id": 5000 11 | }, 12 | { 13 | "channel_id": 3, 14 | "url": "/dev/video0", 15 | "source_type": "CAMERA", 16 | "sample_interval": 1, 17 | "loop_num": -1, 18 | "fps": 25, 19 | "decode_id": 5001 20 | } 21 | ], 22 | "download_image": false, 23 | "engine_config_path": "../dwa_lightstereo_encode/config/engine.json" 24 | } 25 | -------------------------------------------------------------------------------- /samples/dwa_lightstereo_encode/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/dwa_lightstereo_encode/config/dwa_L.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": true, 5 | "dst_h": 1080, 6 | "dst_w": 1920, 7 | "dwa_mode": "DWA_GDC_MODE", 8 | "is_rot": false, 9 | "dis_mode": "BMCV_MODE_PANORAMA_360", 10 | "use_grid": false, 11 | "grid_name": "../dwa_lightstereo_encode/data/gridinfo/LL.dat", 12 | "grid_size": 757360 13 | }, 14 | "shared_object": "../../build/lib/libdwa.so", 15 | "name": "dwa", 16 | "side": "sophgo", 17 | "thread_number": 1 18 | } 19 | -------------------------------------------------------------------------------- /samples/dwa_lightstereo_encode/config/dwa_R.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": true, 5 | "dst_h": 1080, 6 | "dst_w": 1920, 7 | "dwa_mode": "DWA_GDC_MODE", 8 | "is_rot": false, 9 | "dis_mode": "BMCV_MODE_PANORAMA_360", 10 | "use_grid": false, 11 | "grid_name": "../dwa_lightstereo_encode/data/gridinfo/RR.dat", 12 | "grid_size": 757360 13 | }, 14 | "shared_object": "../../build/lib/libdwa.so", 15 | "name": "dwa", 16 | "side": "sophgo", 17 | "thread_number": 1 18 | } 19 | -------------------------------------------------------------------------------- /samples/dwa_lightstereo_encode/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "RTSP", 4 | "rtsp_port": "8554", 5 | "enc_fmt": "h264_bm", 6 | "pix_fmt": "I420", 7 | "fps": 25 8 | }, 9 | "shared_object": "../../build/lib/libencode.so", 10 | "name": "encode", 11 | "side": "sophgo", 12 | "thread_number": 1 13 | } 14 | -------------------------------------------------------------------------------- /samples/dwa_lightstereo_encode/config/lightstereo_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../dwa_lightstereo_encode/data/models/BM1688/LightStereo-S-SceneFlow_int8_1b_480x736.bmodel", 4 | "bgr2rgb": true, 5 | "mean": [0.485, 0.456, 0.406], 6 | "std": [0.229, 0.224, 0.225], 7 | "stage": ["infer"] 8 | }, 9 | "shared_object": "../../build/lib/liblightstereo.so", 10 | "name": "lightstereo", 11 | "side": "sophgo", 12 | "thread_number": 1 13 | } 14 | -------------------------------------------------------------------------------- /samples/dwa_lightstereo_encode/config/lightstereo_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../dwa_lightstereo_encode/data/models/BM1688/LightStereo-S-SceneFlow_int8_1b_480x736.bmodel", 4 | "bgr2rgb": true, 5 | "mean": [0.485, 0.456, 0.406], 6 | "std": [0.229, 0.224, 0.225], 7 | "stage": ["post"] 8 | }, 9 | "shared_object": "../../build/lib/liblightstereo.so", 10 | "name": "lightstereo", 11 | "side": "sophgo", 12 | "thread_number": 1 13 | } 14 | -------------------------------------------------------------------------------- /samples/dwa_lightstereo_encode/config/lightstereo_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../dwa_lightstereo_encode/data/models/BM1688/LightStereo-S-SceneFlow_int8_1b_480x736.bmodel", 4 | "bgr2rgb": true, 5 | "mean": [0.485, 0.456, 0.406], 6 | "std": [0.229, 0.224, 0.225], 7 | "stage": ["pre"] 8 | }, 9 | "shared_object": "../../build/lib/liblightstereo.so", 10 | "name": "lightstereo", 11 | "side": "sophgo", 12 | "thread_number": 1 13 | } 14 | -------------------------------------------------------------------------------- /samples/dwa_lightstereo_encode/pic/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/dwa_lightstereo_encode/pic/image.png -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/config/blend.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "wgt1": "../gdwa_blend_encode/data/wgt/c01_alpha_444p_m2__0_1440x64.bin", 4 | "wgt2": "../gdwa_blend_encode/data/wgt/c01_beta_444p_m2__0_1440x64.bin", 5 | "src_h": 1440, 6 | "ovlp_lx": 2496, 7 | "ovlp_rx": 2559, 8 | "bd_lx0": 0, 9 | "bd_rx0": 0, 10 | "bd_lx1": 0, 11 | "bd_rx1": 0 12 | }, 13 | "shared_object": "../../build/lib/libblend.so", 14 | "name": "blend", 15 | "side": "sophgo", 16 | "thread_number": 1 17 | } -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/config/camera_dwa_blend_encode_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "/dev/video1", 6 | "source_type": "CAMERA", 7 | "sample_interval": 1, 8 | "loop_num": -1, 9 | "decode_id": 5000 10 | }, 11 | { 12 | "channel_id": 3, 13 | "url": "/dev/video0", 14 | "source_type": "CAMERA", 15 | "sample_interval": 1, 16 | "loop_num": -1, 17 | "decode_id": 5001 18 | } 19 | ], 20 | "download_image": false, 21 | "engine_config_path": "../gdwa_blend_encode/config/engine_dwa_blend_resize.json" 22 | } -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/config/dwa_L.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": true, 5 | "dst_h": 1440, 6 | "dst_w": 2560, 7 | "dwa_mode": "DWA_GDC_MODE", 8 | "is_rot": false, 9 | "dis_mode": "BMCV_MODE_PANORAMA_360", 10 | "use_grid": true, 11 | "grid_name": "../gdwa_blend_encode/data/gridinfo/LL4.dat", 12 | "grid_size": 348016, 13 | "resize_h": 1440, 14 | "resize_w": 1440 15 | }, 16 | "shared_object": "../../build/lib/libdwa.so", 17 | "name": "dwa", 18 | "side": "sophgo", 19 | "thread_number": 1 20 | } -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/config/dwa_R.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": true, 5 | "dst_h": 1440, 6 | "dst_w": 2560, 7 | "dwa_mode": "DWA_GDC_MODE", 8 | "is_rot": false, 9 | "dis_mode": "BMCV_MODE_PANORAMA_360", 10 | "use_grid": true, 11 | "grid_name": "../gdwa_blend_encode/data/gridinfo/RR4.dat", 12 | "grid_size": 348016, 13 | "resize_h": 1440, 14 | "resize_w": 1440 15 | }, 16 | "shared_object": "../../build/lib/libdwa.so", 17 | "name": "dwa", 18 | "side": "sophgo", 19 | "thread_number": 1 20 | } -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/config/dwa_blend_encode_demo_imgs.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "../gdwa_blend_encode/data/images/left/", 6 | "source_type": "IMG_DIR", 7 | "loop_num": -1, 8 | "fps": -1, 9 | "decode_id": 5000 10 | }, 11 | { 12 | "channel_id": 3, 13 | "url": "../gdwa_blend_encode/data/images/right/", 14 | "source_type": "IMG_DIR", 15 | "loop_num": -1, 16 | "fps": -1, 17 | "decode_id": 5001 18 | } 19 | ], 20 | "download_image": false, 21 | "engine_config_path": "../gdwa_blend_encode/config/engine_dwa_blend_resize.json" 22 | } -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "WS", 4 | "rtsp_port": "8554", 5 | "rtmp_port": "1935", 6 | "wss_port": "9000", 7 | "enc_fmt": "h264_bm", 8 | "pix_fmt": "I420", 9 | "fps": 25 10 | }, 11 | "shared_object": "../../build/lib/libencode.so", 12 | "name": "encode", 13 | "side": "sophgo", 14 | "thread_number": 1 15 | } -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/config/resize.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "ratio": 0.4, 4 | "dst_h": 432, 5 | "dst_w": 1536, 6 | "crop_w": 3470, 7 | "crop_h": 900, 8 | "crop_top": 200, 9 | "crop_left": 660 10 | }, 11 | "shared_object": "../../build/lib/libresize.so", 12 | "name": "resize", 13 | "side": "sophgo", 14 | "thread_number": 1 15 | } -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/pic/image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/gdwa_blend_encode/pic/image.jpg -------------------------------------------------------------------------------- /samples/gdwa_blend_encode/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | res=$(which unzip) 4 | if [ $? != 0 ]; 5 | then 6 | echo "Please install unzip on your system!" 7 | echo "To install, use the following command:" 8 | echo "sudo apt install unzip" 9 | exit 10 | fi 11 | 12 | pip3 install dfss --upgrade 13 | # sudo apt install unzip 14 | 15 | scripts_dir=$(dirname $(readlink -f "$0")) 16 | # echo $scripts_dir 17 | 18 | pushd $scripts_dir 19 | # datasets 20 | if [ ! -d "../data" ]; 21 | then 22 | 23 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/gdwa_blend_encode/data_241204.zip 24 | unzip data_241204.zip 25 | rm -f data_241204.zip 26 | mv data .. 27 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/dwa_blend_encode/cvi_sdr_bin 28 | mv cvi_sdr_bin ../data 29 | 30 | else 31 | echo "test image exist!" 32 | fi 33 | 34 | popd -------------------------------------------------------------------------------- /samples/license_area_intrusion/config/converger.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0 4 | }, 5 | "shared_object": "../../build/lib/libconverger.so", 6 | "name": "converger", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /samples/license_area_intrusion/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/license_area_intrusion/config/distributor_time_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":["license_plate"], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../license_area_intrusion/datasets/coco.names" 16 | }, 17 | "shared_object": "../../build/lib/libdistributor.so", 18 | "name": "distributor", 19 | "side": "sophgo", 20 | "thread_number": 1 21 | } -------------------------------------------------------------------------------- /samples/license_area_intrusion/config/http_push.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "ip": "0.0.0.0", 4 | "port": 10001, 5 | "path": "/flask_test/" 6 | }, 7 | "shared_object": "../../build/lib/libhttp_push.so", 8 | "name": "http_push", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } -------------------------------------------------------------------------------- /samples/license_area_intrusion/config/license_area_intrusion_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 0, 5 | "url": "../license_area_intrusion/datasets/1080_1920_5s.mp4", 6 | "source_type": "VIDEO", 7 | "loop_num": 2100000, 8 | "fps": 25, 9 | "sample_interval": 5 10 | } 11 | ], 12 | "class_names": "../license_area_intrusion/datasets/coco.names", 13 | "download_image": false, 14 | "draw_func_name": "draw_license_plate_recognition_results", 15 | "engine_config_path": "../license_area_intrusion/config/engine_group.json", 16 | "http_report": { 17 | "ip": "0.0.0.0", 18 | "port": 10001, 19 | "path": "/flask_test/" 20 | } 21 | } -------------------------------------------------------------------------------- /samples/license_area_intrusion/config/lprnet_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_area_intrusion/models/lprnet/BM1688/lprnet_new_int8_4b_2core.bmodel" 4 | }, 5 | "shared_object": "../../build/lib/liblprnet.so", 6 | "name": "lprnet_group", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /samples/license_area_intrusion/config/yolov5_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_area_intrusion/models/yolov5s-licensePLate/BM1688/yolov5s_v6.1_license_3output_int8_1b_2core.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "class_names_file": "../license_area_intrusion/data/coco.names", 18 | "use_tpu_kernel": false 19 | }, 20 | "shared_object": "../../build/lib/libyolov5.so", 21 | "name": "yolov5_group", 22 | "side": "sophgo", 23 | "thread_number": 1 24 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/converger.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0 4 | }, 5 | "shared_object": "../../build/lib/libconverger.so", 6 | "name": "converger", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/distributor_time_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":["license_plate"], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../license_plate_recognition/data/coco.names" 16 | }, 17 | "shared_object": "../../build/lib/libdistributor.so", 18 | "name": "distributor", 19 | "side": "sophgo", 20 | "thread_number": 1 21 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/lprnet_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_plate_recognition/models/lprnet/BM1684X/lprnet_fp32_1b.bmodel" 4 | }, 5 | "shared_object": "../../build/lib/liblprnet.so", 6 | "name": "lprnet_group", 7 | "side": "sophgo", 8 | "thread_number": 4 9 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/lprnet_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_plate_recognition/models/lprnet/BM1684X/lprnet_fp32_1b.bmodel", 4 | "stage": [ 5 | "infer" 6 | ] 7 | }, 8 | "shared_object": "../../build/lib/liblprnet.so", 9 | "name": "lprnet", 10 | "side": "sophgo", 11 | "thread_number": 1 12 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/lprnet_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_plate_recognition/models/lprnet/BM1684X/lprnet_fp32_1b.bmodel", 4 | "stage": [ 5 | "post" 6 | ] 7 | }, 8 | "shared_object": "../../build/lib/liblprnet.so", 9 | "name": "lprnet", 10 | "side": "sophgo", 11 | "thread_number": 1 12 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/lprnet_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_plate_recognition/models/lprnet/BM1684X/lprnet_fp32_1b.bmodel", 4 | "stage": [ 5 | "pre" 6 | ] 7 | }, 8 | "shared_object": "../../build/lib/liblprnet.so", 9 | "name": "lprnet", 10 | "side": "sophgo", 11 | "thread_number": 1 12 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/yolov5_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_plate_recognition/models/yolov5s-licensePLate/BM1684X/yolov5s_v6.1_license_3output_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "class_names_file": "../license_plate_recognition/data/coco.names", 18 | "use_tpu_kernel": false 19 | }, 20 | "shared_object": "../../build/lib/libyolov5.so", 21 | "name": "yolov5_group", 22 | "side": "sophgo", 23 | "thread_number": 4 24 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/yolov5_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_plate_recognition/models/yolov5s-licensePLate/BM1684X/yolov5s_v6.1_license_3output_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "stage": [ 18 | "infer" 19 | ], 20 | "class_names_file": "../license_plate_recognition/data/coco.names", 21 | "use_tpu_kernel": false 22 | }, 23 | "shared_object": "../../build/lib/libyolov5.so", 24 | "name": "yolov5", 25 | "side": "sophgo", 26 | "thread_number": 1 27 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/yolov5_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_plate_recognition/models/yolov5s-licensePLate/BM1684X/yolov5s_v6.1_license_3output_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "stage": [ 18 | "post" 19 | ], 20 | "class_names_file": "../license_plate_recognition/data/coco.names", 21 | "use_tpu_kernel": false 22 | }, 23 | "shared_object": "../../build/lib/libyolov5.so", 24 | "name": "yolov5", 25 | "side": "sophgo", 26 | "thread_number": 1 27 | } -------------------------------------------------------------------------------- /samples/license_plate_recognition/config/yolov5_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../license_plate_recognition/models/yolov5s-licensePLate/BM1684X/yolov5s_v6.1_license_3output_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "stage": [ 18 | "pre" 19 | ], 20 | "use_tpu_kernel": false 21 | }, 22 | "shared_object": "../../build/lib/libyolov5.so", 23 | "name": "yolov5", 24 | "side": "sophgo", 25 | "thread_number": 1 26 | } -------------------------------------------------------------------------------- /samples/line_crossing/config/bytetrack.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "track_thresh": 0.5, 4 | "high_thresh": 0.6, 5 | "match_thresh": 0.7, 6 | "min_box_area": 10, 7 | "frame_rate": 30, 8 | "track_buffer": 30 9 | }, 10 | "shared_object": "../../build/lib/libbytetrack.so", 11 | "name": "bytetrack", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } -------------------------------------------------------------------------------- /samples/line_crossing/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } 8 | -------------------------------------------------------------------------------- /samples/line_crossing/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "IMG_DIR", 4 | "wss_port": "9000", 5 | "rtsp_port": "8554", 6 | "enc_fmt": "h264_bm", 7 | "pix_fmt": "I420", 8 | "fps": 25 9 | }, 10 | "shared_object": "../../build/lib/libencode.so", 11 | "name": "encode", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } 15 | -------------------------------------------------------------------------------- /samples/line_crossing/config/line_crossing_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 0, 5 | "url": "../line_crossing/data/test.mp4", 6 | "source_type": "VIDEO", 7 | "loop_num": 1, 8 | "fps": 25, 9 | "sample_interval": 1 10 | } 11 | ], 12 | "engine_config_path": "../line_crossing/config/engine_group.json" 13 | } -------------------------------------------------------------------------------- /samples/line_crossing/config/osd.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "osd_type": "AREA", 4 | "class_names_file": "../yolox_bytetrack_osd_encode/data/coco.names", 5 | "draw_utils": "BMCV", 6 | "draw_interval": false, 7 | "put_text": false 8 | }, 9 | "shared_object": "../../build/lib/libosd.so", 10 | "name": "osd", 11 | "side": "sophgo", 12 | "thread_number": 1 13 | } -------------------------------------------------------------------------------- /samples/line_crossing/config/yolox_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../line_crossing/data/models/BM1684X/yolox_bytetrack_s_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 1, 14 | 1, 15 | 1 16 | ] 17 | }, 18 | "shared_object": "../../build/lib/libyolox.so", 19 | "name": "yolox_group", 20 | "side": "sophgo", 21 | "thread_number": 1 22 | } -------------------------------------------------------------------------------- /samples/line_crossing/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | pip3 install dfss 3 | 4 | scripts_dir=$(dirname $(readlink -f "$0")) 5 | 6 | pushd $scripts_dir 7 | 8 | mkdir -p ../data 9 | 10 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/tripwire/test.mp4 11 | mv test.mp4 ../data 12 | mkdir -p ../data 13 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/models.tar 14 | tar xvf models.tar -C ../data 15 | rm -rf models.tar 16 | 17 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/BM1688.tar.gz 18 | tar -zxvf BM1688.tar.gz 19 | rm -rf BM1688.tar.gz 20 | mv ./BM1688 ../data/models/ 21 | 22 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/common/coco.names 23 | mv ./coco.names ../data 24 | 25 | popd -------------------------------------------------------------------------------- /samples/multi_graph/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/multi_graph/config/encode_rtsp.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "RTSP", 4 | "rtsp_port": "8554", 5 | "rtmp_port": "1935", 6 | "wss_port": "9000", 7 | "enc_fmt": "h264_bm", 8 | "pix_fmt": "I420", 9 | "ws_enc_type": "IMG_ONLY", 10 | "fps": 25 11 | }, 12 | "shared_object": "../../build/lib/libencode.so", 13 | "name": "encode", 14 | "side": "sophgo", 15 | "thread_number": 1 16 | } 17 | -------------------------------------------------------------------------------- /samples/multi_graph/config/encode_video.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "VIDEO", 4 | "rtsp_port": "8554", 5 | "rtmp_port": "1935", 6 | "wss_port": "9000", 7 | "enc_fmt": "h264_bm", 8 | "pix_fmt": "I420", 9 | "ws_enc_type": "IMG_ONLY", 10 | "fps": 25 11 | }, 12 | "shared_object": "../../build/lib/libencode.so", 13 | "name": "encode", 14 | "side": "sophgo", 15 | "thread_number": 1 16 | } 17 | -------------------------------------------------------------------------------- /samples/multi_graph/config/multi_graph_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "../yolov5/data/videos/test_car_person_1080P.avi", 6 | "source_type": "VIDEO", 7 | "sample_interval": 1, 8 | "loop_num": 1, 9 | "fps": 1 10 | }, 11 | { 12 | "channel_id": 3, 13 | "url": "../yolov5/data/videos/test_car_person_1080P.avi", 14 | "source_type": "VIDEO", 15 | "sample_interval": 1, 16 | "loop_num": 1, 17 | "graph_id" : 1, 18 | "fps": 1 19 | } 20 | ], 21 | "class_names": "../yolov5/data/coco.names", 22 | "download_image": false, 23 | "draw_func_name": "draw_yolov5_results", 24 | "engine_config_path": "../multi_graph/config/engine.json" 25 | } -------------------------------------------------------------------------------- /samples/multi_graph/config/yolov5.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5/data/models/BM1684X_tpukernel/yolov5s_tpukernel_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "use_tpu_kernel": true 18 | }, 19 | "shared_object": "../../build/lib/libyolov5.so", 20 | "name": "yolov5_group", 21 | "side": "sophgo", 22 | "thread_number": 1 23 | } -------------------------------------------------------------------------------- /samples/multi_graph/pics/multi_graph.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/multi_graph/pics/multi_graph.jpg -------------------------------------------------------------------------------- /samples/openpose/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/openpose/config/openpose_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../openpose/data/models/BM1684X/pose_coco_int8_1b.bmodel", 4 | "threshold_nms": 0.05, 5 | "use_tpu_kernel": true 6 | }, 7 | "shared_object": "../../build/lib/libopenpose.so", 8 | "name": "openpose_group", 9 | "side": "sophgo", 10 | "thread_number": 4 11 | } -------------------------------------------------------------------------------- /samples/openpose/config/openpose_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../openpose/data/models/BM1684X/pose_coco_int8_1b.bmodel", 4 | "threshold_nms": 0.05, 5 | "stage": [ 6 | "infer" 7 | ], 8 | "use_tpu_kernel": true 9 | }, 10 | "shared_object": "../../build/lib/libopenpose.so", 11 | "name": "openpose", 12 | "side": "sophgo", 13 | "thread_number": 2 14 | } -------------------------------------------------------------------------------- /samples/openpose/config/openpose_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../openpose/data/models/BM1684X/pose_coco_int8_1b.bmodel", 4 | "threshold_nms": 0.05, 5 | "stage": [ 6 | "post" 7 | ], 8 | "use_tpu_kernel": true 9 | }, 10 | "shared_object": "../../build/lib/libopenpose.so", 11 | "name": "openpose", 12 | "side": "sophgo", 13 | "thread_number": 2 14 | } -------------------------------------------------------------------------------- /samples/openpose/config/openpose_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../openpose/data/models/BM1684X/pose_coco_int8_1b.bmodel", 4 | "threshold_nms": 0.05, 5 | "stage": [ 6 | "pre" 7 | ], 8 | "use_tpu_kernel": true 9 | }, 10 | "shared_object": "../../build/lib/libopenpose.so", 11 | "name": "openpose", 12 | "side": "sophgo", 13 | "thread_number": 2 14 | } -------------------------------------------------------------------------------- /samples/ppocr/config/converger.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0 4 | }, 5 | "shared_object": "../../build/lib/libconverger.so", 6 | "name": "converger", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /samples/ppocr/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/ppocr/config/distributor_frame_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":["ppocr"], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../ppocr/data/class.names" 16 | }, 17 | "shared_object": "../../build/lib/libdistributor.so", 18 | "name": "distributor", 19 | "side": "sophgo", 20 | "thread_number": 1 21 | } -------------------------------------------------------------------------------- /samples/ppocr/config/ppocr_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "../ppocr/data/datasets/train_full_images_0", 6 | "source_type": "IMG_DIR", 7 | "sample_interval": 1, 8 | "loop_num": 1, 9 | "fps": -1 10 | } 11 | ], 12 | "engine_config_path": "../ppocr/config/engine_group.json", 13 | "draw_func_name": "draw_ppocr_results", 14 | "download_image": false 15 | } -------------------------------------------------------------------------------- /samples/ppocr/config/ppocr_det_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../ppocr/data/models/BM1684X/ch_PP-OCRv3_det_fp32_1b.bmodel", 4 | "bgr2rgb": false, 5 | "mean": [ 6 | 123.675, 7 | 116.28, 8 | 103.53 9 | ], 10 | "std": [ 11 | 58.395, 12 | 57.12, 13 | 57.375 14 | ] 15 | }, 16 | "shared_object": "../../build/lib/libppocr_det.so", 17 | "name": "ppocr_det_group", 18 | "side": "sophgo", 19 | "thread_number": 1 20 | } -------------------------------------------------------------------------------- /samples/ppocr/config/ppocr_rec_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../ppocr/data/models/BM1684X/ch_PP-OCRv3_rec_fp32_1b_320.bmodel", 4 | "beam_search": false, 5 | "beam_width": 3, 6 | "class_names_file": "../ppocr/data/datasets/ppocr_keys_v1.txt" 7 | }, 8 | "shared_object": "../../build/lib/libppocr_rec.so", 9 | "name": "ppocr_rec_group", 10 | "side": "sophgo", 11 | "thread_number": 1 12 | } 13 | -------------------------------------------------------------------------------- /samples/resnet/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/resnet/config/resnet.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../resnet/data/models/BM1684X/resnet50_int8_4b.bmodel", 4 | "bgr2rgb": true, 5 | "mean": [ 6 | 123.675, 7 | 116.28, 8 | 103.53 9 | ], 10 | "std": [ 11 | 58.395, 12 | 57.12, 13 | 57.375 14 | ] 15 | }, 16 | "shared_object": "../../build/lib/libresnet.so", 17 | "name": "resnet", 18 | "side": "sophgo", 19 | "thread_number": 4 20 | } -------------------------------------------------------------------------------- /samples/resnet/config/resnet_roi.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../resnet/data/models/BM1684X/resnet_vehicle_color_int8_4b.bmodel", 4 | "bgr2rgb": true, 5 | "mean": [ 6 | 0, 7 | 0, 8 | 0 9 | ], 10 | "std": [ 11 | 1, 12 | 1, 13 | 1 14 | ], 15 | "roi": { 16 | "left": 5, 17 | "top": 5, 18 | "width": 50, 19 | "height": 50 20 | } 21 | }, 22 | "shared_object": "../../build/lib/libresnet.so", 23 | "name": "resnet", 24 | "side": "sophgo", 25 | "thread_number": 1 26 | } -------------------------------------------------------------------------------- /samples/resnet/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | pip3 install dfss 3 | 4 | scripts_dir=$(dirname $(readlink -f "$0")) 5 | # echo $scripts_dir 6 | 7 | pushd $scripts_dir 8 | 9 | mkdir -p ../data 10 | 11 | python3 -m dfss --url=open@sophgo.com:sophon-demo/ResNet/models_0918/models.zip 12 | unzip models.zip 13 | rm -rf models.zip 14 | mv ./models ../data/ 15 | 16 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/resnet/images.zip 17 | unzip images.zip 18 | rm -rf images.zip 19 | mv ./images ../data/ 20 | 21 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/resnet/videos.zip 22 | unzip videos.zip 23 | rm -rf videos.zip 24 | mv ./videos ../data/ 25 | 26 | popd 27 | -------------------------------------------------------------------------------- /samples/retinaface/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/retinaface/config/retinaface_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../retinaface/data/models/BM1684X/retinaface_mobilenet0.25_fp32_1b.bmodel", 4 | "max_face_count":50, 5 | "score_threshold":0.3, 6 | "threshold_nms": 0.5, 7 | "bgr2rgb": false, 8 | "mean": [ 9 | 104, 10 | 117, 11 | 123 12 | ], 13 | "std": [ 14 | 1, 15 | 1, 16 | 1 17 | ] 18 | }, 19 | "shared_object": "../../build/lib/libretinaface.so", 20 | "name": "retinaface_group", 21 | "side": "sophgo", 22 | "thread_number": 4 23 | } -------------------------------------------------------------------------------- /samples/retinaface/config/retinaface_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../retinaface/data/models/BM1684X/retinaface_mobilenet0.25_fp32_1b.bmodel", 4 | "max_face_count":50, 5 | "score_threshold":0.1, 6 | "threshold_nms": 0.4, 7 | "bgr2rgb": false, 8 | "mean": [ 9 | 104, 10 | 117, 11 | 123 12 | ], 13 | "std": [ 14 | 1, 15 | 1, 16 | 1 17 | ], 18 | "stage": [ 19 | "infer" 20 | ] 21 | }, 22 | "shared_object": "../../build/lib/libretinaface.so", 23 | "name": "retinaface", 24 | "side": "sophgo", 25 | "thread_number": 4 26 | } -------------------------------------------------------------------------------- /samples/retinaface/config/retinaface_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../retinaface/data/models/BM1684X/retinaface_mobilenet0.25_fp32_1b.bmodel", 4 | "max_face_count":50, 5 | "score_threshold":0.1, 6 | "threshold_nms": 0.4, 7 | "bgr2rgb": false, 8 | "mean": [ 9 | 104, 10 | 117, 11 | 123 12 | ], 13 | "std": [ 14 | 1, 15 | 1, 16 | 1 17 | ], 18 | "stage": [ 19 | "post" 20 | ] 21 | }, 22 | "shared_object": "../../build/lib/libretinaface.so", 23 | "name": "retinaface", 24 | "side": "sophgo", 25 | "thread_number": 4 26 | } -------------------------------------------------------------------------------- /samples/retinaface/config/retinaface_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../retinaface/data/models/BM1684X/retinaface_mobilenet0.25_fp32_1b.bmodel", 4 | "max_face_count":50, 5 | "score_threshold":0.1, 6 | "threshold_nms": 0.4, 7 | "bgr2rgb": false, 8 | "mean": [ 9 | 104, 10 | 117, 11 | 123 12 | ], 13 | "std": [ 14 | 1, 15 | 1, 16 | 1 17 | ], 18 | "stage": [ 19 | "pre" 20 | ] 21 | }, 22 | "shared_object": "../../build/lib/libretinaface.so", 23 | "name": "retinaface", 24 | "side": "sophgo", 25 | "thread_number": 4 26 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/converger.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0 4 | }, 5 | "shared_object": "../../build/lib/libconverger.so", 6 | "name": "converger", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/distributor_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "routes": [ 7 | { 8 | "classes":["retinaface"], 9 | "port": 1 10 | } 11 | ] 12 | } 13 | ] 14 | }, 15 | "shared_object": "../../build/lib/libdistributor.so", 16 | "name": "distributor", 17 | "side": "sophgo", 18 | "thread_number": 1 19 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/distributor_frame.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":[], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../retinaface_distributor_resnet_faiss_converger/data/class.names", 16 | "is_affine":false 17 | }, 18 | "shared_object": "../../build/lib/libdistributor.so", 19 | "name": "distributor", 20 | "side": "sophgo", 21 | "thread_number": 1 22 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/distributor_frame_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":["retinaface"], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../retinaface_distributor_resnet_faiss_converger/data/class.names", 16 | "is_affine":false 17 | }, 18 | "shared_object": "../../build/lib/libdistributor.so", 19 | "name": "distributor", 20 | "side": "sophgo", 21 | "thread_number": 1 22 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/distributor_time.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "time_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":[], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../retinaface_distributor_resnet_faiss_converger/data/class.names", 16 | "is_affine":false 17 | 18 | }, 19 | "shared_object": "../../build/lib/libdistributor.so", 20 | "name": "distributor", 21 | "side": "sophgo", 22 | "thread_number": 1 23 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/distributor_time_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "time_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":["retinaface"], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../retinaface_distributor_resnet_faiss_converger/data/class.names", 16 | "is_affine":false 17 | }, 18 | "shared_object": "../../build/lib/libdistributor.so", 19 | "name": "distributor", 20 | "side": "sophgo", 21 | "thread_number": 1 22 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/faiss.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "db_path":"../retinaface_distributor_resnet_faiss_converger/data/face_data/faiss_db_data.txt", 4 | "label_path":"../retinaface_distributor_resnet_faiss_converger/data/face_data/faiss_index_label.name" 5 | }, 6 | "shared_object": "../../build/lib/libfaiss.so", 7 | "name": "faiss", 8 | "side": "sophgo", 9 | "thread_number": 1 10 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/resnet_face.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../retinaface_distributor_resnet_faiss_converger/data/models/BM1684X/resnet_arcface_fp32_1b.bmodel", 4 | "bgr2rgb": true, 5 | "bgr2gray": true, 6 | "task_type": "FeatureExtract", 7 | "mean": [ 8 | 127.5, 9 | 127.5, 10 | 127.5 11 | ], 12 | "std": [ 13 | 127.5, 14 | 127.5, 15 | 127.5 16 | ] 17 | }, 18 | "shared_object": "../../build/lib/libresnet.so", 19 | "name": "resnet", 20 | "side": "sophgo", 21 | "thread_number": 1 22 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/retinaface_distributor_resnet_faiss_converger.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 0, 5 | "url": "../retinaface_distributor_resnet_faiss_converger/data/images/face_data_test", 6 | "source_type": "IMG_DIR", 7 | "loop_num": 1, 8 | "sample_interval": 1, 9 | "fps": -1 10 | } 11 | ], 12 | "download_image": false, 13 | "draw_func_name": "draw_retinaface_distributor_resnet_faiss_converger_results", 14 | "engine_config_path": "../retinaface_distributor_resnet_faiss_converger/config/engine_group.json" 15 | } 16 | -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/retinaface_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../retinaface_distributor_resnet_faiss_converger/data/models/BM1684X/retinaface_mobilenet0.25_fp32_1b.bmodel", 4 | "max_face_count":50, 5 | "score_threshold":0.3, 6 | "threshold_nms": 0.5, 7 | "bgr2rgb": false, 8 | "mean": [ 9 | 104, 10 | 117, 11 | 123 12 | ], 13 | "std": [ 14 | 1, 15 | 1, 16 | 1 17 | ] 18 | }, 19 | "shared_object": "../../build/lib/libretinaface.so", 20 | "name": "retinaface_group", 21 | "side": "sophgo", 22 | "thread_number": 1 23 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/retinaface_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../retinaface_distributor_resnet_faiss_converger/data/models/BM1684X/retinaface_mobilenet0.25_fp32_1b.bmodel", 4 | "max_face_count":50, 5 | "score_threshold":0.3, 6 | "threshold_nms": 0.5, 7 | "bgr2rgb": false, 8 | "mean": [ 9 | 104, 10 | 117, 11 | 123 12 | ], 13 | "std": [ 14 | 1, 15 | 1, 16 | 1 17 | ], 18 | "stage": [ 19 | "infer" 20 | ] 21 | }, 22 | "shared_object": "../../build/lib/libretinaface.so", 23 | "name": "retinaface", 24 | "side": "sophgo", 25 | "thread_number": 1 26 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/retinaface_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../retinaface_distributor_resnet_faiss_converger/data/models/BM1684X/retinaface_mobilenet0.25_fp32_1b.bmodel", 4 | "max_face_count":1, 5 | "score_threshold":0.3, 6 | "threshold_nms": 0.5, 7 | "bgr2rgb": false, 8 | "mean": [ 9 | 104, 10 | 117, 11 | 123 12 | ], 13 | "std": [ 14 | 1, 15 | 1, 16 | 1 17 | ], 18 | "stage": [ 19 | "post" 20 | ] 21 | }, 22 | "shared_object": "../../build/lib/libretinaface.so", 23 | "name": "retinaface", 24 | "side": "sophgo", 25 | "thread_number": 1 26 | } -------------------------------------------------------------------------------- /samples/retinaface_distributor_resnet_faiss_converger/config/retinaface_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../retinaface_distributor_resnet_faiss_converger/data/models/BM1684X/retinaface_mobilenet0.25_fp32_1b.bmodel", 4 | "max_face_count":50, 5 | "score_threshold":0.3, 6 | "threshold_nms": 0.5, 7 | "bgr2rgb": false, 8 | "mean": [ 9 | 104, 10 | 117, 11 | 123 12 | ], 13 | "std": [ 14 | 1, 15 | 1, 16 | 1 17 | ], 18 | "stage": [ 19 | "pre" 20 | ] 21 | }, 22 | "shared_object": "../../build/lib/libretinaface.so", 23 | "name": "retinaface", 24 | "side": "sophgo", 25 | "thread_number": 1 26 | } -------------------------------------------------------------------------------- /samples/structured_recognition/config/converger.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0 4 | }, 5 | "shared_object": "../../build/lib/libconverger.so", 6 | "name": "converger", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /samples/structured_recognition/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/structured_recognition/config/distributor_time_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 1, 7 | "routes": [ 8 | { 9 | "classes": [ 10 | "license_plate" 11 | ], 12 | "port": 1 13 | } 14 | ] 15 | } 16 | ], 17 | "class_names_file": "../structured_recognition/data/coco_lpr.names" 18 | }, 19 | "shared_object": "../../build/lib/libdistributor.so", 20 | "name": "distributor", 21 | "side": "sophgo", 22 | "thread_number": 1 23 | } -------------------------------------------------------------------------------- /samples/structured_recognition/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "WS", 4 | "wss_port": "9000", 5 | "enc_fmt": "h264_bm", 6 | "pix_fmt": "I420", 7 | "ws_enc_type": "SERIALIZED", 8 | "fps": 25 9 | }, 10 | "shared_object": "../../build/lib/libencode.so", 11 | "name": "encode", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } 15 | -------------------------------------------------------------------------------- /samples/structured_recognition/config/lprnet_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../structured_recognition/data/models/lprnet/BM1684X/lprnet_int8_1b.bmodel" 4 | }, 5 | "shared_object": "../../build/lib/liblprnet.so", 6 | "name": "lprnet_group", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /samples/structured_recognition/config/retinaface_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../structured_recognition/data/models/retinaface/BM1684X/retinaface_mobilenet0.25_int8_1b.bmodel", 4 | "max_face_count":50, 5 | "score_threshold":0.3, 6 | "threshold_nms": 0.5, 7 | "bgr2rgb": false, 8 | "mean": [ 9 | 104, 10 | 117, 11 | 123 12 | ], 13 | "std": [ 14 | 1, 15 | 1, 16 | 1 17 | ] 18 | }, 19 | "shared_object": "../../build/lib/libretinaface.so", 20 | "name": "retinaface_group", 21 | "side": "sophgo", 22 | "thread_number": 1 23 | } -------------------------------------------------------------------------------- /samples/structured_recognition/config/structured_recognition_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "../structured_recognition/data/videos/structs.mp4", 6 | "source_type": "VIDEO", 7 | "loop_num": 2, 8 | "fps": 30, 9 | "sample_interval": 1 10 | } 11 | ], 12 | "class_names": "../structured_recognition/data/coco.names", 13 | "download_image": false, 14 | "engine_config_path": "../structured_recognition/config/engine_group.json" 15 | } -------------------------------------------------------------------------------- /samples/structured_recognition/config/yolov5_lpr_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../structured_recognition/data/models/yolov5s-licensePLate/BM1684X/yolov5s_v6.1_license_3output_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "class_names_file": "../structured_recognition/data/coco_lpr.names", 18 | "use_tpu_kernel": false 19 | }, 20 | "shared_object": "../../build/lib/libyolov5.so", 21 | "name": "yolov5_group", 22 | "side": "sophgo", 23 | "thread_number": 1 24 | } -------------------------------------------------------------------------------- /samples/structured_recognition/pics/engine_group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/structured_recognition/pics/engine_group.png -------------------------------------------------------------------------------- /samples/structured_recognition/pics/res0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/structured_recognition/pics/res0.png -------------------------------------------------------------------------------- /samples/structured_recognition/pics/res1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/structured_recognition/pics/res1.png -------------------------------------------------------------------------------- /samples/structured_recognition/pics/res2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/structured_recognition/pics/res2.png -------------------------------------------------------------------------------- /samples/structured_recognition/pics/structured_recognition.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/structured_recognition/pics/structured_recognition.png -------------------------------------------------------------------------------- /samples/structured_recognition/pics/web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/structured_recognition/pics/web.png -------------------------------------------------------------------------------- /samples/structured_recognition/pics/web1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/structured_recognition/pics/web1.png -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/blend_left_right.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "wgt1": "../trinocular_panorama_stitch/datasets/mask/left.bin", 4 | "wgt2": "../trinocular_panorama_stitch/datasets/mask/right.bin", 5 | "src_h": 2880, 6 | "ovlp_lx": 0, 7 | "ovlp_rx": 2879, 8 | "bd_lx0": 0, 9 | "bd_rx0": 0, 10 | "bd_lx1": 0, 11 | "bd_rx1": 0 12 | }, 13 | "shared_object": "../../build/lib/libblend.so", 14 | "name": "blend", 15 | "side": "sophgo", 16 | "thread_number": 1 17 | } -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/blend_up_down.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "wgt1": "../trinocular_panorama_stitch/datasets/mask/up.bin", 4 | "wgt2": "../trinocular_panorama_stitch/datasets/mask/down.bin", 5 | "src_h": 2880, 6 | "ovlp_lx": 0, 7 | "ovlp_rx": 2879, 8 | "bd_lx0": 0, 9 | "bd_rx0": 0, 10 | "bd_lx1": 0, 11 | "bd_rx1": 0 12 | }, 13 | "shared_object": "../../build/lib/libblend.so", 14 | "name": "blend", 15 | "side": "sophgo", 16 | "thread_number": 1 17 | } -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/camera_sensor.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 1, 5 | "url": "/dev/video0", 6 | "source_type": "CAMERA", 7 | "sample_interval": 1, 8 | "loop_num": -1, 9 | "fps": -1, 10 | "decode_id": 5000 11 | }, 12 | { 13 | "channel_id": 2, 14 | "url": "/dev/video1", 15 | "source_type": "CAMERA", 16 | "sample_interval": 1, 17 | "loop_num": -1, 18 | "fps": -1, 19 | "decode_id": 5001 20 | }, 21 | { 22 | "channel_id": 3, 23 | "url": "/dev/video2", 24 | "source_type": "CAMERA", 25 | "sample_interval": 1, 26 | "loop_num": -1, 27 | "fps": -1, 28 | "decode_id": 5002 29 | } 30 | ], 31 | "download_image": false, 32 | "engine_config_path": "../trinocular_panorama_stitch/config/engine_resize.json" 33 | } 34 | -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/distributor_full_frame.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":[], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../trinocular_panorama_stitch/datasets/empty_file.txt" 16 | }, 17 | "shared_object": "../../build/lib/libdistributor.so", 18 | "name": "distributor", 19 | "side": "sophgo", 20 | "thread_number": 1 21 | } -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/dwa_D.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": false, 5 | "resize_h": 1440, 6 | "resize_w": 2560, 7 | "dst_h": 2880, 8 | "dst_w": 2880, 9 | "dwa_mode": "DWA_GDC_MODE", 10 | "is_rot": false, 11 | "dis_mode": "BMCV_MODE_PANORAMA_360", 12 | "use_grid": true, 13 | "grid_name": "../trinocular_panorama_stitch/gridinfo/down_grid_info_bev_90_90_4589_90_90_dst_2880x2880_src_2560x1440.1.dat", 14 | "grid_size": 500016 15 | }, 16 | "shared_object": "../../build/lib/libdwa.so", 17 | "name": "dwa", 18 | "side": "sophgo", 19 | "thread_number": 1 20 | } 21 | -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/dwa_L.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": false, 5 | "resize_h": 2160, 6 | "resize_w": 2560, 7 | "dst_h": 2880, 8 | "dst_w": 2880, 9 | "dwa_mode": "DWA_GDC_MODE", 10 | "is_rot": false, 11 | "dis_mode": "BMCV_MODE_PANORAMA_360", 12 | "use_grid": true, 13 | "grid_name": "../trinocular_panorama_stitch/gridinfo/left_grid_info_bev_90_90_5078_90_90_dst_2880x2880_src_2560x2160.1.dat", 14 | "grid_size": 539136 15 | }, 16 | "shared_object": "../../build/lib/libdwa.so", 17 | "name": "dwa", 18 | "side": "sophgo", 19 | "thread_number": 1 20 | } 21 | -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/dwa_R.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "is_gray": false, 4 | "is_resize": false, 5 | "resize_h": 1440, 6 | "resize_w": 2560, 7 | "dst_h": 2880, 8 | "dst_w": 2880, 9 | "dwa_mode": "DWA_GDC_MODE", 10 | "is_rot": false, 11 | "dis_mode": "BMCV_MODE_PANORAMA_360", 12 | "use_grid": true, 13 | "grid_name": "../trinocular_panorama_stitch/gridinfo/right_grid_info_bev_90_90_4233_90_90_dst_2880x2880_src_2560x1440.1.dat", 14 | "grid_size": 471536 15 | }, 16 | "shared_object": "../../build/lib/libdwa.so", 17 | "name": "dwa", 18 | "side": "sophgo", 19 | "thread_number": 1 20 | } 21 | -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "RTSP", 4 | "rtsp_port": "8554", 5 | "enc_fmt": "h264_bm", 6 | "pix_fmt": "I420", 7 | "fps": 25 8 | }, 9 | "shared_object": "../../build/lib/libencode.so", 10 | "name": "encode", 11 | "side": "sophgo", 12 | "thread_number": 1 13 | } 14 | -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/encode_dwa.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "RTSP", 4 | "rtsp_port": "8554", 5 | "enc_fmt": "h264_bm", 6 | "pix_fmt": "I420", 7 | "fps": 25, 8 | "prefix": "dwa_" 9 | }, 10 | "shared_object": "../../build/lib/libencode.so", 11 | "name": "encode", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } 15 | -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/resize_D.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "dst_h": 1440, 4 | "dst_w": 2560, 5 | "crop_w": 3840, 6 | "crop_h": 2160, 7 | "crop_top": 0, 8 | "crop_left": 0 9 | }, 10 | "shared_object": "../../build/lib/libresize.so", 11 | "name": "resize", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/resize_L.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "dst_h": 2160, 4 | "dst_w": 2560, 5 | "crop_w": 3840, 6 | "crop_h": 2160, 7 | "crop_top": 0, 8 | "crop_left": 0 9 | }, 10 | "shared_object": "../../build/lib/libresize.so", 11 | "name": "resize", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/config/resize_R.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "dst_h": 1440, 4 | "dst_w": 2560, 5 | "crop_w": 2560, 6 | "crop_h": 2160, 7 | "crop_top": 0, 8 | "crop_left": 0 9 | }, 10 | "shared_object": "../../build/lib/libresize.so", 11 | "name": "resize", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/pics/flow_chart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/trinocular_panorama_stitch/pics/flow_chart.png -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/pics/panorama.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/trinocular_panorama_stitch/pics/panorama.jpg -------------------------------------------------------------------------------- /samples/trinocular_panorama_stitch/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | pip3 install dfss --upgrade 4 | 5 | scripts_dir=$(dirname $(readlink -f "$0")) 6 | 7 | pushd $scripts_dir 8 | if [ ! -d "../dataets" ]; 9 | then 10 | pushd .. 11 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/trinocular_panorama_stitch/datasets.tar.gz 12 | tar -zxvf datasets.tar.gz && rm -f datasets.tar.gz 13 | popd 14 | else 15 | echo "datasets exist!" 16 | fi 17 | 18 | if [ ! -d "../gridinfo" ]; 19 | then 20 | pushd .. 21 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/trinocular_panorama_stitch/gridinfo.tar.gz 22 | tar -zxvf gridinfo.tar.gz && rm -f gridinfo.tar.gz 23 | popd 24 | else 25 | echo "gridinfo exist!" 26 | fi 27 | popd -------------------------------------------------------------------------------- /samples/tripwire/config/bytetrack.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "track_thresh": 0.5, 4 | "high_thresh": 0.6, 5 | "match_thresh": 0.7, 6 | "min_box_area": 10, 7 | "frame_rate": 30, 8 | "track_buffer": 30 9 | }, 10 | "shared_object": "../../build/lib/libbytetrack.so", 11 | "name": "bytetrack", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } -------------------------------------------------------------------------------- /samples/tripwire/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } 8 | -------------------------------------------------------------------------------- /samples/tripwire/config/http_push.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "ip": "0.0.0.0", 4 | "port": 10001, 5 | "path": "/flask_test/" 6 | }, 7 | "shared_object": "../../build/lib/libhttp_push.so", 8 | "name": "http_push", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } -------------------------------------------------------------------------------- /samples/tripwire/config/osd.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "osd_type": "AREA", 4 | "class_names_file": "../yolox_bytetrack_osd_encode/data/coco.names", 5 | "draw_utils": "BMCV", 6 | "draw_interval": false, 7 | "put_text": false 8 | }, 9 | "shared_object": "../../build/lib/libosd.so", 10 | "name": "osd", 11 | "side": "sophgo", 12 | "thread_number": 1 13 | } -------------------------------------------------------------------------------- /samples/tripwire/config/tripwire_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 0, 5 | "url": "../tripwire/data/test.mp4", 6 | "source_type": "VIDEO", 7 | "loop_num": 1, 8 | "fps": 25, 9 | "sample_interval": 3 10 | } 11 | ], 12 | "engine_config_path": "../tripwire/config/engine_group.json", 13 | "http_report": { 14 | "ip": "0.0.0.0", 15 | "port": 10001, 16 | "path": "/flask_test/" 17 | } 18 | } -------------------------------------------------------------------------------- /samples/tripwire/config/yolox_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../tripwire/data/models/BM1688/yolox_bytetrack_s_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 1, 14 | 1, 15 | 1 16 | ] 17 | }, 18 | "shared_object": "../../build/lib/libyolox.so", 19 | "name": "yolox_group", 20 | "side": "sophgo", 21 | "thread_number": 1 22 | } -------------------------------------------------------------------------------- /samples/tripwire/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | pip3 install dfss 3 | 4 | scripts_dir=$(dirname $(readlink -f "$0")) 5 | 6 | pushd $scripts_dir 7 | 8 | mkdir -p ../data 9 | 10 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/tripwire/test.mp4 11 | mv test.mp4 ../data 12 | mkdir -p ../data 13 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/models.tar 14 | tar xvf models.tar -C ../data 15 | rm -rf models.tar 16 | 17 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/BM1688.tar.gz 18 | tar -zxvf BM1688.tar.gz 19 | rm -rf BM1688.tar.gz 20 | mv ./BM1688 ../data/models/ 21 | 22 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/common/coco.names 23 | mv ./coco.names ../data 24 | 25 | popd -------------------------------------------------------------------------------- /samples/yolov5/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/yolov5/config/yolov5_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5/data/models/BM1684X_tpukernel/yolov5s_tpukernel_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "use_tpu_kernel": true 18 | }, 19 | "shared_object": "../../build/lib/libyolov5.so", 20 | "name": "yolov5_group", 21 | "side": "sophgo", 22 | "thread_number": 4 23 | } -------------------------------------------------------------------------------- /samples/yolov5/config/yolov5_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5/data/models/BM1684X_tpukernel/yolov5s_tpukernel_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "stage": [ 18 | "infer" 19 | ], 20 | "use_tpu_kernel": true 21 | }, 22 | "shared_object": "../../build/lib/libyolov5.so", 23 | "name": "yolov5", 24 | "side": "sophgo", 25 | "thread_number": 4 26 | } -------------------------------------------------------------------------------- /samples/yolov5/config/yolov5_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5/data/models/BM1684X_tpukernel/yolov5s_tpukernel_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "stage": [ 18 | "post" 19 | ], 20 | "use_tpu_kernel": true 21 | }, 22 | "shared_object": "../../build/lib/libyolov5.so", 23 | "name": "yolov5", 24 | "side": "sophgo", 25 | "thread_number": 4 26 | } -------------------------------------------------------------------------------- /samples/yolov5/config/yolov5_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5/data/models/BM1684X_tpukernel/yolov5s_tpukernel_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "stage": [ 18 | "pre" 19 | ], 20 | "use_tpu_kernel": true 21 | }, 22 | "shared_object": "../../build/lib/libyolov5.so", 23 | "name": "yolov5", 24 | "side": "sophgo", 25 | "thread_number": 4 26 | } -------------------------------------------------------------------------------- /samples/yolov5/pics/elements.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/yolov5/pics/elements.jpg -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/bytetrack.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "track_thresh": 0.3, 4 | "high_thresh": 0.6, 5 | "match_thresh": 0.8, 6 | "min_box_area": 10, 7 | "frame_rate": 30, 8 | "track_buffer": 30 9 | }, 10 | "shared_object": "../../build/lib/libbytetrack.so", 11 | "name": "bytetrack", 12 | "side": "sophgo", 13 | "thread_number": 4 14 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/converger.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0 4 | }, 5 | "shared_object": "../../build/lib/libconverger.so", 6 | "name": "converger", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/distributor_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "routes": [ 7 | { 8 | "classes":["car"], 9 | "port": 1 10 | }, 11 | { 12 | "classes":["person"], 13 | "port" : 2 14 | } 15 | ] 16 | } 17 | ], 18 | "class_names_file": "../yolov5_bytetrack_distributor_resnet_converger/data/coco.names" 19 | }, 20 | "shared_object": "../../build/lib/libdistributor.so", 21 | "name": "distributor", 22 | "side": "sophgo", 23 | "thread_number": 1 24 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/distributor_frame.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 5, 7 | "routes": [ 8 | { 9 | "classes":[], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../yolov5_bytetrack_distributor_resnet_converger/data/coco.names" 16 | }, 17 | "shared_object": "../../build/lib/libdistributor.so", 18 | "name": "distributor", 19 | "side": "sophgo", 20 | "thread_number": 1 21 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/distributor_frame_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 5, 7 | "routes": [ 8 | { 9 | "classes":["car"], 10 | "port": 1 11 | }, 12 | { 13 | "classes":["person"], 14 | "port" : 2 15 | } 16 | ] 17 | } 18 | ], 19 | "class_names_file": "../yolov5_bytetrack_distributor_resnet_converger/data/coco.names" 20 | }, 21 | "shared_object": "../../build/lib/libdistributor.so", 22 | "name": "distributor", 23 | "side": "sophgo", 24 | "thread_number": 1 25 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/distributor_time.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "time_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":[], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "../yolov5_bytetrack_distributor_resnet_converger/data/coco.names" 16 | }, 17 | "shared_object": "../../build/lib/libdistributor.so", 18 | "name": "distributor", 19 | "side": "sophgo", 20 | "thread_number": 1 21 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/distributor_time_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "time_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":["car"], 10 | "port": 1 11 | }, 12 | { 13 | "classes":["person"], 14 | "port" : 2 15 | } 16 | ] 17 | } 18 | ], 19 | "class_names_file": "../yolov5_bytetrack_distributor_resnet_converger/data/coco.names" 20 | }, 21 | "shared_object": "../../build/lib/libdistributor.so", 22 | "name": "distributor", 23 | "side": "sophgo", 24 | "thread_number": 1 25 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/resnet_car.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5_bytetrack_distributor_resnet_converger/data/models/BM1684X/resnet_vehicle_color_int8_1b.bmodel", 4 | "bgr2rgb": true, 5 | "mean": [ 6 | 0, 7 | 0, 8 | 0 9 | ], 10 | "std": [ 11 | 1, 12 | 1, 13 | 1 14 | ] 15 | }, 16 | "shared_object": "../../build/lib/libresnet.so", 17 | "name": "resnet", 18 | "side": "sophgo", 19 | "thread_number": 4 20 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/config/resnet_person.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5_bytetrack_distributor_resnet_converger/data/models/BM1684X/resnet_pedestrian_gender_int8_1b.bmodel", 4 | "bgr2rgb": true, 5 | "mean": [ 6 | 0, 7 | 0, 8 | 0 9 | ], 10 | "std": [ 11 | 1, 12 | 1, 13 | 1 14 | ] 15 | }, 16 | "shared_object": "../../build/lib/libresnet.so", 17 | "name": "resnet", 18 | "side": "sophgo", 19 | "thread_number": 4 20 | } -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/pics/distributor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/yolov5_bytetrack_distributor_resnet_converger/pics/distributor.png -------------------------------------------------------------------------------- /samples/yolov5_bytetrack_distributor_resnet_converger/pics/result.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/yolov5_bytetrack_distributor_resnet_converger/pics/result.jpg -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/config/fastpose_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5_fastpose_posec3d/data/models/BM1684X/fast_res50_256x192_coco17_1b_fp16.bmodel", 4 | "heatmap_loss": "MSELoss", 5 | "area_thresh": 0.0 6 | }, 7 | "shared_object": "../../build/lib/libfastpose.so", 8 | "name": "fastpose_group", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/config/fastpose_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5_fastpose_posec3d/data/models/BM1684X/halpe26_fast_res50_256x192_int8_1b.bmodel", 4 | "stage": [ 5 | "infer" 6 | ], 7 | "heatmap_loss": "MSELoss", 8 | "area_thresh": 0.0 9 | }, 10 | "shared_object": "../../build/lib/libfastpose.so", 11 | "name": "fastpose", 12 | "side": "sophgo", 13 | "thread_number": 6 14 | } -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/config/fastpose_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5_fastpose_posec3d/data/models/BM1684X/halpe26_fast_res50_256x192_int8_1b.bmodel", 4 | "stage": [ 5 | "post" 6 | ], 7 | "heatmap_loss": "MSELoss", 8 | "area_thresh": 0.0 9 | }, 10 | "shared_object": "../../build/lib/libfastpose.so", 11 | "name": "fastpose", 12 | "side": "sophgo", 13 | "thread_number": 6 14 | } -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/config/fastpose_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5_fastpose_posec3d/data/models/BM1684X/halpe26_fast_res50_256x192_int8_1b.bmodel", 4 | "stage": [ 5 | "pre" 6 | ], 7 | "heatmap_loss": "MSELoss", 8 | "area_thresh": 0.0 9 | }, 10 | "shared_object": "../../build/lib/libfastpose.so", 11 | "name": "fastpose", 12 | "side": "sophgo", 13 | "thread_number": 6 14 | } -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/config/posec3d_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5_fastpose_posec3d/data/models/BM1684X/posec3d_ntu60_int8.bmodel", 4 | "class_names_file": "../yolov5_fastpose_posec3d/data/label_map_ntu60.txt", 5 | "frames_num": 72 6 | }, 7 | "shared_object": "../../build/lib/libposec3d.so", 8 | "name": "posec3d_group", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/config/posec3d_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov5_fastpose_posec3d/data/models/BM1684X/posec3d_ntu60_int8.bmodel", 4 | "stage": [ 5 | "pre" 6 | ], 7 | "class_names_file": "../yolov5_fastpose_posec3d/data/label_map_ntu60.txt", 8 | "frames_num": 72 9 | }, 10 | "shared_object": "../../build/lib/libposec3d.so", 11 | "name": "posec3d", 12 | "side": "sophgo", 13 | "thread_number": 3 14 | } -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/config/yolov5_fastpose_posec3d_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 0, 5 | "url": "../yolov5_fastpose_posec3d/data/videos/demo_skeleton.mp4", 6 | "source_type": "VIDEO", 7 | "sample_interval": 1, 8 | "loop_num": 1, 9 | "fps": -1 10 | } 11 | ], 12 | "class_names": "../yolov5_fastpose_posec3d/data/coco.names", 13 | "download_image": true, 14 | "draw_func_name": "draw_yolov5_fastpose_posec3d_results", 15 | "engine_config_path": "../yolov5_fastpose_posec3d/config/engine_group.json", 16 | "heatmap_loss": "MSELoss" 17 | } 18 | 19 | -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/pics/posec3d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/yolov5_fastpose_posec3d/pics/posec3d.jpg -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/pics/yolov5_fastpose.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/yolov5_fastpose_posec3d/pics/yolov5_fastpose.jpg -------------------------------------------------------------------------------- /samples/yolov5_fastpose_posec3d/pics/yolov5_fastpose_posec3d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/yolov5_fastpose_posec3d/pics/yolov5_fastpose_posec3d.jpg -------------------------------------------------------------------------------- /samples/yolov7/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/yolov7/config/yolov7_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov7/data/models/BM1684X_tpukernel/yolov7_tpukernel_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "use_tpu_kernel": true 18 | }, 19 | "shared_object": "../../build/lib/libyolov7.so", 20 | "name": "yolov7_group", 21 | "side": "sophgo", 22 | "thread_number": 4 23 | } -------------------------------------------------------------------------------- /samples/yolov7/pics/elements.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/yolov7/pics/elements.jpg -------------------------------------------------------------------------------- /samples/yolov8/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/yolov8/config/yolov8_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov8/data/models/BM1684X/yolov8s_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ] 17 | }, 18 | "shared_object": "../../build/lib/libyolov8.so", 19 | "name": "yolov8_group", 20 | "side": "sophgo", 21 | "thread_number": 4 22 | } -------------------------------------------------------------------------------- /samples/yolov8_obb/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 4 7 | } -------------------------------------------------------------------------------- /samples/yolov8_obb/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "VIDEO", 4 | "enc_fmt": "h264_bm", 5 | "pix_fmt": "I420", 6 | "fps": 25 7 | }, 8 | "shared_object": "../../build/lib/libencode.so", 9 | "name": "encode", 10 | "side": "sophgo", 11 | "thread_number": 4 12 | } -------------------------------------------------------------------------------- /samples/yolov8_obb/config/osd.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "osd_type": "OBB", 4 | "class_names_file": "../yolov8_obb/data/dotav1.names", 5 | "draw_utils": "OPENCV", 6 | "draw_interval": false, 7 | "put_text": false 8 | }, 9 | "shared_object": "../../build/lib/libosd.so", 10 | "name": "osd", 11 | "side": "sophgo", 12 | "thread_number": 4 13 | } -------------------------------------------------------------------------------- /samples/yolov8_obb/config/yolov8_obb_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolov8_obb/data/models/BM1684X/yolov8s-obb_fp16_1b.bmodel", 4 | "threshold_conf": 0.25, 5 | "threshold_nms": 0.7, 6 | "bgr2rgb": true, 7 | "task_type": "Obb", 8 | "mean": [ 9 | 0, 10 | 0, 11 | 0 12 | ], 13 | "std": [ 14 | 255, 15 | 255, 16 | 255 17 | ] 18 | }, 19 | "shared_object": "../../build/lib/libyolov8.so", 20 | "name": "yolov8_group", 21 | "side": "sophgo", 22 | "thread_number": 4 23 | } -------------------------------------------------------------------------------- /samples/yolox/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /samples/yolox/config/yolox_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolox/data/models/BM1684X/yolox_s_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 0.0039216, 14 | 0.0039216, 15 | 0.0039216 16 | ] 17 | }, 18 | "shared_object": "../../build/lib/libyolox.so", 19 | "name": "yolox_group", 20 | "side": "sophgo", 21 | "thread_number": 4 22 | } -------------------------------------------------------------------------------- /samples/yolox/config/yolox_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolox/data/models/BM1684X/yolox_s_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 1, 14 | 1, 15 | 1 16 | ], 17 | "stage": [ 18 | "infer" 19 | ] 20 | }, 21 | "shared_object": "../../build/lib/libyolox.so", 22 | "name": "yolox", 23 | "side": "sophgo", 24 | "thread_number": 4 25 | } -------------------------------------------------------------------------------- /samples/yolox/config/yolox_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolox/data/models/BM1684X/yolox_s_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 1, 14 | 1, 15 | 1 16 | ], 17 | "stage": [ 18 | "post" 19 | ] 20 | }, 21 | "shared_object": "../../build/lib/libyolox.so", 22 | "name": "yolox", 23 | "side": "sophgo", 24 | "thread_number": 4 25 | } -------------------------------------------------------------------------------- /samples/yolox/config/yolox_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "../yolox/data/models/BM1684X/yolox_s_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 1, 14 | 1, 15 | 1 16 | ], 17 | "stage": [ 18 | "pre" 19 | ] 20 | }, 21 | "shared_object": "../../build/lib/libyolox.so", 22 | "name": "yolox", 23 | "side": "sophgo", 24 | "thread_number": 4 25 | } -------------------------------------------------------------------------------- /samples/yolox/pics/elements.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/yolox/pics/elements.jpg -------------------------------------------------------------------------------- /samples/yolox/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | pip3 install dfss 3 | 4 | scripts_dir=$(dirname $(readlink -f "$0")) 5 | # echo $scripts_dir 6 | 7 | pushd $scripts_dir 8 | 9 | mkdir -p ../data 10 | 11 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox/models.zip 12 | unzip models.zip 13 | rm -rf models.zip 14 | mv ./models ../data/ 15 | 16 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox/videos.zip 17 | unzip videos.zip 18 | rm -rf videos.zip 19 | mv ./videos ../data/ 20 | 21 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/common/coco.names 22 | mv ./coco.names ../data/ 23 | 24 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox/BM1688_2cores.tar.gz 25 | tar zxvf ./BM1688_2cores.tar.gz 26 | rm -rf ./BM1688_2cores.tar.gz 27 | mv ./BM1688_2cores ../data/models/ 28 | 29 | 30 | popd 31 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/config/bytetrack.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "track_thresh": 0.5, 4 | "high_thresh": 0.6, 5 | "match_thresh": 0.7, 6 | "min_box_area": 10, 7 | "frame_rate": 30, 8 | "track_buffer": 30 9 | }, 10 | "shared_object": "../../build/lib/libbytetrack.so", 11 | "name": "bytetrack", 12 | "side": "sophgo", 13 | "thread_number": 4 14 | } 15 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } 8 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/config/encode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "encode_type": "RTSP", 4 | "rtsp_port": "8554", 5 | "rtmp_port": "1935", 6 | "wss_port": "9000", 7 | "enc_fmt": "h264_bm", 8 | "pix_fmt": "I420", 9 | "ws_enc_type": "IMG_ONLY", 10 | "fps": 25 11 | }, 12 | "shared_object": "../../build/lib/libencode.so", 13 | "name": "encode", 14 | "side": "sophgo", 15 | "thread_number": 4 16 | } 17 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/config/osd.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "osd_type": "TRACK", 4 | "class_names_file": "../yolox_bytetrack_osd_encode/data/coco.names", 5 | "draw_utils": "OPENCV", 6 | "draw_interval": false, 7 | "put_text": false 8 | }, 9 | "shared_object": "../../build/lib/libosd.so", 10 | "name": "osd", 11 | "side": "sophgo", 12 | "thread_number": 4 13 | } 14 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/config/ws.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "start_port": 9000 4 | }, 5 | "shared_object": "../../build/lib/libws.so", 6 | "name": "ws", 7 | "side": "sophgo", 8 | "thread_number": 4 9 | } 10 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/config/yolox_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure":{ 3 | "model_path":"../yolox_bytetrack_osd_encode/data/models/BM1684X/yolox_bytetrack_s_int8_4b.bmodel", 4 | "threshold_conf":0.5, 5 | "threshold_nms":0.5, 6 | "bgr2rgb": true, 7 | "mean":[ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 1, 14 | 1, 15 | 1 16 | ] 17 | }, 18 | "shared_object":"../../build/lib/libyolox.so", 19 | "name":"yolox_group", 20 | "side":"sophgo", 21 | "thread_number":4 22 | } 23 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/config/yolox_infer.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure":{ 3 | "model_path":"../yolox_bytetrack_osd_encode/data/models/BM1684X/yolox_bytetrack_s_int8_4b.bmodel", 4 | "threshold_conf":0.5, 5 | "threshold_nms":0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "stage":["infer"] 18 | }, 19 | "shared_object":"../../build/lib/libyolox.so", 20 | "name":"yolox", 21 | "side":"sophgo", 22 | "thread_number":1 23 | } 24 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/config/yolox_post.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure":{ 3 | "model_path":"../yolox_bytetrack_osd_encode/data/models/BM1684X/yolox_bytetrack_s_int8_4b.bmodel", 4 | "threshold_conf":0.5, 5 | "threshold_nms":0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "stage":["post"] 18 | }, 19 | "shared_object":"../../build/lib/libyolox.so", 20 | "name":"yolox", 21 | "side":"sophgo", 22 | "thread_number":1 23 | } 24 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/config/yolox_pre.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure":{ 3 | "model_path":"../yolox_bytetrack_osd_encode/data/models/BM1684X/yolox_bytetrack_s_int8_4b.bmodel", 4 | "threshold_conf":0.5, 5 | "threshold_nms":0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "stage":["pre"] 18 | }, 19 | "shared_object":"../../build/lib/libyolox.so", 20 | "name":"yolox", 21 | "side":"sophgo", 22 | "thread_number":1 23 | } 24 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/pics/dec_det_track_osd_enc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/samples/yolox_bytetrack_osd_encode/pics/dec_det_track_osd_enc.png -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_encode/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | pip3 install dfss 3 | 4 | scripts_dir=$(dirname $(readlink -f "$0")) 5 | 6 | pushd $scripts_dir 7 | 8 | mkdir -p ../data 9 | 10 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/videos.tar 11 | tar xvf videos.tar -C ../data 12 | rm -rf videos.tar 13 | 14 | mkdir -p ../data 15 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/models.tar 16 | tar xvf models.tar -C ../data 17 | rm -rf models.tar 18 | 19 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/BM1688.tar.gz 20 | tar -zxvf BM1688.tar.gz 21 | rm -rf BM1688.tar.gz 22 | mv ./BM1688 ../data/models/ 23 | 24 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/common/coco.names 25 | mv ./coco.names ../data 26 | 27 | popd -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_qt/config/bytetrack.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "track_thresh": 0.5, 4 | "high_thresh": 0.6, 5 | "match_thresh": 0.7, 6 | "min_box_area": 10, 7 | "frame_rate": 30, 8 | "track_buffer": 30 9 | }, 10 | "shared_object": "../../build/lib/libbytetrack.so", 11 | "name": "bytetrack", 12 | "side": "sophgo", 13 | "thread_number": 4 14 | } 15 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_qt/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "../../build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } 8 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_qt/config/osd.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "osd_type": "TRACK", 4 | "class_names_file": "../yolox_bytetrack_osd_encode/data/coco.names", 5 | "draw_utils": "OPENCV", 6 | "draw_interval": false, 7 | "put_text": false 8 | }, 9 | "shared_object": "../../build/lib/libosd.so", 10 | "name": "osd", 11 | "side": "sophgo", 12 | "thread_number": 4 13 | } 14 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_qt/config/qt_display.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "width": 1920, 4 | "height": 1080, 5 | "rows": 2, 6 | "cols": 3 7 | }, 8 | "shared_object": "../../build/lib/libqt_display.so", 9 | "name": "qt_display", 10 | "side": "sophgo", 11 | "thread_number": 4 12 | } -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_qt/config/yolox_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure":{ 3 | "model_path":"../yolox_bytetrack_osd_qt/data/models/BM1684X/yolox_bytetrack_s_int8_1b.bmodel", 4 | "threshold_conf":0.5, 5 | "threshold_nms":0.5, 6 | "bgr2rgb": true, 7 | "mean":[ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 1, 14 | 1, 15 | 1 16 | ] 17 | }, 18 | "shared_object":"../../build/lib/libyolox.so", 19 | "name":"yolox_group", 20 | "side":"sophgo", 21 | "thread_number":4 22 | } 23 | -------------------------------------------------------------------------------- /samples/yolox_bytetrack_osd_qt/scripts/download.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | pip3 install dfss 3 | 4 | scripts_dir=$(dirname $(readlink -f "$0")) 5 | 6 | pushd $scripts_dir 7 | 8 | mkdir -p ../data 9 | 10 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/videos.tar 11 | tar xvf videos.tar -C ../data 12 | rm -rf videos.tar 13 | 14 | mkdir -p ../data 15 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/models.tar 16 | tar xvf models.tar -C ../data 17 | rm -rf models.tar 18 | 19 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/yolox_bytetrack_osd_encode/BM1688.tar.gz 20 | tar -zxvf BM1688.tar.gz 21 | rm -rf BM1688.tar.gz 22 | mv ./BM1688 ../data/models/ 23 | 24 | python3 -m dfss --url=open@sophgo.com:/sophon-stream/common/coco.names 25 | mv ./coco.names ../data 26 | 27 | popd -------------------------------------------------------------------------------- /tools/cvs20_1690/video-vue/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /tools/cvs20_1690/video-vue/README.md: -------------------------------------------------------------------------------- 1 | 安装node.js 2 | ```bash 3 | # installs nvm (Node Version Manager) 4 | curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash 5 | # download and install Node.js (you may need to restart the terminal) 6 | nvm install 20 7 | # verifies the right Node.js version is in the environment 8 | node -v # should print `v20.15.1` 9 | # verifies the right NPM version is in the environment 10 | npm -v # should print `10.7.0` 11 | ``` 12 | 13 | 安装依赖 14 | ```bash 15 | npm install 16 | ``` 17 | 18 | 启动服务 19 | ```bash 20 | npm run dev 21 | ``` -------------------------------------------------------------------------------- /tools/cvs20_1690/video-vue/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Vite + Vue 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /tools/cvs20_1690/video-vue/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "video-vue", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite --host", 8 | "build": "vite build", 9 | "preview": "vite preview" 10 | }, 11 | "dependencies": { 12 | "vue": "^3.4.29" 13 | }, 14 | "devDependencies": { 15 | "@vitejs/plugin-vue": "^5.0.5", 16 | "vite": "^5.3.1" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /tools/cvs20_1690/video-vue/src/App.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 8 | 9 | 11 | -------------------------------------------------------------------------------- /tools/cvs20_1690/video-vue/src/assets/vue.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tools/cvs20_1690/video-vue/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue' 2 | import './style.css' 3 | import App from './App.vue' 4 | 5 | createApp(App).mount('#app') 6 | -------------------------------------------------------------------------------- /tools/cvs20_1690/video-vue/vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite' 2 | import vue from '@vitejs/plugin-vue' 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig({ 6 | plugins: [vue()], 7 | }) 8 | -------------------------------------------------------------------------------- /tools/stream-agent/pics/add_task.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/tools/stream-agent/pics/add_task.png -------------------------------------------------------------------------------- /tools/stream-agent/pics/alarm_res.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/tools/stream-agent/pics/alarm_res.png -------------------------------------------------------------------------------- /tools/stream-agent/pics/client.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/tools/stream-agent/pics/client.png -------------------------------------------------------------------------------- /tools/stream-agent/pics/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/tools/stream-agent/pics/image.png -------------------------------------------------------------------------------- /tools/stream-agent/pics/start.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/tools/stream-agent/pics/start.png -------------------------------------------------------------------------------- /tools/stream-agent/pics/start_task.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/tools/stream-agent/pics/start_task.png -------------------------------------------------------------------------------- /tools/stream-agent/pics/struct.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/tools/stream-agent/pics/struct.png -------------------------------------------------------------------------------- /tools/stream-agent/samples/license_area_intrusion/config/converger.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0 4 | }, 5 | "shared_object": "{Stream_path}/build/lib/libconverger.so", 6 | "name": "converger", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/license_area_intrusion/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "{Stream_path}/build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/license_area_intrusion/config/distributor_time_class.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "default_port": 0, 4 | "rules": [ 5 | { 6 | "frame_interval": 1, 7 | "routes": [ 8 | { 9 | "classes":["license_plate"], 10 | "port": 1 11 | } 12 | ] 13 | } 14 | ], 15 | "class_names_file": "{Stream_path}/samples/license_area_intrusion/datasets/coco.names" 16 | }, 17 | "shared_object": "{Stream_path}/build/lib/libdistributor.so", 18 | "name": "distributor", 19 | "side": "sophgo", 20 | "thread_number": 1 21 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/license_area_intrusion/config/http_push.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "ip": "127.0.0.1", 4 | "port": 8001, 5 | "path": "/alarm/rev" 6 | }, 7 | "shared_object": "{Stream_path}/build/lib/libhttp_push.so", 8 | "name": "http_push", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/license_area_intrusion/config/license_area_intrusion_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 0, 5 | "url": "../license_area_intrusion/datasets/1080_1920_5s.mp4", 6 | "source_type": "VIDEO", 7 | "loop_num": 5, 8 | "fps": 25, 9 | "sample_interval": 5 10 | } 11 | ], 12 | "class_names": "{Stream_path}/samples/license_area_intrusion/datasets/coco.names", 13 | "download_image": false, 14 | "draw_func_name": "draw_license_plate_recognition_results", 15 | "engine_config_path": "config/engine_group.json", 16 | "http_report": { 17 | "ip": "127.0.0.1", 18 | "port": 8001, 19 | "path": "/alarm/rev" 20 | } 21 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/license_area_intrusion/config/lprnet_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "{Stream_path}/samples/license_area_intrusion/models/lprnet/BM1684X/lprnet_int8_4b.bmodel" 4 | }, 5 | "shared_object": "{Stream_path}/build/lib/liblprnet.so", 6 | "name": "lprnet_group", 7 | "side": "sophgo", 8 | "thread_number": 1 9 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/license_area_intrusion/config/yolov5_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "{Stream_path}/samples/license_area_intrusion/models/yolov5s-licensePLate/BM1684X/yolov5s_v6.1_license_3output_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "class_names_file": "{Stream_path}/samples/license_area_intrusion/data/coco.names", 18 | "use_tpu_kernel": false 19 | }, 20 | "shared_object": "{Stream_path}/build/lib/libyolov5.so", 21 | "name": "yolov5_group", 22 | "side": "sophgo", 23 | "thread_number": 1 24 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/openpose/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "{Stream_path}/build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/openpose/config/http_push.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "ip": "127.0.0.1", 4 | "port": 8001, 5 | "path": "/alarm/rev" 6 | }, 7 | "shared_object": "{Stream_path}/build/lib/libhttp_push.so", 8 | "name": "http_push", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/openpose/config/openpose_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 2, 5 | "url": "../openpose/data/videos/test.mp4", 6 | "source_type": "VIDEO", 7 | "loop_num": 10, 8 | "fps": -1 9 | } 10 | ], 11 | "download_image": false, 12 | "draw_func_name": "draw_openpose_results", 13 | "engine_config_path": "config/engine_group.json" 14 | } 15 | -------------------------------------------------------------------------------- /tools/stream-agent/samples/openpose/config/openpose_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "{Stream_path}/samples/openpose/data/models/BM1684X/pose_coco_int8_1b.bmodel", 4 | "threshold_nms": 0.05, 5 | "use_tpu_kernel": false 6 | }, 7 | "shared_object": "{Stream_path}/build/lib/libopenpose.so", 8 | "name": "openpose_group", 9 | "side": "sophgo", 10 | "thread_number": 4 11 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/tripwire/config/bytetrack.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "track_thresh": 0.5, 4 | "high_thresh": 0.6, 5 | "match_thresh": 0.7, 6 | "min_box_area": 10, 7 | "frame_rate": 30, 8 | "track_buffer": 30 9 | }, 10 | "shared_object": "{Stream_path}/build/lib/libbytetrack.so", 11 | "name": "bytetrack", 12 | "side": "sophgo", 13 | "thread_number": 1 14 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/tripwire/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "{Stream_path}/build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } 8 | -------------------------------------------------------------------------------- /tools/stream-agent/samples/tripwire/config/http_push.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "ip": "127.0.0.1", 4 | "port": 8001, 5 | "path": "/alarm/rev" 6 | }, 7 | "shared_object": "{Stream_path}/build/lib/libhttp_push.so", 8 | "name": "http_push", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/tripwire/config/osd.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "osd_type": "AREA", 4 | "class_names_file": "{Stream_path}/samples/yolox_bytetrack_osd_encode/data/coco.names", 5 | "draw_utils": "BMCV", 6 | "draw_interval": false, 7 | "put_text": false 8 | }, 9 | "shared_object": "{Stream_path}/build/lib/libosd.so", 10 | "name": "osd", 11 | "side": "sophgo", 12 | "thread_number": 1 13 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/tripwire/config/tripwire_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 0, 5 | "url": "{Stream_path}/samples/tripwire/data/test.mp4", 6 | "source_type": "VIDEO", 7 | "loop_num": 1, 8 | "fps": 25, 9 | "sample_interval": 3 10 | } 11 | ], 12 | "engine_config_path": "config/engine_group.json", 13 | "http_report": { 14 | "ip": "127.0.0.1", 15 | "port": 8001, 16 | "path": "/alarm/rev" 17 | } 18 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/tripwire/config/yolox_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "{Stream_path}/samples/tripwire/data/models/BM1684X/yolox_bytetrack_s_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ] 17 | }, 18 | "shared_object": "{Stream_path}/build/lib/libyolox.so", 19 | "name": "yolox_group", 20 | "side": "sophgo", 21 | "thread_number": 1 22 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/yolov5/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "{Stream_path}/build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/yolov5/config/http_push.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "ip": "127.0.0.1", 4 | "port": 8001, 5 | "path": "/alarm/rev" 6 | }, 7 | "shared_object": "{Stream_path}/build/lib/libhttp_push.so", 8 | "name": "http_push", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/yolov5/config/yolov5_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 0, 5 | "url": "/data/media_files/test-h265.mp4", 6 | "source_type": "VIDEO", 7 | "sample_interval": 150, 8 | "loop_num": 5, 9 | "fps": 25 10 | } 11 | ], 12 | "class_names": "{Stream_path}/samples/yolov5/data/coco.names", 13 | "download_image": false, 14 | "draw_func_name": "draw_yolov5_results", 15 | "engine_config_path": "config/engine_group.json", 16 | "http_report": { 17 | "ip": "127.0.0.1", 18 | "port": 8001, 19 | "path": "/alarm/rev" 20 | } 21 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/yolov5/config/yolov5_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "{Stream_path}/samples/yolov5/data/models/BM1684X/yolov5s_v6.1_3output_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "use_tpu_kernel": false 18 | }, 19 | "shared_object": "{Stream_path}/build/lib/libyolov5.so", 20 | "name": "yolov5_group", 21 | "side": "sophgo", 22 | "thread_number": 4 23 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/yolov8/config/decode.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": {}, 3 | "shared_object": "{Stream_path}/build/lib/libdecode.so", 4 | "name": "decode", 5 | "side": "sophgo", 6 | "thread_number": 1 7 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/yolov8/config/http_push.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "ip": "127.0.0.1", 4 | "port": 8001, 5 | "path": "/alarm/rev" 6 | }, 7 | "shared_object": "{Stream_path}/build/lib/libhttp_push.so", 8 | "name": "http_push", 9 | "side": "sophgo", 10 | "thread_number": 1 11 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/yolov8/config/yolov8_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "channels": [ 3 | { 4 | "channel_id": 0, 5 | "url": "/data/media_files/test-h265.mp4", 6 | "source_type": "VIDEO", 7 | "sample_interval": 150, 8 | "loop_num": 5, 9 | "fps": 25 10 | } 11 | ], 12 | "class_names": "{Stream_path}/samples/yolov8/data/coco.name", 13 | "engine_config_path": "config/engine_group.json", 14 | "http_report": { 15 | "ip": "127.0.0.1", 16 | "port": 8001, 17 | "path": "/alarm/rev" 18 | } 19 | } -------------------------------------------------------------------------------- /tools/stream-agent/samples/yolov8/config/yolov8_group.json: -------------------------------------------------------------------------------- 1 | { 2 | "configure": { 3 | "model_path": "{Stream_path}/samples/yolov8/data/models/BM1684X/yolov8s_int8_1b.bmodel", 4 | "threshold_conf": 0.5, 5 | "threshold_nms": 0.5, 6 | "bgr2rgb": true, 7 | "mean": [ 8 | 0, 9 | 0, 10 | 0 11 | ], 12 | "std": [ 13 | 255, 14 | 255, 15 | 255 16 | ], 17 | "use_tpu_kernel": false 18 | }, 19 | "shared_object": "{Stream_path}/build/lib/libyolov8.so", 20 | "name": "yolov8_group", 21 | "side": "sophgo", 22 | "thread_number": 4 23 | } -------------------------------------------------------------------------------- /tools/stream-agent/start_server.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | run_dir=$(dirname $(readlink -f "$0")) 3 | 4 | pushd $run_dir 5 | 6 | stream_path="${PWD%/*}" 7 | stream_path="${stream_path%/*}" 8 | echo $stream_path 9 | export LD_LIBRARY_PATH=$stream_path/build/lib/:$LD_LIBRARY_PATH 10 | python3 server.py --stream_path=$stream_path 11 | 12 | popd -------------------------------------------------------------------------------- /tools/visualize/qt_ui/main.cpp: -------------------------------------------------------------------------------- 1 | //===----------------------------------------------------------------------===// 2 | // 3 | // Copyright (C) 2022 Sophgo Technologies Inc. All rights reserved. 4 | // 5 | // SOPHON-STREAM is licensed under the 2-Clause BSD License except for the 6 | // third-party components. 7 | // 8 | //===----------------------------------------------------------------------===// 9 | 10 | #include "mainwindow.h" 11 | 12 | #include 13 | #include 14 | 15 | int main(int argc, char* argv[]) { 16 | QApplication a(argc, argv); 17 | MainWindow w; 18 | w.show(); 19 | QFont defaultFont = a.font(); 20 | defaultFont.setPointSize(16); 21 | a.setFont(defaultFont); 22 | return a.exec(); 23 | } 24 | -------------------------------------------------------------------------------- /tools/visualize/qt_ui/qt_ui.pro: -------------------------------------------------------------------------------- 1 | QT += core gui 2 | 3 | greaterThan(QT_MAJOR_VERSION, 4): QT += widgets network websockets 4 | 5 | CONFIG += c++17 6 | 7 | # You can make your code fail to compile if it uses deprecated APIs. 8 | # In order to do so, uncomment the following line. 9 | #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 10 | 11 | SOURCES += \ 12 | imageget.cpp \ 13 | jsonhighlighter.cpp \ 14 | main.cpp \ 15 | mainwindow.cpp 16 | 17 | HEADERS += \ 18 | imageget.h \ 19 | jsonhighlighter.h \ 20 | mainwindow.h 21 | 22 | FORMS += \ 23 | mainwindow.ui 24 | 25 | # Default rules for deployment. 26 | qnx: target.path = /tmp/$${TARGET}/bin 27 | else: unix:!android: target.path = /opt/$${TARGET}/bin 28 | !isEmpty(target.path): INSTALLS += target 29 | -------------------------------------------------------------------------------- /tools/visualize/web_ui/interface.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/tools/visualize/web_ui/interface.jpg -------------------------------------------------------------------------------- /tools/visualize/web_ui/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sophgo/sophon-stream/352366715f3a104eb59db03300d3127471eb8525/tools/visualize/web_ui/public/favicon.ico -------------------------------------------------------------------------------- /tools/visualize/web_ui/public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "64x64 32x32 24x24 16x16", 8 | "type": "image/x-icon" 9 | }, 10 | { 11 | "src": "logo512.png", 12 | "type": "image/png", 13 | "sizes": "512x512" 14 | } 15 | ], 16 | "start_url": ".", 17 | "display": "standalone", 18 | "theme_color": "#000000", 19 | "background_color": "#ffffff" 20 | } 21 | -------------------------------------------------------------------------------- /tools/visualize/web_ui/src/App.css: -------------------------------------------------------------------------------- 1 | .App { 2 | text-align: center; 3 | } 4 | 5 | .App-logo { 6 | height: 40vmin; 7 | pointer-events: none; 8 | } 9 | 10 | @media (prefers-reduced-motion: no-preference) { 11 | .App-logo { 12 | animation: App-logo-spin infinite 20s linear; 13 | } 14 | } 15 | 16 | 17 | .App-link { 18 | color: #61dafb; 19 | } 20 | 21 | @keyframes App-logo-spin { 22 | from { 23 | transform: rotate(0deg); 24 | } 25 | to { 26 | transform: rotate(360deg); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /tools/visualize/web_ui/src/App.js: -------------------------------------------------------------------------------- 1 | //===----------------------------------------------------------------------===// 2 | // 3 | // Copyright (C) 2022 Sophgo Technologies Inc. All rights reserved. 4 | // 5 | // SOPHON-STREAM is licensed under the 2-Clause BSD License except for the 6 | // third-party components. 7 | // 8 | //===----------------------------------------------------------------------===// 9 | 10 | import React from 'react'; 11 | import Navigation from './components/Navigation/Navigation'; 12 | import { DisplayLayer } from './components/DisplayLayer/DisplayLayer'; 13 | import './App.css'; 14 | 15 | const App = () => { 16 | return ( 17 |
18 | 19 | 20 |
21 | ); 22 | }; 23 | 24 | export default App; -------------------------------------------------------------------------------- /tools/visualize/web_ui/src/components/DisplayLayer/DisplayLayer.css: -------------------------------------------------------------------------------- 1 | .DisplayLayer { 2 | display: flex; 3 | flex-direction: row; 4 | } -------------------------------------------------------------------------------- /tools/visualize/web_ui/src/components/Navigation/Navigation.css: -------------------------------------------------------------------------------- 1 | .Nav { 2 | display: flex; 3 | justify-content: center; 4 | align-items: center; 5 | height: 10vh; 6 | background-color: blue; 7 | font-size: 2.2vh; 8 | } 9 | -------------------------------------------------------------------------------- /tools/visualize/web_ui/src/components/Navigation/Navigation.js: -------------------------------------------------------------------------------- 1 | //===----------------------------------------------------------------------===// 2 | // 3 | // Copyright (C) 2022 Sophgo Technologies Inc. All rights reserved. 4 | // 5 | // SOPHON-STREAM is licensed under the 2-Clause BSD License except for the 6 | // third-party components. 7 | // 8 | //===----------------------------------------------------------------------===// 9 | 10 | import React from 'react' 11 | import './Navigation.css' 12 | 13 | function Navigation () { 14 | return ( 15 |
16 |

Sophon Stream

17 |
18 | ) 19 | } 20 | 21 | export default Navigation -------------------------------------------------------------------------------- /tools/visualize/web_ui/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 4 | 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 5 | sans-serif; 6 | -webkit-font-smoothing: antialiased; 7 | -moz-osx-font-smoothing: grayscale; 8 | } 9 | 10 | code { 11 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', 12 | monospace; 13 | } 14 | -------------------------------------------------------------------------------- /tools/visualize/web_ui/src/index.js: -------------------------------------------------------------------------------- 1 | //===----------------------------------------------------------------------===// 2 | // 3 | // Copyright (C) 2022 Sophgo Technologies Inc. All rights reserved. 4 | // 5 | // SOPHON-STREAM is licensed under the 2-Clause BSD License except for the 6 | // third-party components. 7 | // 8 | //===----------------------------------------------------------------------===// 9 | 10 | 11 | import React from 'react'; 12 | import ReactDOM from 'react-dom/client'; 13 | import './index.css'; 14 | import App from './App'; 15 | 16 | const root = ReactDOM.createRoot(document.getElementById('root')); 17 | root.render( 18 | 19 | 20 | 21 | ); 22 | 23 | --------------------------------------------------------------------------------