From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH 1/2] fftools/opt_common: Use %c instead of %s to write single char
Date: Mon, 31 Jul 2023 03:43:19 +0200
Message-ID: <GV1P250MB0737ACD1CA8CDEC36FDC7F4C8F05A@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <76e91f86-4ec5-d7c3-4f6e-9f5bebd25586@gmail.com>
James Almer:
> On 7/30/2023 9:47 PM, Andreas Rheinhardt wrote:
>> Also combine multiple printfs.
>>
>> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
>> ---
>> fftools/opt_common.c | 28 ++++++++++++++--------------
>> 1 file changed, 14 insertions(+), 14 deletions(-)
>>
>> diff --git a/fftools/opt_common.c b/fftools/opt_common.c
>> index 7c996f140d..3881d5bbef 100644
>> --- a/fftools/opt_common.c
>> +++ b/fftools/opt_common.c
>> @@ -692,14 +692,13 @@ int show_codecs(void *optctx, const char *opt,
>> const char *arg)
>> if (strstr(desc->name, "_deprecated"))
>> continue;
>> - printf(" ");
>> - printf(avcodec_find_decoder(desc->id) ? "D" : ".");
>> - printf(avcodec_find_encoder(desc->id) ? "E" : ".");
>> -
>> - printf("%c", get_media_type_char(desc->type));
>> - printf((desc->props & AV_CODEC_PROP_INTRA_ONLY) ? "I" : ".");
>> - printf((desc->props & AV_CODEC_PROP_LOSSY) ? "L" : ".");
>> - printf((desc->props & AV_CODEC_PROP_LOSSLESS) ? "S" : ".");
>> + printf(" %c%c%c%c%c%c",
>> + avcodec_find_decoder(desc->id) ? 'D' : '.',
>> + avcodec_find_encoder(desc->id) ? 'E' : '.',
>> + get_media_type_char(desc->type),
>> + (desc->props & AV_CODEC_PROP_INTRA_ONLY) ? 'I' : '.',
>> + (desc->props & AV_CODEC_PROP_LOSSY) ? 'L' : '.',
>> + (desc->props & AV_CODEC_PROP_LOSSLESS) ? 'S' : '.');
>> printf(" %-20s %s", desc->name, desc->long_name ?
>> desc->long_name : "");
>> @@ -747,12 +746,13 @@ static void print_codecs(int encoder)
>> void *iter = NULL;
>> while ((codec = next_codec_for_id(desc->id, &iter,
>> encoder))) {
>> - printf(" %c", get_media_type_char(desc->type));
>> - printf((codec->capabilities & AV_CODEC_CAP_FRAME_THREADS)
>> ? "F" : ".");
>> - printf((codec->capabilities & AV_CODEC_CAP_SLICE_THREADS)
>> ? "S" : ".");
>> - printf((codec->capabilities & AV_CODEC_CAP_EXPERIMENTAL)
>> ? "X" : ".");
>> - printf((codec->capabilities &
>> AV_CODEC_CAP_DRAW_HORIZ_BAND)?"B" : ".");
>> - printf((codec->capabilities & AV_CODEC_CAP_DR1)
>> ? "D" : ".");
>> + printf(" %c%c%c%c%c%c",
>> + get_media_type_char(desc->type),
>> + (codec->capabilities &
>> AV_CODEC_CAP_FRAME_THREADS) ? 'F' : '.',
>> + (codec->capabilities &
>> AV_CODEC_CAP_SLICE_THREADS) ? 'S' : '.',
>> + (codec->capabilities &
>> AV_CODEC_CAP_EXPERIMENTAL) ? 'X' : '.',
>> + (codec->capabilities &
>> AV_CODEC_CAP_DRAW_HORIZ_BAND) ? 'B' : '.',
>> + (codec->capabilities &
>> AV_CODEC_CAP_DR1) ? 'D' : '.');
>> printf(" %-20s %s", codec->name, codec->long_name ?
>> codec->long_name : "");
>> if (strcmp(codec->name, desc->name))
>
> You could instead port this function to AVBPrint, to only print to
> stderr once.
I do not think this is a good idea as it would add another potential
source of errors (for the implicit (re)allocations that happen when
using the AVBPrint API).
- Andreas
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2023-07-31 1:42 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-31 0:47 Andreas Rheinhardt
2023-07-31 0:47 ` [FFmpeg-devel] [PATCH 2/2] fftools/opt_common: Don't add unnecessary " " Andreas Rheinhardt
2023-07-31 0:49 ` [FFmpeg-devel] [PATCH 1/2] fftools/opt_common: Use %c instead of %s to write single char James Almer
2023-07-31 1:33 ` Andreas Rheinhardt
2023-07-31 1:43 ` Andreas Rheinhardt [this message]
2023-08-01 3:43 ` Andreas Rheinhardt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=GV1P250MB0737ACD1CA8CDEC36FDC7F4C8F05A@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM \
--to=andreas.rheinhardt@outlook.com \
--cc=ffmpeg-devel@ffmpeg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git