Ваше предположение, что длительность аудио составляет nf / sr
сэмплов , является правильным. Имейте в виду, что это предполагает, что частота дискретизации вашего воспроизведения также равна sr
. Это может быть не обязательно так.
Большинство аудиодрайверов поддерживают ограниченный набор выходов дискретизации (44,1 кГц, 48 кГц, 96 кГц и т. Д.). Поэтому, если, скажем, частота дискретизации вашего воспроизведения составляет psr
, то фактическая продолжительность будет nf / (psr / sr)
секунд.
Обратите внимание, что большинство аудиодрайверов обычно не пропускают сэмплы, которые могут привести к нежелательным звуковым щелчкам, а просто имеют большую задержку, чтобы освободить вычисления для других задач.
Обратите внимание, что PortAudio не предназначен для воспроизведения или записи файлов, как указано в их FAQ .