From 6f9d46539bce25828e3229db6cd9c0dbae1f3e11 Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期日, 19 一月 2020 11:43:34 +0800
Subject: [PATCH] update ffmpeg
---
csrc/thirdparty/ffmpeg/include/libavutil/lfg.h | 15 ++++++++++++---
csrc/wrapper.cpp | 13 ++++++++-----
csrc/thirdparty/ffmpeg/include/libavutil/ffversion.h | 2 +-
csrc/thirdparty/ffmpeg/lib/libavfilter.a | 0
csrc/ffmpeg/configure/conf.cpp | 2 +-
csrc/thirdparty/ffmpeg/lib/libavcodec.a | 0
csrc/thirdparty/ffmpeg/lib/libavformat.a | 0
csrc/thirdparty/ffmpeg/lib/libavutil.a | 0
8 files changed, 22 insertions(+), 10 deletions(-)
diff --git a/csrc/ffmpeg/configure/conf.cpp b/csrc/ffmpeg/configure/conf.cpp
index d836840..43e45ac 100644
--- a/csrc/ffmpeg/configure/conf.cpp
+++ b/csrc/ffmpeg/configure/conf.cpp
@@ -13,7 +13,7 @@
av_register_all();
avfilter_register_all();
avformat_network_init();
- av_log_set_level(AV_LOG_ERROR);
+ av_log_set_level(AV_LOG_VERBOSE);
}
std::string getAVErrorDesc(const int code){
diff --git a/csrc/thirdparty/ffmpeg/include/libavutil/ffversion.h b/csrc/thirdparty/ffmpeg/include/libavutil/ffversion.h
index f4377b7..e5c2702 100644
--- a/csrc/thirdparty/ffmpeg/include/libavutil/ffversion.h
+++ b/csrc/thirdparty/ffmpeg/include/libavutil/ffversion.h
@@ -1,5 +1,5 @@
/* Automatically generated by version.sh, do not manually edit! */
#ifndef AVUTIL_FFVERSION_H
#define AVUTIL_FFVERSION_H
-#define FFMPEG_VERSION "4.2"
+#define FFMPEG_VERSION "4.2.2"
#endif /* AVUTIL_FFVERSION_H */
diff --git a/csrc/thirdparty/ffmpeg/include/libavutil/lfg.h b/csrc/thirdparty/ffmpeg/include/libavutil/lfg.h
index 03f779a..2b66920 100644
--- a/csrc/thirdparty/ffmpeg/include/libavutil/lfg.h
+++ b/csrc/thirdparty/ffmpeg/include/libavutil/lfg.h
@@ -24,6 +24,12 @@
#include <stdint.h>
+/**
+ * Context structure for the Lagged Fibonacci PRNG.
+ * The exact layout, types and content of this struct may change and should
+ * not be accessed directly. Only its sizeof() is guranteed to stay the same
+ * to allow easy instanciation.
+ */
typedef struct AVLFG {
unsigned int state[64];
int index;
@@ -45,8 +51,9 @@
* it may be good enough and faster for your specific use case.
*/
static inline unsigned int av_lfg_get(AVLFG *c){
- c->state[c->index & 63] = c->state[(c->index-24) & 63] + c->state[(c->index-55) & 63];
- return c->state[c->index++ & 63];
+ unsigned a = c->state[c->index & 63] = c->state[(c->index-24) & 63] + c->state[(c->index-55) & 63];
+ c->index += 1U;
+ return a;
}
/**
@@ -57,7 +64,9 @@
static inline unsigned int av_mlfg_get(AVLFG *c){
unsigned int a= c->state[(c->index-55) & 63];
unsigned int b= c->state[(c->index-24) & 63];
- return c->state[c->index++ & 63] = 2*a*b+a+b;
+ a = c->state[c->index & 63] = 2*a*b+a+b;
+ c->index += 1U;
+ return a;
}
/**
diff --git a/csrc/thirdparty/ffmpeg/lib/libavcodec.a b/csrc/thirdparty/ffmpeg/lib/libavcodec.a
index 05f35ec..16293e8 100644
--- a/csrc/thirdparty/ffmpeg/lib/libavcodec.a
+++ b/csrc/thirdparty/ffmpeg/lib/libavcodec.a
Binary files differ
diff --git a/csrc/thirdparty/ffmpeg/lib/libavfilter.a b/csrc/thirdparty/ffmpeg/lib/libavfilter.a
index d1b7d7e..68a18fa 100644
--- a/csrc/thirdparty/ffmpeg/lib/libavfilter.a
+++ b/csrc/thirdparty/ffmpeg/lib/libavfilter.a
Binary files differ
diff --git a/csrc/thirdparty/ffmpeg/lib/libavformat.a b/csrc/thirdparty/ffmpeg/lib/libavformat.a
index ef6f946..1eb63a8 100644
--- a/csrc/thirdparty/ffmpeg/lib/libavformat.a
+++ b/csrc/thirdparty/ffmpeg/lib/libavformat.a
Binary files differ
diff --git a/csrc/thirdparty/ffmpeg/lib/libavutil.a b/csrc/thirdparty/ffmpeg/lib/libavutil.a
index 81936d7..876710b 100644
--- a/csrc/thirdparty/ffmpeg/lib/libavutil.a
+++ b/csrc/thirdparty/ffmpeg/lib/libavutil.a
Binary files differ
diff --git a/csrc/wrapper.cpp b/csrc/wrapper.cpp
index cd82a90..3e34b2c 100644
--- a/csrc/wrapper.cpp
+++ b/csrc/wrapper.cpp
@@ -105,16 +105,19 @@
prop.gpu_acc_ = !cpu_;
std::unique_ptr<FormatIn> in(new FormatIn(prop.gpuAccl()));
- AVDictionary *avdic = prop.optsFormat();
int flag = -1;
if (gb_){
flag = in->openGb28181(input, NULL);
}else{
- flag = in->open(input, &avdic);
+ AVDictionary *avdic = prop.optsFormat();
+ if(avdic){
+ flag = in->open(input, &avdic);
+ av_dict_free(&avdic);
+ }else{
+ flag = in->open(input, NULL);
+ }
}
- if(avdic){
- av_dict_free(&avdic);
- }
+
if(flag == 0){
if(!in->findStreamInfo(NULL)){
logIt("can't find video stream\n");
--
Gitblit v1.8.0