FFmpeg audio API: Difference between revisions

From MultimediaWiki
Jump to navigation Jump to search
(More stuff)
No edit summary
Line 1: Line 1:
Discussion page regarding the rework of the ffmpeg audio api to acomodate the requirements needed for todays audio codecs.
This page is for discussion regarding the reworking of the FFmpeg audio API to accommodate the requirements needed for today's audio codecs.


== Features needed ==
== Features needed ==


* Generalized downmixing (simd optimized)
* Generalized downmixing (SIMD optimized)
Users should be able to set their own downmix coeffs.
Users should be able to set their own downmix coeffs.
* Codec setable downmixing coeffs:
* Codec setable downmixing coeffs:
Line 14: Line 14:
* Ability to access one channel from a multichannel stream
* Ability to access one channel from a multichannel stream


== Whished for features ==
== Features wish list ==


* Add a better fft routine, maybe the KISS one
* Add a better FFT routine. (Would the KISS implementation be a good candidate?)
* Fixedpoint mdct/fft functions
* Fixed point MDCT/FFT implementations
* Custom Audio filter support, could be based on the video filter api ideas
* Custom audio filter support. (Basing it on the video filter API ideas?)


== Current ideas ==
== Current ideas ==
Thread with previous discussions in the subject. The thread has several ideas already implemented.
Thread with previous discussions in the subject. The thread has several ideas already implemented.


http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/47485/focus=48097
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/47485/focus=48097

Revision as of 10:44, 12 November 2007

This page is for discussion regarding the reworking of the FFmpeg audio API to accommodate the requirements needed for today's audio codecs.

Features needed

  • Generalized downmixing (SIMD optimized)

Users should be able to set their own downmix coeffs.

  • Codec setable downmixing coeffs:

The codec should be able to set and update the coefs during runtime(dca supports that feature, maybe ac3 also).

  • Output channel request function (ie, request a specified number of channels, default should be >2 channels mapped to 2 channels).
  • Channel reordering, currently there are diffrent orders depending on the codec.
  • Simd optimized interleaving
  • Allow planer output, (don't duplicate interleaving code in every codec)
  • Add support for other bitdepths then 16bits (ie 24/8/32/float)
  • Ability to access one channel from a multichannel stream

Features wish list

  • Add a better FFT routine. (Would the KISS implementation be a good candidate?)
  • Fixed point MDCT/FFT implementations
  • Custom audio filter support. (Basing it on the video filter API ideas?)

Current ideas

Thread with previous discussions in the subject. The thread has several ideas already implemented.

http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/47485/focus=48097