66#if defined(LWS_WITH_OPUS)
68struct lws_alsa_opus_capture;
70typedef void (*lws_alsa_opus_encoded_cb_t)(
void *user_data,
const uint8_t *payload,
size_t len);
73lws_alsa_opus_capture_create(
const struct lws_alsa_info *info, lws_alsa_opus_encoded_cb_t cb,
void *user_data);
76lws_alsa_opus_capture_destroy(
struct lws_alsa_opus_capture **cap);
79lws_alsa_opus_get_fd(
struct lws_alsa_opus_capture *cap);
82lws_alsa_opus_read(
struct lws_alsa_opus_capture *cap);
85lws_alsa_opus_send_capabilities(
struct lws_alsa_opus_capture *cap,
char *buf,
size_t max_len);
88lws_alsa_opus_set_control(
struct lws_alsa_opus_capture *cap,
uint32_t id,
long val);
LWS_VISIBLE LWS_EXTERN int lws_alsa_read(struct lws_alsa_ctx *ctx, void *buf, size_t samples)
LWS_VISIBLE LWS_EXTERN int lws_alsa_set_control(struct lws_alsa_ctx *ctx, uint32_t id, long val)
LWS_VISIBLE LWS_EXTERN int lws_alsa_enum_controls(struct lws_alsa_ctx *ctx, lws_alsa_control_cb cb, void *user)
uint32_t samples_per_frame
LWS_VISIBLE LWS_EXTERN void lws_alsa_destroy(struct lws_alsa_ctx **ctx)
LWS_VISIBLE LWS_EXTERN int lws_alsa_get_fd(struct lws_alsa_ctx *ctx)
int(* lws_alsa_control_cb)(void *user, const struct lws_alsa_control *c)
LWS_VISIBLE LWS_EXTERN struct lws_alsa_ctx * lws_alsa_create_capture(const struct lws_alsa_info *info)