Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement new "Advanced Linux Sound Architecture" (ALSA) Audio Sink #1310

Open
rjhowell44 opened this issue Nov 21, 2024 · 0 comments
Open
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@rjhowell44
Copy link
Collaborator

First Audio Only Sink to be implemented with the following services

/**
 * @brief Creates a new, uniquely named ALSA Sink that streams to a ALSA compatible
 * device.
 * @param[in] name unique component name for the new ALSA Sink
 * @param[in] device_location device-location setting for the ALSA Sink. Set value 
 * to "default" to use default sound device.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SINK_RESULT otherwise
 */
DslReturnType dsl_sink_alsa_new(const wchar_t* name, 
    const wchar_t* device_location);

/**
 * @brief Gets the device location setting for the named ALSA Sink.
 * @param[in] name unique name of the ALSA Sink to query.
 * @param[out] device_location current device location setting. Default value is 
 * set to "default" for the default sound device.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SINK_RESULT otherwise.
 */
DslReturnType dsl_sink_alsa_device_location_get(const wchar_t* name,
    const wchar_t** device_location);
    
/**
 * @brief Sets the device location setting for the named ALSA Sink. 
 * @param[in] name unique name of the ALSA Sink to update.
 * @param[in] device_location new device location setting to use. Set value 
 * to "default" to use default sound device.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SINK_RESULT otherwise.
 */
DslReturnType dsl_sink_alsa_device_location_set(const wchar_t* name,
    const wchar_t* device_location);
    
/**
 * @brief Gets the device name setting for the named ALSA Sink.
 * @param[in] name unique name of the ALSA Sink to query.
 * @param[out] device_name current device name setting. 
 * Default = "". Updated after negotiation with the ALSA Device.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SINK_RESULT otherwise.
 */
DslReturnType dsl_sink_alsa_device_name_get(const wchar_t* name,
    const wchar_t** device_name);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant