mirror of
				https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
				synced 2025-11-03 09:01:50 -05:00 
			
		
		
		
	echo-cancel: Use more human-friendly descriptions
This makes what devices are being cancelled clearer in the UI (at the cost of being somewhat less clear when multiple devices of the same name are plugged, but at least that's a much smaller set than everyone).
This commit is contained in:
		
							parent
							
								
									4b7b244564
								
							
						
					
					
						commit
						ac3d66f978
					
				
					 1 changed files with 16 additions and 12 deletions
				
			
		| 
						 | 
					@ -1433,13 +1433,14 @@ static void source_output_moving_cb(pa_source_output *o, pa_source *dest) {
 | 
				
			||||||
        pa_source_set_asyncmsgq(u->source, NULL);
 | 
					        pa_source_set_asyncmsgq(u->source, NULL);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (u->source_auto_desc && dest) {
 | 
					    if (u->source_auto_desc && dest) {
 | 
				
			||||||
        const char *z;
 | 
					        const char *y, *z;
 | 
				
			||||||
        pa_proplist *pl;
 | 
					        pa_proplist *pl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        pl = pa_proplist_new();
 | 
					        pl = pa_proplist_new();
 | 
				
			||||||
 | 
					        y = pa_proplist_gets(u->sink_input->sink->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
				
			||||||
        z = pa_proplist_gets(dest->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
					        z = pa_proplist_gets(dest->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
				
			||||||
        pa_proplist_setf(pl, PA_PROP_DEVICE_DESCRIPTION, "Echo-Cancel Source %s on %s",
 | 
					        pa_proplist_setf(pl, PA_PROP_DEVICE_DESCRIPTION, "%s (echo cancelled with %s)", z ? z : dest->name,
 | 
				
			||||||
                         pa_proplist_gets(u->source->proplist, "device.echo-cancel.name"), z ? z : dest->name);
 | 
					                y ? y : u->sink_input->sink->name);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        pa_source_update_proplist(u->source, PA_UPDATE_REPLACE, pl);
 | 
					        pa_source_update_proplist(u->source, PA_UPDATE_REPLACE, pl);
 | 
				
			||||||
        pa_proplist_free(pl);
 | 
					        pa_proplist_free(pl);
 | 
				
			||||||
| 
						 | 
					@ -1460,13 +1461,14 @@ static void sink_input_moving_cb(pa_sink_input *i, pa_sink *dest) {
 | 
				
			||||||
        pa_sink_set_asyncmsgq(u->sink, NULL);
 | 
					        pa_sink_set_asyncmsgq(u->sink, NULL);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (u->sink_auto_desc && dest) {
 | 
					    if (u->sink_auto_desc && dest) {
 | 
				
			||||||
        const char *z;
 | 
					        const char *y, *z;
 | 
				
			||||||
        pa_proplist *pl;
 | 
					        pa_proplist *pl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        pl = pa_proplist_new();
 | 
					        pl = pa_proplist_new();
 | 
				
			||||||
 | 
					        y = pa_proplist_gets(u->source_output->source->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
				
			||||||
        z = pa_proplist_gets(dest->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
					        z = pa_proplist_gets(dest->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
				
			||||||
        pa_proplist_setf(pl, PA_PROP_DEVICE_DESCRIPTION, "Echo-Cancel Sink %s on %s",
 | 
					        pa_proplist_setf(pl, PA_PROP_DEVICE_DESCRIPTION, "%s (echo cancelled with %s)", z ? z : dest->name,
 | 
				
			||||||
                         pa_proplist_gets(u->sink->proplist, "device.echo-cancel.name"), z ? z : dest->name);
 | 
					                         y ? y : u->source_output->source->name);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        pa_sink_update_proplist(u->sink, PA_UPDATE_REPLACE, pl);
 | 
					        pa_sink_update_proplist(u->sink, PA_UPDATE_REPLACE, pl);
 | 
				
			||||||
        pa_proplist_free(pl);
 | 
					        pa_proplist_free(pl);
 | 
				
			||||||
| 
						 | 
					@ -1709,7 +1711,6 @@ int pa__init(pa_module*m) {
 | 
				
			||||||
    pa_proplist_sets(source_data.proplist, PA_PROP_DEVICE_CLASS, "filter");
 | 
					    pa_proplist_sets(source_data.proplist, PA_PROP_DEVICE_CLASS, "filter");
 | 
				
			||||||
    if (!u->autoloaded)
 | 
					    if (!u->autoloaded)
 | 
				
			||||||
        pa_proplist_sets(source_data.proplist, PA_PROP_DEVICE_INTENDED_ROLES, "phone");
 | 
					        pa_proplist_sets(source_data.proplist, PA_PROP_DEVICE_INTENDED_ROLES, "phone");
 | 
				
			||||||
    pa_proplist_sets(source_data.proplist, "device.echo-cancel.name", source_data.name);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (pa_modargs_get_proplist(ma, "source_properties", source_data.proplist, PA_UPDATE_REPLACE) < 0) {
 | 
					    if (pa_modargs_get_proplist(ma, "source_properties", source_data.proplist, PA_UPDATE_REPLACE) < 0) {
 | 
				
			||||||
        pa_log("Invalid properties");
 | 
					        pa_log("Invalid properties");
 | 
				
			||||||
| 
						 | 
					@ -1718,10 +1719,12 @@ int pa__init(pa_module*m) {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if ((u->source_auto_desc = !pa_proplist_contains(source_data.proplist, PA_PROP_DEVICE_DESCRIPTION))) {
 | 
					    if ((u->source_auto_desc = !pa_proplist_contains(source_data.proplist, PA_PROP_DEVICE_DESCRIPTION))) {
 | 
				
			||||||
        const char *z;
 | 
					        const char *y, *z;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        y = pa_proplist_gets(sink_master->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
				
			||||||
        z = pa_proplist_gets(source_master->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
					        z = pa_proplist_gets(source_master->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
				
			||||||
        pa_proplist_setf(source_data.proplist, PA_PROP_DEVICE_DESCRIPTION, "Echo-Cancel Source %s on %s", source_data.name, z ? z : source_master->name);
 | 
					        pa_proplist_setf(source_data.proplist, PA_PROP_DEVICE_DESCRIPTION, "%s (echo cancelled with %s)",
 | 
				
			||||||
 | 
					                z ? z : source_master->name, y ? y : sink_master->name);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    u->source = pa_source_new(m->core, &source_data, (source_master->flags & (PA_SOURCE_LATENCY | PA_SOURCE_DYNAMIC_LATENCY))
 | 
					    u->source = pa_source_new(m->core, &source_data, (source_master->flags & (PA_SOURCE_LATENCY | PA_SOURCE_DYNAMIC_LATENCY))
 | 
				
			||||||
| 
						 | 
					@ -1759,7 +1762,6 @@ int pa__init(pa_module*m) {
 | 
				
			||||||
    pa_proplist_sets(sink_data.proplist, PA_PROP_DEVICE_CLASS, "filter");
 | 
					    pa_proplist_sets(sink_data.proplist, PA_PROP_DEVICE_CLASS, "filter");
 | 
				
			||||||
    if (!u->autoloaded)
 | 
					    if (!u->autoloaded)
 | 
				
			||||||
        pa_proplist_sets(sink_data.proplist, PA_PROP_DEVICE_INTENDED_ROLES, "phone");
 | 
					        pa_proplist_sets(sink_data.proplist, PA_PROP_DEVICE_INTENDED_ROLES, "phone");
 | 
				
			||||||
    pa_proplist_sets(sink_data.proplist, "device.echo-cancel.name", sink_data.name);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (pa_modargs_get_proplist(ma, "sink_properties", sink_data.proplist, PA_UPDATE_REPLACE) < 0) {
 | 
					    if (pa_modargs_get_proplist(ma, "sink_properties", sink_data.proplist, PA_UPDATE_REPLACE) < 0) {
 | 
				
			||||||
        pa_log("Invalid properties");
 | 
					        pa_log("Invalid properties");
 | 
				
			||||||
| 
						 | 
					@ -1768,10 +1770,12 @@ int pa__init(pa_module*m) {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if ((u->sink_auto_desc = !pa_proplist_contains(sink_data.proplist, PA_PROP_DEVICE_DESCRIPTION))) {
 | 
					    if ((u->sink_auto_desc = !pa_proplist_contains(sink_data.proplist, PA_PROP_DEVICE_DESCRIPTION))) {
 | 
				
			||||||
        const char *z;
 | 
					        const char *y, *z;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        y = pa_proplist_gets(source_master->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
				
			||||||
        z = pa_proplist_gets(sink_master->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
					        z = pa_proplist_gets(sink_master->proplist, PA_PROP_DEVICE_DESCRIPTION);
 | 
				
			||||||
        pa_proplist_setf(sink_data.proplist, PA_PROP_DEVICE_DESCRIPTION, "Echo-Cancel Sink %s on %s", sink_data.name, z ? z : sink_master->name);
 | 
					        pa_proplist_setf(sink_data.proplist, PA_PROP_DEVICE_DESCRIPTION, "%s (echo cancelled with %s)",
 | 
				
			||||||
 | 
					                z ? z : sink_master->name, y ? y : source_master->name);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    u->sink = pa_sink_new(m->core, &sink_data, (sink_master->flags & (PA_SINK_LATENCY | PA_SINK_DYNAMIC_LATENCY))
 | 
					    u->sink = pa_sink_new(m->core, &sink_data, (sink_master->flags & (PA_SINK_LATENCY | PA_SINK_DYNAMIC_LATENCY))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue