<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:16px"><div id="yui_3_16_0_1_1423640517325_34523" dir="ltr">ho...don't remove "filesrc" element!!! just set the pipe to the ready state and modify the location property of "filesrc" and finaly set the pipe to the "playing" state<br></div><div id="yui_3_16_0_1_1423640517325_34489" class="signature"><div id="yui_3_16_0_1_1423640517325_34488"><div id="yui_3_16_0_1_1423640517325_34525" style="font-family:arial, helvetica, clean, sans-serif;"><span style="font-size:13px;"><br></span></div><div id="yui_3_16_0_1_1423640517325_34526"><br></div></div></div> <div class="qtdSeparateBR"><br><br></div><div style="display: block;" class="yahoo_quoted"> <div style="font-family: times new roman, new york, times, serif; font-size: 16px;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div dir="ltr"> <font face="Arial" size="2"> Le Mercredi 11 février 2015 8h49, narcisse doudieu siewe <wambenarcisse@yahoo.fr> a écrit :<br> </font> </div>  <br><br> <div class="y_msg_container"><div id="yiv9403163640"><div><div style="color:#000;background-color:#fff;font-family:times new roman, new york, times, serif;font-size:16px;"><div dir="ltr" id="yiv9403163640yui_3_16_0_1_1423640517325_30639">did you set the good callbackfor the "pad-added" signal? is the file Good for your pipe? you have handled only <br clear="none"></div><div dir="ltr" id="yiv9403163640yui_3_16_0_1_1423640517325_31433">the audio part</div><div dir="ltr" id="yiv9403163640yui_3_16_0_1_1423640517325_33041"><br clear="none"></div><div dir="ltr" id="yiv9403163640yui_3_16_0_1_1423640517325_33042">I think you can use uridecodebin with the url in the form "file:///" for local files.</div><div dir="ltr" id="yiv9403163640yui_3_16_0_1_1423640517325_33043">what's the logs of your playing(GST_DEBUG setting)<br clear="none"></div><div class="yiv9403163640qtdSeparateBR"><br clear="none"><br clear="none"></div><div class="yiv9403163640yqt1106121087" id="yiv9403163640yqt62874"><div class="yiv9403163640yahoo_quoted" style="display:block;"> <div style="font-family:times new roman, new york, times, serif;font-size:16px;"> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div dir="ltr"> <font face="Arial" size="2"> Le Mercredi 11 février 2015 8h35, Huang Weller (CM/EPF1-CN) <Weller.Huang@cn.bosch.com> a écrit :<br clear="none"> </font> </div>  <br clear="none"><br clear="none"> <div class="yiv9403163640y_msg_container"><div id="yiv9403163640"><style>#yiv9403163640   --
 
 filtered  {font-family:Helvetica;panose-1:2 11 5 4 2 2 2 2 2 4;}
#yiv9403163640 filtered  {font-family:Wingdings;panose-1:5 0 0 0 0 0 0 0 0 0;}
#yiv9403163640 filtered  {font-family:SimSun;panose-1:2 1 6 0 3 1 1 1 1 1;}
#yiv9403163640 filtered  {panose-1:2 4 5 3 5 4 6 3 2 4;}
#yiv9403163640 filtered  {font-family:Calibri;panose-1:2 15 5 2 2 2 4 3 2 4;}
#yiv9403163640 filtered  {font-family:Tahoma;panose-1:2 11 6 4 3 5 4 4 2 4;}
#yiv9403163640 filtered  {panose-1:2 1 6 0 3 1 1 1 1 1;}
#yiv9403163640   
 p.yiv9403163640MsoNormal, #yiv9403163640  li.yiv9403163640MsoNormal, #yiv9403163640  div.yiv9403163640MsoNormal
        {margin:0in;margin-bottom:.0001pt;font-size:12.0pt;}
#yiv9403163640  a:link, #yiv9403163640  span.yiv9403163640MsoHyperlink
        {color:blue;text-decoration:underline;}
#yiv9403163640  a:visited, #yiv9403163640  span.yiv9403163640MsoHyperlinkFollowed
        {color:purple;text-decoration:underline;}
#yiv9403163640  span.yiv9403163640EmailStyle17
        {color:#1F497D;}
#yiv9403163640  .yiv9403163640MsoChpDefault
        {font-size:10.0pt;}
#yiv9403163640 filtered  {margin:1.0in 1.0in 1.0in 1.0in;}
#yiv9403163640  div.yiv9403163640WordSection1
        {}
#yiv9403163640 </style><div>
<div class="yiv9403163640WordSection1">
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">Hello ,</span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">  </span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">Thanks for your reply.</span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">It is fine for playbin. We have another test code which using playbin and the file location can be changed after setting the pipeline to ready state.</span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">But it doesn’t work when we using decodebin.</span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">  </span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">The data flow of my case is like below:</span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">Filesrc--> decodebin
</span><span style="font-size:11.0pt;font-family:Wingdings;color:#1F497D;">à</span><span style="font-size:11.0pt;">audio sink bin(audio converter:queue:volume:alsasink)</span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">  </span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">Even I tried below way , I still can not hear anything when playing next music file.</span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">Remove filesrc from pipeline  -> change file location -> pad link filesrc and decodebin sink again -> set pipeline to paused ready -> send gst_event_new_reconfigure
  -> set pipeline to paused stated -> set pipeline to playing state.</span></div> 
<div class="yiv9403163640MsoNormal"><span style="font-size:11.0pt;">  </span></div> 
<div class="yiv9403163640yqt9370030952" id="yiv9403163640yqt90895"><div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in;">
<div class="yiv9403163640MsoNormal"><b><span style="font-size:10.0pt;">From:</span></b><span style="font-size:10.0pt;"> narcisse doudieu siewe [mailto:wambenarcisse@yahoo.fr]
<br clear="none">
<b>Sent:</b> Wednesday, February 11, 2015 3:56 PM<br clear="none">
<b>To:</b> Huang Weller (CM/EPF1-CN)<br clear="none">
<b>Cc:</b> gstreamer-devel@lists.freedesktop.org<br clear="none">
<b>Subject:</b> Tr : gstreamer not release the sockets after destroy the pipeline</span></div> 
</div>
</div>
<div class="yiv9403163640MsoNormal">  </div> 
<div>
<div class="yiv9403163640MsoNormal" style="background:white;"><span style="color:black;">I realize that setting the pipe to the "ready" state first and change the file location is the good maner</span></div> 
<div>
<div class="yiv9403163640MsoNormal" style="margin-bottom:12.0pt;background:white;"><span style="color:black;">  </span></div> 
</div>
<div id="yiv9403163640yui_3_16_0_1_1423640517325_7960">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_7959">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_7958">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8028">
<div id="yiv9403163640">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8027">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8026">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8936">
<div class="yiv9403163640MsoNormal" style="background:white;"><span style="color:black;">because in the "ready" state there are no elements specifics for the media streaming like "pad", specifics "caps" for the meadia etc. In this state alle the general elements are loaded...so
 put your pipe in the "ready" state first, do the change on the "location" property and set again the pipe to the "play" or "paused" state.</span></div> 
</div>
<div id="yiv9403163640yui_3_16_0_1_1423640517325_3521">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_3520">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_3522">
<div class="yiv9403163640MsoNormal" style="background:white;"><span style="">  </span></div> 
</div>
<div id="yiv9403163640yui_3_16_0_1_1423640517325_3519">
<div class="yiv9403163640MsoNormal" style="background:white;"><span style="color:black;">  </span></div> 
</div>
</div>
</div>
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8025">
<div class="yiv9403163640MsoNormal" style="margin-bottom:12.0pt;background:white;"><span style="color:black;">  </span></div> 
</div>
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8032">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8031">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8030">
<div id="yiv9403163640yqtfd84209">
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8938">
<div class="yiv9403163640MsoNormal" style="background:white;"><span style="font-size:10.0pt;">Le Mercredi 11 février 2015 3h06, Huang Weller (CM/EPF1-CN) <<a rel="nofollow" shape="rect" ymailto="mailto:Weller.Huang@cn.bosch.com" target="_blank" href="mailto:Weller.Huang@cn.bosch.com">Weller.Huang@cn.bosch.com</a>>
 a écrit :</span><span style=""></span></div> 
</div>
<div class="yiv9403163640MsoNormal" style="margin-bottom:12.0pt;background:white;"><span style="">  </span></div> 
<div id="yiv9403163640yui_3_16_0_1_1423640517325_8029">
<div class="yiv9403163640MsoNormal" style="margin-bottom:12.0pt;background:white;"><span style=""><br clear="none">
Hi,<br clear="none">
<br clear="none">
We are using the gstreamer 1.42. And we reuse the mediaplayer which works well under gstreamer 0.10.<br clear="none">
We already follow the porting guide and did necessary changes to our code. And the media player is working.<br clear="none">
BUT,<br clear="none">
we found that the fd at folder /proc/TEST.OUT_PID/fd keep increasing during play the music one after one(in the mediaplayer, the pipe will be destroyed before changing music file and be recreated a new pipeline for play new file).<br clear="none">
we already did some investigation, for example, try to use one pipe for all music playback but not recreate it everytime.<br clear="none">
but it is not ok to change the file location on fly. You can enable the code in line 702 of gst-test.c to enable
<br clear="none">
this test mode. The test code will recreate the pipeline when play new file in default.<br clear="none">
<br clear="none">
so, for this issue, after 30mins, test with thousands 4 seconds music files with our media player, our system's mem cache will be occupied by it and trigger the OOM.<br clear="none">
<br clear="none">
I have below questions, <br clear="none">
1.Is it a bug for gstreamer ?<br clear="none">
2. how to change the file location when using decodebin ? I know the playbin can change the file location on fly.<br clear="none">
Because my test file a very small, so I change the file location after got EOS.Now I change the file location in this way:<br clear="none">
Set pipeline to ready -> remove filesrc bin from pipeline -> set null to  filesrc -> recreate filesrc -> set new file location->add filesrc bin to pipeline -> pad line with decodebin -> set pipeline to playing state.<br clear="none">
<br clear="none">
But I can not hear anything on this way.<br clear="none">
<br clear="none">
<br clear="none">
_______________________________________________<br clear="none">
gstreamer-devel mailing list<br clear="none">
<a rel="nofollow" shape="rect" id="yiv9403163640yui_3_16_0_1_1423640517325_8033" ymailto="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank" href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br clear="none">
<a rel="nofollow" shape="rect" id="yiv9403163640yui_3_16_0_1_1423640517325_8946" target="_blank" href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br clear="none">
<br clear="none">
</span></div> 
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="yiv9403163640MsoNormal" style="margin-bottom:12.0pt;background:white;"><span style="">  </span></div> 
</div>
</div>
</div>
</div>
</div></div>
</div>
</div></div><br clear="none"><br clear="none"></div>  </div> </div>  </div></div> </div></div></div><br><br></div>  </div> </div>  </div> </div></body></html>