[FFmpeg-devel] [RFC] libavfilter audio API and related issues
Bobby Bingham
uhmmmm
Thu Apr 8 15:41:37 CEST 2010
On Mon, 5 Apr 2010 13:55:43 +0200
Stefano Sabatini <stefano.sabatini-lala at poste.it> wrote:
> Follow some notes about a possible design for the audio support in
> libavfilter.
>
> AVFilterSamples struct
> ======================
>
> (Already defined in afilters, but renamed AVFilterBuffer at some
> point.)
>
> Follows a possible definition (with some differences whit respect to
> that currently implemented in afilters):
>
> typedef struct AVFilterSamples
> {
> uint8_t *data;
> int data_size; /* data size in bytes */
> enum SampleFormat format;
>
> unsigned refcount;
>
> /** private data to be used by a custom free function */
> void *priv;
> void (*free)(struct AVFilterSamples *samples);
> } AVFilterSamples;
>
> typedef struct AVFilterSamplesRef
> {
> AVFilterSamples *samples;
> uint8_t *data; ///< samples data
> unsigned data_size;
I'm sure I've seen threads about this in the past, but I didn't follow
them closely at the time. How do you define the number of channels and
the channel order?
>
> int64_t pts; ///< presentation timestamp in units of 1/AV_TIME_BASE
I don't know how this is used in the rest of libav*, so maybe this is
obvious to someone who does know, but is this PTS associated with the
first sample?
>
> unsigned sample_rate; ///< number of sampler per second
Will this ever change from one frame to the next? If not, maybe it
should go in the link structure. That would allow eg. auto-insertion of
a resample filter if an audio sink didn't support a given sample rate.
> [...]
--
Bobby Bingham
??????????????????????
More information about the ffmpeg-devel
mailing list