By the way, why do you use std::size_t and unsigned int in the same function for "count" parameters?
bool sf::SoundBuffer::loadFromSamples(const Int16* samples, std::size_t sampleCount,
unsigned int channelCount, unsigned int sampleRate);
Also in other audio functions. Otherwise, you use std::size_t mainly for byte sizes...
[OffTopic] I actually don't like std::size_t at all, it has such an unclear application field. There's size_t, std::size_t, std::ptrdiff_t, unsigned int, ... Even the standard is sometimes inconsistent.