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 | MAKE_REORDER_FUNC(NAME, TYPE, CHANNELS, LAYOUT, MAP) |
#define | MAKE_REORDER_FUNCS(CHANNELS, LAYOUT, MAP) |
#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) |
MAKE_REORDER_FUNCS (5, out_50, out[0]=in[0];out[1]=in[1];out[2]=in[3];out[3]=in[4];out[4]=in[2];) | |
MAKE_REORDER_FUNCS (6, out_51, out[0]=in[0];out[1]=in[1];out[2]=in[4];out[3]=in[5];out[4]=in[2];out[5]=in[3];) | |
MAKE_REORDER_FUNCS (8, out_71, out[0]=in[0];out[1]=in[1];out[2]=in[4];out[3]=in[5];out[4]=in[2];out[5]=in[3];out[6]=in[6];out[7]=in[7];) | |
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. More... | |
av_cold int | ff_alsa_close (AVFormatContext *s1) |
Close the ALSA PCM. More... | |
int | ff_alsa_xrun_recover (AVFormatContext *s1, int err) |
Try to recover from ALSA buffer underrun. More... | |
int | ff_alsa_extend_reorder_buf (AlsaData *s, int min_size) |
Detailed Description
ALSA input and output: common code.
Definition in file alsa-audio-common.c.
Macro Definition Documentation
#define FORMAT_F32 3 |
Definition at line 117 of file alsa-audio-common.c.
Referenced by find_reorder_func().
#define FORMAT_I16 1 |
Definition at line 115 of file alsa-audio-common.c.
Referenced by find_reorder_func().
#define FORMAT_I32 2 |
Definition at line 116 of file alsa-audio-common.c.
Referenced by find_reorder_func().
#define FORMAT_I8 0 |
Definition at line 114 of file alsa-audio-common.c.
Referenced by find_reorder_func().
#define MAKE_REORDER_FUNC | ( | NAME, | |
TYPE, | |||
CHANNELS, | |||
LAYOUT, | |||
MAP | |||
) |
Definition at line 65 of file alsa-audio-common.c.
#define MAKE_REORDER_FUNCS | ( | CHANNELS, | |
LAYOUT, | |||
MAP | |||
) |
Definition at line 80 of file alsa-audio-common.c.
#define PICK_REORDER | ( | layout | ) |
Definition at line 119 of file alsa-audio-common.c.
Referenced by find_reorder_func().
Function Documentation
|
static |
Definition at line 38 of file alsa-audio-common.c.
Referenced by ff_alsa_open().
av_cold int ff_alsa_close | ( | AVFormatContext * | s1 | ) |
Close the ALSA PCM.
- Parameters
-
s1 media file handle
- Returns
- 0
Definition at line 299 of file alsa-audio-common.c.
int ff_alsa_extend_reorder_buf | ( | AlsaData * | s, |
int | min_size | ||
) |
Definition at line 331 of file alsa-audio-common.c.
Referenced by audio_write_packet().
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.
- Parameters
-
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
- Returns
- 0 if OK, AVERROR_xxx on error
Definition at line 167 of file alsa-audio-common.c.
Referenced by audio_read_header(), and audio_write_header().
int ff_alsa_xrun_recover | ( | AVFormatContext * | s1, |
int | err | ||
) |
Try to recover from ALSA buffer underrun.
- Parameters
-
s1 media file handle err error code reported by the previous ALSA call
- Returns
- 0 if OK, AVERROR_xxx on error
Definition at line 310 of file alsa-audio-common.c.
Referenced by audio_read_packet(), and audio_write_packet().
|
static |
Definition at line 127 of file alsa-audio-common.c.
Referenced by ff_alsa_open().
MAKE_REORDER_FUNCS | ( | 5 | , |
out_50 | , | ||
out | [0] = in[0];out[1]=in[1];out[2]=in[3];out[3]=in[4];out[4]=in[2]; |
||
) |
MAKE_REORDER_FUNCS | ( | 6 | , |
out_51 | , | ||
out | [0] = in[0];out[1]=in[1];out[2]=in[4];out[3]=in[5];out[4]=in[2];out[5]=in[3]; |
||
) |
Generated on Fri Dec 20 2024 06:56:10 for FFmpeg by 1.8.11