[FFmpeg-devel] [PATCH v10 1/3] avutil/log: Add log flag AV_LOG_PRINT_MEMADDRESSES
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Thu Apr 10 10:38:50 EEST 2025
softworkz:
> From: softworkz <softworkz at hotmail.com>
>
> which is controls prefix formatting. With this flag set, the prefix is
> printed without the memory address, otherwise it is included.
>
> Signed-off-by: softworkz <softworkz at hotmail.com>
> ---
> doc/APIchanges | 3 +++
> libavutil/log.c | 6 ++++--
> libavutil/log.h | 5 +++++
> libavutil/version.h | 2 +-
> 4 files changed, 13 insertions(+), 3 deletions(-)
>
> diff --git a/doc/APIchanges b/doc/APIchanges
> index 65bf5a9419..db832f8b19 100644
> --- a/doc/APIchanges
> +++ b/doc/APIchanges
> @@ -1,5 +1,8 @@
> The last version increases of all libraries were on 2025-03-28
>
> +2025-03-xx - xxxxxxxxxx - lavu 60.2.100 - log.h
> + Add flag AV_LOG_NO_PRINT_MEMADDRESS
> +
> API changes, most recent first:
>
> 2025-04-07 - 19e9a203b7 - lavu 60.01.100 - dict.h
> diff --git a/libavutil/log.c b/libavutil/log.c
> index c5ee876a88..1949a797e7 100644
> --- a/libavutil/log.c
> +++ b/libavutil/log.c
> @@ -327,16 +327,18 @@ static void format_line(void *avcl, int level, const char *fmt, va_list vl,
>
> if(type) type[0] = type[1] = AV_CLASS_CATEGORY_NA + 16;
> if (*print_prefix && avc) {
> + const char *p_fmt = flags & AV_LOG_NO_PRINT_MEMADDRESS ? "[%s] " : "[%s @ %p] ";
> +
> if (avc->parent_log_context_offset) {
> AVClass** parent = *(AVClass ***) (((uint8_t *) avcl) +
> avc->parent_log_context_offset);
> if (parent && *parent) {
> - av_bprintf(part+0, "[%s @ %p] ",
> + av_bprintf(part+0, p_fmt,
> item_name(parent, *parent), parent);
> if(type) type[0] = get_category(parent);
> }
> }
> - av_bprintf(part+1, "[%s @ %p] ",
> + av_bprintf(part+1, p_fmt,
> item_name(avcl, avc), avcl);
> if(type) type[1] = get_category(avcl);
> }
> diff --git a/libavutil/log.h b/libavutil/log.h
> index dd094307ce..499c5d71ab 100644
> --- a/libavutil/log.h
> +++ b/libavutil/log.h
> @@ -416,6 +416,11 @@ int av_log_format_line2(void *ptr, int level, const char *fmt, va_list vl,
> */
> #define AV_LOG_PRINT_DATETIME 8
>
> +/**
> + * Do not print memory addresses of context instances.
> + */
> +#define AV_LOG_NO_PRINT_MEMADDRESS 16
> +
> void av_log_set_flags(int arg);
> int av_log_get_flags(void);
>
> diff --git a/libavutil/version.h b/libavutil/version.h
> index 5139883569..4717cd562b 100644
> --- a/libavutil/version.h
> +++ b/libavutil/version.h
> @@ -79,7 +79,7 @@
> */
>
> #define LIBAVUTIL_VERSION_MAJOR 60
> -#define LIBAVUTIL_VERSION_MINOR 1
> +#define LIBAVUTIL_VERSION_MINOR 2
> #define LIBAVUTIL_VERSION_MICRO 100
>
> #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
The commit message needs an update.
- Andreas
More information about the ffmpeg-devel
mailing list