Browse Source

lavfi: implement avfilter_get_audio_buffer_ref_from_frame.

tags/n0.11
Nicolas George 13 years ago
parent
commit
32094285ad
2 changed files with 24 additions and 0 deletions
  1. +14
    -0
      libavfilter/avcodec.c
  2. +10
    -0
      libavfilter/avcodec.h

+ 14
- 0
libavfilter/avcodec.c View File

@@ -56,6 +56,20 @@ AVFilterBufferRef *avfilter_get_video_buffer_ref_from_frame(const AVFrame *frame
return picref;
}

AVFilterBufferRef *avfilter_get_audio_buffer_ref_from_frame(const AVFrame *frame,
int perms)
{
AVFilterBufferRef *picref =
avfilter_get_audio_buffer_ref_from_arrays((uint8_t **)frame->data, (int *)frame->linesize, perms,
frame->nb_samples, frame->format,
av_frame_get_channel_layout(frame),
av_sample_fmt_is_planar(frame->format));
if (!picref)
return NULL;
avfilter_copy_frame_props(picref, frame);
return picref;
}

int avfilter_fill_frame_from_audio_buffer_ref(AVFrame *frame,
const AVFilterBufferRef *samplesref)
{


+ 10
- 0
libavfilter/avcodec.h View File

@@ -46,6 +46,16 @@ int avfilter_copy_frame_props(AVFilterBufferRef *dst, const AVFrame *src);
*/
AVFilterBufferRef *avfilter_get_video_buffer_ref_from_frame(const AVFrame *frame, int perms);


/**
* Create and return a picref reference from the data and properties
* contained in frame.
*
* @param perms permissions to assign to the new buffer reference
*/
AVFilterBufferRef *avfilter_get_audio_buffer_ref_from_frame(const AVFrame *frame,
int perms);

/**
* Fill an AVFrame with the information stored in samplesref.
*


Loading…
Cancel
Save