[mythtv] [PATCH] time stretch with libsoundtouch
Jeremiah Morris
jm at whpress.com
Sun Oct 31 22:49:18 UTC 2004
On 31 Oct 2004, at 7:19 AM, Mark Spieth wrote:
> this is the first release of audio timestretching using libsoundtouch.
You're not likely to win any friends with this, Mark, for two reasons:
1) Your proposal for using libsoundtouch was already rejected. You
were told how the already-in-CVS libsamplerate could do the job, and
you ignored that. If you have a compelling argument for why
libsamplerate fundamentally won't work, or you can't see how to get it
to do what you need, ask questions instead of submitting code built on
a rejected premise. (See the recent discussion of TagLib vs. libid3tag
to see how dependencies usually fare in Myth, and how to listen to
direction from the lead developers.)
2) It's not nice to release a major audio patch when a major audio
patch is already under testing and consideration for CVS. Your patches
won't apply for anyone that cares about developing Myth audio, since
they are already working with the other patch and not CVS. It's much
more polite to wait until things are quieter: folks have more time to
look at your patch, and it wouldn't be immediately obsolete.
You'll find a more receptive audience for your patches in the future if
you keep these points in mind.
But, it takes both etiquette and code to add features to Myth, and I
can help with the latter. The replacement files in the attached
archive add your SetStretchFactor() method to AudioOutputBase, using
libsamplerate instead of SoundTouch. This is based on Ed's patch under
consideration, so you'll have to apply that patch or wait for the CVS
update.
It may not sound quite as good as the SoundTouch version, as
libsamplerate doesn't do the pitch adjustment that SoundTouch would,
but from my experience you've got zero chance at getting a SoundTouch
dependency added for such a niche feature. Myth development is very
much a team effort, and the art of compromise will help you greatly.
This should give you a starting point for another try at this
functionality. I'd recommend that you wait until the volume control
patches are settled and checked in, integrate your previous work with
CVS and libsamplerate, and then post again. At that point, you'll have
a much better chance of having your patch examined and its merits
discussed.
- Jeremiah
-------------- next part --------------
A non-text attachment was scrubbed...
Name: stretchaudio.tar.bz2
Type: application/octet-stream
Size: 5672 bytes
Desc: not available
Url : http://mythtv.org/pipermail/mythtv-dev/attachments/20041031/04f2f182/stretchaudio.tar.obj
More information about the mythtv-dev
mailing list