Buenas.
Muy interesante.
Mi experiencia está precisamente en el entorno gráfico donde tengo cierto conocimiento sobre curvas de interpolación pues he trabajado desde el principio de los tiempos informáticos a nivel gráfico.
Por eso quería matizar lo dicho aunque sea a modo off topic.
Las curvas de BEZIER siempre pasan por los puntos, de hecho se generan entre ellos y su curvatura es controlada mediante los vectores tangentes.
Con dos puntos puede existir una recta o una curva. Depende de la longitud del vector.
Hay beziers abanzadas donde cada sentido del vector tiene un manejador propio que permite generar curvaturas complejas, como un tramo recto y el siguiente curvo a un punto.
Las curvas SPLINE NO pasan por los puntos. Se necesitan tres puntos inicilaes para definir una curva y esta pasa de forma tangente a las lineas imaginarias que forman los puntos entre si.
En las B-SPLINE ocurre exactamente lo mismo.
Es imposible hacer una recta con dos puntos de una spline. Se necesitan tres con dos contiguos en la misma coordenada.
Si alguien no lo entiende hago unas capturas de pantalla.
Existe una modalidad avanzada de B-Spline conocida como curvas NURBS.
Estas solo se utilizan en software de 3D muy sofisticados.
Las NURBS tiene la particularidad de poseer un "peso" controlable en su curvatura. Esto es dificil de explicar pero se ve rapidamente al dibujarlas.
Entre cada punto de la SPLINE existen "knots" subdivisiones.
Hay NURBS de grado 1 a 7.
1 es lineal.
2 es una curva tipo spline.
3 es una curva cúbica formalmente NURBS (entre cada punto hay 4 knots)
4-5-6-7 son NURBS con mayor grado de subdivisión.
Dibujar con NURBS es una pesadilla, son como gomas. Pero permiten generar superficies complejas inalcanzables con bezier.
No se que tendrá que ver esto con el tema en cuestión, pero yo no interpolaría jamás audio con curvas tipo spline o B-spline.
Luis, absolutamente de acuerdo con lo del pollo

y, añado, sus huevos.
“No es señal de buena salud estar bien adaptado a una sociedad profundamente enferma”