FFmpeg
|
ALSA input and output: common code. More...
#include <alsa/asoundlib.h>
#include "avdevice.h"
#include "libavutil/avassert.h"
#include "libavutil/channel_layout.h"
#include "alsa-audio.h"
Go to the source code of this file.
Macros | |
#define | REORDER_OUT_50(NAME, TYPE) |
#define | REORDER_OUT_51(NAME, TYPE) |
#define | REORDER_OUT_71(NAME, TYPE) |
#define | FORMAT_I8 0 |
#define | FORMAT_I16 1 |
#define | FORMAT_I32 2 |
#define | FORMAT_F32 3 |
#define | PICK_REORDER(layout) |
Functions | |
static av_cold snd_pcm_format_t | codec_id_to_pcm_format (int codec_id) |
static av_cold int | find_reorder_func (AlsaData *s, int codec_id, uint64_t layout, int out) |
av_cold int | ff_alsa_open (AVFormatContext *ctx, snd_pcm_stream_t mode, unsigned int *sample_rate, int channels, enum AVCodecID *codec_id) |
Open an ALSA PCM. | |
av_cold int | ff_alsa_close (AVFormatContext *s1) |
Close the ALSA PCM. | |
int | ff_alsa_xrun_recover (AVFormatContext *s1, int err) |
Try to recover from ALSA buffer underrun. | |
int | ff_alsa_extend_reorder_buf (AlsaData *s, int min_size) |
ALSA input and output: common code.
Definition in file alsa-audio-common.c.
#define REORDER_OUT_50 | ( | NAME, | |
TYPE | |||
) |
Definition at line 65 of file alsa-audio-common.c.
#define REORDER_OUT_51 | ( | NAME, | |
TYPE | |||
) |
Definition at line 82 of file alsa-audio-common.c.
#define REORDER_OUT_71 | ( | NAME, | |
TYPE | |||
) |
Definition at line 100 of file alsa-audio-common.c.
#define FORMAT_I8 0 |
Definition at line 133 of file alsa-audio-common.c.
Referenced by find_reorder_func().
#define FORMAT_I16 1 |
Definition at line 134 of file alsa-audio-common.c.
Referenced by find_reorder_func().
#define FORMAT_I32 2 |
Definition at line 135 of file alsa-audio-common.c.
Referenced by find_reorder_func().
#define FORMAT_F32 3 |
Definition at line 136 of file alsa-audio-common.c.
Referenced by find_reorder_func().
#define PICK_REORDER | ( | layout | ) |
Definition at line 138 of file alsa-audio-common.c.
Referenced by find_reorder_func().
|
static |
Definition at line 38 of file alsa-audio-common.c.
Referenced by ff_alsa_open().
|
static |
Definition at line 146 of file alsa-audio-common.c.
Referenced by ff_alsa_open().
av_cold int ff_alsa_open | ( | AVFormatContext * | s, |
snd_pcm_stream_t | mode, | ||
unsigned int * | sample_rate, | ||
int | channels, | ||
enum AVCodecID * | codec_id | ||
) |
Open an ALSA PCM.
s | media file handle |
mode | either SND_PCM_STREAM_CAPTURE or SND_PCM_STREAM_PLAYBACK |
sample_rate | in: requested sample rate; out: actually selected sample rate |
channels | number of channels |
codec_id | in: requested AVCodecID or AV_CODEC_ID_NONE; out: actually selected AVCodecID, changed only if AV_CODEC_ID_NONE was requested |
Definition at line 186 of file alsa-audio-common.c.
Referenced by audio_read_header(), and audio_write_header().
av_cold int ff_alsa_close | ( | AVFormatContext * | s1 | ) |
Close the ALSA PCM.
s1 | media file handle |
Definition at line 318 of file alsa-audio-common.c.
int ff_alsa_xrun_recover | ( | AVFormatContext * | s1, |
int | err | ||
) |
Try to recover from ALSA buffer underrun.
s1 | media file handle |
err | error code reported by the previous ALSA call |
Definition at line 329 of file alsa-audio-common.c.
Referenced by audio_read_packet(), and audio_write_packet().
int ff_alsa_extend_reorder_buf | ( | AlsaData * | s, |
int | min_size | ||
) |
Definition at line 350 of file alsa-audio-common.c.
Referenced by audio_write_packet().