<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p></p>
<div style="color: rgb(33, 33, 33);" dir="ltr">
<div>
<div id="divtagdefaultwrapper" style="font-size:12pt; color:#000000; background-color:#FFFFFF; font-family:Calibri,Arial,Helvetica,sans-serif">
<p style="margin-top: 0px; margin-bottom: 0px;">Hi All,</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">I am trying to read pmt-info (program map table) and pat-info (program assosiation table) from flutsdemux plugin on x86  ubuntu 3.2.0-23-generic.</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">I have created a a dummy pipeline :  filesrc location= /home/xyz.ts ! flutsdemux ! filesink location=/home/dump</p>
<p style="margin-top: 0px; margin-bottom: 0px;">I am trying to read the property using  
<strong>g_object_get (G_OBJECT (demux), "pmt-info", &pmt_info[0], NULL);</strong><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><strong>I am always getting wrong pid values</strong> in pmt_info array.</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">Following is the code sample. Please guide me how to read pmt-info and pat-info from pipeline.<br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
<strong></strong></p>
<p style="margin-top: 0px; margin-bottom: 0px;">struct FluTsPatInfo {<br>
    GObject parent;<br>
    guint16 pid;<br>
    guint16 program_no;<br>
    } pmt_info[10];<br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;">/*creating elements*/<br>
    pipeline = gst_pipeline_new("my_pipeline");<br>
    source = gst_element_factory_make("filesrc", "file-source");<br>
    demux = gst_element_factory_make ("flutsdemux", "ts-demux");<br>
        sink = gst_element_factory_make("filesink", "file-sink");<br>
    <br>
    if(!source || !demux || !sink || !pipeline){<br>
        printf("\nelements are not created properly\n");<br>
        return -1;<br>
    }<br>
<br>
    /*set the stream file location*/<br>
    g_object_set (G_OBJECT (source), "location", argv[1], NULL);<br>
    g_object_set (G_OBJECT (sink), "location", argv[2], NULL);<br>
    <br>
<br>
<br>
        /*adding in pipeline*/<br>
        gst_bin_add_many(GST_BIN(pipeline), source, demux, sink);<br>
<br>
        <br>
    /*link the elements*/<br>
        if(!gst_element_link_many (source, demux, sink, NULL)){<br>
<br>
            g_warning ("Failed to link elements!");<br>
    }<br>
 <br>
    /*set the status to the pipeline*/<br>
    gst_element_set_state (pipeline, GST_STATE_PLAYING);<br>
    <br>
    /*get program number*/<br>
    g_object_get (G_OBJECT (demux), "pmt-info", &pmt_info[0], NULL);<br>
    <br>
    printf("\nprogram info 1 = %d  %d\n program info 2 =%d  %d  program info 3 = %d %d\n program info 4 =%d  %d \n",pmt_info[0].pid,pmt_info[0].program_no,pmt_info[1].pid,pmt_info[1].program_no,pmt_info[2].pid,pmt_info[2].program_no,pmt_info[3].pid,pmt_info[3].program_no);<br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<p style="margin-top: 0px; margin-bottom: 0px;"><br>
</p>
<div id="Signature">
<div name="divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:; margin:0">
Regards,
<div>Sidharth Yedal</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>