---
name: "comedi_set_buffer_size"
section: "3"
platform: "linux"
package: "libcomedi-dev"
version: "0.11.0+5-1.3+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/comedi_set_buffer_size"
---

# comedi\_set\_buffer\_size(3)

streaming buffer size of subdevice

## NAME

comedi\_set\_buffer\_size - streaming buffer size of subdevice

## SYNOPSIS

```
#include <comedilib.h>
```

**int comedi\_set\_buffer\_size(comedi\_t \*** *device***, unsigned int** *subdevice***, unsigned int** *size***);**

## DESCRIPTION

The function **comedi\_set\_buffer\_size** changes the size of the streaming buffer for the subdevice specified by *device* and *subdevice*. The buffer size will be set to *size* bytes, rounded up to a multiple of the virtual memory page size. The virtual memory page size can be determined using sysconf(\_SC\_PAGE\_SIZE).

This function does not require special privileges. However, it is limited to a (adjustable) maximum buffer size, which can be changed by a privileged user calling **comedi\_set\_max\_buffer\_size**, or running the program **comedi\_config**.

## RETURN VALUE

On success, **comedi\_set\_buffer\_size** returns the new buffer size in bytes. On failure, -1 is returned.

## AUTHORS

**David Schleef** \<ds@schleef.org\>

Author.

**Frank Mori Hess** \<fmhess@users.sourceforge.net\>

Author.

**Herman Bruyninckx** \<Herman.Bruyninckx@mech.kuleuven.ac.be\>

Author.

**Bernd Porr** \<tech@linux-usb-daq.co.uk\>

Author.

**Ian Abbott** \<abbotti@mev.co.uk\>

Author.

**Éric Piel** \<piel@delmic.com\>

Author.

## COPYRIGHT

Copyright © 1998-2003 David Schleef\
 Copyright © 2001-2003, 2005, 2008 Frank Mori Hess\
 Copyright © 2002-2003 Herman Bruyninckx\
 Copyright © 2012 Bernd Porr\
 Copyright © 2012 Ian Abbott\
 Copyright © 2012, 2015 Éric Piel\

This document is part of Comedilib. In the context of this document, the term "source code" as defined by the license is interpreted as the XML source.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, version 2.1 of the License.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
