sink_buffer: implement fixed frame size.
This commit is contained in:
parent
0689d5e17a
commit
1f5c1333a7
@ -55,6 +55,15 @@ typedef struct {
|
||||
*/
|
||||
AVABufferSinkParams *av_abuffersink_params_alloc(void);
|
||||
|
||||
/**
|
||||
* Set the frame size for an audio buffer sink.
|
||||
*
|
||||
* All calls to av_buffersink_get_buffer_ref will return a buffer with
|
||||
* exactly the specified number of samples, or AVERROR(EAGAIN) if there is
|
||||
* not enough. The last buffer at EOF will be padded with 0.
|
||||
*/
|
||||
void av_buffersink_set_frame_size(AVFilterContext *ctx, unsigned frame_size);
|
||||
|
||||
/**
|
||||
* Tell av_buffersink_get_buffer_ref() to read video/samples buffer
|
||||
* reference, but not remove it from the buffer. This is useful if you
|
||||
|
@ -125,6 +125,14 @@ static void end_frame(AVFilterLink *inlink)
|
||||
}
|
||||
}
|
||||
|
||||
void av_buffersink_set_frame_size(AVFilterContext *ctx, unsigned frame_size)
|
||||
{
|
||||
AVFilterLink *inlink = ctx->inputs[0];
|
||||
|
||||
inlink->min_samples = inlink->max_samples =
|
||||
inlink->partial_buf_size = frame_size;
|
||||
}
|
||||
|
||||
int av_buffersink_get_buffer_ref(AVFilterContext *ctx,
|
||||
AVFilterBufferRef **bufref, int flags)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user