All pastes #99400 Raw Edit

Stuff

public text v1 · immutable
#99400 ·published 2006-07-25 08:27 UTC
rendered paste body
  } else if (strcmp (tag, GST_ID3_DEMUX_TAG_ID3V2_FRAME) == 0) {
    const GValue *val;
    GstBuffer *frame_data;
    ID3v2::FrameFactory * framefactory;  
    ID3v2::Frame * frame; 
    const gchar *mime_type;
    GstStructure *s;

    val = gst_tag_list_get_value_index (list, tag, 0);
    frame_data = (GstBuffer *) gst_value_get_mini_object (val);

    s = gst_caps_get_structure (GST_BUFFER_CAPS (frame_data), 0);
    mime_type = gst_structure_get_name (s);
    
    GST_DEBUG("Setting binary blob of length %u and mime-type %s", GST_BUFFER_DATA (frame_data), mime_type);

    framefactory = ID3v2::FrameFactory::instance(); 
    frame = framefactory->createFrame (ByteVector ((const char *) GST_BUFFER_DATA (frame_data),
						   GST_BUFFER_SIZE (frame_data)), false);
    id3v2tag->addFrame (frame); 
  } 
  else {
    GST_WARNING ("Unsupported tag: %s", tag);
  }