OS X, udpsink, is there a way to reduce messagesize / split UDP messages into smaller ones?

Peter Maersk-Moller pmaersk at gmail.com
Mon Jun 16 05:31:13 PDT 2014


try chopmydata. max-size=1366 gives you 7 TS packets in a frame that fits
MTU of 1500


On Mon, Jun 16, 2014 at 1:53 PM, Ralf Stoye <stoye at stoye.com> wrote:

> On OSX, the maximum Messagesize for UDP is about 9000 (9216 Bytes)
> (tested on OS X 10.6 and 10.8, for further reference see
> http://stackoverflow.com/questions/25841/maximum-buffer-length-for-sendto)
> Is there an way force a pipeline / udpsink to split larger messages into
> smaller ones?
>
> Example Pipeline:
> /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 \
> ! queue ! x264enc tune=zerolatency speed-preset=ultrafast bitrate=1000 !
> queue ! mpegtsmux ! queue ! udpsink host=10.44.1.21 port=1234
>
> Result ->
> ....
> 0:00:08.625751000 58410    0x1061642d0 LOG             multiudpsink
> gstmultiudpsink.c:562:gst_multiudpsink_render:<udpsink0> about to send
> 12596 bytes in 1 blocks
> 0:00:08.625768000 58410    0x1061642d0 LOG             multiudpsink
> gstmultiudpsink.c:575:gst_multiudpsink_render:<udpsink0> sending 12596
> bytes to client 0x10610b1c0
> 0:00:08.625904000 58410    0x1061642d0 WARN            multiudpsink
> gstmultiudpsink.c:607:gst_multiudpsink_render:<udpsink0> warning: Error
> sending UDP packet
> 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
> ....
>
> BTW. the pipeline works for framerates >= 25, since then the messages are
> smaller and don't exceed the limit of osx)
>
> another test showing that we error out for messages > 9216 Bytes
>
> (dotimes (n 5000)
> (let* ((mess (make-array (+ 8000 n) :element-type '(UNSIGNED-BYTE 8) ))
>        (msize (length mess)))
>  (unless (numberp (ignore-errors (ccl::send-to mysocket mess msize))  )
> (error "n ~a" (+ 8000 n)))))
>
> ->  n 9217
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20140616/d30b9035/attachment.html>


More information about the gstreamer-devel mailing list