mirror of
				https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
				synced 2025-11-03 09:01:50 -05:00 
			
		
		
		
	instead of reparsing the rate module argument when changing profile, simply restore the originally requested sample_spec, this also makes sure the channel count is properly reset
This commit is contained in:
		
							parent
							
								
									752f815183
								
							
						
					
					
						commit
						6ada8d1fea
					
				
					 1 changed files with 3 additions and 8 deletions
				
			
		| 
						 | 
				
			
			@ -136,7 +136,7 @@ struct userdata {
 | 
			
		|||
 | 
			
		||||
    pa_memchunk write_memchunk;
 | 
			
		||||
 | 
			
		||||
    pa_sample_spec sample_spec;
 | 
			
		||||
    pa_sample_spec sample_spec, requested_sample_spec;
 | 
			
		||||
 | 
			
		||||
    int service_fd;
 | 
			
		||||
    int stream_fd;
 | 
			
		||||
| 
						 | 
				
			
			@ -1571,13 +1571,7 @@ static int card_set_profile(pa_card *c, pa_card_profile *new_profile) {
 | 
			
		|||
    }
 | 
			
		||||
 | 
			
		||||
    u->profile = *d;
 | 
			
		||||
 | 
			
		||||
    /* Reinitialize the sample spec to default with module argument rate */
 | 
			
		||||
    u->sample_spec = u->module->core->default_sample_spec;
 | 
			
		||||
    if (pa_modargs_get_value_u32(u->modargs, "rate", &u->sample_spec.rate) < 0 ||
 | 
			
		||||
        u->sample_spec.rate <= 0 || u->sample_spec.rate > PA_RATE_MAX) {
 | 
			
		||||
        u->sample_spec = u->module->core->default_sample_spec;
 | 
			
		||||
    }
 | 
			
		||||
    u->sample_spec = u->requested_sample_spec;
 | 
			
		||||
 | 
			
		||||
    init_profile(u);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1781,6 +1775,7 @@ int pa__init(pa_module* m) {
 | 
			
		|||
        goto fail;
 | 
			
		||||
    }
 | 
			
		||||
    u->sample_spec.channels = (uint8_t) channels;
 | 
			
		||||
    u->requested_sample_spec = u->sample_spec;
 | 
			
		||||
 | 
			
		||||
    if (setup_dbus(u) < 0)
 | 
			
		||||
        goto fail;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue