diff options
author | Zaheer Abbas Merali <zaheerabbas@merali.org> | 2008-01-22 20:27:28 +0000 |
---|---|---|
committer | Zaheer Abbas Merali <zaheerabbas@merali.org> | 2008-01-22 20:27:28 +0000 |
commit | 450442adaea762d2f1508e99c97634a8d52ba65a (patch) | |
tree | 7a0b0f5cc58b86955da80dc99084e3c126d5888f /gst/mpegtsparse | |
parent | 0884acd8ced59b9f1e2acdc9fb4bfcbcf8f359a0 (diff) | |
download | gst-plugins-bad-450442adaea762d2f1508e99c97634a8d52ba65a.tar.gz gst-plugins-bad-450442adaea762d2f1508e99c97634a8d52ba65a.tar.bz2 gst-plugins-bad-450442adaea762d2f1508e99c97634a8d52ba65a.zip |
gst/mpegtsparse/mpegtspacketizer.c: Parsed and added network name to the nit structure sent in the bus message.
Original commit message from CVS:
* gst/mpegtsparse/mpegtspacketizer.c:
Parsed and added network name to the nit structure sent
in the bus message.
Diffstat (limited to 'gst/mpegtsparse')
-rw-r--r-- | gst/mpegtsparse/mpegtspacketizer.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gst/mpegtsparse/mpegtspacketizer.c b/gst/mpegtsparse/mpegtspacketizer.c index 5deb2418..17231b4c 100644 --- a/gst/mpegtsparse/mpegtspacketizer.c +++ b/gst/mpegtsparse/mpegtspacketizer.c @@ -606,6 +606,28 @@ mpegts_packetizer_parse_nit (MpegTSPacketizer * packetizer, gst_structure_free (nit); goto error; } + guint8 *networkname_descriptor; + GstMPEGDescriptor *mpegdescriptor = + gst_mpeg_descriptor_parse (data, descriptors_loop_length); + networkname_descriptor = + gst_mpeg_descriptor_find (mpegdescriptor, DESC_DVB_NETWORK_NAME); + if (networkname_descriptor != NULL) { + gchar *networkname_tmp; + guint networkname_length = + DESC_DVB_NETWORK_NAME_length (networkname_descriptor); + gchar *networkname = + (gchar *) DESC_DVB_NETWORK_NAME_text (networkname_descriptor); + if (networkname[0] < 0x20) { + networkname_length -= 1; + networkname += 1; + } + networkname_tmp = g_strndup (networkname, networkname_length); + gst_structure_set (nit, "network-name", G_TYPE_STRING, networkname_tmp, + NULL); + g_free (networkname_tmp); + } + + gst_mpeg_descriptor_free (mpegdescriptor); descriptors = g_value_array_new (0); if (!mpegts_packetizer_parse_descriptors (packetizer, |