<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">


<META content="MSHTML 6.00.2900.3354" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=582090908-14112008><FONT face=Arial color=#0000ff size=2>Hi 
Sudarshan,</FONT></SPAN></DIV>
<DIV><SPAN class=582090908-14112008>&nbsp;&nbsp;&nbsp; <FONT face=Arial 
color=#0000ff size=2>No, i am not handling it. </FONT></SPAN></DIV>
<DIV><SPAN class=582090908-14112008><FONT face=Arial color=#0000ff 
size=2>&nbsp;&nbsp;&nbsp; my idea was when the end of stream comes from the 
filesrc , the pipeline is chsnged to NULL state through PAUSED and READY state. 
So i thought i need not handle that. Can you tell me how can i handle it 
?</FONT></SPAN></DIV>
<DIV><SPAN class=582090908-14112008><FONT face=Arial color=#0000ff 
size=2></FONT></SPAN>&nbsp;</DIV>
<DIV><SPAN class=582090908-14112008><FONT face=Arial color=#0000ff 
size=2>Regards,</FONT></SPAN></DIV>
<DIV><SPAN class=582090908-14112008>&nbsp;&nbsp;&nbsp; <FONT face=Arial 
color=#0000ff size=2>~Arnab </FONT></SPAN></DIV>
<BLOCKQUOTE>
  <DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma 
  size=2>-----Original Message-----<BR><B>From:</B> sudarshan bisht 
  [mailto:bisht.sudarshan@gmail.com]<BR><B>Sent:</B> Friday, November 14, 2008 
  12:02 PM<BR><B>To:</B> arnabsamanta@tataelxsi.co.in; Discussion of the 
  development of GStreamer<BR><B>Subject:</B> Re: [gst-devel] state 
  change<BR><BR></FONT></DIV>
  <DIV>Hi , </DIV>
  <DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  Are you handling EOS&nbsp; event properly in your plugin ? <BR><BR></DIV>
  <DIV class=gmail_quote>On Fri, Nov 14, 2008 at 10:49 AM, arnabsamanta <SPAN 
  dir=ltr>&lt;<A 
  href="mailto:arnabsamanta@tataelxsi.co.in">arnabsamanta@tataelxsi.co.in</A>&gt;</SPAN> 
  wrote:<BR>
  <BLOCKQUOTE class=gmail_quote 
  style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">
    <DIV>
    <DIV><SPAN><FONT face=Arial color=#0000ff size=2>Hi Zhang 
    ,</FONT></SPAN></DIV>
    <DIV><SPAN></SPAN>&nbsp;</DIV>
    <DIV><SPAN><FONT face=Arial color=#0000ff 
    size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    Thanks for your reply </FONT></SPAN></DIV>
    <DIV><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    <FONT face=Arial color=#0000ff size=2>Did you mean the following in the 
    _class_init ( ) ?</FONT></SPAN></DIV>
    <DIV><SPAN><FONT face=Arial color=#0000ff 
    size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If 
    so then yes, i have done that .</FONT></SPAN></DIV>
    <DIV><SPAN><FONT face=Arial color=#0000ff 
    size=2>&nbsp;&nbsp;&nbsp;&nbsp;</FONT></SPAN></DIV>
    <DIV><SPAN><FONT face=Arial color=#0000ff 
    size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#000000>static 
    void gst_queue3_class_init (Gstqueue3Class * 
    klass)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    {</FONT></FONT></SPAN></DIV>
    <DIV><SPAN><FONT face=Arial 
    size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    GstElementClass 
    *gstelement_class;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    gstelement_class = (GstElementClass *) klass;<BR></FONT></SPAN></DIV>
    <DIV><SPAN><FONT face=Arial size=2></FONT></SPAN>&nbsp;</DIV>
    <DIV><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    gstelement_class-&gt;change_state = GST_DEBUG_FUNCPTR 
    (gst_queue3_change_state);</SPAN></DIV>
    <DIV><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT face=Arial 
    color=#0000ff size=2>}</FONT></SPAN></DIV>
    <DIV><SPAN><FONT face=Arial color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
    <DIV><SPAN>&nbsp;&nbsp;&nbsp; R<FONT face=Arial color=#0000ff 
    size=2>egards,</FONT></SPAN></DIV>
    <DIV><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT 
    face=Arial color=#0000ff size=2>~Arnab </FONT>&nbsp;&nbsp;&nbsp; 
    </SPAN></DIV>
    <DIV>
    <DIV></DIV>
    <DIV class=Wj3C7c>
    <DIV><SPAN><FONT face=Arial color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
    <DIV><SPAN>&nbsp;&nbsp;&nbsp; <BR></SPAN></DIV>
    <BLOCKQUOTE>
      <DIV dir=ltr align=left><FONT face=Tahoma size=2>-----Original 
      Message-----<BR><B>From:</B> Eric Zhang [mailto:<A 
      href="mailto:nicolas.m.zhang@gmail.com" 
      target=_blank>nicolas.m.zhang@gmail.com</A>]<BR><B>Sent:</B> Friday, 
      November 14, 2008 7:43 AM<BR><B>To:</B> <A 
      href="mailto:arnabsamanta@tataelxsi.co.in" 
      target=_blank>arnabsamanta@tataelxsi.co.in</A>; Discussion of the 
      development of GStreamer<BR><B>Subject:</B> Re: [gst-devel] state 
      change<BR><BR></FONT></DIV>Hi, gstreamer-devel:<BR><BR>&nbsp;&nbsp;&nbsp; 
      Did you override the `change_state' function pointer in your element's 
      `_class_init' function?<BR><BR>Eric Zhang<BR><BR>
      <DIV class=gmail_quote>2008/11/13 arnabsamanta <SPAN dir=ltr>&lt;<A 
      href="mailto:arnabsamanta@tataelxsi.co.in" 
      target=_blank>arnabsamanta@tataelxsi.co.in</A>&gt;</SPAN><BR>
      <BLOCKQUOTE class=gmail_quote 
      style="PADDING-LEFT: 1ex; MARGIN: 0pt 0pt 0pt 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">&nbsp;Hi 
        All,<BR>&nbsp; &nbsp; &nbsp; &nbsp;during state change of my plug in i 
        am calling a function QUEUE3_De_Init()<BR>but its not getting called 
        .<BR>&nbsp; &nbsp; &nbsp; &nbsp;QUEUE3_De_Init() de-initializes all the 
        initialized variables in the code.<BR>&nbsp; &nbsp; &nbsp; &nbsp;the 
        implementation is as such<BR><BR>&nbsp; &nbsp; &nbsp; &nbsp; static 
        GstStateChangeReturn gst_queue3_change_state (GstElement * 
        element,<BR>GstStateChange transition)<BR>&nbsp; &nbsp; &nbsp; 
        &nbsp;{<BR>&nbsp; &nbsp; &nbsp; &nbsp;Gstqueue3 *queue3;<BR>&nbsp; 
        &nbsp; &nbsp; &nbsp;abuffer = GST_QUEUE3 (element);<BR><BR>&nbsp; &nbsp; 
        &nbsp; &nbsp;GstStateChangeReturn ret = 
        GST_STATE_CHANGE_SUCCESS;<BR><BR>&nbsp; &nbsp; &nbsp; &nbsp;switch 
        (transition) {<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp;case GST_STATE_CHANGE_NULL_TO_READY:<BR>&nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp;break;<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp;case GST_STATE_CHANGE_READY_TO_PAUSED:<BR>&nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp;break;<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp;case GST_STATE_CHANGE_PAUSED_TO_PLAYING:<BR>&nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp;break;<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp;default:<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;break;<BR>&nbsp; &nbsp; &nbsp; 
        &nbsp;}<BR><BR>&nbsp; &nbsp; &nbsp; &nbsp;ret = GST_ELEMENT_CLASS 
        (parent_class)-&gt;change_state (element,<BR>transition);<BR><BR>&nbsp; 
        &nbsp; &nbsp; &nbsp;switch (transition) {<BR>&nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp;case 
        GST_STATE_CHANGE_PLAYING_TO_PAUSED:<BR><BR>&nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;break;<BR>&nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;case 
        GST_STATE_CHANGE_PAUSED_TO_READY:<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;break;<BR>&nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;case 
        GST_STATE_CHANGE_READY_TO_NULL:<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp;QUEUE3_De_Init();<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;break;<BR>&nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;default:<BR>&nbsp; &nbsp; &nbsp; 
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
        &nbsp;break;<BR>&nbsp; &nbsp; &nbsp; &nbsp;}<BR><BR><BR>&nbsp; &nbsp; 
        &nbsp; &nbsp;So,<BR>&nbsp; &nbsp; &nbsp; &nbsp;can please somebody tell 
        me how and where I can call the function when am<BR>changing the state 
        of the pipeline ?<BR><BR>&nbsp;Regards,<BR>&nbsp; &nbsp; &nbsp; 
        &nbsp;Arnab<BR><BR><BR>The information contained in this electronic 
        message and any attachments to this message are intended for the 
        exclusive use of the addressee(s) and may contain proprietary, 
        confidential or privileged information. If you are not the intended 
        recipient, you should not disseminate, distribute or copy this e-mail. 
        Please notify the sender immediately and destroy all copies of this 
        message and any attachments contained in 
        it.<BR><BR>-------------------------------------------------------------------------<BR>This 
        SF.Net email is sponsored by the Moblin Your Move Developer's 
        challenge<BR>Build the coolest Linux based applications with Moblin SDK 
        &amp; win great prizes<BR>Grand prize is a trip for two to an Open 
        Source event anywhere in the world<BR><A 
        href="http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/" 
        target=_blank>http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/</A><BR>_______________________________________________<BR>gstreamer-devel 
        mailing list<BR><A href="mailto:gstreamer-devel@lists.sourceforge.net" 
        target=_blank>gstreamer-devel@lists.sourceforge.net</A><BR><A 
        href="https://lists.sourceforge.net/lists/listinfo/gstreamer-devel" 
        target=_blank>https://lists.sourceforge.net/lists/listinfo/gstreamer-devel</A><BR></BLOCKQUOTE></DIV><BR></BLOCKQUOTE>
    <P>The information contained in this electronic message and any attachments 
    to this message are intended for the exclusive use of the addressee(s) and 
    may contain proprietary, confidential or privileged information. If you are 
    not the intended recipient, you should not disseminate, distribute or copy 
    this e-mail. Please notify the sender immediately and destroy all copies of 
    this message and any attachments contained in 
    it.</P></DIV></DIV></DIV><BR>-------------------------------------------------------------------------<BR>This 
    SF.Net email is sponsored by the Moblin Your Move Developer's 
    challenge<BR>Build the coolest Linux based applications with Moblin SDK 
    &amp; win great prizes<BR>Grand prize is a trip for two to an Open Source 
    event anywhere in the world<BR><A 
    href="http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/" 
    target=_blank>http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/</A><BR>_______________________________________________<BR>gstreamer-devel 
    mailing list<BR><A 
    href="mailto:gstreamer-devel@lists.sourceforge.net">gstreamer-devel@lists.sourceforge.net</A><BR><A 
    href="https://lists.sourceforge.net/lists/listinfo/gstreamer-devel" 
    target=_blank>https://lists.sourceforge.net/lists/listinfo/gstreamer-devel</A><BR><BR></BLOCKQUOTE></DIV><BR><BR 
  clear=all><BR>-- <BR>Regards,<BR><BR>Sudarshan 
Bisht<BR></BLOCKQUOTE><p>The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments contained in it.</p>
</BODY></HTML>