qtmux: Accept non-paired uint tags
Adds support for unpaired unsigned interger tags
This commit is contained in:
parent
80a192b825
commit
f822f65f34
@ -410,19 +410,28 @@ gst_qt_mux_add_mp4_tag (GstQTMux * qtmux, const GstTagList * list,
|
|||||||
atom_moov_add_uint_tag (qtmux->moov, fourcc, 21, (gint) value);
|
atom_moov_add_uint_tag (qtmux->moov, fourcc, 21, (gint) value);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
/* paired unsigned integers */
|
|
||||||
case G_TYPE_UINT:
|
case G_TYPE_UINT:
|
||||||
{
|
{
|
||||||
guint value;
|
guint value;
|
||||||
guint count;
|
if (tag2) {
|
||||||
|
/* paired unsigned integers */
|
||||||
|
guint count;
|
||||||
|
|
||||||
if (!gst_tag_list_get_uint (list, tag, &value) ||
|
if (!gst_tag_list_get_uint (list, tag, &value) ||
|
||||||
!gst_tag_list_get_uint (list, tag2, &count))
|
!gst_tag_list_get_uint (list, tag2, &count))
|
||||||
break;
|
break;
|
||||||
GST_DEBUG_OBJECT (qtmux, "Adding tag %" GST_FOURCC_FORMAT " -> %u/%u",
|
GST_DEBUG_OBJECT (qtmux, "Adding tag %" GST_FOURCC_FORMAT " -> %u/%u",
|
||||||
GST_FOURCC_ARGS (fourcc), value, count);
|
GST_FOURCC_ARGS (fourcc), value, count);
|
||||||
atom_moov_add_uint_tag (qtmux->moov, fourcc, 0,
|
atom_moov_add_uint_tag (qtmux->moov, fourcc, 0,
|
||||||
value << 16 | (count & 0xFFFF));
|
value << 16 | (count & 0xFFFF));
|
||||||
|
} else {
|
||||||
|
/* unpaired unsigned integers */
|
||||||
|
if (!gst_tag_list_get_uint (list, tag, &value))
|
||||||
|
break;
|
||||||
|
GST_DEBUG_OBJECT (qtmux, "Adding tag %" GST_FOURCC_FORMAT " -> %u",
|
||||||
|
GST_FOURCC_ARGS (fourcc), value);
|
||||||
|
atom_moov_add_uint_tag (qtmux->moov, fourcc, 1, value);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user