[FFmpeg-cvslog] lavc: add a flag for exporting AVVideoEncParams from decoders
Anton Khirnov
git at videolan.org
Tue May 12 10:45:46 EEST 2020
ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Tue Mar 10 11:12:13 2020 +0100| [c584409643d5806688e074d00d0a531cad336794] | committer: Anton Khirnov
lavc: add a flag for exporting AVVideoEncParams from decoders
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c584409643d5806688e074d00d0a531cad336794
---
doc/APIchanges | 3 +++
libavcodec/avcodec.h | 5 +++++
libavcodec/options_table.h | 1 +
libavcodec/version.h | 2 +-
4 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/doc/APIchanges b/doc/APIchanges
index 29ab5515e0..e13138b8b9 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -16,8 +16,11 @@ libavutil: 2017-10-21
API changes, most recent first:
2020-xx-xx - xxxxxxxxxx - lavu 56.45.100 - video_enc_params.h
+ lavc 58.84.100 - avcodec.h
Add a new API for exporting video encoding information.
Replaces the deprecated API for exporting QP tables from decoders.
+ Add AV_CODEC_EXPORT_DATA_VIDEO_ENC_PARAMS to request this information from
+ decoders.
2020-05-10 - xxxxxxxxxx - lavu 56.44.100 - hwcontext_vulkan.h
Add enabled_inst_extensions, num_enabled_inst_extensions, enabled_dev_extensions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 2bce39f94b..c9baf859ac 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -531,6 +531,11 @@ typedef struct RcOverride{
* Export encoder Producer Reference Time through packet side data
*/
#define AV_CODEC_EXPORT_DATA_PRFT (1 << 1)
+/**
+ * Decoding only.
+ * Export the AVVideoEncParams structure through frame side data.
+ */
+#define AV_CODEC_EXPORT_DATA_VIDEO_ENC_PARAMS (1 << 2)
/**
* Pan Scan area.
diff --git a/libavcodec/options_table.h b/libavcodec/options_table.h
index 54366747ca..695fa5c211 100644
--- a/libavcodec/options_table.h
+++ b/libavcodec/options_table.h
@@ -81,6 +81,7 @@ static const AVOption avcodec_options[] = {
{"export_side_data", "Export metadata as side data", OFFSET(export_side_data), AV_OPT_TYPE_FLAGS, {.i64 = DEFAULT}, 0, UINT_MAX, A|V|S|D|E, "export_side_data"},
{"mvs", "export motion vectors through frame side data", 0, AV_OPT_TYPE_CONST, {.i64 = AV_CODEC_EXPORT_DATA_MVS}, INT_MIN, INT_MAX, V|D, "export_side_data"},
{"prft", "export Producer Reference Time through packet side data", 0, AV_OPT_TYPE_CONST, {.i64 = AV_CODEC_EXPORT_DATA_PRFT}, INT_MIN, INT_MAX, A|V|S|E, "export_side_data"},
+{"venc_params", "export video encoding parameters through frame side data", 0, AV_OPT_TYPE_CONST, {.i64 = AV_CODEC_EXPORT_DATA_VIDEO_ENC_PARAMS}, INT_MIN, INT_MAX, A|V|S|E, "export_side_data"},
{"time_base", NULL, OFFSET(time_base), AV_OPT_TYPE_RATIONAL, {.dbl = 0}, 0, INT_MAX},
{"g", "set the group of picture (GOP) size", OFFSET(gop_size), AV_OPT_TYPE_INT, {.i64 = 12 }, INT_MIN, INT_MAX, V|E},
{"ar", "set audio sampling rate (in Hz)", OFFSET(sample_rate), AV_OPT_TYPE_INT, {.i64 = DEFAULT }, 0, INT_MAX, A|D|E},
diff --git a/libavcodec/version.h b/libavcodec/version.h
index 691320b63c..82255d7f38 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -28,7 +28,7 @@
#include "libavutil/version.h"
#define LIBAVCODEC_VERSION_MAJOR 58
-#define LIBAVCODEC_VERSION_MINOR 83
+#define LIBAVCODEC_VERSION_MINOR 84
#define LIBAVCODEC_VERSION_MICRO 100
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
More information about the ffmpeg-cvslog
mailing list