MediaProc.c 1.6 KB
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <pthread.h>
#include <unistd.h>

#include "JZsdkLib.h"
#include "version_choose.h"
#include "BaseConfig.h"

#include "./VideoMgmt/VideoMgmt.h"
#include "./MultProc/MultProc.h"
#include "./MediaParm.h"
#include "./Camera/Camera.h"

//单线程方案
static T_JZsdkReturnCode MediaProc_SingleThreading()
{
    //如果是150S相机 150T相机
    if (DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T)
    {
        //1、相机初始化
        Camera_Init(0,FIRST_WIDTH, FIRST_HEIGHT, FIRST_FRAME_NUM);

        //2、转码模块初始化
        VideoStreamTransCode_Init();
    }
}

//多线程方案
static T_JZsdkReturnCode MediaProc_MultiThreading()
{
    // //如果是150S相机 150T相机
    // if (DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T)
    // {
    //     //1、启动视频流缓冲区模块
    //     VideoMgmt_init_buffer(&VideoMgmt_FirstVideo_index);

    //     //2、相机初始化
    //     Camera_Init(1,FIRST_WIDTH, FIRST_HEIGHT, FIRST_FRAME_NUM);

    //     //3、启用推流模块
    //     VideoMgmt_VideoStreamFlow_Init(FIRST_FRAME_NUM, &VideoMgmt_FirstVideo_index, VIDEOMGMT_STREAMING_FLOW_INDEX_FIRST);

    //     //转码模块
    //     VideoStreamTransCode_Init();
   
    //     VideoMgmt_VideoStreamFlowIndex(VIDEOMGMT_STREAMING_FLOW_INDEX_FIRST); //默认推送光学摄像头
    // }
}

//视频流模块初始化
T_JZsdkReturnCode MediaProc_Init()
{

#if DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T
    MediaProc_SingleThreading();
#endif
    
    return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}