## AgsSoundContainer

AgsSoundContainer — read/write audio

## Stability Level

Stable, unless otherwise indicated

## Functions

gboolean | ags_sound_container_open ()
guint | ags_sound_container_get_level_count ()
guint | ags_sound_container_get_nesting_level ()
gchar * | ags_sound_container_get_level_id ()
guint | ags_sound_container_get_level_index ()
gchar ** | ags_sound_container_get_sublevel_name ()
guint | ags_sound_container_level_up ()
guint | ags_sound_container_select_level_by_id ()
guint | ags_sound_container_select_level_by_index ()
GList * | ags_sound_container_get_resource_all ()
GList * | ags_sound_container_get_resource_by_name ()
GList * | ags_sound_container_get_resource_by_index ()
GList * | ags_sound_container_get_resource_current ()
void | ags_sound_container_close ()

## Object Hierarchy

        GInterface
        ╰── AgsSoundContainer

## Includes

    #include <ags/audio/file/ags_sound_container.h>

## Description

The AgsSoundContainer interface gives you a unique access to file related IO operations.

## Functions

### ags_sound_container_open ()

    gboolean
    ags_sound_container_open (AgsSoundContainer *sound_container,
                              gchar *filename);

Open `sound_container` .

#### Parameters

sound_container | the AgsSoundcontainer |
filename | the filename |

#### Returns

`TRUE` if open succeeded, else `FALSE`

Since: 3.0.0

### ags_sound_container_get_level_count ()

    guint
    ags_sound_container_get_level_count (AgsSoundContainer *sound_container);

Get level count.

#### Parameters

sound_container | the AgsSoundcontainer |

#### Returns

the level count

Since: 3.0.0

### ags_sound_container_get_nesting_level ()

    guint
    ags_sound_container_get_nesting_level (AgsSoundContainer *sound_container);

Get nesting level.

#### Parameters

sound_container | the AgsSoundcontainer |

#### Returns

the nesting level

Since: 3.0.0

### ags_sound_container_get_level_id ()

    gchar *
    ags_sound_container_get_level_id (AgsSoundContainer *sound_container);

Get level id.

#### Parameters

sound_container | the AgsSoundcontainer |

#### Returns

the level id as string

Since: 3.0.0

### ags_sound_container_get_level_index ()

    guint
    ags_sound_container_get_level_index (AgsSoundContainer *sound_container);

Get level index.

#### Parameters

sound_container | the AgsSoundcontainer |

#### Returns

the level index unsigned integer

Since: 3.0.0

### ags_sound_container_get_sublevel_name ()

    gchar **
    ags_sound_container_get_sublevel_name (AgsSoundContainer *sound_container);

Get sublevel names.

#### Parameters

sound_container | the AgsSoundcontainer |

#### Returns

the string vector containing sublevel names.

[element-type utf8][array zero-terminated=1][transfer full]

Since: 3.0.0

### ags_sound_container_level_up ()

    guint
    ags_sound_container_level_up (AgsSoundContainer *sound_container,
                                  guint level_count);

Level up.

#### Parameters

sound_container | the AgsSoundcontainer |
level_count | the count of levels to go up |

#### Returns

the level count went up

Since: 3.0.0

### ags_sound_container_select_level_by_id ()

    guint
    ags_sound_container_select_level_by_id
                                   (AgsSoundContainer *sound_container,
                                    gchar *level_id);

Select level by id.

#### Parameters

sound_container | the AgsSoundcontainer |
level_id | the level id as string |

#### Returns

the index of level as unsigned integer

Since: 3.0.0

### ags_sound_container_select_level_by_index ()

    guint
    ags_sound_container_select_level_by_index
                                   (AgsSoundContainer *sound_container,
                                    guint level_index);

Select level by index.

#### Parameters

sound_container | the AgsSoundcontainer |
level_index | the level index unsigned integer |

#### Returns

the index of level as unsigned integer

Since: 3.0.0

### ags_sound_container_get_resource_all ()

    GList *
    ags_sound_container_get_resource_all (AgsSoundContainer *sound_container);

Get all resources as a GList.

#### Parameters

sound_container | the AgsSoundcontainer |

#### Returns

the GList containing AgsResource.

[element-type GObject][transfer full]

Since: 3.0.0

### ags_sound_container_get_resource_by_name ()

    GList *
    ags_sound_container_get_resource_by_name
                                   (AgsSoundContainer *sound_container,
                                    gchar *resource_name);

Get resources by name as a GList.

#### Parameters

sound_container | the AgsSoundcontainer |
resource_name | the resource name |

#### Returns

the GList containing AgsResource.

[element-type GObject][transfer full]

Since: 3.0.0

### ags_sound_container_get_resource_by_index ()

    GList *
    ags_sound_container_get_resource_by_index
                                   (AgsSoundContainer *sound_container,
                                    guint resource_index);

Get resources by index as a GList.

#### Parameters

sound_container | the AgsSoundcontainer |
resource_index | the index |

#### Returns

the GList containing AgsResource.

[element-type GObject][transfer full]

Since: 3.0.0

### ags_sound_container_get_resource_current ()

    GList *
    ags_sound_container_get_resource_current
                                   (AgsSoundContainer *sound_container);

Get resources by index as a GList.

#### Parameters

sound_container | the AgsSoundcontainer |

#### Returns

the GList containing AgsResource.

[element-type GObject][transfer full]

Since: 3.0.0

### ags_sound_container_close ()

    void
    ags_sound_container_close (AgsSoundContainer *sound_container);

Close `sound_container` .

#### Parameters

sound_container | the AgsSoundcontainer |

Since: 3.0.0