From 0c98249d381d6e56c78d6e752a49e768a4c4d22e Mon Sep 17 00:00:00 2001 From: zhangmeng <775834166@qq.com> Date: 星期五, 27 九月 2019 12:46:29 +0800 Subject: [PATCH] lib log fix --- csrc/wrapper.cpp | 40 +++++++++++++++++++++++++++++----------- 1 files changed, 29 insertions(+), 11 deletions(-) diff --git a/csrc/wrapper.cpp b/csrc/wrapper.cpp index 7bba3de..26aee19 100644 --- a/csrc/wrapper.cpp +++ b/csrc/wrapper.cpp @@ -38,7 +38,7 @@ namespace cffmpeg_wrap{ using namespace buz; - Wrapper::Wrapper(const bool logit, const char *logfile) + Wrapper::Wrapper() :input_url_("") ,scale_w_(0) ,scale_h_(0) @@ -52,11 +52,29 @@ ,stream_(nullptr) ,decoder_(nullptr) ,rec_(new rec) + ,logit_(false) { makeTheWorld(); - if (logit){ - logif::CreateLogger(logfile, true); - } + } + + Wrapper::Wrapper(const char *logfile) + :input_url_("") + ,scale_w_(0) + ,scale_h_(0) + ,scale_f_(SWS_POINT) + ,audio_(false) + ,gb_(0) + ,cpu_(0) + ,run_dec_(false) + ,thread_(nullptr) + ,stop_stream_(false) + ,stream_(nullptr) + ,decoder_(nullptr) + ,rec_(new rec) + ,logit_(true) + { + makeTheWorld(); + logif::CreateLogger(logfile, true); } @@ -74,7 +92,8 @@ { logIt("WRAPPER EXCEPTION: ", e.what()); } - logif::DestroyLogger(); + if (logit_) + logif::DestroyLogger(); } std::unique_ptr<ffwrapper::FormatIn> Wrapper::init_reader(const char* input){ @@ -162,17 +181,12 @@ void Wrapper::run_stream_thread(){ - int tryTime = 0; while(!stop_stream_.load()){ auto in = init_reader(input_url_.c_str()); if (!in) { logIt("ERROR: init_reader! url: %s\n", input_url_.c_str()); - usleep(200000); - tryTime++; - if (tryTime == 50){ - break; - } + sleep(2); continue; } @@ -191,6 +205,10 @@ break; } + if (in->notVideoAudio(&data->getAVPacket())){ + continue; + } + if (!gb_ && id < 0){ id++; continue; -- Gitblit v1.8.0