## OGMRipContainer OGMRipContainer — Base class for containers |

## Functions

void | (*OGMRipContainerCodecFunc) ()
void | (*OGMRipContainerFileFunc) ()
void | ogmrip_container_set_options ()
const gchar * | ogmrip_container_get_output ()
void | ogmrip_container_set_output ()
const gchar * | ogmrip_container_get_label ()
void | ogmrip_container_set_label ()
const gchar * | ogmrip_container_get_fourcc ()
void | ogmrip_container_set_fourcc ()
OGMRipVideoCodec * | ogmrip_container_get_video ()
void | ogmrip_container_set_video ()
void | ogmrip_container_add_audio ()
GSList * | ogmrip_container_get_audio ()
OGMRipAudioCodec * | ogmrip_container_get_nth_audio ()
gint | ogmrip_container_get_n_audio ()
void | ogmrip_container_foreach_audio ()
void | ogmrip_container_remove_audio ()
void | ogmrip_container_add_subp ()
GSList * | ogmrip_container_get_subp ()
gint | ogmrip_container_get_n_subp ()
OGMRipSubpCodec * | ogmrip_container_get_nth_subp ()
void | ogmrip_container_foreach_subp ()
void | ogmrip_container_remove_subp ()
void | ogmrip_container_add_chapters ()
GSList * | ogmrip_container_get_chapters ()
OGMRipChapters * | ogmrip_container_get_nth_chapters ()
gint | ogmrip_container_get_n_chapters ()
void | ogmrip_container_foreach_chapters ()
void | ogmrip_container_remove_chapters ()
void | ogmrip_container_add_file ()
GSList * | ogmrip_container_get_files ()
OGMRipFile * | ogmrip_container_get_nth_file ()
gint | ogmrip_container_get_n_files ()
void | ogmrip_container_foreach_file ()
void | ogmrip_container_remove_file ()
void | ogmrip_container_set_split ()
void | ogmrip_container_get_split ()
gint | ogmrip_container_get_start_delay ()
void | ogmrip_container_set_start_delay ()
gint | ogmrip_container_get_overhead ()
gint64 | ogmrip_container_get_overhead_size ()
gint64 | ogmrip_container_get_nonvideo_size ()

## Properties

gchar * | fourcc | Read / Write
gchar * | label | Read / Write
gchar * | output | Read / Write
guint | overhead | Read
guint | start-delay | Read / Write
guint | target-number | Read / Write
guint | target-size | Read / Write

## Types and Values

struct | OGMRipContainer
struct | OGMRipContainerClass

## Object Hierarchy

        GObject
        ╰── OGMJobSpawn
            ╰── OGMJobContainer
                ╰── OGMJobBin
                    ╰── OGMRipContainer

## Includes

    #include <ogmrip-container.h>

## Description

## Functions

### OGMRipContainerCodecFunc ()

    void
    (*OGMRipContainerCodecFunc) (OGMRipContainer *container,
                                 OGMRipCodec *codec,
                                 guint demuxer,
                                 gint language,
                                 gpointer user_data);

Specifies the type of functions passed to `ogmrip_container_foreach_audio()`, `ogmrip_container_foreach_subp()`, and `ogmrip_container_foreach_chapters()`.

#### Parameters

container | An OGMRipContainer |
codec | An OGMRipCodec |
demuxer | The demuxer to be used |
language | The language of the stream |
user_data | The user data |

### OGMRipContainerFileFunc ()

    void
    (*OGMRipContainerFileFunc) (OGMRipContainer *container,
                                OGMRipFile *file,
                                gpointer user_data);

Specifies the type of functions passed to `ogmrip_container_foreach_file()`.

#### Parameters

container | An OGMRipContainer |
file | An OGMRipFile |
user_data | The user data |

### ogmrip_container_set_options ()

    void
    ogmrip_container_set_options (OGMRipContainer *container,
                                  const gchar *section);

Sets container specific options from the specified profile.

#### Parameters

container | An OGMRipContainer |
section | A profile |

### ogmrip_container_get_output ()

    const gchar *
    ogmrip_container_get_output (OGMRipContainer *container);

Gets the name of the output file.

#### Parameters

container | An OGMRipContainer |

#### Returns

The filename, or NULL

### ogmrip_container_set_output ()

    void
    ogmrip_container_set_output (OGMRipContainer *container,
                                 const gchar *output);

Sets the name of the output file.

#### Parameters

container | an OGMRipContainer |
output | the name of the output file |

### ogmrip_container_get_label ()

    const gchar *
    ogmrip_container_get_label (OGMRipContainer *container);

Gets the label of the rip.

#### Parameters

container | An OGMRipContainer |

#### Returns

The label, or NULL

### ogmrip_container_set_label ()

    void
    ogmrip_container_set_label (OGMRipContainer *container,
                                const gchar *label);

Sets the label of the rip.

#### Parameters

container | An OGMRipContainer |
label | the label |

### ogmrip_container_get_fourcc ()

    const gchar *
    ogmrip_container_get_fourcc (OGMRipContainer *container);

Gets the FourCC of the rip.

#### Parameters

container | An OGMRipContainer |

#### Returns

The FourCC, or NULL

### ogmrip_container_set_fourcc ()

    void
    ogmrip_container_set_fourcc (OGMRipContainer *container,
                                 const gchar *fourcc);

Sets the FourCC of the rip.

#### Parameters

container | An OGMRipContainer |
fourcc | the FourCC |

### ogmrip_container_get_video ()

    OGMRipVideoCodec *
    ogmrip_container_get_video (OGMRipContainer *container);

Gets the video codec of the rip.

#### Parameters

container | An OGMRipContainer |

#### Returns

An OGMRipVideoCodec, or NULL

### ogmrip_container_set_video ()

    void
    ogmrip_container_set_video (OGMRipContainer *container,
                                OGMRipVideoCodec *video);

Sets the video codec of the rip.

#### Parameters

container | An OGMRipContainer |
video | An OGMRipVideoCodec |

### ogmrip_container_add_audio ()

    void
    ogmrip_container_add_audio (OGMRipContainer *container,
                                OGMRipAudioCodec *audio,
                                OGMRipAudioDemuxer demuxer,
                                gint language);

Adds an audio codec to the rip.

#### Parameters

container | An OGMRipContainer |
audio | An OGMRipAudioCodec |
demuxer | The demuxer to be used |
language | The language of the stream |

### ogmrip_container_get_audio ()

    GSList *
    ogmrip_container_get_audio (OGMRipContainer *container);

Gets a list of the audio codecs of the rip.

#### Parameters

container | An OGMRipContainer |

#### Returns

A GSList, or NULL

### ogmrip_container_get_nth_audio ()

    OGMRipAudioCodec *
    ogmrip_container_get_nth_audio (OGMRipContainer *container,
                                    gint n);

Gets the audio codec at the given position.

#### Parameters

container | an OGMRipContainer |
n | The index of the audio codec |

#### Returns

An OGMRipAudioCodec, or NULL

### ogmrip_container_get_n_audio ()

    gint
    ogmrip_container_get_n_audio (OGMRipContainer *container);

Gets the number of audio codecs.

#### Parameters

container | an OGMRipContainer |

#### Returns

the number of audio codecs

### ogmrip_container_foreach_audio ()

    void
    ogmrip_container_foreach_audio (OGMRipContainer *container,
                                    OGMRipContainerCodecFunc func,
                                    gpointer data);

Calls a function for each audio codec

#### Parameters

container | an OGMRipContainer |
func | The function to call with each audio codec |
data | User data to pass to the function |

### ogmrip_container_remove_audio ()

    void
    ogmrip_container_remove_audio (OGMRipContainer *container,
                                   OGMRipAudioCodec *audio);

Removes the audio codec from the rip.

#### Parameters

container | An OGMRipContainer |
audio | An OGMRipAudioCodec |

### ogmrip_container_add_subp ()

    void
    ogmrip_container_add_subp (OGMRipContainer *container,
                               OGMRipSubpCodec *subp,
                               OGMRipSubpDemuxer demuxer,
                               gint language);

Adds a subtitle codec to the rip.

#### Parameters

container | An OGMRipContainer |
subp | An OGMRipSubpCodec |
demuxer | The demuxer to be used |
language | The language of the stream |

### ogmrip_container_get_subp ()

    GSList *
    ogmrip_container_get_subp (OGMRipContainer *container);

Gets a list of the subtitle codecs of the rip.

#### Parameters

container | An OGMRipContainer |

#### Returns

A GSList, or NULL

### ogmrip_container_get_n_subp ()

    gint
    ogmrip_container_get_n_subp (OGMRipContainer *container);

Gets the number of subtitle codecs.

#### Parameters

container | an OGMRipContainer |

#### Returns

the number of subtitle codecs

### ogmrip_container_get_nth_subp ()

    OGMRipSubpCodec *
    ogmrip_container_get_nth_subp (OGMRipContainer *container,
                                   gint n);

Gets the subtitle codec at the given position.

#### Parameters

container | an OGMRipContainer |
n | The index of the subtitle codec |

#### Returns

An OGMRipSubpCodec, or NULL

### ogmrip_container_foreach_subp ()

    void
    ogmrip_container_foreach_subp (OGMRipContainer *container,
                                   OGMRipContainerCodecFunc func,
                                   gpointer data);

Calls a function for each subtitle codec

#### Parameters

container | An OGMRipContainer |
func | The function to call with each subtitle codec |
data | User data to pass to the function |

### ogmrip_container_remove_subp ()

    void
    ogmrip_container_remove_subp (OGMRipContainer *container,
                                  OGMRipSubpCodec *subp);

Removes the subp codec from the rip.

#### Parameters

container | An OGMRipContainer |
subp | An OGMRipSubpCodec |

### ogmrip_container_add_chapters ()

    void
    ogmrip_container_add_chapters (OGMRipContainer *container,
                                   OGMRipChapters *chapters,
                                   gint language);

Adds a chapters codec to the rip.

#### Parameters

container | An OGMRipContainer |
chapters | An OGMRipChapters |
language | The language of the chapters |

### ogmrip_container_get_chapters ()

    GSList *
    ogmrip_container_get_chapters (OGMRipContainer *container);

Gets a list of the chapters codecs of the rip.

#### Parameters

container | An OGMRipContainer |

#### Returns

A GSList, or NULL

### ogmrip_container_get_nth_chapters ()

    OGMRipChapters *
    ogmrip_container_get_nth_chapters (OGMRipContainer *container,
                                       gint n);

Gets the chapters codec at the given position.

#### Parameters

container | an OGMRipContainer |
n | The index of the chapters codec |

#### Returns

An OGMRipChapters, or NULL

### ogmrip_container_get_n_chapters ()

    gint
    ogmrip_container_get_n_chapters (OGMRipContainer *container);

Gets the number of chapters codecs.

#### Parameters

container | an OGMRipContainer |

#### Returns

the number of chapters codecs

### ogmrip_container_foreach_chapters ()

    void
    ogmrip_container_foreach_chapters (OGMRipContainer *container,
                                       OGMRipContainerCodecFunc func,
                                       gpointer data);

Calls a function for each chapters codec

#### Parameters

container | An OGMRipContainer |
func | The function to call with each chapters codec |
data | User data to pass to the function |

### ogmrip_container_remove_chapters ()

    void
    ogmrip_container_remove_chapters (OGMRipContainer *container,
                                      OGMRipChapters *chapters);

Removes the chapters from the rip.

#### Parameters

container | An OGMRipContainer |
chapters | An OGMRipChaptersCodec |

### ogmrip_container_add_file ()

    void
    ogmrip_container_add_file (OGMRipContainer *container,
                               OGMRipFile *file);

Adds a file to the rip.

#### Parameters

container | An OGMRipContainer |
file | An OOGMRipFile |

### ogmrip_container_get_files ()

    GSList *
    ogmrip_container_get_files (OGMRipContainer *container);

Gets a list of the files of the rip.

#### Parameters

container | An OGMRipContainer |

#### Returns

A GSList, or NULL

### ogmrip_container_get_nth_file ()

    OGMRipFile *
    ogmrip_container_get_nth_file (OGMRipContainer *container,
                                   gint n);

Gets the file at the given position.

#### Parameters

container | an OGMRipContainer |
n | The index of the file |

#### Returns

An OGMRipFile, or NULL

### ogmrip_container_get_n_files ()

    gint
    ogmrip_container_get_n_files (OGMRipContainer *container);

Gets the number of files.

#### Parameters

container | an OGMRipContainer |

#### Returns

the number of files

### ogmrip_container_foreach_file ()

    void
    ogmrip_container_foreach_file (OGMRipContainer *container,
                                   OGMRipContainerFileFunc func,
                                   gpointer data);

Calls a function for each file

#### Parameters

container | An OGMRipContainer |
func | The function to call with each file |
data | User data to pass to the function |

### ogmrip_container_remove_file ()

    void
    ogmrip_container_remove_file (OGMRipContainer *container,
                                  OGMRipFile *file);

Removes the file from the rip.

#### Parameters

container | An OGMRipContainer |
file | An OGMRipFile |

### ogmrip_container_set_split ()

    void
    ogmrip_container_set_split (OGMRipContainer *container,
                                guint number,
                                guint size);

Sets the number of output files and the maximum size of each one.

#### Parameters

container | An OGMRipContainer |
number | The number of file |
size | The size of each file |

### ogmrip_container_get_split ()

    void
    ogmrip_container_get_split (OGMRipContainer *container,
                                guint *number,
                                guint *size);

Gets the number of output files and the maximum size of each one.

#### Parameters

container | An OGMRipContainer |
number | A pointer to store the number of file |
size | A pointer to store the size of each file |

### ogmrip_container_get_start_delay ()

    gint
    ogmrip_container_get_start_delay (OGMRipContainer *container);

Gets the start delay of the audio tracks.

#### Parameters

container | An OGMRipContainer |

#### Returns

The start delay, or -1

### ogmrip_container_set_start_delay ()

    void
    ogmrip_container_set_start_delay (OGMRipContainer *container,
                                      guint start_delay);

Sets the start delay of the audio tracks

#### Parameters

container | An OGMRipContainer |
start_delay | the start delay |

### ogmrip_container_get_overhead ()

    gint
    ogmrip_container_get_overhead (OGMRipContainer *container);

Gets the overhead of the container.

#### Parameters

container | An OGMRipContainer |

#### Returns

The overhead, or -1

### ogmrip_container_get_overhead_size ()

    gint64
    ogmrip_container_get_overhead_size (OGMRipContainer *container);

Returns the size of the overhead generated by the video, audio and subtitle stream, the chapters information and the files in bytes.

#### Parameters

container | An OGMRipContainer |

#### Returns

The overhead size

### ogmrip_container_get_nonvideo_size ()

    gint64
    ogmrip_container_get_nonvideo_size (OGMRipContainer *container);

Returns the size of the audio and subtitle streams, the chapters information and the files in bytes.

#### Parameters

container | An OGMRipContainer |

#### Returns

The nonvideo size

## Types and Values

### struct OGMRipContainer

    struct OGMRipContainer;

### struct OGMRipContainerClass

    struct OGMRipContainerClass {
      OGMJobBinClass parent_class;

      /* vtable */
      gint (* get_overhead) (OGMRipContainer *container);
      void (* set_options)  (OGMRipContainer *container,
                             const gchar     *section);
    };

## Property Details

### The `“fourcc”` property

      “fourcc”                   gchar *

Set fourcc.

Flags: Read / Write

Default value: NULL

### The `“label”` property

      “label”                    gchar *

Set label.

Flags: Read / Write

Default value: NULL

### The `“output”` property

      “output”                   gchar *

Set output file.

Flags: Read / Write

Default value: NULL

### The `“overhead”` property

      “overhead”                 guint

Get overhead.

Flags: Read

Default value: 6

### The `“start-delay”` property

      “start-delay”              guint

Set start delay.

Flags: Read / Write

Allowed values: <= G_MAXINT

Default value: 0

### The `“target-number”` property

      “target-number”            guint

Set target number.

Flags: Read / Write

Default value: 1

### The `“target-size”` property

      “target-size”              guint

Set target size.

Flags: Read / Write

Default value: 0