From 5e85a7e80764e1a1eae39c8ce9bafed29d8773a9 Mon Sep 17 00:00:00 2001 From: chenshijun <csj_sky@126.com> Date: 星期二, 23 七月 2019 19:57:27 +0800 Subject: [PATCH] 增加支持推流的代码,并替换librtspclient.so --- csrc/ffmpeg/format/FormatIn.cpp | 15 ++++++++++----- 1 files changed, 10 insertions(+), 5 deletions(-) diff --git a/csrc/ffmpeg/format/FormatIn.cpp b/csrc/ffmpeg/format/FormatIn.cpp index 81d6c5f..b0a577b 100644 --- a/csrc/ffmpeg/format/FormatIn.cpp +++ b/csrc/ffmpeg/format/FormatIn.cpp @@ -21,7 +21,6 @@ #include "../data/FrameData.hpp" #include "../../common/gpu/info.h" -#include "PsToEs.hpp" using namespace logif; @@ -39,8 +38,12 @@ FormatIn::~FormatIn() { if(io_ctx_){ - free(read_io_buff_); - avio_close(io_ctx_); + if(read_io_buff_){ + // av_free(read_io_buff_); + read_io_buff_ = NULL; + } + avio_context_free(&io_ctx_); + io_ctx_ = NULL; } if(ctx_){ avformat_close_input(&ctx_); @@ -48,6 +51,7 @@ ctx_ = NULL; if(dec_ctx_){ avcodec_close(dec_ctx_); + dec_ctx_ = NULL; } } } @@ -85,9 +89,10 @@ int FormatIn::openGb28181(const char *filename, AVDictionary **options){ std::string fn = filename; - addCamera(fn); + //GB28181API gb28181(fn); + handle_gb28181.addCamera(fn); - int ret = openWithCustomIO(NULL, readData, options); + int ret = openWithCustomIO((void *)&handle_gb28181, handle_gb28181.readData, options); if(ret < 0){ logIt("do openWithCustomIO failed:%d",ret); } -- Gitblit v1.8.0