From 109ffe9a777658936a38d0c146579a67c60a0d17 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期四, 11 五月 2017 17:48:48 +0800 Subject: [PATCH] --- RtspFace/main.cpp | 61 ++++++++++++++++++++---------- 1 files changed, 40 insertions(+), 21 deletions(-) diff --git a/RtspFace/main.cpp b/RtspFace/main.cpp index 8d2d693..6e8260a 100644 --- a/RtspFace/main.cpp +++ b/RtspFace/main.cpp @@ -14,10 +14,13 @@ #include "PL_DlibFaceTrack.h" #include "logger.h" +#include <iostream> + +Logger g_logger(std::cout); int main(int argc, char** argv) { - initLogger(LV_DEBUG); + g_logger.set_level(VERBOSE); PipeLine pipeLine; @@ -25,6 +28,7 @@ PipeLine::register_global_elem_creator("PL_RTSPServer", create_PL_RTSPServer); PipeLine::register_global_elem_creator("PL_H264Decoder", create_PL_H264Decoder); PipeLine::register_global_elem_creator("PL_AVFrameYUV420", create_PL_AVFrameYUV420); + PipeLine::register_global_elem_creator("PL_AVFrameBGRA", create_PL_AVFrameBGRA); PipeLine::register_global_elem_creator("PL_H264Encoder", create_PL_H264Encoder); PipeLine::register_global_elem_creator("PL_Queue", create_PL_Queue); PipeLine::register_global_elem_creator("PL_Scale", create_PL_Scale); @@ -46,7 +50,7 @@ bool ret = rtspClient->init(&rtspConfig); if (!ret) { - LOG_ERROR << "rtspClient.init error"; + LOG_ERROR << "rtspClient.init error" << std::endl; exit(EXIT_FAILURE); } } @@ -56,7 +60,7 @@ bool ret = h264Decoder->init(nullptr); if (!ret) { - LOG_ERROR << "PL_H264Decoder.init error"; + LOG_ERROR << "PL_H264Decoder.init error" << std::endl; exit(EXIT_FAILURE); } } @@ -66,23 +70,35 @@ bool ret = avFrameYUV420->init(nullptr); if (!ret) { - LOG_ERROR << "PL_AVFrameYUV420.init error"; + LOG_ERROR << "PL_AVFrameYUV420.init error" << std::endl; exit(EXIT_FAILURE); } } - //{ - // PL_Scale_Config config; - // config.toWidth = 800; - // config.toHeight = 600; - // PL_Scale* ple = (PL_Scale*)pipeLine.push_elem("PL_Scale"); - // bool ret = ple->init(&config); - // if (!ret) - // { - // LOG_ERROR << "PL_Scale.init error"; - // exit(EXIT_FAILURE); - // } - //} + { + PL_Scale_Config config; + config.toWidth = 480; + config.toHeight = 360; + PL_Scale* ple = (PL_Scale*)pipeLine.push_elem("PL_Scale"); + bool ret = ple->init(&config); + if (!ret) + { + LOG_ERROR << "PL_Scale.init error" << std::endl; + exit(EXIT_FAILURE); + } + } + + { + PL_AVFrameBGRA_Config config; + config.convertTo = PL_AVFrameBGRA_Config::I420_TO_RGBA8888; + PL_AVFrameBGRA* ple = (PL_AVFrameBGRA*)pipeLine.push_elem("PL_AVFrameBGRA"); + bool ret = ple->init(&config); + if (!ret) + { + LOG_ERROR << "PL_AVFrameBGRA.init error" << std::endl; + exit(EXIT_FAILURE); + } + } //{ // SensetimeFaceTrackConfig config; @@ -119,18 +135,21 @@ // bool ret = queue1->init(&config); // if (!ret) // { - // LOG_ERROR << "queue1.init error"; + // LOG_ERROR << "queue1.init error" << std::endl; // exit(EXIT_FAILURE); // } //} //{ // PL_H264Encoder_Config config; + // config.av_opt_preset = "superfast"; + // config.av_opt_tune = "zerolatency"; + // config.avc_profile_str = "baseline"; // PL_H264Encoder* h264Encoder = (PL_H264Encoder*)pipeLine.push_elem("PL_H264Encoder"); // bool ret = h264Encoder->init(&config); // if (!ret) // { - // LOG_ERROR << "PL_H264Encoder.init error"; + // LOG_ERROR << "PL_H264Encoder.init error" << std::endl; // exit(EXIT_FAILURE); // } //} @@ -140,15 +159,15 @@ // bool ret = rtspServer->init(nullptr); // if (!ret) // { - // LOG_ERROR << "rtspServer.init error"; + // LOG_ERROR << "rtspServer.init error" << std::endl; // exit(EXIT_FAILURE); // } //} while(true) { - //LOG_ERROR << "begin pipe"; + //LOG_ERROR << "begin pipe" << std::endl; pipeLine.pipe(); - //LOG_ERROR << "end pipe"; + //LOG_ERROR << "end pipe" << std::endl; } } -- Gitblit v1.8.0