RTSP服务器 (C语言)

  • c8_801999
    了解作者
  • 855.9KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-06-01 17:05
    上传日期
hi3516A输出h264码流,rtsp服务器完成推流,环形缓冲,异步监测。
rtsp-h264.zip
  • rtsp-h264
  • sample_comm_vo.c
    11.3KB
  • sample_comm_vi.c
    106KB
  • sample_comm_sys.c
    14.6KB
  • sample_comm_isp.c
    13.5KB
  • sample_comm.h
    15KB
  • sample_comm_vpss.c
    10.5KB
  • sample_comm_ive.c
    35.4KB
  • main.c
    1.4KB
  • sample_comm_vda.c
    17.3KB
  • sample_comm_audio.c
    51.1KB
  • rtsputils.c
    11.9KB
  • include
  • hi_io.h
    2.4KB
  • hi_comm_ai.h
    879B
  • mpi_vo.h
    5.3KB
  • hi_math.h
    9.8KB
  • mpi_vda.h
    1.8KB
  • dictionary.h
    11.3KB
  • mpi_fisheye.h
    4.3KB
  • rtsputils.h
    6.6KB
  • hi_comm_adec.h
    5.3KB
  • hi_spi.h
    3.9KB
  • strlib.h
    4.1KB
  • mpi_ao.h
    2.8KB
  • hi_isp_bin.h
    2.2KB
  • hi_comm_vi.h
    25KB
  • mpi_vdec.h
    3KB
  • mpi_pciv.h
    10.3KB
  • hi_awb_comm.h
    4.2KB
  • mpi_vpss.h
    7KB
  • hi_comm_3a.h
    10.4KB
  • mpi_ive.h
    61.5KB
  • hi_defines.h
    10KB
  • hi_tde_type.h
    17.5KB
  • acodec(1).h
    9.4KB
  • hi_comm_aio.h
    23.8KB
  • hi_sns_ctrl.h
    1.2KB
  • mpi_ae.h
    2.7KB
  • hi_comm_ao.h
    881B
  • mpi_isp.h
    7.4KB
  • hi_comm_rc.h
    16KB
  • rtspservice.h
    354B
  • hi_ive.h
    24.1KB
  • mpi_aenc.h
    1.6KB
  • hi_comm_vo.h
    16.9KB
  • hi_comm_vpss.h
    16.3KB
  • hi_errno.h
    5KB
  • hi_comm_video.h
    15.4KB
  • hi_mipi.h
    8.1KB
  • hi_comm_fisheye.h
    1.8KB
  • hi_comm_sys.h
    3.7KB
  • hi_comm_region.h
    9.2KB
  • mpi_venc.h
    8.1KB
  • mpi_awb.h
    2.2KB
  • mpi_vi.h
    5.3KB
  • iniparser.h
    11.2KB
  • hi_type.h
    3.6KB
  • hi_comm_ive.h
    14.1KB
  • hi_comm_venc.h
    30.5KB
  • hi_comm_vgs.h
    3.6KB
  • hifb(1).h
    13.3KB
  • hi_tde_errcode.h
    2.1KB
  • mpi_ai.h
    3.1KB
  • mpi_vgs.h
    6.5KB
  • hi_debug.h
    4.5KB
  • mpi_sys.h
    3.8KB
  • hi_i2c.h
    1.4KB
  • list.h
    4.2KB
  • hi_comm_aenc.h
    4.8KB
  • mpi_vb.h
    2KB
  • rtputils.h
    683B
  • hi_comm_vda.h
    9.4KB
  • mpi_region.h
    1.9KB
  • hi_isp_debug.h
    1KB
  • hi_comm_isp.h
    59.4KB
  • hi_comm_vb.h
    3.8KB
  • himedia.h
    2.1KB
  • hi_comm_sns.h
    5.5KB
  • hi_mem.h
    695B
  • hi_tde_api.h
    19KB
  • hi_vreg.h
    4.3KB
  • hi_af_comm.h
    900B
  • hi_ae_comm.h
    5.4KB
  • ringfifo.h
    260B
  • hi_comm_pciv.h
    9.1KB
  • mpi_adec.h
    1.5KB
  • hi_common.h
    8.1KB
  • hi_comm_vdec.h
    9.3KB
  • mpi_af.h
    2KB
  • loadbmp.h
    2.9KB
  • sample_venc.c
    74.4KB
  • loadbmp.c
    15KB
  • sample_comm_ive.h
    5.8KB
  • lib
  • libsns_mn34220_mipi.a
    47.1KB
  • libsns_ov5658.a
    27KB
  • libsns_imx136.a
    13.5KB
  • lib_cmoscfg.a
    928B
  • libsns_imx123.a
    36.6KB
内容介绍
/****************************************************************************** Some simple Hisilicon Hi35xx video input functions. Copyright (C), 2010-2011, Hisilicon Tech. Co., Ltd. ****************************************************************************** Modification: 2011-8 Created ******************************************************************************/ #ifdef __cplusplus #if __cplusplus extern "C" { #endif #endif /* End of #ifdef __cplusplus */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> #include <sys/stat.h> #include <sys/ioctl.h> #include <sys/poll.h> #include <sys/time.h> #include <fcntl.h> #include <errno.h> #include <pthread.h> #include <math.h> #include <unistd.h> #include <signal.h> #include "hi_mipi.h" #include "hi_common.h" #include "sample_comm.h" VI_DEV_ATTR_S DEV_ATTR_BT656D1_1MUX = { /* interface mode */ VI_MODE_BT656, /* multiplex mode */ VI_WORK_MODE_1Multiplex, /* r_mask g_mask b_mask*/ {0xFF000000, 0x0}, /* progessive or interleaving */ VI_SCAN_INTERLACED, /*AdChnId*/ { -1, -1, -1, -1}, /*enDataSeq, only support yuv*/ VI_INPUT_DATA_YVYU, /* synchronization information */ { /*port_vsync port_vsync_neg port_hsync port_hsync_neg */ VI_VSYNC_FIELD, VI_VSYNC_NEG_HIGH, VI_HSYNC_VALID_SINGNAL, VI_HSYNC_NEG_HIGH, VI_VSYNC_VALID_SINGAL, VI_VSYNC_VALID_NEG_HIGH, /*hsync_hfb hsync_act hsync_hhb*/ { 0, 0, 0, /*vsync0_vhb vsync0_act vsync0_hhb*/ 0, 0, 0, /*vsync1_vhb vsync1_act vsync1_hhb*/ 0, 0, 0 } }, /* ISP bypass */ VI_PATH_BYPASS, /* input data type */ VI_DATA_TYPE_YUV }; /* BT1120 1080I输入 */ VI_DEV_ATTR_S DEV_ATTR_BT1120_1080I_1MUX = { /* interface mode */ VI_MODE_BT1120_STANDARD, /* multiplex mode */ VI_WORK_MODE_1Multiplex, /* r_mask g_mask b_mask*/ {0xFF000000, 0xFF0000}, /* progessive or interleaving */ VI_SCAN_INTERLACED, /*AdChnId*/ { -1, -1, -1, -1}, /*enDataSeq, only support yuv*/ VI_INPUT_DATA_UVUV, /* synchronization information */ { /*port_vsync port_vsync_neg port_hsync port_hsync_neg */ VI_VSYNC_PULSE, VI_VSYNC_NEG_HIGH, VI_HSYNC_VALID_SINGNAL, VI_HSYNC_NEG_HIGH, VI_VSYNC_NORM_PULSE, VI_VSYNC_VALID_NEG_HIGH, /*hsync_hfb hsync_act hsync_hhb*/ { 0, 0, 0, /*vsync0_vhb vsync0_act vsync0_hhb*/ 0, 0, 0, /*vsync1_vhb vsync1_act vsync1_hhb*/ 0, 0, 0 } }, /* ISP bypass */ VI_PATH_BYPASS, /* input data type */ VI_DATA_TYPE_YUV, /* bReverse */ HI_FALSE, /* DEV CROP */ {0, 0, 1920, 1080} }; /* BT1120 1080p */ VI_DEV_ATTR_S DEV_ATTR_BT1120_1080P_BASE = { /* interface mode */ VI_MODE_BT1120_STANDARD, /* multiplex mode */ VI_WORK_MODE_1Multiplex, /* r_mask g_mask b_mask*/ {0xFF000000, 0xFF0000}, /* progessive or interleaving */ VI_SCAN_PROGRESSIVE, /*AdChnId*/ { -1, -1, -1, -1}, /*enDataSeq, only support yuv*/ VI_INPUT_DATA_UVUV, /* synchronization information */ { /*port_vsync port_vsync_neg port_hsync port_hsync_neg */ VI_VSYNC_PULSE, VI_VSYNC_NEG_HIGH, VI_HSYNC_VALID_SINGNAL, VI_HSYNC_NEG_HIGH, VI_VSYNC_NORM_PULSE, VI_VSYNC_VALID_NEG_HIGH, /*hsync_hfb hsync_act hsync_hhb*/ { 0, 0, 0, /*vsync0_vhb vsync0_act vsync0_hhb*/ 0, 0, 0, /*vsync1_vhb vsync1_act vsync1_hhb*/ 0, 0, 0 } }, /* ISP bypass */ VI_PATH_BYPASS, /* input data type */ VI_DATA_TYPE_YUV, /* bReverse */ HI_FALSE, /* DEV CROP */ {0, 0, 1920, 1080} }; /* BT1120 720P */ VI_DEV_ATTR_S DEV_ATTR_BT1120_720P_BASE = /* classical timing 3:7441 BT1120 720P@60fps*/ { /* interface mode */ VI_MODE_BT1120_STANDARD, /* multiplex mode */ VI_WORK_MODE_1Multiplex, /* r_mask g_mask b_mask*/ {0xFF000000, 0xFF0000}, /* progessive or interleaving */ VI_SCAN_PROGRESSIVE, //VI_SCAN_INTERLACED, /*AdChnId*/ { -1, -1, -1, -1}, /*enDataSeq, only support yuv*/ VI_INPUT_DATA_UVUV, /* synchronization information */ { /*port_vsync port_vsync_neg port_hsync port_hsync_neg */ VI_VSYNC_PULSE, VI_VSYNC_NEG_HIGH, VI_HSYNC_VALID_SINGNAL, VI_HSYNC_NEG_HIGH, VI_VSYNC_NORM_PULSE, VI_VSYNC_VALID_NEG_HIGH, /*hsync_hfb hsync_act hsync_hhb*/ { 0, 1280, 0, /*vsync0_vhb vsync0_act vsync0_hhb*/ 0, 720, 0, /*vsync1_vhb vsync1_act vsync1_hhb*/ 0, 0, 0 } }, /* ISP bypass */ VI_PATH_BYPASS, /* input data type */ VI_DATA_TYPE_YUV, /* bReverse */ HI_FALSE, /* DEV CROP */ {0, 0, 1280, 720} }; VI_DEV_ATTR_S DEV_ATTR_LVDS_BASE = { /* interface mode */ VI_MODE_LVDS, /* multiplex mode */ VI_WORK_MODE_1Multiplex, /* r_mask g_mask b_mask*/ {0xFFF00000, 0x0}, /* progessive or interleaving */ VI_SCAN_PROGRESSIVE, /*AdChnId*/ { -1, -1, -1, -1}, /*enDataSeq, only support yuv*/ VI_INPUT_DATA_YUYV, /* synchronization information */ { /*port_vsync port_vsync_neg port_hsync port_hsync_neg */ VI_VSYNC_PULSE, VI_VSYNC_NEG_LOW, VI_HSYNC_VALID_SINGNAL, VI_HSYNC_NEG_HIGH, VI_VSYNC_VALID_SINGAL, VI_VSYNC_VALID_NEG_HIGH, /*hsync_hfb hsync_act hsync_hhb*/ { 0, 1280, 0, /*vsync0_vhb vsync0_act vsync0_hhb*/ 0, 720, 0, /*vsync1_vhb vsync1_act vsync1_hhb*/ 0, 0, 0 } }, /* use interior ISP */ VI_PATH_ISP, /* input data type */ VI_DATA_TYPE_RGB, /* bRever */ HI_FALSE, /* DEV CROP */ {0, 0, 1920, 1080} }; VI_DEV_ATTR_S DEV_ATTR_MIPI_BASE = { /* interface mode */ VI_MODE_MIPI, /* multiplex mode */ VI_WORK_MODE_1Multiplex, /* r_mask g_mask b_mask*/ {0xFFF00000, 0x0}, /* progessive or interleaving */ VI_SCAN_PROGRESSIVE, /*AdChnId*/ { -1, -1, -1, -1}, /*enDataSeq, only support yuv*/ VI_INPUT_DATA_YUYV, /* synchronization information */ { /*port_vsync port_vsync_neg port_hsync port_hsync_neg */ VI_VSYNC_PULSE, VI_VSYNC_NEG_LOW, VI_HSYNC_VALID_SINGNAL, VI_HSYNC_NEG_HIGH, VI_VSYNC_VALID_SINGAL, VI_VSYNC_VALID_NEG_HIGH, /*hsync_hfb hsync_act hsync_hhb*/ { 0, 1280, 0, /*vsync0_vhb vsync0_act vsync0_hhb*/ 0, 720, 0, /*vsync1_vhb vsync1_act vsync1_hhb*/ 0, 0, 0 } }, /* use interior ISP */ VI_PATH_ISP, /* input data type */ VI_DATA_TYPE_RGB, /* bRever */ HI_FALSE, /* DEV CROP */ {0, 0, 1920, 1080} }; combo_dev_attr_t LVDS_4lane_SENSOR_IMX136_12BIT_1080_NOWDR_ATTR = { /* input mode */ .input_mode = INPUT_MODE_LVDS, { .lvds_attr = { .img_size = {1920, 1080}, HI_WDR_MODE_NONE, LVDS_SYNC_MODE_SAV, RAW_DATA_12BIT, LVDS_ENDIAN_BIG, LVDS_ENDIAN_BIG, .lane_id = {0, 1, 2, 3, -1, -1, -1, -1}, .sync_code = { { {0xab0, 0xb60, 0x800, 0x9d0}, {0xab0, 0xb60, 0x800, 0x9d0},
评论
    相关推荐
    • RTSP 服务器C语言
      RTSP是实时流媒体传输协议,服务器和客户端之间通过RTSP协议实现握手和认证过程,通过RTP协议传输视频数据包,本资源通过C语言实现了RTSP服务器的功能。
    • 最新仙镜传说服务器c语言源码
      最新的仙镜传说服务器C语言源码,这是日本最新在布的,数据库类型为文件型数据库。 这个源码相当的完整,只要编译一次后就可以运行了,但得用到客户端的两个文件一个是data.grf另一个是sdata.grf,大家都可以试试!...
    • 守护进程时间服务器C语言实现.rar
      守护进程时间服务器C语言实现,适合编程小白
    • 最新仙镜传说服务器C语言源码
      最新的仙镜传说服务器C语言源码,这是日本最新在布的,数据库类型为文件型数据库。 这个源码相当的完整,只要编译一次后就可以运行了,但得用到客户端的两个文件一个是data.grf另一个是sdata.grf,大家都可以试试!
    • http代理服务器C语言
      以前上TCP/IP课程时做的课程设计,很小的一个HTTP代理服务器,基于socket编程。VC6.0环境的。原创程序。 那时候还是新手,程序很简陋,不过好歹能用。 学校学习相关课程的学生可以参考下,当个课程作业没问题,老手...
    • 最新仙镜传说服务器C语言源码
      最新的仙镜传说服务器C语言源码,这是日本最新在布的,数据库类型为文件型数据库。这个源码相当的完整,只要编译一次后就可以运行了,但得用到客户端的两个文件一个是data.grf另一个是sdata.grf,大家都可以试试!我...
    • 最新仙镜传说服务器C语言源码.zip
      最新仙镜传说服务器C语言源码.zip为游戏源代码,作为开发游戏的一个很好DEMO
    • web服务器 C语言
      一个用C语言编写的WEB服务器,用socket编程
    • C语言并发服务器
      C语言并发服务器,包括客户端和服务器端。
    • GaussDB_100_1.0.1-DATABASE-REDHAT-64bit.tar.gz
      guassdb100在redhat上安装包,单机部署的包,安装步骤请看我的文中介绍,经过大量实验搭建总结出来的文档