summaryrefslogtreecommitdiffstats
path: root/gst/matroska/matroska-mux.c
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2008-06-11 11:18:23 +0000
committerSebastian Dröge <slomo@circular-chaos.org>2008-06-11 11:18:23 +0000
commit4c46ceb4cbacdf009c46d0ca55338c8e9694b2fe (patch)
tree05d0968c97996cd2addaef4cc302e7d907e7be2b /gst/matroska/matroska-mux.c
parent86c4b045ea820771ff896578b64be5364fef8980 (diff)
gst/matroska/: Add some more tags, improve debugging a bit and make sure that
Original commit message from CVS: * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_metadata_id_simple_tag): * gst/matroska/matroska-ids.h: * gst/matroska/matroska-mux.c: (gst_matroska_mux_write_simple_tag): Add some more tags, improve debugging a bit and make sure that GValue transformation has succeeded before using the result as a tag.
Diffstat (limited to 'gst/matroska/matroska-mux.c')
-rw-r--r--gst/matroska/matroska-mux.c29
1 files changed, 20 insertions, 9 deletions
diff --git a/gst/matroska/matroska-mux.c b/gst/matroska/matroska-mux.c
index d41ba0ad..7715402f 100644
--- a/gst/matroska/matroska-mux.c
+++ b/gst/matroska/matroska-mux.c
@@ -1519,10 +1519,18 @@ gst_matroska_mux_write_simple_tag (const GstTagList * list, const gchar * tag,
GST_MATROSKA_TAG_ID_ALBUM, GST_TAG_ALBUM}, {
GST_MATROSKA_TAG_ID_COMMENTS, GST_TAG_COMMENT}, {
GST_MATROSKA_TAG_ID_BITSPS, GST_TAG_BITRATE}, {
+ GST_MATROSKA_TAG_ID_BPS, GST_TAG_BITRATE}, {
+ GST_MATROSKA_TAG_ID_ENCODER, GST_TAG_ENCODER}, {
GST_MATROSKA_TAG_ID_DATE, GST_TAG_DATE}, {
GST_MATROSKA_TAG_ID_ISRC, GST_TAG_ISRC}, {
- GST_MATROSKA_TAG_ID_COPYRIGHT, GST_TAG_COPYRIGHT}
+ GST_MATROSKA_TAG_ID_COPYRIGHT, GST_TAG_COPYRIGHT}, {
+ GST_MATROSKA_TAG_ID_BPM, GST_TAG_BEATS_PER_MINUTE}, {
+ GST_MATROSKA_TAG_ID_TERMS_OF_USE, GST_TAG_LICENSE}, {
+ GST_MATROSKA_TAG_ID_COMPOSER, GST_TAG_COMPOSER}, {
+ GST_MATROSKA_TAG_ID_LEAD_PERFORMER, GST_TAG_PERFORMER}, {
+ GST_MATROSKA_TAG_ID_GENRE, GST_TAG_GENRE}
};
+
GstEbmlWrite *ebml = (GstEbmlWrite *) data;
guint i;
@@ -1541,15 +1549,18 @@ gst_matroska_mux_write_simple_tag (const GstTagList * list, const gchar * tag,
if (!gst_tag_list_copy_value (&src, list, tag))
break;
g_value_init (&dest, G_TYPE_STRING);
- g_value_transform (&src, &dest);
+ if (g_value_transform (&src, &dest)) {
+
+ simpletag_master = gst_ebml_write_master_start (ebml,
+ GST_MATROSKA_ID_SIMPLETAG);
+ gst_ebml_write_ascii (ebml, GST_MATROSKA_ID_TAGNAME, tagname_mkv);
+ gst_ebml_write_utf8 (ebml, GST_MATROSKA_ID_TAGSTRING,
+ g_value_get_string (&dest));
+ gst_ebml_write_master_finish (ebml, simpletag_master);
+ } else {
+ GST_WARNING ("Can't transform tag '%s' to string", tagname_mkv);
+ }
g_value_unset (&src);
-
- simpletag_master = gst_ebml_write_master_start (ebml,
- GST_MATROSKA_ID_SIMPLETAG);
- gst_ebml_write_ascii (ebml, GST_MATROSKA_ID_TAGNAME, tagname_mkv);
- gst_ebml_write_utf8 (ebml, GST_MATROSKA_ID_TAGSTRING,
- g_value_get_string (&dest));
- gst_ebml_write_master_finish (ebml, simpletag_master);
g_value_unset (&dest);
break;
}