---
name: "afSetVirtualByteOrder"
section: "3"
platform: "linux"
package: "audiofile"
version: "0.3.6-12"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/afSetVirtualByteOrder"
---

# afSetVirtualByteOrder(3)

set the virtual data format for a track in an audio file

## NAME

afSetVirtualByteOrder, afSetVirtualChannels, afSetVirtualPCMMapping, afSetVirtualSampleFormat - set the virtual data format for a track in an audio file

## SYNOPSIS

```
#include <audiofile.h>
```

```
int afSetVirtualByteOrder (AFfilehandle file, int track, int byteOrder);
```

```
int afSetVirtualChannels (AFfilehandle file, int track, int channels);
```

```
int afSetVirtualSampleFormat (AFfilehandle file, int track,
    int sampleFormat, int sampleWidth);
```

```
int afSetVirtualPCMMapping (AFfilehandle file, int track,
    double slope, double intercept, double minclip, double maxclip);
```

## PARAMETERS

•

*file* is an AFfilehandle which refers to an open audio file and is usually created by afOpenFile.

•

*track* is an integer which identifies a particular track in an open audio file. The only valid track is AF\_DEFAULT\_TRACK for all currently supported file formats.

•

*sampleFormat* is an integer which denotes a virtual sample format. Valid values are AF\_SAMPFMT\_TWOSCOMP, AF\_SAMPFMT\_UNSIGNED, AF\_SAMPFMT\_FLOAT, and AF\_SAMPFMT\_DOUBLE.

•

*sampleWidth* is a positive integer which specifies the number of bits in a sample.

•

*channels* is a positive integer which specifies the number of interleaved audio channels in the given audio track.

•

*byteOrder* is an integer which specifies the virtual byte order of samples in the given audio track. *byteOrder* can be either AF\_BYTEORDER\_BIGENDIAN or AF\_BYTEORDER\_LITTLEENDIAN.

•

*slope* and *intercept* are double-precision floating point values which indicate the audio data sample slope and zero-crossing value, respectively, for the given sample format.

•

*minclip* and *maxclip* are double-precision floating point values which indicates the minimum or maximum sample values to be returned. Any values less than *minclip* will be set to *minclip*, and any values greater than *maxclip* will be set to *maxclip*.

## RETURN VALUE

These functions return 0 for success and -1 for failure.

## AUTHOR

Michael Pruett \<michael@68k.org\>
