Any additional idea ?<div><br></div><div>Many thanks, </div><div>Timothe<br><br><div class="gmail_quote">On Sat, Mar 26, 2011 at 1:43 PM, timothe jahan <span dir="ltr"><<a href="mailto:timothejahan@gmail.com">timothejahan@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hi,<div>oggparse and typefind seems indeed to solve that first issue, but a new one appears.</div><div>the new command is:</div>
<div><i>gst-launch-0.10 --gst-debug-level=2 filesrc location=./testfile.ogg ! oggparse ! tcpserversink port=1234</i></div>
<div>now it fails as follow:</div><div><div class="im"><div><i>Définition du pipeline à PAUSED...</i></div><div><i>Le pipeline est en phase de PREROLL...</i></div><div><i>Le pipeline a terminé la phase PREROLL...</i></div>
<div><i>Passage du pipeline à la phase PLAYING...</i></div>
<div><i>New clock: GstSystemClock</i></div></div><div><i>EOS reçu de l'élément « pipeline0 ».</i></div><div><i>Execution ended after 8509877 ns.</i></div><div class="im"><div><i>Définition du pipeline à PAUSED...</i></div>
<div><i>Définition du pipeline à READY (prêt)...</i></div>
<div><i>Définition du pipeline à NULL...</i></div></div><div><i>0:00:00.115279949 16709 0x8069060 WARN multifdsink gstmultifdsink.c:2291:gst_multi_fd_sink_handle_clients:<tcpserversink0> wait failed: Périphérique ou ressource occupé (16)</i></div>
<div><i>Libération du pipeline (FREE)...</i></div></div><div>For some reason it seems to get an end of stream from the beginning. To be sure my file is not wrongly formed I tried with the bunny example (<a href="http://en.wikipedia.org/wiki/File:Big_Buck_Bunny_extract.ogg" target="_blank">http://en.wikipedia.org/wiki/File:Big_Buck_Bunny_extract.ogg</a>) but same.</div>
<div><br></div><div>If I set the debug level to 3 I can see following lines (amongst many others !!):</div><div><div><i>0:00:00.130223762 16923 0x804e050 INFO GST_EVENT gstevent.c:942:gst_event_new_latency: creating latency event 0:00:00.000000000</i></div>
<div><i>0:00:00.130298217 16923 0x804e050 INFO bin gstbin.c:2069:do_bin_latency:<pipeline0> configured latency of 0:00:00.000000000</i></div><div><i>0:00:00.144386914 16923 0x8157b38 INFO basesrc gstbasesrc.c:2056:gst_base_src_loop:<filesrc0> pausing after gst_base_src_get_range() = unexpected</i></div>
<div><i><b>0:00:00.144424840 16923 0x8157b38 INFO GST_PADS gstpad.c:2933:gst_pad_event_default_dispatch:<oggparse0:sink> Sending event 0x804fd68 (eos) to all internally linked pads</b></i></div><div><i>0:00:00.144473103 16923 0x804e050 INFO GST_STATES gstelement.c:2148:gst_element_continue_state:<tcpserversink0> completed state change to PLAYING</i></div>
<div><i>0:00:00.144490773 16923 0x804e050 INFO GST_STATES gstelement.c:2161:gst_element_continue_state:<tcpserversink0> posting state-changed PAUSED to PLAYING</i></div><div><i>0:00:00.144526744 16923 0x804e050 INFO GST_STATES gstbin.c:2191:gst_bin_change_state_func:<pipeline0> child 'tcpserversink0' changed state to 4(PLAYING) successfully</i></div>
<div><i>0:00:00.144548256 16923 0x804e050 INFO GST_STATES gstelement.c:2148:gst_element_continue_state:<oggparse0> completed state change to PLAYING</i></div><div><i>0:00:00.144561666 16923 0x804e050 INFO GST_STATES gstelement.c:2161:gst_element_continue_state:<oggparse0> posting state-changed PAUSED to PLAYING</i></div>
<div><i>0:00:00.144586392 16923 0x804e050 INFO GST_STATES gstbin.c:2191:gst_bin_change_state_func:<pipeline0> child 'oggparse0' changed state to 4(PLAYING) successfully</i></div><div><i>0:00:00.144606926 16923 0x804e050 INFO GST_STATES gstelement.c:2148:gst_element_continue_state:<filesrc0> completed state change to PLAYING</i></div>
<div><i>0:00:00.144626203 16923 0x804e050 INFO GST_STATES gstelement.c:2161:gst_element_continue_state:<filesrc0> posting state-changed PAUSED to PLAYING</i></div><div><i>0:00:00.144646039 16923 0x804e050 INFO GST_STATES gstbin.c:2191:gst_bin_change_state_func:<pipeline0> child 'filesrc0' changed state to 4(PLAYING) successfully</i></div>
<div><i>0:00:00.144663640 16923 0x804e050 INFO GST_STATES gstelement.c:2148:gst_element_continue_state:<pipeline0> completed state change to PLAYING</i></div><div><i>0:00:00.144676422 16923 0x804e050 INFO GST_STATES gstelement.c:2161:gst_element_continue_state:<pipeline0> posting state-changed PAUSED to PLAYING</i></div>
<div><i>New clock: GstSystemClock</i></div><div><i>EOS reçu de l'élément « pipeline0 ».</i></div><div><i>Execution ended after 102184 ns.</i></div><div class="im"><div><i>Définition du pipeline à PAUSED...</i></div></div>
</div><div><br></div>
<div>So it seems that the oggparse (or typefind for the other case) sends the EOS before the end of the file.</div><div>What could generate that ?</div><div><br></div><div>Many thanks,</div><div>Timothé</div><div><div></div>
<div class="h5"><div><br></div>
<div><br><div class="gmail_quote">On Sat, Mar 26, 2011 at 1:15 PM, Tim-Philipp Müller <span dir="ltr"><<a href="mailto:t.i.m@zen.co.uk" target="_blank">t.i.m@zen.co.uk</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>On Sat, 2011-03-26 at 10:43 +0100, timothe jahan wrote:<br>
<br>
Hi,<br>
<br>
> Thank you for the fast answer, however I have the impression that<br>
> there is a misunderstanding.<br>
> The command that fails is the server one, meaning :<br>
> gst-launch filesrc location=./testfile.ogg ! tcpserversink port=1234<br>
<br>
</div>Ah, sorry, you're right. Should've been obvious from the error message,<br>
but I just saw 'not-negotiated' and started going after the usual<br>
suspects, completely missing the 'gstmultifdsink.c(2506):<br>
<div>gst_multi_fd_sink_render (): /pipeline0/tcpserversink0: Received first<br>
</div>buffer without caps set' bit.<br>
<br>
So tcpserversink wants caps set on buffers fed to it. Generally the<br>
easiest way to do that would be to put a typefind element after filesrc.<br>
<br>
In this case, however, you probably want to use an oggparse element<br>
after filesrc. This should not only put proper caps with stream headers<br>
on the buffers, but also set timestamps on buffers (in case you want to<br>
throttle sending the data).<br>
<div><div></div><div><br>
Cheers<br>
-Tim<br>
<br>
<br>
<br>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div>