From: Yotam Ofek <yotam.ofek@gmail.com>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH] avcodec/aacenc_tns: remove unreachable code branch
Date: Sun, 12 May 2024 15:24:04 +0300
Message-ID: <CANJCQ3JOyU6Rpjv5G9UzJqmozCLxCtoZqKwPao1cWpgb1WPFtw@mail.gmail.com> (raw)
In-Reply-To: <15fc1743-b193-4475-a204-8b6ec8effc78@rothenpieler.org>
Nope :)
Last commit that touched this was 9 years ago, seems like it's an oversight
that was never noticed/fixed.
The native AAC encoder is stable, even if this code was supposed to behave
differently, it's probably good enough as is, and I think that having this
redundant conditional is bad for readability and maintenance (definitely
confused me...)
On Sun, May 12, 2024 at 2:19 PM Timo Rothenpieler <timo@rothenpieler.org>
wrote:
> On 12.05.2024 10:53, Yotam Ofek wrote:
> > the condition being tested was the same as the stop condition for the
> containing loop,
> > so inside the loop it would always test positive
> > ---
> > libavcodec/aacenc_tns.c | 7 +++----
> > 1 file changed, 3 insertions(+), 4 deletions(-)
> >
> > diff --git a/libavcodec/aacenc_tns.c b/libavcodec/aacenc_tns.c
> > index 60888fece7..fa3cd2af39 100644
> > --- a/libavcodec/aacenc_tns.c
> > +++ b/libavcodec/aacenc_tns.c
> > @@ -181,7 +181,7 @@ void ff_aac_search_for_tns(AACEncContext *s,
> SingleChannelElement *sce)
> >
> > for (w = 0; w < sce->ics.num_windows; w++) {
> > float en[2] = {0.0f, 0.0f};
> > - int oc_start = 0, os_start = 0;
> > + int oc_start = 0;
> > int coef_start = sce->ics.swb_offset[sfb_start];
> >
> > for (g = sfb_start; g < sce->ics.num_swb && g <= sfb_end; g++)
> {
> > @@ -202,12 +202,11 @@ void ff_aac_search_for_tns(AACEncContext *s,
> SingleChannelElement *sce)
> > tns->n_filt[w] = is8 ? 1 : order != TNS_MAX_ORDER ? 2 : 3;
> > for (g = 0; g < tns->n_filt[w]; g++) {
> > tns->direction[w][g] = slant != 2 ? slant : en[g] < en[!g];
> > - tns->order[w][g] = g < tns->n_filt[w] ?
> order/tns->n_filt[w] : order - oc_start;
> > - tns->length[w][g] = g < tns->n_filt[w] ?
> sfb_len/tns->n_filt[w] : sfb_len - os_start;
> > + tns->order[w][g] = order/tns->n_filt[w];
> > + tns->length[w][g] = sfb_len/tns->n_filt[w];
>
> Are you sure this isn't an indication that this code was meant to do
> something else, and there is actually a different issue than just dead
> code here?
>
> > quantize_coefs(&coefs[oc_start], tns->coef_idx[w][g],
> tns->coef[w][g],
> > tns->order[w][g], c_bits);
> > oc_start += tns->order[w][g];
> > - os_start += tns->length[w][g];
> > }
> > count++;
> > }
> _______________________________________________
> 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".
>
_______________________________________________
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:[~2024-05-12 12:24 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-12 8:53 Yotam Ofek
2024-05-12 11:19 ` Timo Rothenpieler
2024-05-12 12:24 ` Yotam Ofek [this message]
2024-05-12 14:26 ` Lynne via ffmpeg-devel
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=CANJCQ3JOyU6Rpjv5G9UzJqmozCLxCtoZqKwPao1cWpgb1WPFtw@mail.gmail.com \
--to=yotam.ofek@gmail.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