[FFmpeg-devel] yesterdays libavfilter merge

Stefano Sabatini stefasab at gmail.com
Sat May 12 16:00:04 CEST 2012


On date Thursday 2012-05-10 18:07:53 +0200, Michael Niedermayer encoded:
> On Thu, May 10, 2012 at 04:47:58PM +0200, Nicolas George wrote:
> > Le duodi 22 floréal, an CCXX, Michael Niedermayer a écrit :
> > > yesterdays merge brought in some ABI issues
> > > 
> > > first is libav adding a "buffersink" libavfilter/buffersink.c
> > > which seems based on a old version of our buffersink
> > > vs. our libavfilter/sink_buffer.c
> > > 
> > > second is that libav introduced our
> > > avfilter_get_audio_buffer_ref_from_arrays() with different API
> > > ive added that temporary under a new name to be able to finish the
> > > merge quickly
> > > 
> > > can someone (nicolas? stefano?) maybe look into a technical solution/
> > > workaround to this? maybe a configure switch so that the user can
> > > decide at compile time if he needs to be compatible to the debian ABI
> > 
> > IMHO, we can break ABI in one way or another without too much risk:
> > avfilter_get_audio_buffer_ref_from_arrays is mostly an internal function,
> > and a quick Google search does not seem to return anything using it besides
> > ffmpeg and now libav.
> 
> then ive no objections to changing it

AFAIK audio API is considered unstable and marked as such, so while it
is technically advisable to avoid to break it, that's not mandatory.

In second place yes the audio API needs some changes in order to
adjust it to the lavu audio changes, which predate the recent audio
API "raid".

Current problems with audio lavfi API:

- planar/packed switch should be removed, since now that information
  is stored in the AV_SAMPLE_FMT enum.

- audio buffer should be able to store more than 8 audio
  planes/channels, I see that AVFilterBuffer now contains
  extended_data[], don't know if it is already used. lavfi/avcodec
  should also be changed accordingly.

I'll give a try to fix some of these issues, which may require
possibly more API/ABI breakages.
-- 
FFmpeg = Foolish and Faithful Minimal Puritan Exciting Gymnast


More information about the ffmpeg-devel mailing list