private static extern unsafe long sf_seek( SndFile__ *sndFile, long frames, SfSeek whence );
private static extern unsafe int sf_command(SndFile__ *sndFile, SfCommand cmd, void *data, int dataSize);
private static extern unsafe SfError sf_close( SndFile__ *sndFile );
private static extern unsafe SfError sf_error( SndFile__ *sndFile );
private static extern unsafe IntPtr sf_strerror( [CanBeNull] SndFile__ *sndFile );
private static extern unsafe IntPtr sf_get_string( SndFile__ *sndFile, SfString sfString );
private static extern unsafe SfError sf_set_string( SndFile__ *sndFile, SfString sfString, [MarshalAs(UnmanagedType.LPStr)] string str );
private static extern unsafe long sf_write_double( SndFile__ *sndFile, [MarshalAs(UnmanagedType.LPArray)] double[] buffer, long items );
private static extern unsafe long sf_read_float( SndFile__ *sndFile, [MarshalAs(UnmanagedType.LPArray)] float[] buffer, long items );
private static extern unsafe void sf_write_sync( SndFile__ *sndFile );
private static extern unsafe long sf_writef_float( SndFile__ *sndFile, [MarshalAs(UnmanagedType.LPArray)] float[] buffer, long frames );
private static extern unsafe long sf_readf_double( SndFile__ *sndFile, [MarshalAs(UnmanagedType.LPArray)] double[] buffer, long frames );