AW: eit problem in 1.2 [closed]

Bernhard Graaf bernhard.graaf at gmx.de
Thu May 1 12:40:55 PDT 2014


Hi,

 

I found out my fault (have a look into the examples of the new
libgstmpegts).

 

Please ignore my previous e-mail.

 

Sorry

Bernhard  

 

  _____  

Von: gstreamer-devel [mailto:gstreamer-devel-bounces at lists.freedesktop.org]
Im Auftrag von Bernhard Graaf
Gesendet: Donnerstag, 1. Mai 2014 12:26
An: 'Discussion of the development of and with GStreamer'
Betreff: eit problem in 1.2

 

Hi,

 

I've tried to migrate my program from 1.0.8 to 1.2.3 (Ubuntu 12.04 to 14.04)
and have a problem with the MpegTS-Stream:

The program looks like this in the gst_bus_add_watch-function:

 

<Snipe>

 

case GST_MESSAGE_ELEMENT: {

      const GstStructure *structure = gst_message_get_structure (msg);

      if((structure)) gst_structure_get_uint(structure, "service-id", &sid);


      if((structure) && (strncmp(gst_structure_get_name(structure),"eit",3)
== 0)) 

      {

        list = gst_structure_get_value (structure, "events");

        if(GST_VALUE_HOLDS_LIST(list)) events = gst_value_list_get_size
(list);

        else

        {

          g_print("%s\n", gst_structure_to_string(structure));

//            -> result in 1.2: "eit, section=(GstMpegTsSection)NULL;"

          events = 0;

        }

        for (i = 0; i < events; ++i) 

            {

          list = gst_structure_get_value (structure, "events");

          value = gst_value_list_get_value (list, i);

          event = gst_value_get_structure (value);

          if(!event) is_uid = 0;

          if(is_uid) is_uid = gst_structure_get_uint (event,"day", &day);

          if(is_uid) is_uid = gst_structure_get_uint (event,"month",
&month);

          if(is_uid) is_uid = gst_structure_get_uint (event,"year", &year);

          if(is_uid) is_uid = gst_structure_get_uint (event,"hour", &hour);

          if(is_uid) is_uid = gst_structure_get_uint (event,"minute",
&minute);

          if(is_uid) is_uid = gst_structure_get_uint (event,"duration",
&dur);

          if(!dur) is_uid = 0;

          if(is_uid) tmp_kurzt = gst_structure_get_string (event,"name");

          if(tmp_kurzt) tmp_langt = gst_structure_get_string
(event,"extended-text");

          if((!is_uid) || (!tmp_kurzt)) break;

 

<snipe>

 

In 1.08 I will get the correct EIT-Data. In 1.2.3 I will get only:

eit, section=(GstMpegTsSection)NULL;

 

I have had a look into the buglist and found an open bug since July last
year.

Is this result related to the bug?

Should I use the new mpegtslib (/mpegts/mpegts.h)? But after trying this,
there is no other result!

Is there a different way in the new lib to get the EIT-Data?

 

Many thanks for helping!

Bernhard

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20140501/ec3ecf47/attachment.html>


More information about the gstreamer-devel mailing list