zoukankan      html  css  js  c++  java
  • TSINGSEE青犀视频平台接入海康解码器SDK实时解码流程

    TSINGSEE青犀视频平台前端设备可以接入不同设备,包括NVR、摄像头、编码器等,EasyGBS还可以接入我们独立开发的国标推流平台EasyGBD。一般接入NVR和接入摄像头的项目现场比较多,但也有部分用户是将海康编码器设备接入平台。

    本文我们和大家分享一下海康解码器SDK实时解码的流程,大家可以对此有个大致了解。

    登录解码器后需要先配置解码器显示通道参数,设置显示通道关联的解码通道,否则无法正常启动设备网络。

    相关接口:NET_DVR_MatrixGetDisplayCfg_V41、NET_DVR_MatrixSetDisplayCfg_V41。

    调用 NET_DVR_MatrixStartDynamic_V41 即启动主动解码,解码器从设备直接取流获取通过流媒体取流进行解码并且上墙显示,取流方式、通道或者流 ID 等都在该接口中指定。如果显示通道配置中的分辨率和制式没有指定,则必须指定一个有效的分辨率或制式,否则无法正常动态解码。

    解码器直接轮巡解码,通过 NET_DVR_MatrixSetLoopDecChanInfo_V41 设置轮巡组,然后调用NET_DVR_MatrixSetLoopDecChanEnable 启动轮巡。

    以下为部分代码:

    void main() 
    { 
    int i=0,j=0; 
    BYTE byDispMode; 
    //初始化 SDK 
    NET_DVR_Init(); 
    //注册设备 
    NET_DVR_DEVICEINFO_V30 struDeviceInfo; 
    memset(&struDeviceInfo, 0, sizeof(NET_DVR_DEVICEINFO_V30));//存放设备参数的结构体 
    LONG lUserID = NET_DVR_Login_V30("172.6.22.178", 8000, "admin", "12345", &struDeviceInfo); 
    if (lUserID < 0) 
    { 
    printf("Login error, %d
    ", NET_DVR_GetLastError()); 
    NET_DVR_Cleanup(); 
    return; 
    } 
    //获取解码器能力集 
    NET_DVR_MATRIX_ABILITY_V41 struDecoderCapability; 
    if (!NET_DVR_GetDeviceAbility(lUserID,MATRIXDECODER_ABILITY_V41,NULL,0,(char *)&struDecoderCapability, 
    sizeof(struDecoderCapability))) 
    { 
    printf("NET_DVR_GetDeviceAbility error, %d
    ", NET_DVR_GetLastError()); 
    NET_DVR_Logout(lUserID); 
    NET_DVR_Cleanup()
    

     

  • 相关阅读:
    Palindrome Linked List 解答
    Word Break II 解答
    Array vs Linked List
    Reverse Linked List II 解答
    Calculate Number Of Islands And Lakes 解答
    Sqrt(x) 解答
    Find Median from Data Stream 解答
    Majority Element II 解答
    Binary Search Tree DFS Template
    188. Best Time to Buy and Sell Stock IV
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/15294401.html
Copyright © 2011-2022 走看看