# librygel-server API Reference

RygelAudioItem — Represents an audio item contained in a file.
RygelDataSource Interface for all data streams provided by a RygelMediaEngine.
RygelHTTPSeek — HTTPSeek is an abstract representation of a ranged HTTP request.
RygelImageItem — Represents an image item.
RygelLogicalExpression — This is a parsed UPnP search expression consisting of two other search expressions joined by a boolean operator such as AND or OR.
RygelMediaArtStore This maps RygelMusicItem objects to their cached cover art, implementing the GNOME MediaArt storage specification.
RygelMediaContainer — This is a container (folder) for media items and child containers.
RygelMediaEngine — This is the base class for media engines that contain knowledge about the streaming and (optionally) the transcoding and seeking capabilites of the media library in use. Derived classes also instantiate any transcoding objects supported by the media engine and specify the list of media formats the engine is capable of playing.
RygelMediaItem — Represents a media item (Music, Video or Image).
RygelMediaObject — Represents a media object (container or item).
RygelMediaObjects — An array list that keeps media objects.
RygelMediaServer — This class may be used to implement in-process UPnP-AV media servers.
RygelMediaServerPlugin — This is the base class for every Rygel implementation of a UPnP media server. It should be used either for a real plug-in for the Rygel process or used in-process via the librygel-server API.
RygelMusicItem — Represents a music item.
RygelPhotoItem — Represents a photo item.
RygelRelationalExpression — This is a parsed UPnP search expression consisting of two strings joined by a relational operator such as such <, <=, ==, !=, >, >=, derivedFrom or exists.
RygelSearchExpression — Represents a SearchExpression tree.
RygelSearchableContainer — The base class for searchable containers.
RygelSimpleContainer A simple implementation of RygelMediaContainer that keeps all RygelMediaObjects in memory. You should add children via `rygel_simple_container_add_child_item()`.
RygelSubtitle — Represents a subtitle for a video.
RygelThumbnail — Represents a picture or video thumbnail.
RygelTrackableContainer — The base class for containers that provide automatic change tracking.
RygelTranscodeManager — Responsible for management of all transcoders: # Gets the appropriate transcoder given a transcoding target. # Provide all possible transcoding resources for items.
RygelTranscoder The base Transcoder class. Each implementation derives from it and must implement `create_source()` and `get_distance()`.
RygelVideoItem — Represents a video item.
RygelVisualItem — An interface that visual (video and image) items must implement.
RygelWritableContainer — This interface should be implemented by 'writable' containers - ones that allow adding (via upload), removal and editing of items directly under them. Currently, only addition and removal are supported.

Generated by GTK-Doc V1.21.1