mirror of
				https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
				synced 2025-11-03 09:01:50 -05:00 
			
		
		
		
	More spelling fixes
This commit is contained in:
		
							parent
							
								
									231645d4fc
								
							
						
					
					
						commit
						c5dca7cf2b
					
				
					 81 changed files with 165 additions and 167 deletions
				
			
		| 
						 | 
				
			
			@ -3826,7 +3826,7 @@ static int profile_verify(pa_alsa_profile *p) {
 | 
			
		|||
                continue;
 | 
			
		||||
 | 
			
		||||
            if (!(m = pa_hashmap_get(p->profile_set->mappings, *name)) || m->direction == PA_ALSA_DIRECTION_INPUT) {
 | 
			
		||||
                pa_log("Profile '%s' refers to unexistant mapping '%s'.", p->name, *name);
 | 
			
		||||
                pa_log("Profile '%s' refers to nonexistent mapping '%s'.", p->name, *name);
 | 
			
		||||
                return -1;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -3862,7 +3862,7 @@ static int profile_verify(pa_alsa_profile *p) {
 | 
			
		|||
                continue;
 | 
			
		||||
 | 
			
		||||
            if (!(m = pa_hashmap_get(p->profile_set->mappings, *name)) || m->direction == PA_ALSA_DIRECTION_OUTPUT) {
 | 
			
		||||
                pa_log("Profile '%s' refers to unexistant mapping '%s'.", p->name, *name);
 | 
			
		||||
                pa_log("Profile '%s' refers to nonexistent mapping '%s'.", p->name, *name);
 | 
			
		||||
                return -1;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -277,7 +277,7 @@ struct pa_alsa_decibel_fix {
 | 
			
		|||
    long max_step;
 | 
			
		||||
 | 
			
		||||
    /* An array that maps alsa volume element steps to decibels. The steps can
 | 
			
		||||
     * be used as indices to this array, after substracting min_step from the
 | 
			
		||||
     * be used as indices to this array, after subtracting min_step from the
 | 
			
		||||
     * real value.
 | 
			
		||||
     *
 | 
			
		||||
     * The values are actually stored as integers representing millibels,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -69,10 +69,10 @@
 | 
			
		|||
#define TSCHED_WATERMARK_INC_STEP_USEC (10*PA_USEC_PER_MSEC)       /* 10ms  -- On underrun, increase watermark by this */
 | 
			
		||||
#define TSCHED_WATERMARK_DEC_STEP_USEC (5*PA_USEC_PER_MSEC)        /* 5ms   -- When everything's great, decrease watermark by this */
 | 
			
		||||
#define TSCHED_WATERMARK_VERIFY_AFTER_USEC (20*PA_USEC_PER_SEC)    /* 20s   -- How long after a drop out recheck if things are good now */
 | 
			
		||||
#define TSCHED_WATERMARK_INC_THRESHOLD_USEC (0*PA_USEC_PER_MSEC)   /* 0ms   -- If the buffer level ever below this theshold, increase the watermark */
 | 
			
		||||
#define TSCHED_WATERMARK_DEC_THRESHOLD_USEC (100*PA_USEC_PER_MSEC) /* 100ms -- If the buffer level didn't drop below this theshold in the verification time, decrease the watermark */
 | 
			
		||||
#define TSCHED_WATERMARK_INC_THRESHOLD_USEC (0*PA_USEC_PER_MSEC)   /* 0ms   -- If the buffer level ever below this threshold, increase the watermark */
 | 
			
		||||
#define TSCHED_WATERMARK_DEC_THRESHOLD_USEC (100*PA_USEC_PER_MSEC) /* 100ms -- If the buffer level didn't drop below this threshold in the verification time, decrease the watermark */
 | 
			
		||||
 | 
			
		||||
/* Note that TSCHED_WATERMARK_INC_THRESHOLD_USEC == 0 means tht we
 | 
			
		||||
/* Note that TSCHED_WATERMARK_INC_THRESHOLD_USEC == 0 means that we
 | 
			
		||||
 * will increase the watermark only if we hit a real underrun. */
 | 
			
		||||
 | 
			
		||||
#define TSCHED_MIN_SLEEP_USEC (10*PA_USEC_PER_MSEC)                /* 10ms  -- Sleep at least 10ms on each iteration */
 | 
			
		||||
| 
						 | 
				
			
			@ -929,7 +929,7 @@ static int update_sw_params(struct userdata *u) {
 | 
			
		|||
 | 
			
		||||
    pa_assert(u);
 | 
			
		||||
 | 
			
		||||
    /* Use the full buffer if noone asked us for anything specific */
 | 
			
		||||
    /* Use the full buffer if no one asked us for anything specific */
 | 
			
		||||
    u->hwbuf_unused = 0;
 | 
			
		||||
 | 
			
		||||
    if (u->use_tsched) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -850,7 +850,7 @@ static int update_sw_params(struct userdata *u) {
 | 
			
		|||
 | 
			
		||||
    pa_assert(u);
 | 
			
		||||
 | 
			
		||||
    /* Use the full buffer if noone asked us for anything specific */
 | 
			
		||||
    /* Use the full buffer if no one asked us for anything specific */
 | 
			
		||||
    u->hwbuf_unused = 0;
 | 
			
		||||
 | 
			
		||||
    if (u->use_tsched) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -55,7 +55,7 @@
 | 
			
		|||
#include "module-echo-cancel-symdef.h"
 | 
			
		||||
 | 
			
		||||
PA_MODULE_AUTHOR("Wim Taymans");
 | 
			
		||||
PA_MODULE_DESCRIPTION("Echo Cancelation");
 | 
			
		||||
PA_MODULE_DESCRIPTION("Echo Cancellation");
 | 
			
		||||
PA_MODULE_VERSION(PACKAGE_VERSION);
 | 
			
		||||
PA_MODULE_LOAD_ONCE(FALSE);
 | 
			
		||||
PA_MODULE_USAGE(
 | 
			
		||||
| 
						 | 
				
			
			@ -132,10 +132,10 @@ static const pa_echo_canceller ec_table[] = {
 | 
			
		|||
 *
 | 
			
		||||
 * Alignment is performed in two steps:
 | 
			
		||||
 *
 | 
			
		||||
 * 1) when something happens that requires quick adjustement of the alignment of
 | 
			
		||||
 * 1) when something happens that requires quick adjustment of the alignment of
 | 
			
		||||
 *    capture and playback samples, we perform a resync. This adjusts the
 | 
			
		||||
 *    position in the playback memblock to the requested sample. Quick
 | 
			
		||||
 *    adjustements include moving the playback samples before the capture
 | 
			
		||||
 *    adjustments include moving the playback samples before the capture
 | 
			
		||||
 *    samples (because else the echo canceler does not work) or when the
 | 
			
		||||
 *    playback pointer drifts too far away.
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			@ -250,7 +250,7 @@ static int64_t calc_diff(struct userdata *u, struct snapshot *snapshot) {
 | 
			
		|||
 | 
			
		||||
    buffer += snapshot->source_delay + snapshot->sink_delay;
 | 
			
		||||
 | 
			
		||||
    /* add the amount of samples not yet transfered to the source context */
 | 
			
		||||
    /* add the amount of samples not yet transferred to the source context */
 | 
			
		||||
    if (snapshot->recv_counter <= snapshot->send_counter)
 | 
			
		||||
        buffer += (int64_t) (snapshot->send_counter - snapshot->recv_counter);
 | 
			
		||||
    else
 | 
			
		||||
| 
						 | 
				
			
			@ -322,7 +322,7 @@ static void time_callback(pa_mainloop_api *a, pa_time_event *e, const struct tim
 | 
			
		|||
        new_rate = base_rate;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /* make sure we don't make too big adjustements because that sounds horrible */
 | 
			
		||||
    /* make sure we don't make too big adjustments because that sounds horrible */
 | 
			
		||||
    if (new_rate > base_rate * 1.1 || new_rate < base_rate * 0.9)
 | 
			
		||||
        new_rate = base_rate;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -724,7 +724,7 @@ static void source_output_push_cb(pa_source_output *o, const pa_memchunk *chunk)
 | 
			
		|||
                        fwrite(pdata, 1, u->blocksize, u->played_file);
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                /* perform echo cancelation */
 | 
			
		||||
                /* perform echo cancellation */
 | 
			
		||||
                u->ec->run(u->ec, rdata, pdata, cdata);
 | 
			
		||||
 | 
			
		||||
                /* preprecessor is run after AEC. This is not a mistake! */
 | 
			
		||||
| 
						 | 
				
			
			@ -1441,7 +1441,7 @@ int pa__init(pa_module*m) {
 | 
			
		|||
 | 
			
		||||
    u->ec->echo_suppress_attenuation_active = DEFAULT_ECHO_SUPPRESS_ATTENUATION;
 | 
			
		||||
    if (pa_modargs_get_value_s32(ma, "echo_suppress_attenuation_active", &u->ec->echo_suppress_attenuation_active) < 0) {
 | 
			
		||||
        pa_log("Failed to parse echo_supress_attenuation_active value");
 | 
			
		||||
        pa_log("Failed to parse echo_suppress_attenuation_active value");
 | 
			
		||||
        goto fail;
 | 
			
		||||
    }
 | 
			
		||||
    if (u->ec->echo_suppress_attenuation_active > 0) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -47,7 +47,7 @@
 | 
			
		|||
 | 
			
		||||
/* General overview:
 | 
			
		||||
 *
 | 
			
		||||
 * Because JACK has a very unflexible event loop management which
 | 
			
		||||
 * Because JACK has a very inflexible event loop management which
 | 
			
		||||
 * doesn't allow us to add our own event sources to the event thread
 | 
			
		||||
 * we cannot use the JACK real-time thread for dispatching our PA
 | 
			
		||||
 * work. Instead, we run an additional RT thread which does most of
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -102,7 +102,7 @@ struct output {
 | 
			
		|||
    /* For communication of the stream latencies to the main thread */
 | 
			
		||||
    pa_usec_t total_latency;
 | 
			
		||||
 | 
			
		||||
    /* For coomunication of the stream parameters to the sink thread */
 | 
			
		||||
    /* For communication of the stream parameters to the sink thread */
 | 
			
		||||
    pa_atomic_t max_request;
 | 
			
		||||
    pa_atomic_t requested_latency;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -991,7 +991,7 @@ static void output_disable(struct output *o) {
 | 
			
		|||
     * pass any further data to this output */
 | 
			
		||||
    pa_asyncmsgq_send(o->userdata->sink->asyncmsgq, PA_MSGOBJECT(o->userdata->sink), SINK_MESSAGE_REMOVE_OUTPUT, o, 0, NULL);
 | 
			
		||||
 | 
			
		||||
    /* Now dellocate the stream */
 | 
			
		||||
    /* Now deallocate the stream */
 | 
			
		||||
    pa_sink_input_unref(o->sink_input);
 | 
			
		||||
    o->sink_input = NULL;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -74,7 +74,7 @@ static void load(struct userdata *u) {
 | 
			
		|||
            pa_namereg_set_default_sink(u->core, s);
 | 
			
		||||
            pa_log_info("Restored default sink '%s'.", ln);
 | 
			
		||||
        } else
 | 
			
		||||
            pa_log_info("Saved default sink '%s' not existant, not restoring default sink setting.", ln);
 | 
			
		||||
            pa_log_info("Saved default sink '%s' not existent, not restoring default sink setting.", ln);
 | 
			
		||||
 | 
			
		||||
    } else if (errno != ENOENT)
 | 
			
		||||
        pa_log("Failed to load default sink: %s", pa_cstrerror(errno));
 | 
			
		||||
| 
						 | 
				
			
			@ -95,7 +95,7 @@ static void load(struct userdata *u) {
 | 
			
		|||
            pa_namereg_set_default_source(u->core, s);
 | 
			
		||||
            pa_log_info("Restored default source '%s'.", ln);
 | 
			
		||||
        } else
 | 
			
		||||
            pa_log_info("Saved default source '%s' not existant, not restoring default source setting.", ln);
 | 
			
		||||
            pa_log_info("Saved default source '%s' not existent, not restoring default source setting.", ln);
 | 
			
		||||
 | 
			
		||||
    } else if (errno != ENOENT)
 | 
			
		||||
            pa_log("Failed to load default sink: %s", pa_cstrerror(errno));
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1334,7 +1334,7 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
 | 
			
		|||
                goto fail;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            /* Add the device to our hashmap. If it's alredy in it, free it now and carry on */
 | 
			
		||||
            /* Add the device to our hashmap. If it's already in it, free it now and carry on */
 | 
			
		||||
            device = pa_xnew(struct device_t, 1);
 | 
			
		||||
            device->device = pa_xstrdup(s);
 | 
			
		||||
            if (pa_hashmap_put(h, device->device, device) == 0) {
 | 
			
		||||
| 
						 | 
				
			
			@ -1352,7 +1352,7 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
 | 
			
		|||
        }*/
 | 
			
		||||
 | 
			
		||||
        /* Now cycle through our list and add all the devices.
 | 
			
		||||
           This has the effect of addign in any in our DB,
 | 
			
		||||
           This has the effect of adding in any in our DB,
 | 
			
		||||
           not specified in the device list (and thus will be
 | 
			
		||||
           tacked on at the end) */
 | 
			
		||||
        offset = idx;
 | 
			
		||||
| 
						 | 
				
			
			@ -1368,10 +1368,10 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
 | 
			
		|||
            if ((sink_mode && 0 == strncmp("sink:", device->device, 5))
 | 
			
		||||
                || (!sink_mode && 0 == strncmp("source:", device->device, 7))) {
 | 
			
		||||
 | 
			
		||||
                /* Add the device to our hashmap. If it's alredy in it, free it now and carry on */
 | 
			
		||||
                /* Add the device to our hashmap. If it's already in it, free it now and carry on */
 | 
			
		||||
                if (pa_hashmap_put(h, device->device, device) == 0
 | 
			
		||||
                    && (e = entry_read(u, device->device))) {
 | 
			
		||||
                    /* We add offset on to the existing priorirty so that when we order, the
 | 
			
		||||
                    /* We add offset on to the existing priority so that when we order, the
 | 
			
		||||
                       existing entries are always lower priority than the new ones. */
 | 
			
		||||
                    device->prio = (offset + e->priority[role_index]);
 | 
			
		||||
                    pa_xfree(e);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -99,7 +99,7 @@ struct userdata {
 | 
			
		|||
    pa_bool_t restore_formats:1;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* Protocol extention commands */
 | 
			
		||||
/* Protocol extension commands */
 | 
			
		||||
enum {
 | 
			
		||||
    SUBCOMMAND_TEST,
 | 
			
		||||
    SUBCOMMAND_SUBSCRIBE,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -114,7 +114,7 @@ struct userdata {
 | 
			
		|||
    //size_t samplings;
 | 
			
		||||
 | 
			
		||||
    float **Xs;
 | 
			
		||||
    float ***Hs;//thread updatable copies of the freq response filters (magintude based)
 | 
			
		||||
    float ***Hs;//thread updatable copies of the freq response filters (magnitude based)
 | 
			
		||||
    pa_aupdate **a_H;
 | 
			
		||||
    pa_memblockq *input_q;
 | 
			
		||||
    char *output_buffer;
 | 
			
		||||
| 
						 | 
				
			
			@ -356,10 +356,10 @@ static void dsp_logic(
 | 
			
		|||
                               *automatically cycled in routine
 | 
			
		||||
                               */
 | 
			
		||||
    float * restrict overlap,
 | 
			
		||||
    const float X,//multipliar
 | 
			
		||||
    const float X,//multiplier
 | 
			
		||||
    const float * restrict H,//The freq. magnitude scalers filter
 | 
			
		||||
    const float * restrict W,//The windowing function
 | 
			
		||||
    fftwf_complex * restrict output_window,//The transformed window'd src
 | 
			
		||||
    fftwf_complex * restrict output_window,//The transformed windowed src
 | 
			
		||||
    struct userdata *u){
 | 
			
		||||
 | 
			
		||||
    //use a linear-phase sliding STFT and overlap-add method (for each channel)
 | 
			
		||||
| 
						 | 
				
			
			@ -367,7 +367,7 @@ static void dsp_logic(
 | 
			
		|||
    for(size_t j = 0; j < u->window_size; ++j){
 | 
			
		||||
        dst[j] = X * W[j] * src[j];
 | 
			
		||||
    }
 | 
			
		||||
    //zero padd the the remaining fft window
 | 
			
		||||
    //zero pad the the remaining fft window
 | 
			
		||||
    memset(dst + u->window_size, 0, (u->fft_size - u->window_size) * sizeof(float));
 | 
			
		||||
    //Processing is done here!
 | 
			
		||||
    //do fft
 | 
			
		||||
| 
						 | 
				
			
			@ -379,7 +379,7 @@ static void dsp_logic(
 | 
			
		|||
    }
 | 
			
		||||
    //inverse fft
 | 
			
		||||
    fftwf_execute_dft_c2r(u->inverse_plan, output_window, dst);
 | 
			
		||||
    ////debug: tests overlaping add
 | 
			
		||||
    ////debug: tests overlapping add
 | 
			
		||||
    ////and negates ALL PREVIOUS processing
 | 
			
		||||
    ////yields a perfect reconstruction if COLA is held
 | 
			
		||||
    //for(size_t j = 0; j < u->window_size; ++j){
 | 
			
		||||
| 
						 | 
				
			
			@ -397,7 +397,7 @@ static void dsp_logic(
 | 
			
		|||
    //    u->work_buffer[j] = u->input[c][j];
 | 
			
		||||
    //}
 | 
			
		||||
 | 
			
		||||
    //preseve the needed input for the next window's overlap
 | 
			
		||||
    //preserve the needed input for the next window's overlap
 | 
			
		||||
    memmove(src, src + u->R,
 | 
			
		||||
        (u->samples_gathered - u->R) * sizeof(float)
 | 
			
		||||
    );
 | 
			
		||||
| 
						 | 
				
			
			@ -418,10 +418,10 @@ static void dsp_logic(
 | 
			
		|||
                               *automatically cycled in routine
 | 
			
		||||
                               */
 | 
			
		||||
    float * restrict overlap,//The size of the overlap
 | 
			
		||||
    const float X,//multipliar
 | 
			
		||||
    const float X,//multiplier
 | 
			
		||||
    const float * restrict H,//The freq. magnitude scalers filter
 | 
			
		||||
    const float * restrict W,//The windowing function
 | 
			
		||||
    fftwf_complex * restrict output_window,//The transformed window'd src
 | 
			
		||||
    fftwf_complex * restrict output_window,//The transformed windowed src
 | 
			
		||||
    struct userdata *u){//Collection of constants
 | 
			
		||||
    const size_t overlap_size = PA_ROUND_UP(u->overlap_size, v_size);
 | 
			
		||||
    float_vector_t x;
 | 
			
		||||
| 
						 | 
				
			
			@ -439,7 +439,7 @@ static void dsp_logic(
 | 
			
		|||
//        d->v = x->v * w->v * s->v;
 | 
			
		||||
//#endif
 | 
			
		||||
    }
 | 
			
		||||
    //zero padd the the remaining fft window
 | 
			
		||||
    //zero pad the the remaining fft window
 | 
			
		||||
    memset(dst + u->window_size, 0, (u->fft_size - u->window_size) * sizeof(float));
 | 
			
		||||
 | 
			
		||||
    //Processing is done here!
 | 
			
		||||
| 
						 | 
				
			
			@ -463,7 +463,7 @@ static void dsp_logic(
 | 
			
		|||
    //inverse fft
 | 
			
		||||
    fftwf_execute_dft_c2r(u->inverse_plan, output_window, dst);
 | 
			
		||||
 | 
			
		||||
    ////debug: tests overlaping add
 | 
			
		||||
    ////debug: tests overlapping add
 | 
			
		||||
    ////and negates ALL PREVIOUS processing
 | 
			
		||||
    ////yields a perfect reconstruction if COLA is held
 | 
			
		||||
    //for(size_t j = 0; j < u->window_size; ++j){
 | 
			
		||||
| 
						 | 
				
			
			@ -494,7 +494,7 @@ static void dsp_logic(
 | 
			
		|||
    //    dst[j] = src[j];
 | 
			
		||||
    //}
 | 
			
		||||
 | 
			
		||||
    //preseve the needed input for the next window's overlap
 | 
			
		||||
    //preserve the needed input for the next window's overlap
 | 
			
		||||
    memmove(src, src + u->R,
 | 
			
		||||
        (u->samples_gathered - u->R) * sizeof(float)
 | 
			
		||||
    );
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -206,7 +206,7 @@ static int hal_device_load_alsa(struct userdata *u, const char *udi, struct devi
 | 
			
		|||
 | 
			
		||||
    /* For each ALSA card that appears the control device will be the
 | 
			
		||||
     * last one to be created, this is considered part of the ALSA
 | 
			
		||||
     * usperspace API. We rely on this and load our modules only when
 | 
			
		||||
     * userspace API. We rely on this and load our modules only when
 | 
			
		||||
     * the control device is available assuming that *all* device
 | 
			
		||||
     * nodes have been properly created and assigned the right ACLs at
 | 
			
		||||
     * that time. Also see:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -58,7 +58,7 @@ PA_MODULE_USAGE(
 | 
			
		|||
      "channel_map=<input channel map> "
 | 
			
		||||
      "plugin=<ladspa plugin name> "
 | 
			
		||||
      "label=<ladspa plugin label> "
 | 
			
		||||
      "control=<comma seperated list of input control values> "
 | 
			
		||||
      "control=<comma separated list of input control values> "
 | 
			
		||||
      "input_ladspaport_map=<comma separated list of input LADSPA port names> "
 | 
			
		||||
      "output_ladspaport_map=<comma separated list of output LADSPA port names> "));
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -87,7 +87,7 @@ static pa_hook_result_t sink_input_fixate_hook_callback(pa_core *core, pa_sink_i
 | 
			
		|||
    if ((id = pa_proplist_gets(data->proplist, PA_PROP_EVENT_ID))) {
 | 
			
		||||
 | 
			
		||||
        /* The test sounds should never be positioned in space, since
 | 
			
		||||
         * they might be trigered themselves to configure the speakers
 | 
			
		||||
         * they might be triggered themselves to configure the speakers
 | 
			
		||||
         * in space, which we don't want to mess up. */
 | 
			
		||||
 | 
			
		||||
        if (pa_startswith(id, "audio-channel-"))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -133,7 +133,7 @@
 | 
			
		|||
  PA_MODULE_DESCRIPTION("Native protocol "SOCKET_DESCRIPTION);
 | 
			
		||||
  PA_MODULE_USAGE("auth-anonymous=<don't check for cookies?> "
 | 
			
		||||
                  "auth-cookie=<path to cookie file> "
 | 
			
		||||
                  "auth-cookie-enabled=<enable cookie authentification?> "
 | 
			
		||||
                  "auth-cookie-enabled=<enable cookie authentication?> "
 | 
			
		||||
                  AUTH_USAGE
 | 
			
		||||
                  SOCKET_USAGE);
 | 
			
		||||
#elif defined(USE_PROTOCOL_ESOUND)
 | 
			
		||||
| 
						 | 
				
			
			@ -162,7 +162,7 @@
 | 
			
		|||
                  "source=<source to connect to> "
 | 
			
		||||
                  "auth-anonymous=<don't verify cookies?> "
 | 
			
		||||
                  "auth-cookie=<path to cookie file> "
 | 
			
		||||
                  "auth-cookie-enabled=<enable cookie authentification?> "
 | 
			
		||||
                  "auth-cookie-enabled=<enable cookie authentication?> "
 | 
			
		||||
                  AUTH_USAGE
 | 
			
		||||
                  SOCKET_USAGE);
 | 
			
		||||
#else
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -485,7 +485,7 @@ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offse
 | 
			
		|||
        case PA_SINK_MESSAGE_SET_STATE: {
 | 
			
		||||
            int r;
 | 
			
		||||
 | 
			
		||||
            /* First, change the state, because otherwide pa_sink_render() would fail */
 | 
			
		||||
            /* First, change the state, because otherwise pa_sink_render() would fail */
 | 
			
		||||
            if ((r = pa_sink_process_msg(o, code, data, offset, chunk)) >= 0) {
 | 
			
		||||
 | 
			
		||||
                stream_cork_within_thread(u, u->sink->state == PA_SINK_SUSPENDED);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -46,7 +46,7 @@ PA_MODULE_LOAD_ONCE(TRUE);
 | 
			
		|||
PA_MODULE_USAGE(
 | 
			
		||||
        "tsched=<enable system timer based scheduling mode?> "
 | 
			
		||||
        "ignore_dB=<ignore dB information from the device?> "
 | 
			
		||||
        "sync_volume=<syncronize sw and hw voluchanges in IO-thread?>");
 | 
			
		||||
        "sync_volume=<syncronize sw and hw volume changes in IO-thread?>");
 | 
			
		||||
 | 
			
		||||
struct device {
 | 
			
		||||
    char *path;
 | 
			
		||||
| 
						 | 
				
			
			@ -318,7 +318,7 @@ static void verify_access(struct userdata *u, struct device *d) {
 | 
			
		|||
                 * A clean fix would be if we would be able to ignore
 | 
			
		||||
                 * our own inotify close events. However, inotify
 | 
			
		||||
                 * lacks such functionality. Also, during probing of
 | 
			
		||||
                 * the device we cannot really distuingish between
 | 
			
		||||
                 * the device we cannot really distinguish between
 | 
			
		||||
                 * other processes causing EBUSY or ourselves, which
 | 
			
		||||
                 * means we have no way to figure out if the probing
 | 
			
		||||
                 * during opening was canceled by a "try again"
 | 
			
		||||
| 
						 | 
				
			
			@ -721,7 +721,7 @@ int pa__init(pa_module *m) {
 | 
			
		|||
        pa_log("Failed to enable monitor: %s", pa_cstrerror(errno));
 | 
			
		||||
        if (errno == EPERM)
 | 
			
		||||
            pa_log_info("Most likely your kernel is simply too old and "
 | 
			
		||||
                        "allows only priviliged processes to listen to device events. "
 | 
			
		||||
                        "allows only privileged processes to listen to device events. "
 | 
			
		||||
                        "Please upgrade your kernel to at least 2.6.30.");
 | 
			
		||||
        goto fail;
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -27,7 +27,7 @@
 | 
			
		|||
 *   We make no difference between IDLE and RUNNING in our handling.
 | 
			
		||||
 *
 | 
			
		||||
 *   As long as we are in RUNNING/IDLE state we will *always* write data to
 | 
			
		||||
 *   the device. If none is avilable from the inputs, we write silence
 | 
			
		||||
 *   the device. If none is available from the inputs, we write silence
 | 
			
		||||
 *   instead.
 | 
			
		||||
 *
 | 
			
		||||
 *   If power should be saved on IDLE module-suspend-on-idle should be used.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -248,7 +248,7 @@ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offse
 | 
			
		|||
                    pa_rtpoll_item_free(u->rtpoll_item);
 | 
			
		||||
                u->rtpoll_item = NULL;
 | 
			
		||||
            } else {
 | 
			
		||||
                /* Quesiton: is this valid here: or should we do some sort of:
 | 
			
		||||
                /* Question: is this valid here: or should we do some sort of:
 | 
			
		||||
                   return pa_sink_process_msg(PA_MSGOBJECT(u->core), PA_CORE_MESSAGE_UNLOAD_MODULE, u->module, 0, NULL);
 | 
			
		||||
                   ?? */
 | 
			
		||||
                pa_module_unload_request(u->module, TRUE);
 | 
			
		||||
| 
						 | 
				
			
			@ -287,7 +287,7 @@ static void sink_set_volume_cb(pa_sink *s) {
 | 
			
		|||
    pa_log_debug("Got hardware volume: %s", pa_cvolume_snprint(t, sizeof(t), &hw));
 | 
			
		||||
    pa_log_debug("Calculated software volume: %s", pa_cvolume_snprint(t, sizeof(t), &s->soft_volume));
 | 
			
		||||
 | 
			
		||||
    /* Any necessary software volume manipulateion is done so set
 | 
			
		||||
    /* Any necessary software volume manipulation is done so set
 | 
			
		||||
       our hw volume (or v as a single value) on the device */
 | 
			
		||||
    pa_raop_client_set_volume(u->raop, v);
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -110,7 +110,7 @@ static inline void bit_writer(uint8_t **buffer, uint8_t *bit_pos, int *size, uin
 | 
			
		|||
    if (!data_bit_len)
 | 
			
		||||
        return;
 | 
			
		||||
 | 
			
		||||
    /* If bit pos is zero, we will definatly use at least one bit from the current byte so size increments. */
 | 
			
		||||
    /* If bit pos is zero, we will definately use at least one bit from the current byte so size increments. */
 | 
			
		||||
    if (!*bit_pos)
 | 
			
		||||
        *size += 1;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -128,7 +128,7 @@ static inline void bit_writer(uint8_t **buffer, uint8_t *bit_pos, int *size, uin
 | 
			
		|||
            **buffer = bit_data;
 | 
			
		||||
        /* If our data fits exactly into the current byte, we need to increment our pointer */
 | 
			
		||||
        if (0 == bit_overflow) {
 | 
			
		||||
            /* Do not increment size as it will be incremeneted on next call as bit_pos is zero */
 | 
			
		||||
            /* Do not increment size as it will be incremented on next call as bit_pos is zero */
 | 
			
		||||
            *buffer += 1;
 | 
			
		||||
            *bit_pos = 0;
 | 
			
		||||
        } else {
 | 
			
		||||
| 
						 | 
				
			
			@ -523,7 +523,7 @@ int pa_raop_client_encode_sample(pa_raop_client* c, pa_memchunk* raw, pa_memchun
 | 
			
		|||
    pa_memblock_release(raw->memblock);
 | 
			
		||||
    encoded->length = header_size + size;
 | 
			
		||||
 | 
			
		||||
    /* store the lenght (endian swapped: make this better) */
 | 
			
		||||
    /* store the length (endian swapped: make this better) */
 | 
			
		||||
    len = size + header_size - 4;
 | 
			
		||||
    *(b + 2) = len >> 8;
 | 
			
		||||
    *(b + 3) = len & 0xff;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -45,7 +45,7 @@ typedef void (*rm_change_cb_t)(rm_monitor *m);
 | 
			
		|||
 * DBus error might be set as well if the error was caused D-Bus. */
 | 
			
		||||
int rm_watch(
 | 
			
		||||
	rm_monitor **m,              /* On success a pointer to the newly allocated rm_device object will be filled in here */
 | 
			
		||||
	DBusConnection *connection,  /* Session bus (when D-Bus learns about user busses we should switchg to user busses) */
 | 
			
		||||
	DBusConnection *connection,  /* Session bus (when D-Bus learns about user busses we should switch to user busses) */
 | 
			
		||||
	const char *device_name,     /* The device to monitor, e.g. "Audio0" */
 | 
			
		||||
	rm_change_cb_t change_cb,    /* Will be called whenever the lock status changes. May be NULL */
 | 
			
		||||
	DBusError *error);           /* If we fail due to a D-Bus related issue the error will be filled in here. May be NULL. */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -51,7 +51,7 @@ typedef int (*rd_request_cb_t)(
 | 
			
		|||
 * the error was caused D-Bus. */
 | 
			
		||||
int rd_acquire(
 | 
			
		||||
	rd_device **d,                /* On success a pointer to the newly allocated rd_device object will be filled in here */
 | 
			
		||||
	DBusConnection *connection,   /* Session bus (when D-Bus learns about user busses we should switchg to user busses) */
 | 
			
		||||
	DBusConnection *connection,   /* Session bus (when D-Bus learns about user busses we should switch to user busses) */
 | 
			
		||||
	const char *device_name,      /* The device to lock, e.g. "Audio0" */
 | 
			
		||||
	const char *application_name, /* A human readable name of the application, e.g. "PulseAudio Sound Server" */
 | 
			
		||||
	int32_t priority,             /* The priority for this application. If unsure use 0 */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -244,7 +244,7 @@ int pa_udev_get_info(int card_idx, pa_proplist *p) {
 | 
			
		|||
        if ((v = udev_device_get_property_value(card, "SOUND_FORM_FACTOR")) && *v)
 | 
			
		||||
            pa_proplist_sets(p, PA_PROP_DEVICE_FORM_FACTOR, v);
 | 
			
		||||
 | 
			
		||||
    /* This is normaly not set by the udev rules but may be useful to
 | 
			
		||||
    /* This is normally not set by the udev rules but may be useful to
 | 
			
		||||
     * allow administrators to overwrite the device description.*/
 | 
			
		||||
    if (!pa_proplist_contains(p, PA_PROP_DEVICE_DESCRIPTION))
 | 
			
		||||
        if ((v = udev_device_get_property_value(card, "SOUND_DESCRIPTION")) && *v)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue