Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: john--- via ffmpeg-devel <ffmpeg-devel@ffmpeg.org>
To: ffmpeg-devel@ffmpeg.org
Cc: john@parabolaresearch.com
Subject: [FFmpeg-devel] Re: [PATCH] WIP: avfilter: add Bungee audio stretch filter (PR #20697)
Date: Mon, 13 Oct 2025 19:16:29 -0000
Message-ID: <176038298984.634.17260768641374263283@61127e804c87> (raw)
In-Reply-To: <CABGuwEnH4iNrnJ=d8v2XsuznyASuoaJKohYp6FqDYrf2K4dJAw@mail.gmail.com>

Thank you for taking a look. Bungee is the result of independent research and optimisation. It was released in Feb 2024 as MPL v2.0. Bungee Pro was released alongside Bungee: although it shares an API, its algorithms are proprietary, its audio quality is industry leading and it is highly optimised for web and mobile platforms.

I don't like to compare to other implementations, but since you asked, Nicolas, here are three main differences between libbungee and librubberband:
1. Bungee is a new and different algorithm. In my opinion, the audio quality is improved in many situations, avoiding some of librubberband's artifacts. Here is a random example at 56% input tempo, taken from the comparison page on the Bungee site:
https://bungee.parabolaresearch.com/audio/bungee/wrong-0.56-0.aac
https://bungee.parabolaresearch.com/audio/rubberband/wrong-0.56-0.aac
That said, such comparisons are subjective and very dependent upon the input audio and on the listener. And Bungee is still far from the perfect time stretcher (Bungee Pro is closer but I'll not say more about that...) 
2. Bungee can be faster than rubberband: 1.7x faster in a quick test on Mac M4 of a tempo change to 56% of original tempo
3. Bungee has a different license: MPL-2.0 which is compatible with LGPL-2.1. librubberband is GPL-2.0 which requires --enable-gpl

This PR is an offer of maybe useful code and I won't be at all offended if Bungee and FFmpeg are not a good fit at this time.

John
_______________________________________________
ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org
To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org

      reply	other threads:[~2025-10-13 19:16 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-13  8:16 [FFmpeg-devel] " kupix via ffmpeg-devel
2025-10-13  8:26 ` [FFmpeg-devel] " Nicolas George via ffmpeg-devel
2025-10-13 16:23   ` Kieran Kunhya via ffmpeg-devel
2025-10-13 19:16     ` john--- via ffmpeg-devel [this message]

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=176038298984.634.17260768641374263283@61127e804c87 \
    --to=ffmpeg-devel@ffmpeg.org \
    --cc=john@parabolaresearch.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