diff options
Diffstat (limited to 'cras/src/server/cras_rstream_config.h')
-rw-r--r-- | cras/src/server/cras_rstream_config.h | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/cras/src/server/cras_rstream_config.h b/cras/src/server/cras_rstream_config.h deleted file mode 100644 index 4d3713ce..00000000 --- a/cras/src/server/cras_rstream_config.h +++ /dev/null @@ -1,101 +0,0 @@ -/* Copyright 2020 The Chromium OS Authors. All rights reserved. - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - -/* - * Remote Stream Configuration - */ -#ifndef CRAS_RSTREAM_CONFIG_H_ -#define CRAS_RSTREAM_CONFIG_H_ - -#include "buffer_share.h" -#include "cras_shm.h" -#include "cras_types.h" - -struct cras_connect_message; -struct dev_mix; - -/* Config for creating an rstream. - * stream_type - CRAS_STREAM_TYPE. - * client_type - CRAS_CLIENT_TYPE. - * direction - CRAS_STREAM_OUTPUT or CRAS_STREAM_INPUT. - * dev_idx - Pin to this device if != NO_DEVICE. - * flags - Any special handling for this stream. - * effects - Bit map of effects to be enabled on this stream. - * format - The audio format the stream wishes to use. - * buffer_frames - Total number of audio frames to buffer. - * cb_threshold - # of frames when to request more from the client. - * audio_fd - The fd to read/write audio signals to. May be -1 for server - * stream. Some functions may mutably borrow the config and move - * the fd ownership. - * client_shm_fd - The shm fd to use to back the samples area. May be -1. - * Some functions may dup this fd while borrowing the config. - * client_shm_size - The size of shm area backed by client_shm_fd. - * buffer_offsets - Initial values for buffer_offset for a client shm stream. - * client - The client that owns this stream. - */ -struct cras_rstream_config { - cras_stream_id_t stream_id; - enum CRAS_STREAM_TYPE stream_type; - enum CRAS_CLIENT_TYPE client_type; - enum CRAS_STREAM_DIRECTION direction; - uint32_t dev_idx; - uint32_t flags; - uint32_t effects; - const struct cras_audio_format *format; - size_t buffer_frames; - size_t cb_threshold; - int audio_fd; - int client_shm_fd; - size_t client_shm_size; - uint32_t buffer_offsets[2]; - struct cras_rclient *client; -}; - -/* Fills cras_rstream_config with given parameters. - * - * Args: - * audio_fd - The audio fd pointer from client. Its ownership will be moved to - * stream_config. - * client_shm_fd - The shared memory fd pointer for samples from client. Its - * ownership will be moved to stream_config. - * Other args - See comments in struct cras_rstream_config. - */ -void cras_rstream_config_init( - struct cras_rclient *client, cras_stream_id_t stream_id, - enum CRAS_STREAM_TYPE stream_type, enum CRAS_CLIENT_TYPE client_type, - enum CRAS_STREAM_DIRECTION direction, uint32_t dev_idx, uint32_t flags, - uint32_t effects, const struct cras_audio_format *format, - size_t buffer_frames, size_t cb_threshold, int *audio_fd, - int *client_shm_fd, size_t client_shm_size, - const uint64_t buffer_offsets[2], - struct cras_rstream_config *stream_config); - -/* Fills cras_rstream_config with given parameters and a cras_connect_message. - * - * Args: - * client - The rclient which handles the connect message. - * msg - The cras_connect_message from client. - * aud_fd - The audio fd pointer from client. Its ownership will be moved to - * stream_config. - * client_shm_fd - The shared memory fd pointer for samples from client. Its - * ownership will be moved to stream_config. - * remote_format - The remote_format for the config. - * - * Returns a cras_rstream_config struct filled in with params from the message. - */ -struct cras_rstream_config cras_rstream_config_init_with_message( - struct cras_rclient *client, const struct cras_connect_message *msg, - int *aud_fd, int *client_shm_fd, - const struct cras_audio_format *remote_format); - -/* Cleans up given cras_rstream_config. All fds inside the config will be - * closed. - * - * Args: - * stream_config - The config to be cleaned up. - */ -void cras_rstream_config_cleanup(struct cras_rstream_config *stream_config); - -#endif /* CRAS_RSTREAM_CONFIG_H_ */ |