- Check process name when dealing with PID files

- Add new PA_STREAM_FIX_CHANNELS, FIX_RATE, FIX_FORMAT, DONT_MOVE, VARIABLE_RATES to pa_sream_flags_t adn implement it
- Expose those flags in pacat
- Add notifications about device suspend/resume to the protocol and expose them in libpulse
- Allow changing of buffer_attr during playback
- allow disabling for remixing globally
- hookup polkit support


git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2067 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
Lennart Poettering 2007-11-21 01:30:40 +00:00
parent 4ac6b53478
commit 14a9b80afb
27 changed files with 1498 additions and 231 deletions

View file

@ -49,7 +49,12 @@ static inline pa_bool_t PA_SOURCE_OUTPUT_LINKED(pa_source_output_state_t x) {
typedef enum pa_source_output_flags {
PA_SOURCE_OUTPUT_VARIABLE_RATE = 1,
PA_SOURCE_OUTPUT_DONT_MOVE = 2,
PA_SOURCE_OUTPUT_START_CORKED = 4
PA_SOURCE_OUTPUT_START_CORKED = 4,
PA_SOURCE_OUTPUT_NO_REMAP = 8,
PA_SOURCE_OUTPUT_NO_REMIX = 16,
PA_SOURCE_OUTPUT_FIX_FORMAT = 32,
PA_SOURCE_OUTPUT_FIX_RATE = 64,
PA_SOURCE_OUTPUT_FIX_CHANNELS = 128
} pa_source_output_flags_t;
struct pa_source_output {
@ -81,9 +86,13 @@ struct pa_source_output {
* disconnected from its source. Called from IO thread context */
void (*detach) (pa_source_output *o); /* may be NULL */
/* If non-NULL called whenever the the source this output is attached
* to changes. Called from main context */
void (*moved) (pa_source_output *o); /* may be NULL */
/* If non-NULL called whenever the the source this output is attached
* to suspends or resumes. Called from main context */
void (*suspend) (pa_source_output *o, int b); /* may be NULL */
void (*suspend) (pa_source_output *o, pa_bool_t b); /* may be NULL */
/* Supposed to unlink and destroy this stream. Called from main
* context. */
@ -135,6 +144,11 @@ typedef struct pa_source_output_new_data {
pa_resample_method_t resample_method;
} pa_source_output_new_data;
typedef struct pa_source_output_move_hook_data {
pa_source_output *source_output;
pa_source *destination;
} pa_source_output_move_hook_data;
pa_source_output_new_data* pa_source_output_new_data_init(pa_source_output_new_data *data);
void pa_source_output_new_data_set_sample_spec(pa_source_output_new_data *data, const pa_sample_spec *spec);
void pa_source_output_new_data_set_channel_map(pa_source_output_new_data *data, const pa_channel_map *map);