PulseAudio  3.0
introspect.h
Go to the documentation of this file.
1 #ifndef foointrospecthfoo
2 #define foointrospecthfoo
3 
4 /***
5  This file is part of PulseAudio.
6 
7  Copyright 2004-2006 Lennart Poettering
8  Copyright 2006 Pierre Ossman <ossman@cendio.se> for Cendio AB
9 
10  PulseAudio is free software; you can redistribute it and/or modify
11  it under the terms of the GNU Lesser General Public License as published
12  by the Free Software Foundation; either version 2.1 of the License,
13  or (at your option) any later version.
14 
15  PulseAudio is distributed in the hope that it will be useful, but
16  WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18  General Public License for more details.
19 
20  You should have received a copy of the GNU Lesser General Public License
21  along with PulseAudio; if not, write to the Free Software
22  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
23  USA.
24 ***/
25 
26 #include <inttypes.h>
27 
28 #include <pulse/operation.h>
29 #include <pulse/context.h>
30 #include <pulse/cdecl.h>
31 #include <pulse/gccmacro.h>
32 #include <pulse/channelmap.h>
33 #include <pulse/volume.h>
34 #include <pulse/proplist.h>
35 #include <pulse/format.h>
36 #include <pulse/version.h>
37 
194 PA_C_DECL_BEGIN
195 
201 typedef struct pa_sink_port_info {
202  const char *name;
203  const char *description;
204  uint32_t priority;
205  int available;
207 
211 typedef struct pa_sink_info {
212  const char *name;
213  uint32_t index;
214  const char *description;
217  uint32_t owner_module;
219  int mute;
220  uint32_t monitor_source;
221  const char *monitor_source_name;
223  const char *driver;
229  uint32_t n_volume_steps;
230  uint32_t card;
231  uint32_t n_ports;
234  uint8_t n_formats;
236 } pa_sink_info;
237 
239 typedef void (*pa_sink_info_cb_t)(pa_context *c, const pa_sink_info *i, int eol, void *userdata);
240 
242 pa_operation* pa_context_get_sink_info_by_name(pa_context *c, const char *name, pa_sink_info_cb_t cb, void *userdata);
243 
245 pa_operation* pa_context_get_sink_info_by_index(pa_context *c, uint32_t idx, pa_sink_info_cb_t cb, void *userdata);
246 
249 
251 pa_operation* pa_context_set_sink_volume_by_index(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
252 
254 pa_operation* pa_context_set_sink_volume_by_name(pa_context *c, const char *name, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
255 
257 pa_operation* pa_context_set_sink_mute_by_index(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
258 
260 pa_operation* pa_context_set_sink_mute_by_name(pa_context *c, const char *name, int mute, pa_context_success_cb_t cb, void *userdata);
261 
263 pa_operation* pa_context_suspend_sink_by_name(pa_context *c, const char *sink_name, int suspend, pa_context_success_cb_t cb, void* userdata);
264 
266 pa_operation* pa_context_suspend_sink_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
267 
269 pa_operation* pa_context_set_sink_port_by_index(pa_context *c, uint32_t idx, const char*port, pa_context_success_cb_t cb, void *userdata);
270 
272 pa_operation* pa_context_set_sink_port_by_name(pa_context *c, const char*name, const char*port, pa_context_success_cb_t cb, void *userdata);
273 
281 typedef struct pa_source_port_info {
282  const char *name;
283  const char *description;
284  uint32_t priority;
285  int available;
287 
291 typedef struct pa_source_info {
292  const char *name;
293  uint32_t index;
294  const char *description;
297  uint32_t owner_module;
299  int mute;
300  uint32_t monitor_of_sink;
301  const char *monitor_of_sink_name;
303  const char *driver;
309  uint32_t n_volume_steps;
310  uint32_t card;
311  uint32_t n_ports;
314  uint8_t n_formats;
317 
319 typedef void (*pa_source_info_cb_t)(pa_context *c, const pa_source_info *i, int eol, void *userdata);
320 
322 pa_operation* pa_context_get_source_info_by_name(pa_context *c, const char *name, pa_source_info_cb_t cb, void *userdata);
323 
326 
329 
331 pa_operation* pa_context_set_source_volume_by_index(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
332 
334 pa_operation* pa_context_set_source_volume_by_name(pa_context *c, const char *name, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
335 
337 pa_operation* pa_context_set_source_mute_by_index(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
338 
340 pa_operation* pa_context_set_source_mute_by_name(pa_context *c, const char *name, int mute, pa_context_success_cb_t cb, void *userdata);
341 
343 pa_operation* pa_context_suspend_source_by_name(pa_context *c, const char *source_name, int suspend, pa_context_success_cb_t cb, void* userdata);
344 
346 pa_operation* pa_context_suspend_source_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void* userdata);
347 
349 pa_operation* pa_context_set_source_port_by_index(pa_context *c, uint32_t idx, const char*port, pa_context_success_cb_t cb, void *userdata);
350 
352 pa_operation* pa_context_set_source_port_by_name(pa_context *c, const char*name, const char*port, pa_context_success_cb_t cb, void *userdata);
353 
361 typedef struct pa_server_info {
362  const char *user_name;
363  const char *host_name;
364  const char *server_version;
365  const char *server_name;
367  const char *default_sink_name;
368  const char *default_source_name;
369  uint32_t cookie;
372 
374 typedef void (*pa_server_info_cb_t) (pa_context *c, const pa_server_info*i, void *userdata);
375 
378 
386 typedef struct pa_module_info {
387  uint32_t index;
388  const char*name,
389  *argument;
390  uint32_t n_used;
392  int auto_unload;
396 
398 typedef void (*pa_module_info_cb_t) (pa_context *c, const pa_module_info*i, int eol, void *userdata);
399 
401 pa_operation* pa_context_get_module_info(pa_context *c, uint32_t idx, pa_module_info_cb_t cb, void *userdata);
402 
405 
407 typedef void (*pa_context_index_cb_t)(pa_context *c, uint32_t idx, void *userdata);
408 
410 pa_operation* pa_context_load_module(pa_context *c, const char*name, const char *argument, pa_context_index_cb_t cb, void *userdata);
411 
413 pa_operation* pa_context_unload_module(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
414 
422 typedef struct pa_client_info {
423  uint32_t index;
424  const char *name;
425  uint32_t owner_module;
426  const char *driver;
429 
431 typedef void (*pa_client_info_cb_t) (pa_context *c, const pa_client_info*i, int eol, void *userdata);
432 
434 pa_operation* pa_context_get_client_info(pa_context *c, uint32_t idx, pa_client_info_cb_t cb, void *userdata);
435 
438 
440 pa_operation* pa_context_kill_client(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
441 
449 typedef struct pa_card_profile_info {
450  const char *name;
451  const char *description;
452  uint32_t n_sinks;
453  uint32_t n_sources;
454  uint32_t priority;
456 
460 typedef struct pa_card_port_info {
461  const char *name;
462  const char *description;
463  uint32_t priority;
464  int available;
465  int direction;
466  uint32_t n_profiles;
469  int64_t latency_offset;
471 
475 typedef struct pa_card_info {
476  uint32_t index;
477  const char *name;
478  uint32_t owner_module;
479  const char *driver;
480  uint32_t n_profiles;
484  uint32_t n_ports;
486 } pa_card_info;
487 
489 typedef void (*pa_card_info_cb_t) (pa_context *c, const pa_card_info*i, int eol, void *userdata);
490 
492 pa_operation* pa_context_get_card_info_by_index(pa_context *c, uint32_t idx, pa_card_info_cb_t cb, void *userdata);
493 
495 pa_operation* pa_context_get_card_info_by_name(pa_context *c, const char *name, pa_card_info_cb_t cb, void *userdata);
496 
499 
501 pa_operation* pa_context_set_card_profile_by_index(pa_context *c, uint32_t idx, const char*profile, pa_context_success_cb_t cb, void *userdata);
502 
504 pa_operation* pa_context_set_card_profile_by_name(pa_context *c, const char*name, const char*profile, pa_context_success_cb_t cb, void *userdata);
505 
507 pa_operation* pa_context_set_port_latency_offset(pa_context *c, const char *card_name, const char *port_name, int64_t offset, pa_context_success_cb_t cb, void *userdata);
508 
516 typedef struct pa_sink_input_info {
517  uint32_t index;
518  const char *name;
519  uint32_t owner_module;
520  uint32_t client;
521  uint32_t sink;
527  const char *resample_method;
528  const char *driver;
529  int mute;
531  int corked;
536 
538 typedef void (*pa_sink_input_info_cb_t) (pa_context *c, const pa_sink_input_info *i, int eol, void *userdata);
539 
542 
545 
547 pa_operation* pa_context_move_sink_input_by_name(pa_context *c, uint32_t idx, const char *sink_name, pa_context_success_cb_t cb, void* userdata);
548 
550 pa_operation* pa_context_move_sink_input_by_index(pa_context *c, uint32_t idx, uint32_t sink_idx, pa_context_success_cb_t cb, void* userdata);
551 
553 pa_operation* pa_context_set_sink_input_volume(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
554 
556 pa_operation* pa_context_set_sink_input_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
557 
559 pa_operation* pa_context_kill_sink_input(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata);
560 
568 typedef struct pa_source_output_info {
569  uint32_t index;
570  const char *name;
571  uint32_t owner_module;
572  uint32_t client;
573  uint32_t source;
578  const char *resample_method;
579  const char *driver;
581  int corked;
583  int mute;
588 
590 typedef void (*pa_source_output_info_cb_t) (pa_context *c, const pa_source_output_info *i, int eol, void *userdata);
591 
594 
597 
599 pa_operation* pa_context_move_source_output_by_name(pa_context *c, uint32_t idx, const char *source_name, pa_context_success_cb_t cb, void* userdata);
600 
602 pa_operation* pa_context_move_source_output_by_index(pa_context *c, uint32_t idx, uint32_t source_idx, pa_context_success_cb_t cb, void* userdata);
603 
605 pa_operation* pa_context_set_source_output_volume(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata);
606 
608 pa_operation* pa_context_set_source_output_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata);
609 
612 
620 typedef struct pa_stat_info {
621  uint32_t memblock_total;
625  uint32_t scache_size;
626 } pa_stat_info;
627 
629 typedef void (*pa_stat_info_cb_t) (pa_context *c, const pa_stat_info *i, void *userdata);
630 
633 
641 typedef struct pa_sample_info {
642  uint32_t index;
643  const char *name;
648  uint32_t bytes;
649  int lazy;
650  const char *filename;
653 
655 typedef void (*pa_sample_info_cb_t)(pa_context *c, const pa_sample_info *i, int eol, void *userdata);
656 
658 pa_operation* pa_context_get_sample_info_by_name(pa_context *c, const char *name, pa_sample_info_cb_t cb, void *userdata);
659 
662 
665 
673 typedef enum pa_autoload_type {
674  PA_AUTOLOAD_SINK = 0,
675  PA_AUTOLOAD_SOURCE = 1
676 } pa_autoload_type_t;
677 
681 typedef struct pa_autoload_info {
682  uint32_t index;
683  const char *name;
684  pa_autoload_type_t type;
685  const char *module;
686  const char *argument;
687 } pa_autoload_info;
688 
690 typedef void (*pa_autoload_info_cb_t)(pa_context *c, const pa_autoload_info *i, int eol, void *userdata);
691 
693 pa_operation* pa_context_get_autoload_info_by_name(pa_context *c, const char *name, pa_autoload_type_t type, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
694 
696 pa_operation* pa_context_get_autoload_info_by_index(pa_context *c, uint32_t idx, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
697 
699 pa_operation* pa_context_get_autoload_info_list(pa_context *c, pa_autoload_info_cb_t cb, void *userdata) PA_GCC_DEPRECATED;
700 
702 pa_operation* pa_context_add_autoload(pa_context *c, const char *name, pa_autoload_type_t type, const char *module, const char*argument, pa_context_index_cb_t, void* userdata) PA_GCC_DEPRECATED;
703 
705 pa_operation* pa_context_remove_autoload_by_name(pa_context *c, const char *name, pa_autoload_type_t type, pa_context_success_cb_t cb, void* userdata) PA_GCC_DEPRECATED;
706 
708 pa_operation* pa_context_remove_autoload_by_index(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void* userdata) PA_GCC_DEPRECATED;
709 
714 PA_C_DECL_END
715 
716 #endif
pa_operation * pa_context_get_sample_info_by_index(pa_context *c, uint32_t idx, pa_sample_info_cb_t cb, void *userdata)
Get information about a sample by its index.
struct pa_context pa_context
An opaque connection context to a daemon.
Definition: context.h:156
pa_operation * pa_context_get_card_info_by_index(pa_context *c, uint32_t idx, pa_card_info_cb_t cb, void *userdata)
Get information about a card by its index.
pa_sample_spec sample_spec
The sample specification of the source output.
Definition: introspect.h:574
const char * server_version
Version string of the daemon.
Definition: introspect.h:364
pa_operation * pa_context_get_sink_info_by_index(pa_context *c, uint32_t idx, pa_sink_info_cb_t cb, void *userdata)
Get information about a sink by its index.
Stores information about sources.
Definition: introspect.h:291
uint32_t cookie
A random cookie for identifying this instance of PulseAudio.
Definition: introspect.h:369
pa_operation * pa_context_set_source_volume_by_index(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a source device specified by its index.
const char * user_name
User name of the daemon process.
Definition: introspect.h:362
A sample format and attribute specification.
Definition: sample.h:243
enum pa_sink_state pa_sink_state_t
Sink state.
pa_usec_t configured_latency
The latency this device has been configured to.
Definition: introspect.h:306
uint32_t n_used
Usage counter or PA_INVALID_INDEX.
Definition: introspect.h:390
pa_cvolume volume
Default volume of this entry.
Definition: introspect.h:644
struct pa_card_profile_info pa_card_profile_info
Stores information about a specific profile of a card.
pa_operation * pa_context_set_source_mute_by_index(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a source device specified by its index.
const char * name
Name of this card.
Definition: introspect.h:477
Connection contexts for asynchronous communication with a server.
Stores information about source outputs.
Definition: introspect.h:568
pa_sink_port_info * active_port
Pointer to active port in the array, or NULL.
Definition: introspect.h:233
const char * monitor_of_sink_name
Name of the owning sink, or PA_INVALID_INDEX.
Definition: introspect.h:301
int available
A pa_port_available enum, indicating availability status of this port.
Definition: introspect.h:464
const char * name
Name of this profile.
Definition: introspect.h:450
uint32_t sink
Index of the connected sink.
Definition: introspect.h:521
pa_volume_t base_volume
Some kind of &quot;base&quot; volume that refers to unamplified/unattenuated volume in the context of the input...
Definition: introspect.h:307
pa_operation * pa_context_get_source_info_by_name(pa_context *c, const char *name, pa_source_info_cb_t cb, void *userdata)
Get information about a source by its name.
pa_operation * pa_context_set_sink_volume_by_name(pa_context *c, const char *name, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a sink device specified by its name.
pa_operation * pa_context_get_module_info(pa_context *c, uint32_t idx, pa_module_info_cb_t cb, void *userdata)
Get some information about a module by its index.
uint32_t owner_module
Index of the owning module of this sink, or PA_INVALID_INDEX.
Definition: introspect.h:217
Constants and routines for volume handling.
uint32_t n_sources
Number of sources this profile would create.
Definition: introspect.h:453
pa_operation * pa_context_kill_sink_input(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata)
Kill a sink input.
pa_operation * pa_context_set_port_latency_offset(pa_context *c, const char *card_name, const char *port_name, int64_t offset, pa_context_success_cb_t cb, void *userdata)
Set the latency offset of a port.
uint32_t n_ports
Number of entries in port array.
Definition: introspect.h:484
pa_operation * pa_context_set_source_port_by_name(pa_context *c, const char *name, const char *port, pa_context_success_cb_t cb, void *userdata)
Change the profile of a source.
pa_sink_port_info ** ports
Array of available ports, or NULL.
Definition: introspect.h:232
const char * description
Description of this sink.
Definition: introspect.h:214
const char * driver
Driver name.
Definition: introspect.h:479
int volume_writable
The volume can be set.
Definition: introspect.h:585
uint32_t memblock_allocated_size
Total size of all memory blocks allocated during the whole lifetime of the daemon.
Definition: introspect.h:624
pa_operation * pa_context_set_sink_input_volume(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a sink input stream.
Stores information about a specific profile of a card.
Definition: introspect.h:449
pa_operation * pa_context_move_source_output_by_name(pa_context *c, uint32_t idx, const char *source_name, pa_context_success_cb_t cb, void *userdata)
Move the specified source output to a different source.
enum pa_source_flags pa_source_flags_t
Special source flags.
struct pa_card_info pa_card_info
Stores information about cards.
pa_operation * pa_context_set_source_volume_by_name(pa_context *c, const char *name, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a source device specified by its name.
pa_operation * pa_context_kill_client(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata)
Kill a client.
const char * driver
Driver name.
Definition: introspect.h:223
pa_proplist * proplist
Property list.
Definition: introspect.h:394
pa_operation * pa_context_suspend_sink_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void *userdata)
Suspend/Resume a sink.
uint32_t index
Index of the sink.
Definition: introspect.h:213
A structure encapsulating a per-channel volume.
Definition: volume.h:135
pa_channel_map channel_map
Channel map.
Definition: introspect.h:575
const char * resample_method
The resampling method used by this sink input.
Definition: introspect.h:527
uint32_t index
Index of the source output.
Definition: introspect.h:569
enum pa_source_state pa_source_state_t
Source state.
uint32_t index
Index of this card.
Definition: introspect.h:476
struct pa_card_port_info pa_card_port_info
Stores information about a specific port of a card.
pa_operation * pa_context_load_module(pa_context *c, const char *name, const char *argument, pa_context_index_cb_t cb, void *userdata)
Load a module.
pa_operation * pa_context_get_sink_input_info_list(pa_context *c, pa_sink_input_info_cb_t cb, void *userdata)
Get the complete sink input list.
pa_usec_t latency
Length of queued audio in the output buffer.
Definition: introspect.h:222
int volume_writable
The volume can be set.
Definition: introspect.h:533
struct pa_sink_input_info pa_sink_input_info
Stores information about sink inputs.
const char * default_source_name
Name of default source.
Definition: introspect.h:368
void(* pa_server_info_cb_t)(pa_context *c, const pa_server_info *i, void *userdata)
Callback prototype for pa_context_get_server_info()
Definition: introspect.h:374
uint32_t index
Index of this client.
Definition: introspect.h:423
int available
A flags (see pa_port_available), indicating availability status of this port.
Definition: introspect.h:205
struct pa_source_port_info pa_source_port_info
Stores information about a specific port of a source.
struct pa_operation pa_operation
An asynchronous operation object.
Definition: operation.h:35
int mute
Mute switch of the sink.
Definition: introspect.h:219
const char * description
Description of this source.
Definition: introspect.h:294
uint32_t source
Index of the connected source.
Definition: introspect.h:573
Server information.
Definition: introspect.h:361
pa_cvolume volume
Volume of the sink.
Definition: introspect.h:218
uint32_t memblock_allocated
Allocated memory blocks during the whole lifetime of the daemon.
Definition: introspect.h:623
void(* pa_source_info_cb_t)(pa_context *c, const pa_source_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_source_info_by_name() and friends.
Definition: introspect.h:319
const char * name
Name of this entry.
Definition: introspect.h:643
pa_channel_map channel_map
The channel map.
Definition: introspect.h:646
const char * monitor_source_name
The name of the monitor source.
Definition: introspect.h:221
uint32_t priority
The higher this value is, the more useful this port is as a default.
Definition: introspect.h:463
const char * server_name
Server package name (usually &quot;pulseaudio&quot;)
Definition: introspect.h:365
pa_sample_spec sample_spec
The sample specification of the sink input.
Definition: introspect.h:522
pa_channel_map channel_map
Default channel map.
Definition: introspect.h:370
uint32_t n_volume_steps
Number of volume steps for sources which do not support arbitrary volumes.
Definition: introspect.h:309
uint32_t n_profiles
Number of entries in profile array.
Definition: introspect.h:466
uint32_t owner_module
Index of the owning module, or PA_INVALID_INDEX.
Definition: introspect.h:478
uint32_t owner_module
Index of the module this sink input belongs to, or PA_INVALID_INDEX when it does not belong to any mo...
Definition: introspect.h:519
#define PA_GCC_DEPRECATED
This function is deprecated.
Definition: gccmacro.h:93
uint64_t pa_usec_t
Type for usec specifications (unsigned).
Definition: sample.h:255
pa_operation * pa_context_get_client_info(pa_context *c, uint32_t idx, pa_client_info_cb_t cb, void *userdata)
Get information about a client by its index.
pa_operation * pa_context_move_sink_input_by_name(pa_context *c, uint32_t idx, const char *sink_name, pa_context_success_cb_t cb, void *userdata)
Move the specified sink input to a different sink.
Stores information about a specific port of a source.
Definition: introspect.h:281
Utility functions for handling a stream or sink format.
pa_operation * pa_context_get_sink_info_by_name(pa_context *c, const char *name, pa_sink_info_cb_t cb, void *userdata)
Get information about a sink by its name.
struct pa_sink_port_info pa_sink_port_info
Stores information about a specific port of a sink.
pa_operation * pa_context_get_client_info_list(pa_context *c, pa_client_info_cb_t cb, void *userdata)
Get the complete client list.
void(* pa_context_success_cb_t)(pa_context *c, int success, void *userdata)
A generic callback for operation completion.
Definition: context.h:162
int has_volume
Stream has volume.
Definition: introspect.h:584
const char * driver
Driver name.
Definition: introspect.h:528
pa_channel_map channel_map
Channel map.
Definition: introspect.h:523
uint32_t scache_size
Total size of all sample cache entries.
Definition: introspect.h:625
int corked
Stream corked.
Definition: introspect.h:581
void(* pa_stat_info_cb_t)(pa_context *c, const pa_stat_info *i, void *userdata)
Callback prototype for pa_context_stat()
Definition: introspect.h:629
pa_operation * pa_context_set_source_mute_by_name(pa_context *c, const char *name, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a source device specified by its name.
uint32_t owner_module
Index of the owning module, or PA_INVALID_INDEX.
Definition: introspect.h:425
struct pa_module_info pa_module_info
Stores information about modules.
void(* pa_client_info_cb_t)(pa_context *c, const pa_client_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_client_info() and friends.
Definition: introspect.h:431
Constants and routines for channel mapping handling.
pa_card_port_info ** ports
Array of pointers to ports, or NULL.
Definition: introspect.h:485
uint32_t monitor_source
Index of the monitor source connected to this sink.
Definition: introspect.h:220
uint32_t owner_module
Owning module index, or PA_INVALID_INDEX.
Definition: introspect.h:297
Stores information about sample cache entries.
Definition: introspect.h:641
pa_usec_t duration
Duration of this entry.
Definition: introspect.h:647
const char * host_name
Host name the daemon is running on.
Definition: introspect.h:363
enum pa_sink_flags pa_sink_flags_t
Special sink flags.
const char * description
Description of this port.
Definition: introspect.h:283
uint32_t memblock_total_size
Current total size of allocated memory blocks.
Definition: introspect.h:622
Stores information about sinks.
Definition: introspect.h:211
const char * resample_method
The resampling method used by this source output.
Definition: introspect.h:578
int available
A flags (see pa_port_available), indicating availability status of this port.
Definition: introspect.h:285
const char * name
Name of this port.
Definition: introspect.h:461
pa_operation * pa_context_get_module_info_list(pa_context *c, pa_module_info_cb_t cb, void *userdata)
Get the complete list of currently loaded modules.
uint32_t n_volume_steps
Number of volume steps for sinks which do not support arbitrary volumes.
Definition: introspect.h:229
const char * name
Name of the source output.
Definition: introspect.h:570
void(* pa_sink_info_cb_t)(pa_context *c, const pa_sink_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_sink_info_by_name() and friends.
Definition: introspect.h:239
pa_operation * pa_context_move_sink_input_by_index(pa_context *c, uint32_t idx, uint32_t sink_idx, pa_context_success_cb_t cb, void *userdata)
Move the specified sink input to a different sink.
pa_usec_t buffer_usec
Latency due to buffering in the source output, see pa_timing_info for details.
Definition: introspect.h:576
uint32_t n_profiles
Number of entries in profile array.
Definition: introspect.h:480
Stores information about a specific port of a sink.
Definition: introspect.h:201
pa_source_flags_t flags
Flags.
Definition: introspect.h:304
uint32_t client
Index of the client this sink input belongs to, or PA_INVALID_INDEX when it does not belong to any cl...
Definition: introspect.h:520
struct pa_source_info pa_source_info
Stores information about sources.
int corked
Stream corked.
Definition: introspect.h:531
pa_usec_t buffer_usec
Latency due to buffering in sink input, see pa_timing_info for details.
Definition: introspect.h:525
pa_card_profile_info * active_profile
Pointer to active profile in the array, or NULL.
Definition: introspect.h:482
pa_cvolume volume
The volume of this source output.
Definition: introspect.h:582
GCC attribute macros.
int mute
Stream muted.
Definition: introspect.h:529
struct pa_stat_info pa_stat_info
Memory block statistics.
pa_operation * pa_context_set_card_profile_by_name(pa_context *c, const char *name, const char *profile, pa_context_success_cb_t cb, void *userdata)
Change the profile of a card.
pa_usec_t latency
Length of filled record buffer of this source.
Definition: introspect.h:302
pa_sample_spec sample_spec
Sample spec of this sink.
Definition: introspect.h:215
pa_operation * pa_context_set_sink_input_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a sink input stream.
Memory block statistics.
Definition: introspect.h:620
pa_sample_spec sample_spec
Sample spec of this source.
Definition: introspect.h:295
pa_channel_map channel_map
Channel map.
Definition: introspect.h:296
pa_sample_spec sample_spec
Default sample specification.
Definition: introspect.h:366
uint32_t memblock_total
Currently allocated memory blocks.
Definition: introspect.h:621
pa_operation * pa_context_set_sink_mute_by_index(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a sink device specified by its index.
pa_proplist * proplist
Property list.
Definition: introspect.h:305
pa_operation * pa_context_set_source_output_volume(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a source output stream.
pa_proplist * proplist
Property list.
Definition: introspect.h:530
const char * description
Description of this port.
Definition: introspect.h:462
struct pa_server_info pa_server_info
Server information.
pa_operation * pa_context_get_source_info_list(pa_context *c, pa_source_info_cb_t cb, void *userdata)
Get the complete source list.
const char * name
Name of this port.
Definition: introspect.h:282
pa_format_info * format
Stream format information.
Definition: introspect.h:534
int lazy
Non-zero when this is a lazy cache entry.
Definition: introspect.h:649
uint8_t n_formats
Number of formats supported by the sink.
Definition: introspect.h:234
pa_usec_t source_usec
Latency of the source device, see pa_timing_info for details.
Definition: introspect.h:577
Stores information about clients.
Definition: introspect.h:422
pa_operation * pa_context_suspend_source_by_index(pa_context *c, uint32_t idx, int suspend, pa_context_success_cb_t cb, void *userdata)
Suspend/Resume a source.
uint32_t n_ports
Number of entries in port array.
Definition: introspect.h:311
pa_cvolume volume
Volume of the source.
Definition: introspect.h:298
const char * default_sink_name
Name of default sink.
Definition: introspect.h:367
pa_source_port_info * active_port
Pointer to active port in the array, or NULL.
Definition: introspect.h:313
uint32_t priority
The higher this value is, the more useful this port is as a default.
Definition: introspect.h:284
pa_proplist * proplist
Property list.
Definition: introspect.h:427
const char * driver
Driver name.
Definition: introspect.h:579
uint32_t n_sinks
Number of sinks this profile would create.
Definition: introspect.h:452
pa_operation * pa_context_suspend_sink_by_name(pa_context *c, const char *sink_name, int suspend, pa_context_success_cb_t cb, void *userdata)
Suspend/Resume a sink.
pa_channel_map channel_map
Channel map.
Definition: introspect.h:216
Define header version.
Stores information about cards.
Definition: introspect.h:475
int has_volume
Stream has volume.
Definition: introspect.h:532
void(* pa_source_output_info_cb_t)(pa_context *c, const pa_source_output_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_source_output_info() and friends.
Definition: introspect.h:590
pa_volume_t base_volume
Some kind of &quot;base&quot; volume that refers to unamplified/unattenuated volume in the context of the outpu...
Definition: introspect.h:227
pa_proplist * proplist
Property list.
Definition: introspect.h:225
Asynchronous operations.
pa_operation * pa_context_suspend_source_by_name(pa_context *c, const char *source_name, int suspend, pa_context_success_cb_t cb, void *userdata)
Suspend/Resume a source.
Stores information about sink inputs.
Definition: introspect.h:516
pa_operation * pa_context_get_sample_info_by_name(pa_context *c, const char *name, pa_sample_info_cb_t cb, void *userdata)
Get information about a sample by its name.
const char * description
Description of this profile.
Definition: introspect.h:451
pa_proplist * proplist
Property list.
Definition: introspect.h:468
pa_operation * pa_context_set_source_port_by_index(pa_context *c, uint32_t idx, const char *port, pa_context_success_cb_t cb, void *userdata)
Change the profile of a source.
const char * driver
Driver name.
Definition: introspect.h:303
Stores information about modules.
Definition: introspect.h:386
pa_sink_state_t state
State.
Definition: introspect.h:228
pa_source_state_t state
State.
Definition: introspect.h:308
pa_source_port_info ** ports
Array of available ports, or NULL.
Definition: introspect.h:312
uint32_t index
Index of the sink input.
Definition: introspect.h:517
pa_sink_flags_t flags
Flags.
Definition: introspect.h:224
pa_operation * pa_context_get_source_output_info_list(pa_context *c, pa_source_output_info_cb_t cb, void *userdata)
Get the complete list of source outputs.
pa_operation * pa_context_get_sink_input_info(pa_context *c, uint32_t idx, pa_sink_input_info_cb_t cb, void *userdata)
Get some information about a sink input by its index.
pa_operation * pa_context_set_source_output_mute(pa_context *c, uint32_t idx, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a source output stream.
pa_proplist * proplist
Property list.
Definition: introspect.h:580
uint8_t n_formats
Number of formats supported by the source.
Definition: introspect.h:314
int mute
Mute switch of the sink.
Definition: introspect.h:299
uint32_t card
Card index, or PA_INVALID_INDEX.
Definition: introspect.h:230
const char * name
Name of the sink.
Definition: introspect.h:212
const char * name
Name of the source.
Definition: introspect.h:292
pa_sample_spec sample_spec
Sample specification of the sample.
Definition: introspect.h:645
const char * filename
In case this is a lazy cache entry, the filename for the sound file to be loaded on demand...
Definition: introspect.h:650
uint32_t card
Card index, or PA_INVALID_INDEX.
Definition: introspect.h:310
uint32_t priority
The higher this value is, the more useful this profile is as a default.
Definition: introspect.h:454
const char * name
Name of the module.
Definition: introspect.h:388
pa_operation * pa_context_kill_source_output(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata)
Kill a source output.
void(* pa_card_info_cb_t)(pa_context *c, const pa_card_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_card_info_...()
Definition: introspect.h:489
int direction
A pa_direction enum, indicating the direction of this port.
Definition: introspect.h:465
pa_operation * pa_context_get_server_info(pa_context *c, pa_server_info_cb_t cb, void *userdata)
Get some information about the server.
pa_operation * pa_context_set_sink_volume_by_index(pa_context *c, uint32_t idx, const pa_cvolume *volume, pa_context_success_cb_t cb, void *userdata)
Set the volume of a sink device specified by its index.
uint32_t pa_volume_t
Volume specification: PA_VOLUME_MUTED: silence; &lt; PA_VOLUME_NORM: decreased volume; PA_VOLUME_NORM: n...
Definition: volume.h:107
const char * name
Name of this port.
Definition: introspect.h:202
const char * name
Name of the sink input.
Definition: introspect.h:518
uint32_t index
Index of this entry.
Definition: introspect.h:642
const char * argument
Argument string of the module.
Definition: introspect.h:388
Represents the format of data provided in a stream or processed by a sink.
Definition: format.h:72
pa_card_profile_info * profiles
Array of available profile, or NULL.
Definition: introspect.h:481
void(* pa_module_info_cb_t)(pa_context *c, const pa_module_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_module_info() and friends.
Definition: introspect.h:398
A channel map which can be used to attach labels to specific channels of a stream.
Definition: channelmap.h:264
uint32_t index
Index of the source.
Definition: introspect.h:293
pa_proplist * proplist
Property list for this sample.
Definition: introspect.h:651
pa_operation * pa_context_get_sample_info_list(pa_context *c, pa_sample_info_cb_t cb, void *userdata)
Get the complete list of samples stored in the daemon.
const char * name
Name of this client.
Definition: introspect.h:424
pa_operation * pa_context_move_source_output_by_index(pa_context *c, uint32_t idx, uint32_t source_idx, pa_context_success_cb_t cb, void *userdata)
Move the specified source output to a different source.
struct pa_proplist pa_proplist
A property list object.
Definition: proplist.h:274
pa_format_info ** formats
Array of formats supported by the sink.
Definition: introspect.h:235
uint32_t bytes
Length of this sample in bytes.
Definition: introspect.h:648
struct pa_sample_info pa_sample_info
Stores information about sample cache entries.
pa_operation * pa_context_get_source_output_info(pa_context *c, uint32_t idx, pa_source_output_info_cb_t cb, void *userdata)
Get information about a source output by its index.
pa_operation * pa_context_set_sink_port_by_index(pa_context *c, uint32_t idx, const char *port, pa_context_success_cb_t cb, void *userdata)
Change the profile of a sink.
int mute
Stream muted.
Definition: introspect.h:583
pa_format_info ** formats
Array of formats supported by the source.
Definition: introspect.h:315
pa_cvolume volume
The volume of this sink input.
Definition: introspect.h:524
pa_operation * pa_context_get_card_info_list(pa_context *c, pa_card_info_cb_t cb, void *userdata)
Get the complete card list.
uint32_t n_ports
Number of entries in port array.
Definition: introspect.h:231
uint32_t client
Index of the client this source output belongs to, or PA_INVALID_INDEX when it does not belong to any...
Definition: introspect.h:572
pa_operation * pa_context_stat(pa_context *c, pa_stat_info_cb_t cb, void *userdata)
Get daemon memory block statistics.
const char * driver
Driver name.
Definition: introspect.h:426
pa_usec_t sink_usec
Latency of the sink device, see pa_timing_info for details.
Definition: introspect.h:526
uint32_t monitor_of_sink
If this is a monitor source, the index of the owning sink, otherwise PA_INVALID_INDEX.
Definition: introspect.h:300
pa_operation * pa_context_set_sink_mute_by_name(pa_context *c, const char *name, int mute, pa_context_success_cb_t cb, void *userdata)
Set the mute switch of a sink device specified by its name.
Property list constants and functions.
void(* pa_sink_input_info_cb_t)(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_sink_input_info() and friends.
Definition: introspect.h:538
struct pa_source_output_info pa_source_output_info
Stores information about source outputs.
pa_operation * pa_context_set_sink_port_by_name(pa_context *c, const char *name, const char *port, pa_context_success_cb_t cb, void *userdata)
Change the profile of a sink.
void(* pa_context_index_cb_t)(pa_context *c, uint32_t idx, void *userdata)
Callback prototype for pa_context_load_module()
Definition: introspect.h:407
pa_operation * pa_context_get_source_info_by_index(pa_context *c, uint32_t idx, pa_source_info_cb_t cb, void *userdata)
Get information about a source by its index.
struct pa_sink_info pa_sink_info
Stores information about sinks.
pa_card_profile_info ** profiles
Array of pointers to available profiles, or NULL.
Definition: introspect.h:467
uint32_t owner_module
Index of the module this source output belongs to, or PA_INVALID_INDEX when it does not belong to any...
Definition: introspect.h:571
pa_operation * pa_context_set_card_profile_by_index(pa_context *c, uint32_t idx, const char *profile, pa_context_success_cb_t cb, void *userdata)
Change the profile of a card.
struct pa_client_info pa_client_info
Stores information about clients.
void(* pa_sample_info_cb_t)(pa_context *c, const pa_sample_info *i, int eol, void *userdata)
Callback prototype for pa_context_get_sample_info_by_name() and friends.
Definition: introspect.h:655
pa_usec_t configured_latency
The latency this device has been configured to.
Definition: introspect.h:226
Stores information about a specific port of a card.
Definition: introspect.h:460
pa_operation * pa_context_unload_module(pa_context *c, uint32_t idx, pa_context_success_cb_t cb, void *userdata)
Unload a module.
pa_format_info * format
Stream format information.
Definition: introspect.h:586
pa_operation * pa_context_get_card_info_by_name(pa_context *c, const char *name, pa_card_info_cb_t cb, void *userdata)
Get information about a card by its name.
pa_operation * pa_context_get_sink_info_list(pa_context *c, pa_sink_info_cb_t cb, void *userdata)
Get the complete sink list.
uint32_t index
Index of the module.
Definition: introspect.h:387
uint32_t priority
The higher this value is, the more useful this port is as a default.
Definition: introspect.h:204
int64_t latency_offset
Latency offset of the port that gets added to the sink/source latency when the port is active...
Definition: introspect.h:469
pa_proplist * proplist
Property list.
Definition: introspect.h:483
const char * description
Description of this port.
Definition: introspect.h:203