Understanding the property "block-size" for elements "filesrc" and "filesink" w.r.t device files in Linux

James Cameron quozl at laptop.org
Thu Sep 13 21:39:25 UTC 2018

1.  in your reading of the source code for filesink and filesrc;

(a) what is the count of bytes for write(2)?

(b) what is the count of bytes for read(2)?

(c) is the return ssize_t from read(2) used?

(c) does the open(2) use a flags containing O_NONBLOCK?

Yes, in the semantics of fstat(2), a device file is a regular file; it
is not a pipe or a symlink.  A seek(2) on a serial port device file is
a null operation.

You say no usage of blocksize, but what of buffer-size?  My guess is
that blocksize is used by parent class functions which call the filesrc
and filesink functions, and controls the count of bytes for read(2) or

2.  using strace

You've not used strace(1) correctly.  Use it in front of the
gst-launch or application program.  Add -f option to trace child

Also, another idea from previous mail in last few months; how bursty
is the serial data stream; that is if you hook an oscilloscope to the
serial wires, what proportion of time is the signal idle?

James Cameron

More information about the gstreamer-devel mailing list