## RygelTranscodeManager

RygelTranscodeManager — Responsible for management of all transcoders: # Gets the appropriate transcoder given a transcoding target. # Provide all possible transcoding resources for items.

## Synopsis

    #define             RYGEL_TYPE_TRANSCODE_MANAGER
    gchar *             rygel_transcode_manager_create_uri_for_item
                                                            (RygelTranscodeManager *self,
                                                             RygelMediaItem *item,
                                                             gint thumbnail_index,
                                                             gint subtitle_index,
                                                             const gchar *transcode_target,
                                                             const gchar *playlist_target);
    void                rygel_transcode_manager_add_resources
                                                            (RygelTranscodeManager *self,
                                                             GUPnPDIDLLiteItem *didl_item,
                                                             RygelMediaItem *item,
                                                             GError **error);
    RygelTranscoder *   rygel_transcode_manager_get_transcoder
                                                            (RygelTranscodeManager *self,
                                                             const gchar *target,
                                                             GError **error);
    struct              RygelTranscodeManager;
    struct              RygelTranscodeManagerClass;

## Object Hierarchy

      GObject
       +----RygelTranscodeManager

## Description

## Details

### RYGEL_TYPE_TRANSCODE_MANAGER

    #define RYGEL_TYPE_TRANSCODE_MANAGER (rygel_transcode_manager_get_type ())

The type for RygelTranscodeManager.

### rygel_transcode_manager_create_uri_for_item ()

    gchar *             rygel_transcode_manager_create_uri_for_item
                                                            (RygelTranscodeManager *self,
                                                             RygelMediaItem *item,
                                                             gint thumbnail_index,
                                                             gint subtitle_index,
                                                             const gchar *transcode_target,
                                                             const gchar *playlist_target);

`self` : | the RygelTranscodeManager instance
`item` : |
`thumbnail_index` : |
`subtitle_index` : |
`transcode_target` : |
`playlist_target` : |

### rygel_transcode_manager_add_resources ()

    void                rygel_transcode_manager_add_resources
                                                            (RygelTranscodeManager *self,
                                                             GUPnPDIDLLiteItem *didl_item,
                                                             RygelMediaItem *item,
                                                             GError **error);

`self` : | the RygelTranscodeManager instance
`didl_item` : |
`item` : |
`error` : | location to store the error occuring, or `NULL` to ignore

### rygel_transcode_manager_get_transcoder ()

    RygelTranscoder *   rygel_transcode_manager_get_transcoder
                                                            (RygelTranscodeManager *self,
                                                             const gchar *target,
                                                             GError **error);

`self` : | the RygelTranscodeManager instance
`target` : |
`error` : | location to store the error occuring, or `NULL` to ignore

### struct RygelTranscodeManager

    struct RygelTranscodeManager;

Responsible for management of all transcoders: # Gets the appropriate transcoder given a transcoding target. # Provide all possible transcoding resources for items.

### struct RygelTranscodeManagerClass

    struct RygelTranscodeManagerClass {
    	GObjectClass parent_class;
    	gchar* (*create_uri_for_item) (RygelTranscodeManager* self, RygelMediaItem* item, gint thumbnail_index, gint subtitle_index, const gchar* transcode_target, const gchar* playlist_target);
    	gchar* (*get_protocol) (RygelTranscodeManager* self);
    	GeeArrayList* (*get_protocol_info) (RygelTranscodeManager* self);
    };

The class structure for `RYGEL_TYPE_TRANSCODE_MANAGER`. All the fields in this structure are private and should never be accessed directly.

GObjectClass `parent_class`; | the parent class structure
`create_uri_for_item` () | virtual method called by `rygel_transcode_manager_create_uri_for_item()`
`get_protocol` () |
`get_protocol_info` () |