### Class

# SpiceClientGLib Audio

#### Description [src]

    abstract class SpiceClientGLib.Audio : GObject.Object
    {
      SpiceAudioPrivate* priv
    }

The `SpiceAudio` struct is opaque and should not be accessed directly.

#### Ancestors

- GObject

#### Constructors

###### spice_audio_new

Once instantiated, `SpiceAudio` will handle the playback and record channels to stream to your local audio system.

deprecated: 0.8

#### Functions

###### spice_audio_get

Gets the `SpiceAudio` associated with the passed in `SpiceSession`. A new `SpiceAudio` instance will be created the first time this function is called for a certain `SpiceSession`.

#### Instance methods

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### SpiceClientGLib.Audio:main-context

No description available.

###### SpiceClientGLib.Audio:session

`SpiceSession` this `SpiceAudio` is associated with.

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct SpiceClientGLibAudioClass {
      GObjectClass parent_class;
      gboolean (* connect_channel) (
        SpiceAudio* audio,
        SpiceChannel* channel
      );
      void (* get_playback_volume_info_async) (
        SpiceAudio* audio,
        GCancellable* cancellable,
        SpiceMainChannel* main_channel,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* get_playback_volume_info_finish) (
        SpiceAudio* audio,
        GAsyncResult* res,
        gboolean* mute,
        guint8* nchannels,
        guint16** volume,
        GError** error
      );
      void (* get_record_volume_info_async) (
        SpiceAudio* audio,
        GCancellable* cancellable,
        SpiceMainChannel* main_channel,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* get_record_volume_info_finish) (
        SpiceAudio* audio,
        GAsyncResult* res,
        gboolean* mute,
        guint8* nchannels,
        guint16** volume,
        GError** error
      );

    }

Class structure for `SpiceAudio`.

###### Class members

`parent_class: GObjectClass`

  Parent class.

`connect_channel: gboolean (* connect_channel) ( SpiceAudio* audio, SpiceChannel* channel )`

  No description available.

`get_playback_volume_info_async: void (* get_playback_volume_info_async) ( SpiceAudio* audio, GCancellable* cancellable, SpiceMainChannel* main_channel, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`get_playback_volume_info_finish: gboolean (* get_playback_volume_info_finish) ( SpiceAudio* audio, GAsyncResult* res, gboolean* mute, guint8* nchannels, guint16** volume, GError** error )`

  No description available.

`get_record_volume_info_async: void (* get_record_volume_info_async) ( SpiceAudio* audio, GCancellable* cancellable, SpiceMainChannel* main_channel, GAsyncReadyCallback callback, gpointer user_data )`

  No description available.

`get_record_volume_info_finish: gboolean (* get_record_volume_info_finish) ( SpiceAudio* audio, GAsyncResult* res, gboolean* mute, guint8* nchannels, guint16** volume, GError** error )`

  No description available.

#### Virtual methods

###### SpiceClientGLib.AudioClass.connect_channel

No description available.

###### SpiceClientGLib.AudioClass.get_playback_volume_info_async

No description available.

###### SpiceClientGLib.AudioClass.get_playback_volume_info_finish

No description available.

###### SpiceClientGLib.AudioClass.get_record_volume_info_async

No description available.

###### SpiceClientGLib.AudioClass.get_record_volume_info_finish

No description available.