Exemple #1
0
static VALUE
element_initialize(VALUE self, VALUE src, VALUE structure)
{
    G_INITIALIZE(self, gst_message_new_element(RVAL2GST_OBJ(src),
                                               RVAL2GST_STRUCT(structure)));
    return Qnil;
}
Exemple #2
0
static VALUE
application_initialize(VALUE self, VALUE src, VALUE structure)
{
    G_INITIALIZE(self, gst_message_new_application(RVAL2GST_OBJ(src),
                                                   RVAL2GST_STRUCT(structure)));
    return Qnil;
}
Exemple #3
0
/*
 * Method: merge(structure, merge_mode)
 * structure: a Ruby hash representing the tag list of merge from.
 * merge_mode: the mode to merge with (see Gst::Tag::MergeMode).
 *
 * Merges the given tag list in the setter's list using the given mode.
 *
 * Returns: self.
 */
static VALUE
rg_merge (VALUE self, VALUE structure, VALUE merge_mode)
{
    gst_tag_setter_merge_tags(RGST_TAG_SETTER(self),
                              RVAL2GST_STRUCT(structure),
                              RVAL2GENUM(merge_mode, GST_TYPE_TAG_MERGE_MODE));
    return self;
}
static VALUE
tag_initialize(VALUE self, VALUE taglist)
{
    GstEvent *event;
    event = gst_event_new_tag(RVAL2GST_STRUCT(taglist));

    G_INITIALIZE(self, event);
    return Qnil;
}
Exemple #5
0
static VALUE
initialize(VALUE self, VALUE type, VALUE src, VALUE structure)
{
    GstMessage *message;
    message = gst_message_new_custom(RVAL2GST_MSG_TYPE(type),
                                     RVAL2GST_OBJ(src),
                                     RVAL2GST_STRUCT(structure));
    G_INITIALIZE(self, message);
    return Qnil;
}
static VALUE
navigation_initialize(VALUE self, VALUE structure)
{
    GstEvent *event;

    event = gst_event_new_navigation(RVAL2GST_STRUCT(structure));

    G_INITIALIZE(self, event);
    return Qnil;
}
Exemple #7
0
/*
 * Method: new(*structures)
 * structures: a list of Hash objects.
 *
 * Creates a new Gst::Caps object and adds all given structures to it.  If no
 * structures are given, the caps will be empty.  If you want a caps that is 
 * compatible with any media format, just create an empty caps, then call
 * Gst::Caps#set_any. 
 *
 * Returns: a newly allocated Gst::Caps object.
 */
static VALUE
rg_initialize (int argc, VALUE * argv, VALUE self)
{
    GstCaps *caps;
    int i;

    caps = gst_caps_new_any ();
    if (caps != NULL) {
        for (i = 0; i < argc; i++) {
            GstStructure *structure;
            structure = RVAL2GST_STRUCT(argv[i]);
            gst_caps_append_structure (caps, gst_structure_copy (structure));
        }
        G_INITIALIZE (self, caps);
        gst_caps_unref (caps);
    }
    return Qnil;
}
Exemple #8
0
/*
 * Method: append_structure(structure)
 * structure: the Hash object to append.
 *
 * Append the given structure to self.
 *
 * Returns: self.
 */
static VALUE
rg_append_structure (VALUE self, VALUE structure)
{
    gst_caps_append_structure (RGST_CAPS (self), RVAL2GST_STRUCT(structure));
    return self;
}