<div dir="ltr">try chopmydata. max-size=1366 gives you 7 TS packets in a frame that fits MTU of 1500<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Jun 16, 2014 at 1:53 PM, Ralf Stoye <span dir="ltr"><<a href="mailto:stoye@stoye.com" target="_blank">stoye@stoye.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On OSX, the maximum Messagesize for UDP is about 9000 (9216 Bytes)<br>
(tested on OS X 10.6 and 10.8, for further reference see <a href="http://stackoverflow.com/questions/25841/maximum-buffer-length-for-sendto" target="_blank">http://stackoverflow.com/questions/25841/maximum-buffer-length-for-sendto</a>)<br>
Is there an way force a pipeline / udpsink to split larger messages into smaller ones?<br>
<br>
Example Pipeline:<br>
/opt/local/bin/gst-launch-1.0 -vvv -m --gst-debug=6 videotestsrc is-live=true ! video/x-raw, format=I420, width=1280, height=720, framerate=15/1, pixel-aspect-ratio=1/1, interlace-mode=progressive \<br>
! queue ! x264enc tune=zerolatency speed-preset=ultrafast bitrate=1000 ! queue ! mpegtsmux ! queue ! udpsink host=10.44.1.21 port=1234<br>
<br>
Result -><br>
....<br>
0:00:08.625751000 58410 0x1061642d0 LOG multiudpsink gstmultiudpsink.c:562:gst_multiudpsink_render:<udpsink0> about to send 12596 bytes in 1 blocks<br>
0:00:08.625768000 58410 0x1061642d0 LOG multiudpsink gstmultiudpsink.c:575:gst_multiudpsink_render:<udpsink0> sending 12596 bytes to client 0x10610b1c0<br>
0:00:08.625904000 58410 0x1061642d0 WARN multiudpsink gstmultiudpsink.c:607:gst_multiudpsink_render:<udpsink0> warning: Error sending UDP packet<br>
0:00:08.625921000 58410 0x1061642d0 WARN multiudpsink gstmultiudpsink.c:607:gst_multiudpsink_render:<udpsink0> warning: Reason: Fehler beim Senden der Nachricht: Message too long<br>
....<br>
<br>
BTW. the pipeline works for framerates >= 25, since then the messages are smaller and don't exceed the limit of osx)<br>
<br>
another test showing that we error out for messages > 9216 Bytes<br>
<br>
(dotimes (n 5000)<br>
(let* ((mess (make-array (+ 8000 n) :element-type '(UNSIGNED-BYTE 8) ))<br>
(msize (length mess)))<br>
(unless (numberp (ignore-errors (ccl::send-to mysocket mess msize)) ) (error "n ~a" (+ 8000 n)))))<br>
<br>
-> n 9217<br>
<br>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">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>
</blockquote></div><br></div>