From: Antoine Soulier via ffmpeg-devel <ffmpeg-devel@ffmpeg.org>
To: Paul B Mahol <onemda@gmail.com>
Cc: Antoine Soulier <asoulier@google.com>,
FFmpeg development discussions and patches
<ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH 1/5] configure: Add option for enabling LC3/LC3plus wrapper
Date: Tue, 26 Mar 2024 10:57:23 -0700
Message-ID: <CA+wrVdYFkY=2hThYyjdDshZefFB2aLibaaRW-oDJ03pZdRNuGQ@mail.gmail.com> (raw)
In-Reply-To: <CAPYw7P48ss-P03wJbu2_8xqjzpKK5Don0=t85hGyT3sNWjVDnw@mail.gmail.com>
Compared with the C implementation of KissFFT (it's the only one I tested
on ARM M4).
Yes, there is no SIMD on x86. This was not the main target.
Was mainly made for ARM M4 (for BLE devices Nordic Semi / Zephyr), and ARM
Neon (Android).
By the way, this does not change a lot, the FFT/MDCT on powerful CPU's is
marginal compared to the read/write of the bitstream arithmetically coded.
We can perhaps connect the FFMpeg implementation, but it will probably miss
2 things:
- Some transformations are not a multiple of 15, but only 5 * 2^n. I guess
FFmpeg only has a base 15 implementation.
- It uses asymmetric windowing, to reduce algorithmic delay. Some
coefficients are zeroed. Not important, but will need a larger coefficients
table, and a bunch of multiplication by 0, without a specific
implementation.
So I think it will need some work.
On Tue, Mar 26, 2024 at 10:45 AM Paul B Mahol <onemda@gmail.com> wrote:
>
>
> On Tue, Mar 26, 2024 at 6:07 PM Antoine Soulier <asoulier@google.com>
> wrote:
>
>> What do you mean by sub-optimal?
>> It's stacked by prime factors, and unrolled for FFT3 and FF5.
>> The butterfly implementations of FFT3 and FF5, gives me slightly slower
>> computation. FFT5 is done first, so it takes advantage of sin()/cos()
>> values of 0 or 1.
>> There are also no reordering steps (this stage is completely removed),
>> but cannot run in-place.
>> Benchmarks I made show that it runs slightly faster.
>>
>
> Compared with what?
> Where is at least x86 SIMD for that MDCT?
>
>
>>
>> On Tue, Mar 26, 2024 at 9:59 AM Paul B Mahol <onemda@gmail.com> wrote:
>>
>>>
>>> Isn't this using sub-optimal MDCT implementation?
>>>
>>
_______________________________________________
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-03-26 17:57 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-26 16:47 Antoine Soulier via ffmpeg-devel
2024-03-26 16:47 ` [FFmpeg-devel] [PATCH 2/5] avcodec/liblc3: Add encoding/decoding support of LC3 audio codec Antoine Soulier via ffmpeg-devel
2024-03-26 17:49 ` Stefano Sabatini
2024-03-26 18:50 ` Antoine Soulier via ffmpeg-devel
2024-03-26 18:27 ` Andreas Rheinhardt
2024-03-26 19:09 ` Antoine Soulier via ffmpeg-devel
2024-03-26 21:39 ` Andreas Rheinhardt
2024-03-26 16:47 ` [FFmpeg-devel] [PATCH 3/5] avformat/lc3: Add file format for LC3/LC3plus transport Antoine Soulier via ffmpeg-devel
2024-03-26 17:59 ` Stefano Sabatini
2024-03-26 18:33 ` Andreas Rheinhardt
2024-03-26 16:47 ` [FFmpeg-devel] [PATCH 4/5] doc: Add LC3/LC3plus muxer and encoder parameters documentation Antoine Soulier via ffmpeg-devel
2024-03-26 18:17 ` Stefano Sabatini
2024-03-26 16:47 ` [FFmpeg-devel] [PATCH 5/5] Changelog: Add LC3/LC3plus decoding/encoding support Antoine Soulier via ffmpeg-devel
2024-03-26 18:01 ` Stefano Sabatini
2024-03-26 16:58 ` [FFmpeg-devel] [PATCH 1/5] configure: Add option for enabling LC3/LC3plus wrapper Paul B Mahol
2024-03-26 17:07 ` Antoine Soulier via ffmpeg-devel
2024-03-26 17:44 ` Paul B Mahol
2024-03-26 17:57 ` Antoine Soulier via ffmpeg-devel [this message]
2024-03-26 17:31 ` Stefano Sabatini
2024-03-26 17:35 ` Antoine Soulier via ffmpeg-devel
2024-03-26 23:07 Antoine Soulier via ffmpeg-devel
2024-03-27 11:32 ` Stefano Sabatini
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='CA+wrVdYFkY=2hThYyjdDshZefFB2aLibaaRW-oDJ03pZdRNuGQ@mail.gmail.com' \
--to=ffmpeg-devel@ffmpeg.org \
--cc=asoulier@google.com \
--cc=onemda@gmail.com \
/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