FFmpeg
Functions
swresample.h File Reference
#include <stdint.h>
#include "libavutil/channel_layout.h"
#include "libavutil/frame.h"
#include "libavutil/samplefmt.h"
#include "libswresample/version_major.h"

Go to the source code of this file.

Functions

const AVClassswr_get_class (void)
 Get the AVClass for SwrContext. More...
 
SwrContext constructor functions
struct SwrContextswr_alloc (void)
 Allocate SwrContext. More...
 
int swr_init (struct SwrContext *s)
 Initialize context after user parameters have been set. More...
 
int swr_is_initialized (struct SwrContext *s)
 Check whether an swr context has been initialized or not. More...
 
int swr_alloc_set_opts2 (struct SwrContext **ps, const AVChannelLayout *out_ch_layout, enum AVSampleFormat out_sample_fmt, int out_sample_rate, const AVChannelLayout *in_ch_layout, enum AVSampleFormat in_sample_fmt, int in_sample_rate, int log_offset, void *log_ctx)
 Allocate SwrContext if needed and set/reset common parameters. More...
 
SwrContext destructor functions
void swr_free (struct SwrContext **s)
 Free the given SwrContext and set the pointer to NULL. More...
 
void swr_close (struct SwrContext *s)
 Closes the context so that swr_is_initialized() returns 0. More...
 
Core conversion functions
int swr_convert (struct SwrContext *s, uint8_t *const *out, int out_count, const uint8_t *const *in, int in_count)
 Convert audio. More...
 
int64_t swr_next_pts (struct SwrContext *s, int64_t pts)
 Convert the next timestamp from input to output timestamps are in 1/(in_sample_rate * out_sample_rate) units. More...
 
Low-level option setting functions

These functons provide a means to set low-level options that is not possible with the AVOption API.

int swr_set_compensation (struct SwrContext *s, int sample_delta, int compensation_distance)
 Activate resampling compensation ("soft" compensation). More...
 
int swr_set_channel_mapping (struct SwrContext *s, const int *channel_map)
 Set a customized input channel mapping. More...
 
int swr_build_matrix2 (const AVChannelLayout *in_layout, const AVChannelLayout *out_layout, double center_mix_level, double surround_mix_level, double lfe_mix_level, double maxval, double rematrix_volume, double *matrix, ptrdiff_t stride, enum AVMatrixEncoding matrix_encoding, void *log_context)
 Generate a channel mixing matrix. More...
 
int swr_set_matrix (struct SwrContext *s, const double *matrix, int stride)
 Set a customized remix matrix. More...
 
Sample handling functions
int swr_drop_output (struct SwrContext *s, int count)
 Drops the specified number of output samples. More...
 
int swr_inject_silence (struct SwrContext *s, int count)
 Injects the specified number of silence samples. More...
 
int64_t swr_get_delay (struct SwrContext *s, int64_t base)
 Gets the delay the next input sample will experience relative to the next output sample. More...
 
int swr_get_out_samples (struct SwrContext *s, int in_samples)
 Find an upper bound on the number of samples that the next swr_convert call will output, if called with in_samples of input samples. More...
 
Configuration accessors
unsigned swresample_version (void)
 Return the LIBSWRESAMPLE_VERSION_INT constant. More...
 
const char * swresample_configuration (void)
 Return the swr build-time configuration. More...
 
const char * swresample_license (void)
 Return the swr license. More...
 
AVFrame based API
int swr_convert_frame (SwrContext *swr, AVFrame *output, const AVFrame *input)
 Convert the samples in the input AVFrame and write them to the output AVFrame. More...
 
int swr_config_frame (SwrContext *swr, const AVFrame *out, const AVFrame *in)
 Configure or reconfigure the SwrContext using the information provided by the AVFrames. More...
 

Option constants

These constants are used for the AVOptions interface for lswr.

#define SWR_FLAG_RESAMPLE   1
 Force resampling even if equal sample rate. More...
 
enum  SwrDitherType {
  SWR_DITHER_NONE = 0, SWR_DITHER_RECTANGULAR, SWR_DITHER_TRIANGULAR, SWR_DITHER_TRIANGULAR_HIGHPASS,
  SWR_DITHER_NS = 64, SWR_DITHER_NS_LIPSHITZ, SWR_DITHER_NS_F_WEIGHTED, SWR_DITHER_NS_MODIFIED_E_WEIGHTED,
  SWR_DITHER_NS_IMPROVED_E_WEIGHTED, SWR_DITHER_NS_SHIBATA, SWR_DITHER_NS_LOW_SHIBATA, SWR_DITHER_NS_HIGH_SHIBATA,
  SWR_DITHER_NB
}
 Dithering algorithms. More...
 
enum  SwrEngine { SWR_ENGINE_SWR, SWR_ENGINE_SOXR, SWR_ENGINE_NB }
 Resampling Engines. More...
 
enum  SwrFilterType { SWR_FILTER_TYPE_CUBIC, SWR_FILTER_TYPE_BLACKMAN_NUTTALL, SWR_FILTER_TYPE_KAISER }
 Resampling Filter Types. More...
 

Detailed Description

libswresample public header

Definition in file swresample.h.