![]() |
![]() |
![]() |
Grilo Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy |
#include <grilo.h> struct GrlMedia; struct GrlMediaClass; enum GrlMediaSerializeType; GrlMedia * grl_media_new (void
); void grl_media_add_author (GrlMedia *media
,const gchar *author
); void grl_media_add_external_player (GrlMedia *media
,const gchar *player
); void grl_media_add_external_url (GrlMedia *media
,const gchar *url
); void grl_media_add_keyword (GrlMedia *media
,const gchar *keyword
); void grl_media_add_region_data (GrlMedia *media
,const gchar *region
,const GDateTime *publication_date
,const gchar *certificate
); void grl_media_add_thumbnail (GrlMedia *media
,const gchar *thumbnail
); void grl_media_add_thumbnail_binary (GrlMedia *media
,const guint8 *thumbnail
,gsize size
); void grl_media_add_url_data (GrlMedia *media
,const gchar *url
,const gchar *mime
); const gchar * grl_media_get_author (GrlMedia *media
); const gchar * grl_media_get_author_nth (GrlMedia *media
,guint index
); const gchar * grl_media_get_certificate (GrlMedia *media
); GDateTime * grl_media_get_creation_date (GrlMedia *media
); const gchar * grl_media_get_description (GrlMedia *media
); gint grl_media_get_duration (GrlMedia *media
); const gchar * grl_media_get_external_url (GrlMedia *media
); const gchar * grl_media_get_external_url_nth (GrlMedia *media
,guint index
); const gchar * grl_media_get_id (GrlMedia *media
); const gchar * grl_media_get_keyword (GrlMedia *media
); const gchar * grl_media_get_keyword_nth (GrlMedia *media
,guint index
); const gchar * grl_media_get_last_played (GrlMedia *media
); gint grl_media_get_last_position (GrlMedia *media
); const gchar * grl_media_get_license (GrlMedia *media
); const gchar * grl_media_get_mime (GrlMedia *media
); GDateTime * grl_media_get_modification_date (GrlMedia *media
); gint grl_media_get_play_count (GrlMedia *media
); const gchar * grl_media_get_player (GrlMedia *media
); const gchar * grl_media_get_player_nth (GrlMedia *media
,guint index
); GDateTime * grl_media_get_publication_date (GrlMedia *media
); gfloat grl_media_get_rating (GrlMedia *media
); const gchar * grl_media_get_region (GrlMedia *media
); const gchar * grl_media_get_region_data (GrlMedia *media
,const GDateTime **publication_date
,const gchar **certificate
); const gchar * grl_media_get_region_data_nth (GrlMedia *media
,guint index
,const GDateTime **publication_date
,const gchar **certificate
); const gchar * grl_media_get_site (GrlMedia *media
); const gchar * grl_media_get_source (GrlMedia *media
); gfloat grl_media_get_start_time (GrlMedia *media
); const gchar * grl_media_get_studio (GrlMedia *media
); const gchar * grl_media_get_thumbnail (GrlMedia *media
); const guint8 * grl_media_get_thumbnail_binary (GrlMedia *media
,gsize *size
); const guint8 * grl_media_get_thumbnail_binary_nth (GrlMedia *media
,gsize *size
,guint index
); const gchar * grl_media_get_thumbnail_nth (GrlMedia *media
,guint index
); const gchar * grl_media_get_title (GrlMedia *media
); const gchar * grl_media_get_url (GrlMedia *media
); const gchar * grl_media_get_url_data (GrlMedia *media
,gchar **mime
); const gchar * grl_media_get_url_data_nth (GrlMedia *media
,guint index
,gchar **mime
); gchar * grl_media_serialize (GrlMedia *media
); gchar * grl_media_serialize_extended (GrlMedia *media
,GrlMediaSerializeType serial_type
,...
); void grl_media_set_author (GrlMedia *media
,const gchar *author
); void grl_media_set_certificate (GrlMedia *media
,const gchar *certificate
); void grl_media_set_creation_date (GrlMedia *media
,const GDateTime *creation_date
); void grl_media_set_description (GrlMedia *media
,const gchar *description
); void grl_media_set_duration (GrlMedia *media
,gint duration
); void grl_media_set_external_player (GrlMedia *media
,const gchar *player
); void grl_media_set_external_url (GrlMedia *media
,const gchar *url
); void grl_media_set_id (GrlMedia *media
,const gchar *id
); void grl_media_set_keyword (GrlMedia *media
,const gchar *keyword
); void grl_media_set_last_played (GrlMedia *media
,const gchar *last_played
); void grl_media_set_last_position (GrlMedia *media
,gint last_position
); void grl_media_set_license (GrlMedia *media
,const gchar *license
); void grl_media_set_mime (GrlMedia *media
,const gchar *mime
); void grl_media_set_modification_date (GrlMedia *media
,const GDateTime *modification_date
); void grl_media_set_play_count (GrlMedia *media
,gint play_count
); void grl_media_set_publication_date (GrlMedia *media
,const GDateTime *date
); void grl_media_set_rating (GrlMedia *media
,gfloat rating
,gfloat max
); void grl_media_set_region (GrlMedia *media
,const gchar *region
); void grl_media_set_region_data (GrlMedia *media
,const gchar *region
,const GDateTime *publication_date
,const gchar *certificate
); void grl_media_set_site (GrlMedia *media
,const gchar *site
); void grl_media_set_source (GrlMedia *media
,const gchar *source
); void grl_media_set_studio (GrlMedia *media
,const gchar *studio
); void grl_media_set_thumbnail (GrlMedia *media
,const gchar *thumbnail
); void grl_media_set_thumbnail_binary (GrlMedia *media
,const guint8 *thumbnail
,gsize size
); void grl_media_set_title (GrlMedia *media
,const gchar *title
); void grl_media_set_url (GrlMedia *media
,const gchar *url
); void grl_media_set_url_data (GrlMedia *media
,const gchar *url
,const gchar *mime
); GrlMedia * grl_media_unserialize (const gchar *serial
);
GObject +----GrlData +----GrlMedia +----GrlMediaBox +----GrlMediaAudio +----GrlMediaVideo +----GrlMediaImage
This high level class represents a multimedia item. It has methods to set and get properties like author, title, description, and so on.
struct GrlMediaClass { GrlDataClass parent_class; };
Grilo Media Class
GrlDataClass |
the parent class structure |
typedef enum { GRL_MEDIA_SERIALIZE_BASIC, GRL_MEDIA_SERIALIZE_PARTIAL, GRL_MEDIA_SERIALIZE_FULL } GrlMediaSerializeType;
GrlMedia serialize type
Basic mode | |
Partial mode | |
Full mode |
Since 0.2.3
GrlMedia * grl_media_new (void
);
Creates a new data media object.
Returns : |
a newly-allocated data media. |
Since 0.1.4
void grl_media_add_author (GrlMedia *media
,const gchar *author
);
Adds a new author to media
.
|
a GrlMedia |
|
an author for media
|
Since 0.1.10
void grl_media_add_external_player (GrlMedia *media
,const gchar *player
);
Adds a new external player to media
.
|
a GrlMedia |
|
an external player for media
|
Since 0.1.10
void grl_media_add_external_url (GrlMedia *media
,const gchar *url
);
Adds a new external url to media
.
|
a GrlMedia |
|
an external url for media
|
Since 0.1.10
void grl_media_add_keyword (GrlMedia *media
,const gchar *keyword
);
Adds the keyword describing the media
.
|
a GrlMedia |
|
a keyword describing the media |
Since 0.2.3
void grl_media_add_region_data (GrlMedia *media
,const gchar *region
,const GDateTime *publication_date
,const gchar *certificate
);
Adds regional publication and certification information for region
.
|
a GrlMedia |
|
the region's ISO-3166-1 code |
|
the publication date |
|
the age certification |
Since 0.2.3
void grl_media_add_thumbnail (GrlMedia *media
,const gchar *thumbnail
);
Adds a new thumbnail to media
.
|
a GrlMedia |
|
a thumbnail for media
|
Since 0.1.10
void grl_media_add_thumbnail_binary (GrlMedia *media
,const guint8 *thumbnail
,gsize size
);
Adds a new thumbnail to media
.
|
a GrlMedia |
|
a buffer containing the thumbnail for media
|
|
size of buffer |
Since 0.1.10
void grl_media_add_url_data (GrlMedia *media
,const gchar *url
,const gchar *mime
);
Adds a new media's URL with its mime-type.
|
a GrlMedia |
|
a media's URL |
|
th url mime type |
Since 0.1.10
const gchar * grl_media_get_author (GrlMedia *media
);
|
the media object |
Returns : |
the media's author |
Since 0.1.4
const gchar * grl_media_get_author_nth (GrlMedia *media
,guint index
);
|
the media object |
|
element to retrieve |
Returns : |
the n-th media's author. |
Since 0.1.10
const gchar * grl_media_get_certificate (GrlMedia *media
);
Returns the media's first age certificate.
This should usually be the media's most relevant
age certificate. Use grl_media_get_region_data_nth()
to
get other age certificates.
|
the media object |
Returns : |
the media's age certification |
Since 0.1.6
GDateTime * grl_media_get_creation_date (GrlMedia *media
);
|
the media |
Returns : |
date when media was created (owned by media ). [transfer none]
|
Since 0.2.0
const gchar * grl_media_get_description (GrlMedia *media
);
|
the media object |
Returns : |
the media's description |
Since 0.1.4
gint grl_media_get_duration (GrlMedia *media
);
|
the media object |
Returns : |
the media's duration |
Since 0.1.4
const gchar * grl_media_get_external_url (GrlMedia *media
);
|
the media object |
Returns : |
URL of an external location where the user play the media. |
Since 0.1.6
const gchar * grl_media_get_external_url_nth (GrlMedia *media
,guint index
);
|
the media object |
|
element to retrieve |
Returns : |
the n-th media's external location where the user can play it. |
Since 0.1.10
const gchar * grl_media_get_id (GrlMedia *media
);
|
the media object |
Returns : |
the media's identifier |
Since 0.1.4
const gchar * grl_media_get_keyword (GrlMedia *media
);
|
a GrlMedia |
Returns : |
the keyword describing the media (owned by media ). [transfer none]
|
Since 0.2.3
const gchar * grl_media_get_keyword_nth (GrlMedia *media
,guint index
);
|
a GrlMedia |
|
element to retrieve |
Returns : |
the keyword describing the media (owned by media ). [transfer none]
|
Since 0.2.3
const gchar * grl_media_get_last_played (GrlMedia *media
);
|
the media object |
Returns : |
the media's last played time |
Since 0.1.4
gint grl_media_get_last_position (GrlMedia *media
);
|
the media object |
Returns : |
the media's last_played position (in seconds) |
Since 0.1.4
const gchar * grl_media_get_license (GrlMedia *media
);
|
the media object |
Returns : |
the license the media is under |
Since 0.1.6
const gchar * grl_media_get_mime (GrlMedia *media
);
|
the media object |
Returns : |
the media's mime-type |
Since 0.1.4
GDateTime * grl_media_get_modification_date (GrlMedia *media
);
|
the media |
Returns : |
date when the media was last modified (owned by media ). [transfer none]
|
Since 0.2.0
gint grl_media_get_play_count (GrlMedia *media
);
|
the media object |
Returns : |
the media's play count |
Since 0.1.4
const gchar * grl_media_get_player (GrlMedia *media
);
|
the media object |
Returns : |
URL of an external player object for this media |
Since 0.1.6
const gchar * grl_media_get_player_nth (GrlMedia *media
,guint index
);
|
the media object |
|
element to retrieve |
Returns : |
the n-th media's external player object. |
Since 0.1.10
GDateTime * grl_media_get_publication_date (GrlMedia *media
);
|
the media object |
Returns : |
the publication date of media (owned by media ). [transfer none]
|
Since 0.2.0
gfloat grl_media_get_rating (GrlMedia *media
);
|
the media object |
Returns : |
the media's rating |
Since 0.1.5
const gchar * grl_media_get_region (GrlMedia *media
);
|
the media object |
Returns : |
the ISO-3166-1 of the region where the media was
published (owned by media ). [transfer none]
|
Since 0.2.3
const gchar * grl_media_get_region_data (GrlMedia *media
,const GDateTime **publication_date
,const gchar **certificate
);
Returns the media's age certificate and publication date for the first region.
This should usually be the media's most relevant region.
Use grl_media_get_region_data_nth()
to get the age certificate and
publication date for other regions.
|
the media object |
|
the publication date, or NULL to ignore. [out][transfer none]
|
|
the age certification, or NULL to ignore. [out][transfer none]
|
Returns : |
the ISO-3166-1 of the region where the media was
published (owned by media ). [transfer none]
|
Since 0.2.3
const gchar * grl_media_get_region_data_nth (GrlMedia *media
,guint index
,const GDateTime **publication_date
,const gchar **certificate
);
Returns the media's age certificate and publication date for one region.
Use grl_data_length()
with GRL_METADATA_KEY_REGION to discover
how many regions are available. For instance:
1 2 3 4 5 6 7 8 9 10 |
guint count = grl_data_length (GRL_DATA (media), GRL_METADATA_KEY_REGION); guint i; for (i = 0; i < count; ++i) { const GDateTime* publication_date = NULL; const gchar* certificate = NULL; const gchar* region = grl_media_get_region_data_nth (media, i, &publication_date, &certificate); ... } |
|
the media object |
|
element to retrieve |
|
the publication date, or NULL to ignore. [out][transfer none]
|
|
the age certification, or NULL to ignore. [out][transfer none]
|
Returns : |
the ISO-3166-1 of the region where the media was
published (owned by media ). [transfer none]
|
Since 0.2.3
const gchar * grl_media_get_site (GrlMedia *media
);
|
the media object |
Returns : |
the media's site |
Since 0.1.4
const gchar * grl_media_get_source (GrlMedia *media
);
|
the media object source |
Returns : |
the media's source |
Since 0.1.4
gfloat grl_media_get_start_time (GrlMedia *media
);
|
the media object |
Returns : |
the start time of the logical media resource inside the file containing it, in seconds. |
Since 0.1.19
const gchar * grl_media_get_studio (GrlMedia *media
);
|
the media object |
Returns : |
the studio the media is from |
Since 0.1.6
const gchar * grl_media_get_thumbnail (GrlMedia *media
);
|
the media object |
Returns : |
the media's thumbnail URL |
Since 0.1.4
const guint8 * grl_media_get_thumbnail_binary (GrlMedia *media
,gsize *size
);
|
the media object |
|
pointer to storing the thumbnail buffer size |
Returns : |
the media's thumbnail data and set size to the thumbnail buffer size |
Since 0.1.9
const guint8 * grl_media_get_thumbnail_binary_nth (GrlMedia *media
,gsize *size
,guint index
);
|
the media object |
|
pointer to store the thumbnail buffer size |
|
element to retrieve |
Returns : |
the n-th media's thumbnail binary and sets size to the thumbnail buffer size. |
Since 0.1.10
const gchar * grl_media_get_thumbnail_nth (GrlMedia *media
,guint index
);
|
the media object |
|
element to retrieve |
Returns : |
the n-th media's thumbnail. |
Since 0.1.10
const gchar * grl_media_get_title (GrlMedia *media
);
|
the media object |
Returns : |
the media's title |
Since 0.1.4
const gchar * grl_media_get_url (GrlMedia *media
);
|
the media object |
Returns : |
the media's URL |
Since 0.1.4
const gchar * grl_media_get_url_data (GrlMedia *media
,gchar **mime
);
|
the media object |
|
the mime-type, or NULL to ignore. [out][transfer none]
|
Returns : |
the media's URL and its mime-type. |
Since 0.1.10
const gchar * grl_media_get_url_data_nth (GrlMedia *media
,guint index
,gchar **mime
);
|
the media object |
|
element to retrieve |
|
the mime-type, or NULL to ignore. [out][transfer none]
|
Returns : |
the n-th media's URL and its mime-type. |
Since 0.1.10
gchar * grl_media_serialize (GrlMedia *media
);
Serializes a GrlMedia into a string. It does a basic serialization.
See grl_media_serialize_extended()
to get more serialization approaches.
|
a GrlMedia |
Returns : |
serialized media |
Since 0.1.6
gchar * grl_media_serialize_extended (GrlMedia *media
,GrlMediaSerializeType serial_type
,...
);
Serializes a GrlMedia into a string.
See grl_media_unserialize()
to recover back the GrlMedia from the string.
If serialization type is GRL_MEDIA_SERIALIZE_PARTIAL
then it requires a
GList
with the properties to consider in serialization (id and source are
always considered).
|
a GrlMedia |
|
type of serialization |
|
media keys to serialize |
Returns : |
serialized media |
Since 0.1.6
void grl_media_set_author (GrlMedia *media
,const gchar *author
);
Set the media's author
|
the media |
|
the media's author |
Since 0.1.4
void grl_media_set_certificate (GrlMedia *media
,const gchar *certificate
);
Set the media's first age certification.
This should usually be the media's most relevant
age certificate. Use grl_media_set_region_data()
to
set other age certificates.
|
the media |
|
The age certificate of the media |
Since 0.1.6
void grl_media_set_creation_date (GrlMedia *media
,const GDateTime *creation_date
);
Set the creation_date of the media
|
the media |
|
date when media was created |
Since 0.2.0
void grl_media_set_description (GrlMedia *media
,const gchar *description
);
Set the media's description
|
the media |
|
the description |
Since 0.1.4
void grl_media_set_duration (GrlMedia *media
,gint duration
);
Set the media's duration
|
the media |
|
the duration |
Since 0.1.4
void grl_media_set_external_player (GrlMedia *media
,const gchar *player
);
Set the location of a player for the media (usually a flash player)
|
the media |
|
location of an external player for this media |
Since 0.1.6
void grl_media_set_external_url (GrlMedia *media
,const gchar *url
);
Set an external location where users can play the media
|
the media |
|
external location where this media can be played. |
Since 0.1.6
void grl_media_set_id (GrlMedia *media
,const gchar *id
);
Set the media identifier
|
the media |
|
the identifier of the media |
Since 0.1.4
void grl_media_set_keyword (GrlMedia *media
,const gchar *keyword
);
Sets the keyword describing the media
.
|
a GrlMedia |
|
a keyword describing the media |
Since 0.2.3
void grl_media_set_last_played (GrlMedia *media
,const gchar *last_played
);
Set the media last played date
|
the media |
|
date when the media was last played |
Since 0.1.4
void grl_media_set_last_position (GrlMedia *media
,gint last_position
);
Set the media last played position
|
the media |
|
second at which the media playback was interrupted |
Since 0.1.4
void grl_media_set_license (GrlMedia *media
,const gchar *license
);
Set the media license
|
the media |
|
The license of the media |
Since 0.1.6
void grl_media_set_mime (GrlMedia *media
,const gchar *mime
);
Set the media's mime-type
|
the media |
|
the mime type |
Since 0.1.4
void grl_media_set_modification_date (GrlMedia *media
,const GDateTime *modification_date
);
Set the modification date of the media
|
the media |
|
date when the media was last modified |
Since 0.2.0
void grl_media_set_play_count (GrlMedia *media
,gint play_count
);
Set the media play count
|
the media |
|
the play count |
Since 0.1.4
void grl_media_set_publication_date (GrlMedia *media
,const GDateTime *date
);
Set the publication date of media
.
|
the media |
|
the date |
Since 0.2.0
void grl_media_set_rating (GrlMedia *media
,gfloat rating
,gfloat max
);
This method receives a rating and its scale and normalizes it on a scale from 0...5 to match the usual five-star rating.
|
a media |
|
a rating value |
|
maximum rating value |
Since 0.1.5
void grl_media_set_region (GrlMedia *media
,const gchar *region
);
Sets the region
where media
was published.
|
a GrlMedia |
|
the region's ISO-3166-1 code |
Since 0.2.3
void grl_media_set_region_data (GrlMedia *media
,const gchar *region
,const GDateTime *publication_date
,const gchar *certificate
);
Sets regional publication and certification information for region
.
|
a GrlMedia |
|
the region's ISO-3166-1 code |
|
the publication date |
|
the age certification |
Since 0.2.3
void grl_media_set_site (GrlMedia *media
,const gchar *site
);
Set the media's site. A site is a website about the media such as a studio's promotional website for a movie.
|
the media |
|
the site |
Since 0.1.4
void grl_media_set_source (GrlMedia *media
,const gchar *source
);
Set the media's source
|
the media |
|
the source |
Since 0.1.4
void grl_media_set_studio (GrlMedia *media
,const gchar *studio
);
Set the media studio
|
the media |
|
The studio the media is from |
Since 0.1.6
void grl_media_set_thumbnail (GrlMedia *media
,const gchar *thumbnail
);
Set the media's thumbnail URL
|
the media |
|
the thumbnail URL |
Since 0.1.4
void grl_media_set_thumbnail_binary (GrlMedia *media
,const guint8 *thumbnail
,gsize size
);
Set the media's binary thumbnail
|
the media |
|
thumbnail buffer |
|
thumbnail buffer size |
Since 0.1.9
void grl_media_set_title (GrlMedia *media
,const gchar *title
);
Set the media's title
|
the media |
|
the title |
Since 0.1.4
void grl_media_set_url (GrlMedia *media
,const gchar *url
);
Set the media's URL
|
the media |
|
the media's URL |
Since 0.1.4
void grl_media_set_url_data (GrlMedia *media
,const gchar *url
,const gchar *mime
);
Set the media's URL and its mime-type.
|
a GrlMedia |
|
the media's URL |
|
the url mime type |
Since 0.1.10
GrlMedia * grl_media_unserialize (const gchar *serial
);
Unserializes a GrlMedia.
|
a serialized media |
Returns : |
the GrlMedia from the serial. [transfer full] |
Since 0.1.6