Patch by Yann Dubreuil, from the BreizhCamp repository.
void ALSAInput::capture_thread_func()
{
void ALSAInput::capture_thread_func()
{
+ if (!done_init) {
+ char thread_name[16];
+ snprintf(thread_name, sizeof(thread_name), "ALSA_C_%d", internal_dev_index);
+ pthread_setname_np(pthread_self(), thread_name);
+
+ done_init = true;
+ }
+
parent_pool->set_card_state(internal_dev_index, ALSAPool::Device::State::STARTING);
// If the device hasn't been opened already, we need to do so
parent_pool->set_card_state(internal_dev_index, ALSAPool::Device::State::STARTING);
// If the device hasn't been opened already, we need to do so
static bool set_base_params(const char *device_name, snd_pcm_t *pcm_handle, snd_pcm_hw_params_t *hw_params, unsigned *sample_rate);
private:
static bool set_base_params(const char *device_name, snd_pcm_t *pcm_handle, snd_pcm_hw_params_t *hw_params, unsigned *sample_rate);
private:
+ bool done_init = false;
void capture_thread_func();
enum class CaptureEndReason {
void capture_thread_func();
enum class CaptureEndReason {