## AgsGstreamerServer

AgsGstreamerServer — gstreamer instance

## Stability Level

Stable, unless otherwise indicated

## Functions

#define | AGS_GSTREAMER_SERVER_GET_OBJ_MUTEX()
GList * | ags_gstreamer_server_find_url ()
GObject * | ags_gstreamer_server_find_client ()
GObject * | ags_gstreamer_server_find_port ()
void | ags_gstreamer_server_add_client ()
void | ags_gstreamer_server_remove_client ()
void | ags_gstreamer_server_connect_client ()
void | ags_gstreamer_server_disconnect_client ()
void | ags_gstreamer_server_start_poll ()
AgsGstreamerServer * | ags_gstreamer_server_new ()

## Properties

AgsGstreamerClient * | default-gstreamer-client | Read / Write
GObject * | default-soundcard | Read / Write
gpointer | gstreamer-client | Read / Write
char * | url | Read / Write

## Object Hierarchy

        GObject
        ╰── AgsGstreamerServer

## Includes

    #include <ags/audio/gstreamer/ags_gstreamer_server.h>

## Description

The AgsGstreamerServer is an object to represent a running gstreamer instance.

## Functions

### AGS_GSTREAMER_SERVER_GET_OBJ_MUTEX()

    #define AGS_GSTREAMER_SERVER_GET_OBJ_MUTEX(obj) (&(((AgsGstreamerServer *) obj)->obj_mutex))

### ags_gstreamer_server_find_url ()

    GList *
    ags_gstreamer_server_find_url (GList *gstreamer_server,
                                   gchar *url);

Find AgsGstreamerServer by url.

#### Parameters

gstreamer_server | the GList containing AgsGstreamerServer. | [element-type AgsAudio.GstreamerServer][transfer none]
url | the url to find |

#### Returns

the GList containing a AgsGstreamerServer matching `url` or `NULL`.

[element-type AgsAudio.GstreamerServer][transfer none]

Since: 3.6.0

### ags_gstreamer_server_find_client ()

    GObject *
    ags_gstreamer_server_find_client (AgsGstreamerServer *gstreamer_server,
                                      gchar *client_uuid);

Find AgsGstreamerClient by uuid.

#### Parameters

gstreamer_server | the AgsGstreamerServer |
client_uuid | the uuid to find |

#### Returns

the AgsGstreamerClient found or `NULL`.

[transfer none]

Since: 3.6.0

### ags_gstreamer_server_find_port ()

    GObject *
    ags_gstreamer_server_find_port (AgsGstreamerServer *gstreamer_server,
                                    gchar *port_uuid);

Find AgsGstreamerPort by uuid.

#### Parameters

gstreamer_server | the AgsGstreamerServer |
port_uuid | the uuid to find |

#### Returns

the AgsGstreamerPort found or `NULL`.

[transfer none]

Since: 3.6.0

### ags_gstreamer_server_add_client ()

    void
    ags_gstreamer_server_add_client (AgsGstreamerServer *gstreamer_server,
                                     GObject *gstreamer_client);

Add `gstreamer_client` to `gstreamer_server`

#### Parameters

gstreamer_server | the AgsGstreamerServer |
gstreamer_client | the AgsGstreamerClient to add |

Since: 3.6.0

### ags_gstreamer_server_remove_client ()

    void
    ags_gstreamer_server_remove_client (AgsGstreamerServer *gstreamer_server,
                                        GObject *gstreamer_client);

Remove `gstreamer_client` to `gstreamer_server`

#### Parameters

gstreamer_server | the AgsGstreamerServer |
gstreamer_client | the AgsGstreamerClient to remove |

Since: 3.6.0

### ags_gstreamer_server_connect_client ()

    void
    ags_gstreamer_server_connect_client (AgsGstreamerServer *gstreamer_server);

Connect all clients.

#### Parameters

gstreamer_server | the AgsGstreamerServer |

Since: 3.6.0

### ags_gstreamer_server_disconnect_client ()

    void
    ags_gstreamer_server_disconnect_client
                                   (AgsGstreamerServer *gstreamer_server);

Disconnect all clients.

#### Parameters

gstreamer_server | the AgsGstreamerServer |

Since: 3.6.0

### ags_gstreamer_server_start_poll ()

    void
    ags_gstreamer_server_start_poll (AgsGstreamerServer *gstreamer_server);

### ags_gstreamer_server_new ()

    AgsGstreamerServer *
    ags_gstreamer_server_new (gchar *url);

Create a new instance of AgsGstreamerServer.

#### Parameters

url | the URL as string |

#### Returns

the new AgsGstreamerServer

Since: 3.6.0

## Property Details

### The `“default-gstreamer-client”` property

      “default-gstreamer-client” AgsGstreamerClient *

The default gstreamer client.

Owner: AgsGstreamerServer

Flags: Read / Write

Since: 3.6.0

### The `“default-soundcard”` property

      “default-soundcard”        GObject *

The default soundcard.

Owner: AgsGstreamerServer

Flags: Read / Write

Since: 3.6.0

### The `“gstreamer-client”` property

      “gstreamer-client”         gpointer

The gstreamer client list.

[transfer full]

Owner: AgsGstreamerServer

Flags: Read / Write

Since: 3.6.0

### The `“url”` property

      “url”                      char *

The assigned URL.

Owner: AgsGstreamerServer

Flags: Read / Write

Default value: NULL

Since: 3.6.0