Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] ebur128 bounty
@ 2025-06-12 14:49 Guillaume Khayat
  2025-06-12 14:59 ` Niklas Haas
  0 siblings, 1 reply; 5+ messages in thread
From: Guillaume Khayat @ 2025-06-12 14:49 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Hello,

The small company I work at uses ebur128 filter.

I’m offering a bounty to improve the filter’s performance on x86 machines.

I’m offering 800 EUR per 10% gain from current baseline, up to 50%/4000 EUR.

I’m aware of 2 recent, promising initiatives to improve performance:
- our own incomplete attempt using SIMD instructions (-17%): https://ffmpeg.org/pipermail/ffmpeg-devel/2025-April/342383.html
- Paul Mahol’s recent work in his fork (-20-25%)

Notes:
- Solution should of course remain EBU R128 compliant (see EBU Loudness Test Set [1], EBU 3341 [2] and EBU 3342 [3] specs)
- Solution can use FMA, AVX, AVX2 but not AVX512.
- Evaluation should be done w/ true peak detection disabled (e.g. "ffmpeg -i ~/test.wav -af ebur128=peak=none:framelog=quiet -f null -“)
- I can offer a down payment at start of work of 800 EUR as a gesture of good will. Rest of payment on patch merge into ffmpeg + invoice

I tried doing this myself but I lack the skills and proper time to learn them on the job. Always happy to sponsor some OSS work though!

Best,

Guillaume

[1]: https://tech.ebu.ch/publications/ebu_loudness_test_set
[2]: https://tech.ebu.ch/files/live/sites/tech/files/shared/tech/tech3341.pdf
[3]: https://tech.ebu.ch/files/live/sites/tech/files/shared/tech/tech3342.pdf
_______________________________________________
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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [FFmpeg-devel] ebur128 bounty
  2025-06-12 14:49 [FFmpeg-devel] ebur128 bounty Guillaume Khayat
@ 2025-06-12 14:59 ` Niklas Haas
  2025-06-12 15:09   ` Guillaume Khayat
  0 siblings, 1 reply; 5+ messages in thread
From: Niklas Haas @ 2025-06-12 14:59 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

On Thu, 12 Jun 2025 16:49:34 +0200 Guillaume Khayat <gkhayat@spectre-music.com> wrote:
> Hello,
>
> The small company I work at uses ebur128 filter.
>
> I’m offering a bounty to improve the filter’s performance on x86 machines.
>
> I’m offering 800 EUR per 10% gain from current baseline, up to 50%/4000 EUR.
>
> I’m aware of 2 recent, promising initiatives to improve performance:
> - our own incomplete attempt using SIMD instructions (-17%): https://ffmpeg.org/pipermail/ffmpeg-devel/2025-April/342383.html
> - Paul Mahol’s recent work in his fork (-20-25%)
>
> Notes:
> - Solution should of course remain EBU R128 compliant (see EBU Loudness Test Set [1], EBU 3341 [2] and EBU 3342 [3] specs)
> - Solution can use FMA, AVX, AVX2 but not AVX512.
> - Evaluation should be done w/ true peak detection disabled (e.g. "ffmpeg -i ~/test.wav -af ebur128=peak=none:framelog=quiet -f null -“)
> - I can offer a down payment at start of work of 800 EUR as a gesture of good will. Rest of payment on patch merge into ffmpeg + invoice
>
> I tried doing this myself but I lack the skills and proper time to learn them on the job. Always happy to sponsor some OSS work though!

Hi,

I'm happy to take a look at this. To be clear, you are fine with me taking
your existing SIMD code as a starting point?

Out of curiousity, did you try the "loudnorm" filter as well?

>
> Best,
>
> Guillaume
>
> [1]: https://tech.ebu.ch/publications/ebu_loudness_test_set
> [2]: https://tech.ebu.ch/files/live/sites/tech/files/shared/tech/tech3341.pdf
> [3]: https://tech.ebu.ch/files/live/sites/tech/files/shared/tech/tech3342.pdf
> _______________________________________________
> 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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [FFmpeg-devel] ebur128 bounty
  2025-06-12 14:59 ` Niklas Haas
@ 2025-06-12 15:09   ` Guillaume Khayat
  2025-06-12 20:18     ` Niklas Haas
  0 siblings, 1 reply; 5+ messages in thread
From: Guillaume Khayat @ 2025-06-12 15:09 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Hi Niklas,

Awesome!

> To be clear, you are fine with me taking your existing SIMD code as a starting point?
Yes I am

> Out of curiousity, did you try the "loudnorm" filter as well?
Yes, it’s significantly slower.
Last i checked it was 30x realtime. I measured ebur128 at 200x with peak=true, and 1000x with peak=none

Guillaume
_______________________________________________
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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [FFmpeg-devel] ebur128 bounty
  2025-06-12 15:09   ` Guillaume Khayat
@ 2025-06-12 20:18     ` Niklas Haas
  2025-06-13  7:45       ` Guillaume Khayat
  0 siblings, 1 reply; 5+ messages in thread
From: Niklas Haas @ 2025-06-12 20:18 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

On Thu, 12 Jun 2025 17:09:35 +0200 Guillaume Khayat <gkhayat@spectre-music.com> wrote:
> Hi Niklas,
>
> Awesome!
>
> > To be clear, you are fine with me taking your existing SIMD code as a starting point?
> Yes I am
>
> > Out of curiousity, did you try the "loudnorm" filter as well?
> Yes, it’s significantly slower.
> Last i checked it was 30x realtime. I measured ebur128 at 200x with peak=true, and 1000x with peak=none

I sent some preliminary fixes that improve the performance somewhat on my end.

Still working on an FMA3/AVX2 backend, I will probably finish it by tomorrow.

>
> Guillaume
> _______________________________________________
> 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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [FFmpeg-devel] ebur128 bounty
  2025-06-12 20:18     ` Niklas Haas
@ 2025-06-13  7:45       ` Guillaume Khayat
  0 siblings, 0 replies; 5+ messages in thread
From: Guillaume Khayat @ 2025-06-13  7:45 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Hi Niklas,

Vey nice. I’m seeing 22% improvement already.

I’ll reach out privately to get us started on the paperwork.

Best,

SPECTRE

Guillaume KHAYAT / Technical Director

(T) +33 (0)1 43 87 12 34

Paris — 39, rue de Rome 75008 Paris, France 
Asia — Prosperity Tower, Room 1501,
39 Queen’s Road Central, Hong Kong SAR
Middle East - Tiara United Towers, East, #2608, Business Bay, Dubai, UAE

www.spectre-music.com <https://www.spectre-music.com/>
@spectre.music <https://www.instagram.com/spectre.music>

CONFIDENTIALITY NOTICE: If you have received this email in error, please immediately notify the sender by email at the address shown. This e-mail transmission may contain confidential information. This information is intended only for the use of the individual(s) or entity to whom it is intended even if addressed incorrectly. Please delete it from your files if you are not the intended recipient.

> On 12 Jun 2025, at 22:18, Niklas Haas <ffmpeg@haasn.xyz> wrote:
> 
> On Thu, 12 Jun 2025 17:09:35 +0200 Guillaume Khayat <gkhayat@spectre-music.com> wrote:
>> Hi Niklas,
>> 
>> Awesome!
>> 
>>> To be clear, you are fine with me taking your existing SIMD code as a starting point?
>> Yes I am
>> 
>>> Out of curiousity, did you try the "loudnorm" filter as well?
>> Yes, it’s significantly slower.
>> Last i checked it was 30x realtime. I measured ebur128 at 200x with peak=true, and 1000x with peak=none
> 
> I sent some preliminary fixes that improve the performance somewhat on my end.
> 
> Still working on an FMA3/AVX2 backend, I will probably finish it by tomorrow.
> 
>> 
>> Guillaume
>> _______________________________________________
>> 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".

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-06-13  7:46 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-06-12 14:49 [FFmpeg-devel] ebur128 bounty Guillaume Khayat
2025-06-12 14:59 ` Niklas Haas
2025-06-12 15:09   ` Guillaume Khayat
2025-06-12 20:18     ` Niklas Haas
2025-06-13  7:45       ` Guillaume Khayat

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